

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

.element{
	// Normal element styles here e.g. position: relative etc.

	@include breakpoint for this element

	.inner-elements{
		// Styles for inner elements here
	}

	&.modifier {
		// Styles for modifier of element here
	}
}
*/
/* Variables */
/*----------------------------------------------------------------
------------------------------------------------------------------
--------------------------- MAIN + RESETS ------------------------
------------------------------------------------------------------
----------------------------------------------------------------*/
* {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

::-moz-selection {
  background: #00447c;
  color: #ffffff;
  text-shadow: none; }

::selection {
  background: #00447c;
  color: #ffffff;
  text-shadow: none; }

.chromeframe,
li.graphic-only {
  display: none !important; }

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

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  position: relative;
  overflow-x: hidden; }

body {
  font-size: 16px;
  line-height: 1.88;
  color: #000000;
  background: #f2f9fe;
  margin: 0;
  padding: 0;
  height: 100%;
  position: relative;
  z-index: 0; }

#wrap {
  position: relative;
  z-index: 0;
  right: 0;
  left: 0;
  overflow: hidden;
  background: #f2f9fe; }

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

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

[hidden],
template {
  display: none; }

/* Embedded content */
img {
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

svg:not(:root) {
  overflow: hidden; }

/* Grouping content */
figure {
  margin: 15px 40px; }

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

pre {
  overflow: auto; }

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

/* Forms */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
  outline: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

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

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

input {
  line-height: normal; }

/* HTML5 / MISC */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

blockquote,
q {
  quotes: none; }

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

ins {
  background-color: #00447c;
  color: #ffffff;
  text-decoration: none;
  padding: 0 2px; }

del {
  text-decoration: line-through; }

b,
strong {
  font-weight: 700; }

/* SLIDERS */
.slider {
  position: relative;
  z-index: 0; }
  .slider .slide {
    position: relative;
    display: none;
    overflow: hidden; }
    .slider .slide:first-child {
      display: block; }
    .slider .slide .img {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      opacity: 1;
      -o-transition: 250ms opacity ease-in-out;
      -webkit-transition: 250ms opacity ease-in-out;
      transition: 250ms opacity ease-in-out; }
      .slider .slide .img.video-ready {
        opacity: 0; }
    .slider .slide .video-mask {
      height: 100%;
      position: relative;
      width: 100%;
      z-index: 0; }
      .slider .slide .video-mask iframe {
        left: 50%;
        min-height: 100%;
        min-width: 100%;
        position: absolute;
        z-index: 0;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
    .slider .slide video {
      position: absolute;
      top: 50%;
      left: 50%;
      min-width: 100%;
      min-height: 100%;
      width: auto;
      height: auto;
      z-index: 2;
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
     .slider .slide .slide-caption { color: white; position: absolute; z-index: 1; left: 50%; top: 50%; -moz-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
    .slider .slide .slide-caption2 {
      color: white;
      position: relative;
      z-index: 9999;
      left: 0;
      top: 0;
      display: inline-block;
       }
      @media (max-width: 767px) {
        .slider .slide .slide-caption.box-caption {
          max-width: auto; } }
    .slider .slide .box-caption .slide-caption-inner {
      background: rgba(0, 0, 0, 0.5);
      padding: 40px;
      max-width: 50%; }
      @media (max-width: 767px) {
        .slider .slide .box-caption .slide-caption-inner {
          max-width: 100%;
          padding: 30px; } }
    .slider .slide .bottom-box-caption {
      left: 0;
      right: 0;
      bottom: 0;
      top: auto;
      -ms-transform: none;
      -webkit-transform: none;
      transform: none;
      background: rgba(0, 0, 0, 0.5); }
      @media (max-width: 767px) {
        .slider .slide .bottom-box-caption {
          top: auto;
          -ms-transform: none;
          -webkit-transform: none;
          transform: none; } }
      .slider .slide .bottom-box-caption .slide-caption-inner {
        padding: 40px 0 70px;
        text-align: center; }

.slick-slider {
  z-index: 2; }
  .slick-slider .slide {
    display: block; }
  .slick-slider .slick-arrow {
    position: absolute;
    top: 50%;
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 22px;
    height: 40px;
    z-index: 5;
    cursor: pointer; }
    .slick-slider .slick-arrow:after {
      font-family: 'Black Tie';
      font-size: 40px;
      line-height: 1;
      font-weight: normal;
      color: white;
      position: absolute; }
      @media (max-width: 767px) {
        .slick-slider .slick-arrow:after {
          font-size: 30px; } }
  .slick-slider .slick-prev {
    left: 50px; }
    @media (max-width: 767px) {
      .slick-slider .slick-prev {
        left: 25px; } }
    .slick-slider .slick-prev:after {
      content: '\F092'; }
  .slick-slider .slick-next {
    right: 50px; }
    @media (max-width: 767px) {
      .slick-slider .slick-next {
        right: 25px; } }
    .slick-slider .slick-next:after {
      content: '\F093'; }
  .slick-slider .slick-dots {
    position: absolute;
    list-style: none;
    margin: 0;
    padding: 0;
    left: 50%;
    bottom: 73px;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media (max-width: 767px) {
      .slick-slider .slick-dots {
        bottom: 30px; } }
    .slick-slider .slick-dots li {
      float: left; }
      .slick-slider .slick-dots li + li {
        margin-left: 15px; }
    .slick-slider .slick-dots button {
      background: none;
      border: 0;
      -webkit-box-shadow: none !important;
      box-shadow: none !important;
      text-indent: -9999px;
      position: relative;
      width: 16px;
      height: 16px;
      outline: 0;
      padding: 0; }
      .slick-slider .slick-dots button:after {
        position: absolute;
        left: 0;
        top: 0;
        width: 16px;
        height: 16px;
        font-family: 'Black Tie';
        content: "\F08C";
        text-indent: 0;
        color: white;
        font-size: 15px;
        font-weight: normal; }
    .slick-slider .slick-dots .slick-active button:after {
      font-weight: 900; }
@media (max-width: 424px) {
  .slick-slider .slick-dots li button{
		width:5px!important;
		height:5px!important;
	}
}
.home-slider {
  clip-path: url(#hero-clip);
  -webkit-clip-path: url(#hero-clip); }
  .home-slider:after {
    display: none;
    content: " ";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 32px;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("../img/bottom-curve-blue.png") no-repeat;
    background-size: 100% 100%; }
    @media (max-width: 991px) {
      .home-slider:after {
        height: 22px; } }
    @media (max-width: 767px) {
      .home-slider:after {
        height: 11px; } }
  .home-slider .slide {
    height: calc(100vh - 43px); }
    .home-slider .slide .img {
      z-index: 1; }
    .home-slider .slide:after {
      content: " ";
      display: block;
      position: absolute;
      z-index: 3;
      width: 100%;
      height: 100%;
      top: 0;
      right: 0;
      left: 0;
      bottom: 0;
      background-image: -webkit-linear-gradient(top, #00447c 0%, transparent 52%);
      background-image: -o-linear-gradient(top, #00447c 0%, transparent 52%);
      background-image: -webkit-gradient(linear, left top, left bottom, from(#00447c), color-stop(52%, transparent));
      background-image: linear-gradient(to bottom, #00447c 0%, transparent 52%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF00447C', endColorstr='#00000000', GradientType=0);
      opacity: 0.7; }
  @media (max-width: 767px) {
    .home-slider .slick-arrow {
      margin-top: 50px; } }
  .home-slider .slick-arrow:after {
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8); }

.masthead-slider .slide {
  height: 499px; }
  @media (max-width: 767px) {
    .masthead-slider .slide {
      height: 250px; } }
  .masthead-slider .slide .img {
    z-index: 0; }
  .masthead-slider .slide:after {
    content: " ";
    display: block;
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-image: -webkit-linear-gradient(top, #00447c 0%, transparent 52%);
    background-image: -o-linear-gradient(top, #00447c 0%, transparent 52%);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#00447c), color-stop(52%, transparent));
    background-image: linear-gradient(to bottom, #00447c 0%, transparent 52%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF00447C', endColorstr='#00000000', GradientType=0);
    opacity: 0.7; }

.masthead-slider:after {
  display: block;
  content: " ";
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 32px;
  left: 0;
  right: 0;
  bottom: 0;
  /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
  background: url("../img/bottom-curve-blue.png") no-repeat;
  background-size: 100% 100%; }
  @media (max-width: 991px) {
    .masthead-slider:after {
      height: 22px; } }
  @media (max-width: 767px) {
    .masthead-slider:after {
      height: 11px; } }

.single-product .masthead-slider .slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }
  .single-product .masthead-slider .slide .banner-text {
    padding-left: 25px;
    padding-right: 25px;
    max-width: 1050px;
    position: relative;
    width: 100%;
    z-index: 2;
    margin: 0 auto 130px;
    color: white; }
    @media (max-width: 767px) {
      .single-product .masthead-slider .slide .banner-text {
        margin-bottom: 30px; } }
    .single-product .masthead-slider .slide .banner-text h1, .single-product .masthead-slider .slide .banner-text h2, .single-product .masthead-slider .slide .banner-text h3 {
      color: inherit; }
    .single-product .masthead-slider .slide .banner-text h1 {
      font-size: 45px;
      margin-top: 8px; }
      @media (max-width: 767px) {
        .single-product .masthead-slider .slide .banner-text h1 {
          font-size: 25px;
          font-weight: 500; } }
    .single-product .masthead-slider .slide .banner-text h2 {
      font-size: 20px; }
      @media (max-width: 767px) {
        .single-product .masthead-slider .slide .banner-text h2 {
          display: none;
          font-weight: 500;
          font-size: 18px; } }
    .single-product .masthead-slider .slide .banner-text h3 {
      font-size: 20px;
      margin-top: 22px;
      text-transform: inherit; }
      @media (max-width: 767px) {
        .single-product .masthead-slider .slide .banner-text h3 {
          display: none;
          margin-top: 12px;
          font-size: 14px; } }
  .single-product .masthead-slider .slide .img:before {
    z-index: 1;
    height: 100%;
    top: 0;
    background-image: -webkit-linear-gradient(top, transparent 0%, #00447c 64%);
    background-image: -o-linear-gradient(top, transparent 0%, #00447c 64%);
    background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(64%, #00447c));
    background-image: linear-gradient(to bottom, transparent 0%, #00447c 64%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#FF00447C', GradientType=0);
    opacity: 0.65;
    position: absolute;
    display: block;
    content: " ";
    width: 100%;
    left: 0;
    right: 0;
    bottom: 0; }

.widget-slider .slide {
  height: 656px; }
  @media (max-width: 991px) {
    .widget-slider .slide {
      height: 350px; } }
  @media (max-width: 767px) {
    .widget-slider .slide {
      height: 250px; } }

.widget-slider:before, .widget-slider:after {
  display: block;
  content: " ";
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 33px;
  left: 0;
  right: 0; }
  @media (max-width: 991px) {
    .widget-slider:before, .widget-slider:after {
      height: 22px; } }
  @media (max-width: 767px) {
    .widget-slider:before, .widget-slider:after {
      height: 11px; } }

.widget-slider:before {
  top: 0;
  /*background:url("../img/top-curve-blue.svg") no-repeat;*/
  background: url("../img/top-curve-blue.png") no-repeat;
  background-size: 100% 100%; }

.widget-slider:after {
  bottom: 0;
  /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
  background: url("../img/bottom-curve-blue.png") no-repeat;
  background-size: 100% 100%; }

.wb-products .slider-show .slide {
  height: 260px; }

.wb-products .slider-control {
  margin-top: 15px; }
  .wb-products .slider-control .slick-list {
    padding: 0 !important; }
  .wb-products .slider-control .slide {
    height: 90px;
    width: calc(33.33% - 10px) !important;
    position: relative;
    z-index: 0; }
    .wb-products .slider-control .slide:nth-child(2), .wb-products .slider-control .slide:nth-child(3) {
      margin-left: 15px; }
    .wb-products .slider-control .slide:before {
      position: absolute;
      z-index: 1;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: 3px solid transparent;
      display: block;
      content: " "; }
    .wb-products .slider-control .slide:hover {
      cursor: pointer; }
      .wb-products .slider-control .slide:hover:before {
        cursor: pointer; }
    .wb-products .slider-control .slide.slick-current:before {
      border-color: #3b8ede; }

.img {
  background-size: cover;
  background-position: center center;
  margin: 0;
  padding: 0;
  position: relative;
  overflow: hidden; }
  .img img {
    max-height: 100%;
    opacity: 0;
    position: absolute;
    width: auto;
    user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none; }

.no-cursor {
  cursor: default !important; }

section.main-body .widget-container {
  position: relative;
  clear: both;
  width: 100%;
}

/*----------------------------------------------------------------
------------------------------------------------------------------
------------------------------ FONTS -----------------------------
------------------------------------------------------------------
----------------------------------------------------------------*/
body {
  font-family: 'Lato', sans-serif;
  font-weight: 400; }

html,
body,
#wrap,
header.header {
  min-width: 320px; }

.right,
.left {
  float: none; }

.clearfix {
  clear: both;
  height: 0;
  width: 0; }

button {
  background: none;
  border: 0;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  outline: none !important;
  -o-transition: all 0.25s ease;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease; }

.stop-scrolling {
  overflow: hidden; }

.no-anim,
.no-anim * {
  -o-transition: none !important;
  -webkit-transition: none !important;
  transition: none !important; }

.no-anim-single {
  -o-transition: none !important;
  -webkit-transition: none !important;
  transition: none !important; }

a {
  color: #00447c;
  -o-transition: all 0.25s ease;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  cursor: pointer;
  outline: 0 !important; }
  a[href='#'], a[href=''] {
    cursor: default !important; }
  a:hover, a:focus {
    text-decoration: none; }

/* amending the default bootstrap 15px gutters */
.container {
  padding-left: 25px;
  padding-right: 25px;
  width: auto !important;
  max-width: 1050px;
  position: relative; }

.row {
  margin-left: -25px;
  margin-right: -25px; }

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
  padding-left: 25px;
  padding-right: 25px; }

.main-body {
    padding: 60px 0 153px;
    position: relative;
    z-index: 0; 
}
  @media (max-width: 767px) {
    .main-body {
      padding: 20px 0 72px; } }
  .main-body.no-margin {
    padding-bottom: 0 !important; }
  body.error404 .main-body {
    padding-top: 70px; }
    @media (max-width: 991px) {
      body.error404 .main-body {
        padding-top: 40px !important; } }
    @media (max-width: 767px) {
      body.error404 .main-body {
        padding-top: 20px !important; } }
  .main-body:after {
    display: block;
    content: " ";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 33px;
    left: 0;
    right: 0;
    bottom: 0;
    /*background:url("../img/bottom-curve-white.svg") no-repeat;*/
    /* background: url("../img/bottom-curve-white.png") no-repeat; */
    background-size: 100% 100%; }
    @media (max-width: 991px) {
      .main-body:after {
        height: 22px; } }
    @media (max-width: 767px) {
      .main-body:after {
        height: 11px; } }

.drawer .social-media a,
.mob-menu-btn {
  display: inline-block;
  height: 47px;
  width: 55px;
  font-size: 18px;
  line-height: 42px;
  border: 2px solid #ffffff;
  color: #ffffff;
  padding: 0;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  vertical-align: top;
  text-align: center; }
  .drawer .social-media a i,
  .mob-menu-btn i {
    line-height: 42px;
    vertical-align: top; }

.resize .social-media a,
.resize .mob-menu-btn {
  height: 40px;
  font-size: 16px;
  line-height: 36px;
  width: 47px; }
  .resize .social-media a i,
  .resize .mob-menu-btn i {
    line-height: 36px; }

header {
  position: fixed;
  left: 0;
  right: 0;
  width: inherit;
  top: 0;
  z-index: 3;
  padding-bottom: 20px;
  -o-transition: 250ms all ease;
  -webkit-transition: 250ms all ease;
  transition: 250ms all ease; }
  header .container {
    position: relative; }
  header .header__top {
    margin-top: 26px;
    display: block;
    position: relative;
    z-index: 1;
    text-align: right;
    height: 34px; }
    header .header__top__phonelink {
      display: inline-block;
      vertical-align: top;
      font-size: 13px;
      line-height: 24px;
      color: #ffffff;
      margin-top: 5px; }
      header .header__top__phonelink i {
        line-height: 24px;
        vertical-align: top; }
      header .header__top__phonelink span {
        padding-left: 6px; }
      header .header__top__phonelink:hover, header .header__top__phonelink:focus {
        color: #ffffff; }
    header .header__top .lang_sel_click_custom {
      display: none;
      vertical-align: top;
      position: absolute;
      top: 0;
      right: -2px;
      z-index: 0;
      padding: 0;
      border-radius: 5px; }
      header .header__top .lang_sel_click_custom a {
        display: inline-block;
        vertical-align: top;
        position: relative;
        z-index: 0;
        padding: 5px;
        padding-right: 25px;
        color: #ffffff; }
        header .header__top .lang_sel_click_custom a figure {
          display: inline-block;
          margin: 0;
          height: 24px;
          width: 24px;
          border: 1px solid #ffffff;
          border-radius: 50%;
          -webkit-border-radius: 50%;
          vertical-align: top; }
        header .header__top .lang_sel_click_custom a span {
          font-size: 13px;
          line-height: 24px;
          text-transform: uppercase;
          vertical-align: top;
          display: inline-block;
          margin-left: 4px; }
        header .header__top .lang_sel_click_custom a:hover, header .header__top .lang_sel_click_custom a:focus {
          color: #ffffff; }
      header .header__top .lang_sel_click_custom > a:after {
        content: "\F095";
        font-family: "Black Tie";
        font-size: 13px;
        line-height: 1;
        position: absolute;
        z-index: 1;
        top: 11px;
        right: 6px; }
      header .header__top .lang_sel_click_custom > a.expanded:after {
        content: "\F094"; }
      header .header__top .lang_sel_click_custom ul {
        list-style: none;
        padding: 0;
        margin: 0;
        width: 100%;
        max-height: 0;
        overflow: hidden;
        -o-transition: 250ms all ease;
        -webkit-transition: 250ms all ease;
        transition: 250ms all ease; }
      header .header__top .lang_sel_click_custom.expanded {
        background: #00447c; }
        header .header__top .lang_sel_click_custom.expanded ul {
          max-height: 250px; }
  header .header__bottom {
    display: block;
    width: 100%;
    margin-top: 18px;
    position: relative;
    z-index: 0; }
    header .header__bottom .logo {
      display: inline-block;
      width: 215px; }
      @media (max-width: 860px) {
        header .header__bottom .logo {
          width: 190px;
          margin-top: 4px; } }
      header .header__bottom .logo img {
        display: block;
        width: 100%;
        height: auto; }
        header .header__bottom .logo img.print-logo {
          display: none; }
    header .header__bottom__pullright {
      float: right;
      height: 47px;
      text-align: right; }
      header .header__bottom__pullright #menu-header-menu {
        display: inline-block; }
        @media (max-width: 995px) {
          header .header__bottom__pullright ul {
            display: none; } }
        header .header__bottom__pullright ul li {
          display: inline-block;
          height: 47px; }
          header .header__bottom__pullright ul li a {
            display: inline-block;
            height: 47px;
            font-size: 14px;
            line-height: 43px;
            border: 2px solid #ffffff;
            color: #ffffff;
            padding: 0 5px;
            border-radius: 10px;
            -webkit-border-radius: 10px;
            text-transform: uppercase; }
            header .header__bottom__pullright ul li a:hover, header .header__bottom__pullright ul li a:focus {
              background: #ffffff;
              color: #00447c; }
          header .header__bottom__pullright ul li + li {
            margin-left: 16px; }
      header .header__bottom__pullright .mob-menu-btn {
        margin-left: 16px;
        float: right; }
  header .mob-menu-btn {
    cursor: pointer !important; }
    header .mob-menu-btn:hover, header .mob-menu-btn:focus {
      background: #ffffff;
      color: #00447c; }
    header .mob-menu-btn.fullscreen {
      position: relative;
      z-index: 101; }
      @media (max-width: 767px) {
        body.show-mob-menu header .mob-menu-btn.fullscreen {
          opacity: 0; } }
  header.resize {
    background: #00447c; }
    header.resize .header__top {
      margin-top: 9px; }
      header.resize .header__top__phonelink {
        font-size: 11px;
        line-height: 22px; }
        header.resize .header__top__phonelink i {
          line-height: 22px; }
        header.resize .header__top__phonelink span {
          padding-left: 5px; }
      header.resize .header__top .lang_sel_click_custom a {
        padding: 5px 22px 5px 5px; }
        header.resize .header__top .lang_sel_click_custom a figure {
          height: 22px;
          width: 22px; }
        header.resize .header__top .lang_sel_click_custom a span {
          font-size: 11px;
          line-height: 22px;
          margin-left: 2px; }
        header.resize .header__top .lang_sel_click_custom a:after {
          font-size: 11px;
          top: 10px;
          right: 6px; }
    header.resize .header__bottom {
      margin-top: 12px; }
      header.resize .header__bottom .logo {
        width: 190px;
        margin-top: 2px; }
      header.resize .header__bottom__pullright {
        height: 41px; }
        header.resize .header__bottom__pullright ul li {
          height: 40px; }
          /*header.resize .header__bottom__pullright ul li a {
            height: 40px;
            font-size: 14px;
            line-height: 36px;
            padding: 0 20px; }*/
          header.resize .header__bottom__pullright ul li + li {
            margin-left: 13px; }
        header.resize .header__bottom__pullright .mob-menu-btn {
          margin-left: 13px; }
    header.resize .mob-menu-btn {
      cursor: pointer !important; }
      header.resize .mob-menu-btn.fullscreen {
        position: relative;
        z-index: 101; }

.header__bg {
  display: block;
  position: fixed;
  z-index: 1;
  width: 100%;
  height: 143px;
  background: #00447c;
  top: 0;
  left: 0;
  right: 0; }
  .header__bg.resize {
    height: 116px; }

.drawer {
  width: 250px;
  padding: 26px 26px 0 26px;
  background: #03A9F4;
  position: fixed;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 100;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  -ms-transform: translate(101%, 0);
  -webkit-transform: translate(101%, 0);
  transform: translate(101%, 0);
  -o-transition: all 0.35s ease;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease; }
  .drawer.fullscreen {
    display: none;
    width: 100%;
    height: 100%;
    padding: 0;
    background: none;
    text-align: center;
    left: 0;
    z-index: -1;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -o-transition: none;
    -webkit-transition: none;
    transition: none; }
    .drawer.fullscreen .social-media {
      display: inline-block;
      float: none; }
    .drawer.fullscreen .main-nav {
      float: none;
      overflow: hidden; }
  .drawer .container {
    opacity: 0;
    -o-transition: opacity 250ms ease-in-out;
    -webkit-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;
    z-index: 1; }
    .drawer .container .social-media {
      display: inline-block;
      height: 47px;
      position: absolute;
      top: 78px;
      left: 25px;
      padding: 0; }
      @media (max-width: 767px) {
        .drawer .container .social-media {
          top: 30px; } }
      .drawer .container .social-media li {
        display: inline-block; }
        .drawer .container .social-media li a {
          color: #8fc9e6;
          border-color: #8fc9e6; }
          .drawer .container .social-media li a:hover, .drawer .container .social-media li a:focus {
            color: #00447c;
            background: #8fc9e6; }
          @media (max-width: 767px) {
            .drawer .container .social-media li a {
              width: auto;
              border-radius: 0;
              border: 0px;
              font-size: 20px; }
              .drawer .container .social-media li a:hover, .drawer .container .social-media li a:focus {
                color: #ffffff;
                background: none !important; } }
        .drawer .container .social-media li + li {
          margin-left: 19px; }
    .drawer .container .mob-menu-btn {
      position: absolute;
      top: 78px;
      right: 25px;
      z-index: 99999999; }
      @media (max-width: 767px) {
        .drawer .container .mob-menu-btn {
          top: 30px; } }
      .drawer .container .mob-menu-btn:hover, .drawer .container .mob-menu-btn:focus {
        color: #00447c;
        background: #ffffff; }
  .drawer .main-nav {
    opacity: 0;
    -o-transition: opacity 250ms ease-in-out;
    -webkit-transition: opacity 250ms ease-in-out;
    transition: opacity 250ms ease-in-out;
    float: none;
    overflow: hidden;
    width: 100%;
    margin: 0;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    padding: 0 25px;
    z-index: 0; }
    .drawer .main-nav ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      @media (max-width: 767px) {
        .drawer .main-nav ul {
          margin-top: 20px !important; } }
      @media (max-width: 767px) and (max-height: 450px) {
        .drawer .main-nav ul li {
          display: inline-block;
          width: auto;
          float: none;
          margin-top: 7px;
          margin-bottom: 7px;
          margin-left: 15px;
          margin-right: 15px; }
          .drawer .main-nav ul li + li {
            margin-top: 7px; }
        .drawer .main-nav ul ul + a {
          margin-top: 15px; } }
      @media (min-width: 768px) and (max-width: 991px) and (max-height: 725px) {
        .drawer .main-nav ul li {
          display: inline-block;
          width: auto;
          float: none;
          margin-top: 7px;
          margin-bottom: 7px;
          margin-left: 15px;
          margin-right: 15px; }
          .drawer .main-nav ul li + li {
            margin-top: 7px; }
          .drawer .main-nav ul li a {
            font-size: 20px; }
        .drawer .main-nav ul ul + a {
          margin-top: 25px; } }
      @media (min-width: 992px) and (max-height: 725px) {
        .drawer .main-nav ul li {
          display: inline-block;
          width: auto;
          float: none;
          margin-top: 10px;
          margin-bottom: 10px;
          margin-left: 20px;
          margin-right: 20px; }
          .drawer .main-nav ul li + li {
            margin-top: 10px; }
        .drawer .main-nav ul ul + a {
          margin-top: 25px; } }
    .drawer .main-nav li a {
      font-size: 40px;
      line-height: 1;
      font-weight: 300;
      text-transform: uppercase;
      color: #8fc9e6; }
      @media (max-width: 767px) {
        .drawer .main-nav li a {
          font-size: 20px; } }
      .drawer .main-nav li a:hover, .drawer .main-nav li a:focus {
        color: #8fc9e6; }
    .drawer .main-nav li + li {
      margin-top: 40px; }
      @media (max-width: 767px) {
        .drawer .main-nav li + li {
          margin-top: 15px; } }
    .drawer .main-nav ul li.main-nav__not a {
      color: #ebebeb; }
      .drawer .main-nav ul li.main-nav__not a:hover, .drawer .main-nav ul li.main-nav__not a:focus {
        color: #ebebeb; }
  .drawer.show {
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
    .drawer.show.fullscreen {
      display: block;
      z-index: 100; }
  .drawer.show-content .container,
  .drawer.show-content .main-nav {
    opacity: 1; }
  .drawer.resize .container .social-media {
    height: 41px;
    top: 55px; }
    @media (max-width: 767px) {
      .drawer.resize .container .social-media {
        top: 30px; } }
  .drawer.resize .container .mob-menu-btn {
    top: 55px; }
    @media (max-width: 767px) {
      .drawer.resize .container .mob-menu-btn {
        top: 30px; } }

.mob-menu-overlay {
  background: rgba(0, 68, 124, 0.97);
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  opacity: 0;
  -o-transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease; }

body.show-mob-menu .mob-menu-overlay {
  opacity: 1; }

body.raise-mob-overlay .mob-menu-overlay {
  z-index: 90; }

.footer {
  /* background: #ffffff; */
  position: relative; }
  .footer__top, .footer__middle, .footer__bottom, .footer__bluebar {
    clear: both; }
  .footer__top {
    padding: 69px 0 36px; }
    @media (max-width: 767px) {
      .footer__top {
        padding: 32px 0 18px; } }
    .footer__top h6 {
      text-transform: uppercase;
      font-size: 25px;
      line-height: 1;
      margin: 0 0 22px;
      color: #00447c;
      font-weight: 400; }
    .footer__top .social-media {
      list-style: none;
      padding: 0;
      margin: 0; }
      .footer__top .social-media li {
        display: inline-block;
        vertical-align: top; }
        .footer__top .social-media li + li {
          margin-left: 14px; }
      .footer__top .social-media a {
        vertical-align: top;
        color: #00447c;
        font-size: 18px;
        line-height: 1; }
        .footer__top .social-media a i {
          line-height: 1;
          vertical-align: top; }
        .footer__top .social-media a:hover, .footer__top .social-media a:focus {
          color: #00447c; }
  .footer__middle .text {
    padding-left: 0 !important; }
    @media (max-width: 767px) {
      .footer__middle .text {
        padding: 0 !important; } }
    .footer__middle .text p {
      font-size: 16px;
      line-height: 30px;
      color: #00447c; }
  .footer__middle .locations {
    padding-right: 0 !important;
    padding-top: 1px; }
    @media (max-width: 767px) {
      .footer__middle .locations {
        padding: 30px 0 0 !important; } }
    .footer__middle .locations__item {
      font-size: 18px;
      line-height: 37px;
      font-weight: 300;
      padding-left: 82px;
      color: #000000;
      position: relative;
      z-index: 0;
      display: block;
      width: 100%; }
      @media (max-width: 767px) {
        .footer__middle .locations__item {
          padding-left: 40px; } }
      .footer__middle .locations__item:before {
        content: "\F0CA";
        font-family: "Black Tie";
        font-size: 20px;
        line-height: 37px;
        font-weight: 900;
        color: #00447c;
        position: absolute;
        z-index: 1;
        top: 0;
        left: 46px; }
        @media (max-width: 767px) {
          .footer__middle .locations__item:before {
            left: 2px; } }
      .footer__middle .locations__item--tel:before {
        content: "\F005"; }
      .footer__middle .locations__item--email:before {
        content: "\F001"; }
  .footer__bottom {
    padding: 43px 0 63px; }
    @media (max-width: 767px) {
      .footer__bottom {
        padding: 30px 0; } }
    .footer__bottom img {
      width: 225px;
      height: auto; }
  .footer__bluebar {
    background: #00447c;
    padding: 32px 0 29px; }
    .footer__bluebar .copy,
    .footer__bluebar .created,
    .footer__bluebar .footer-nav {
      padding: 0 !important;
      font-size: 15px;
      line-height: 1.3;
      color: #ffffff; }
      @media (max-width: 1199px) {
        .footer__bluebar .copy,
        .footer__bluebar .created,
        .footer__bluebar .footer-nav {
          text-align: left !important; } }
      .footer__bluebar .copy a,
      .footer__bluebar .copy a:hover,
      .footer__bluebar .created a,
      .footer__bluebar .created a:hover,
      .footer__bluebar .footer-nav a,
      .footer__bluebar .footer-nav a:hover {
        color: #ffffff;
        cursor: pointer !important; }
    .footer__bluebar .created {
      text-align: center; }
      @media (max-width: 1199px) {
        .footer__bluebar .created {
          margin: 15px 0; } }
    .footer__bluebar .footer-nav {
      text-align: right; }
      .footer__bluebar .footer-nav ul {
        list-style: none;
        padding: 0;
        margin: 0; }
        .footer__bluebar .footer-nav ul li {
          display: inline-block; }
          @media (max-width: 767px) {
            .footer__bluebar .footer-nav ul li {
              display: block; } }
          .footer__bluebar .footer-nav ul li + li {
            margin-left: 13px; }
            @media (max-width: 767px) {
              .footer__bluebar .footer-nav ul li + li {
                margin: 3px 0 0; } }

.notification--show, .notification--hide {
  z-index: 9999999;
  pointer-events: all; }
  .notification--show .notification-popup__icon, .notification--hide .notification-popup__icon {
    -webkit-animation-name: animJelly;
    animation-name: animJelly;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both; }

.notification--show .notification-popup__content {
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 1; }

.button {
  background: #3b8ede;
  color: #ffffff;
  font-size: 20px;
  line-height: 1.1;
  font-weight: 400;
  text-transform: uppercase;
  display: inline-block;
  position: relative;
  z-index: 0;
  padding: 14px 68px;
  border-radius: 10px;
  margin: 0;
  cursor: pointer;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -o-transition: all 0.25s ease;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease; }
  .button:hover, .button:focus {
    background: #00447c;
    color: #ffffff; }
  .button-white {
    background: #ffffff;
    color: #00447c;
    padding-left: 40px;
    padding-right: 40px; }
  .button-icon {
    background: none;
    padding: 0;
    padding-right: 28px; }
    .button-icon:hover, .button-icon:focus {
      background: none;
      color: white; }
    .button-icon i {
      position: absolute;
      line-height: 1.1;
      top: 0;
      right: 0; }

/* site-wide input styles */
input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
textarea,
.select-wrap select,
.select-wrap,
.file-upload .fake-input {
  width: 100%;
  border-radius: 0px;
  border: 2px solid #ebebeb;
  outline: 0;
  color: #959595;
  background: #ffffff;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  font-size: 15px;
  line-height: 25px;
  padding: 10px 20px 11px;
  text-transform: none;
  font-weight: normal;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  display: block; }

.select-wrap {
  padding: 0; }

#select-wrap-container {
	padding-top: 35px;
	padding-bottom: 30px;
  background-color: #F2F9FE;
}

#tbFilterResults {
	text-align: center;
	margin-top: 50px;
}

#tess100 {
	padding-top:20px;
}

textarea {
  resize: none;
  height: 200px;
  overflow: auto;
  padding: 8px 18px; }

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

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

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

optgroup {
  font-weight: normal; }

.form-group {
  position: relative;
  padding-bottom: 15px;
  margin: 0; }
  .form-group--radiocheck {
    padding-bottom: 42px; }
  .form-group + .form_validation_container {
    padding-bottom: 50px; }

.form-divider {
  display: block;
  width: 100%;
  height: 2px;
  background: #e5e5e5; }

ul,
ol,
dl {
  padding-left: 25px; }
  ul.no-list,
  ol.no-list,
  dl.no-list {
    list-style: none;
    padding: 0; }
  ul li a,
  ul dl li a,
  ol li a,
  ol dl li a,
  dl li a,
  dl dl li a {
    font-weight: normal; }
  ul.cookie-list li + li,
  ol.cookie-list li + li,
  dl.cookie-list li + li {
    margin-top: 20px; }

ul.list-list {
  display: block;
  list-style: none;
  padding: 0;
  float: left;
  width: 100%;
  margin-top: 40px;
  margin-bottom: 40px;
  border-bottom: 2px solid #e5e5e5; }
  @media (max-width: 767px) {
    ul.list-list {
      margin-top: 25px;
      margin-bottom: 25px; } }
  ul.list-list li {
    border-top: 2px solid #e5e5e5; }
    ul.list-list li a {
      display: block;
      padding-top: 40px;
      padding-bottom: 40px; }
      @media (max-width: 767px) {
        ul.list-list li a {
          padding-top: 25px;
          padding-bottom: 25px; } }
    ul.list-list li h4 {
      color: #222; }
    ul.list-list li p {
      font-weight: 300; }

.pagenumber-container {
  margin: 0;
  text-align: center; }
  .blog-widget + .pagenumber-container {
    margin-top: 4em; }

ul.page-numbers {
  display: inline-block;
  margin: 0 auto;
  padding: 0;
  height: 30px;
  list-style: none; }
  ul.page-numbers li {
    display: inline-block; }
    ul.page-numbers li + li {
      margin-left: 20px; }
    ul.page-numbers li.prev {
      margin-right: 8px; }
    ul.page-numbers li.next {
      margin-left: 28px; }
    ul.page-numbers li a,
    ul.page-numbers li span {
      padding: 0;
      font-size: 27px;
      line-height: 30px;
      height: 30px;
      text-align: center;
      color: #00447c;
      background: transparent;
      border: 0px;
      -o-transition: all 250ms ease-in-out;
      -webkit-transition: all 250ms ease-in-out;
      transition: all 250ms ease-in-out;
      display: block;
      font-weight: 400; }
      ul.page-numbers li a i,
      ul.page-numbers li span i {
        font-size: 18px;
        line-height: 30px;
        font-weight: normal;
        display: block; }
      ul.page-numbers li a:hover, ul.page-numbers li a:focus,
      ul.page-numbers li span:hover,
      ul.page-numbers li span:focus {
        color: #3b8ede; }
    ul.page-numbers li span.current {
      color: #3b8ede;
      font-weight: 700; }

.sub-nav {
  height: 18px;
  white-space: nowrap;
  font-size: 0;
  /* overflow: hidden; */
 } 
  .sub-nav__wrap {
    z-index: 1;
    margin-top: 13px;
    margin-bottom: 56px; }
    @media (max-width: 767px) {
      .sub-nav__wrap {
        margin-bottom: 30px; } }
    .sub-nav__wrap .container {
      position: relative;
      border-bottom: 3px solid #e6edf2;
      padding: 0 69px 55px;
      max-width: 1000px; }
      @media (max-width: 767px) {
        .sub-nav__wrap .container {
          border-bottom: 3px solid #e6edf2;
          padding: 0 25px 27px; } }
  .sub-nav__innerwrap {
    position: relative;
    z-index: 0; }
  .sub-nav__title {
    float: left;
    line-height: 18px;
    font-size: 18px;
    margin-right: 12px;
    color: #7b7b7b;
    font-style: italic;
    font-weight: 400; }
    @media (max-width: 767px) {
      .sub-nav__title {
        position: absolute;
        font-size: 13px;
        width: 85px;
        margin: 0;
        -o-transition: all 0.3s ease;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease; } }
  .sub-nav ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .sub-nav a {
    display: block; }
  .sub-nav > ul {
    display: inline-block;
    line-height: 1;
    overflow-x: scroll !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    width: calc(100% - 146px);
    padding-bottom: 50px;
    position: static !important; }
    @media (max-width: 767px) {
      .sub-nav > ul {
        width: calc(100% - 85px);
        float: right; } }
    .sub-nav > ul > li {
      display: inline-block;
      position: static !important;
      height: 18px;
      -o-transition: all 0.3s ease;
      -webkit-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      .sub-nav > ul > li > ul {
        display: none;
        position: absolute;
        height: 0;
        width: 0;
        float: left;
        display: inline-block;
        font-size: 0; }
      .sub-nav > ul > li > a {
        font-size: 16px;
        line-height: 18px;
        position: relative;
        text-transform: uppercase;
        padding: 1px 0 0;
        margin: 0 15px;
        color: #00447c;
        font-weight: 700; }
        @media (max-width: 767px) {
          .sub-nav > ul > li > a {
            font-size: 12px; } }
        .sub-nav > ul > li > a:after {
          clear: both; }
        .sub-nav > ul > li > a i {
          -o-transition: all 0.3s cubic-bezier(0.63, 0.29, 0.17, 1.245);
          -webkit-transition: all 0.3s cubic-bezier(0.63, 0.29, 0.17, 1.245);
          transition: all 0.3s cubic-bezier(0.63, 0.29, 0.17, 1.245);
          margin-left: 14px; }
      .sub-nav > ul > li.hover > a {
        color: #7b7b7b; }
        .sub-nav > ul > li.hover > a i {
          -ms-transform: rotate(-90deg);
          -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
          color: #7b7b7b; }
  .sub-nav-dropdown {
    position: absolute; }
    .sub-nav-dropdown > ul {
      list-style: none;
      max-width: 245px !important;
      margin: 0;
      padding: 0;
      position: relative;
      opacity: 0;
      -o-transition: opacity 0.2s ease;
      -webkit-transition: opacity 0.2s ease;
      transition: opacity 0.2s ease;
      display: block;
      z-index: 100;
      background: #f2f9fe;
      padding-top: 20px; }
      @media (max-width: 767px) {
        .sub-nav-dropdown > ul {
          max-width: 220px !important; } }
      .sub-nav-dropdown > ul.active {
        opacity: 1; }
      .sub-nav-dropdown > ul ul {
        list-style: none;
        padding-left: 20px;
        margin-top: 0;
        max-width: 245px !important; }
        @media (max-width: 767px) {
          .sub-nav-dropdown > ul ul {
            max-width: 220px !important;
            padding-left: 10px; } }
      .sub-nav-dropdown > ul > li a {
        font-size: 12px;
        text-transform: uppercase;
        font-weight: 700;
        color: #00447c;
        display: block;
        line-height: 15px;
        white-space: normal;
        padding: 0 15px 15px;
        -o-transition: all 0.2s ease;
        -webkit-transition: all 0.2s ease;
        transition: all 0.2s ease; }
        @media (max-width: 767px) {
          .sub-nav-dropdown > ul > li a {
            font-size: 11px; } }
        .sub-nav-dropdown > ul > li a:hover {
          color: #7b7b7b; }
  .sub-nav .current > a {
    color: #03A9F4; }
    .sub-nav .current > a:after {
      background: #03A9F4; }
  .sub-nav .open-sub-nav {
    border-bottom: 2px solid #eeeeee;
    padding-bottom: 20px;
    position: relative; }
    .sub-nav .open-sub-nav:after {
      font-family: 'Black Tie';
      content: '\f01b';
      font-size: 14px;
      font-weight: 600;
      position: absolute;
      right: 0;
      top: 1px; }
  .sub-nav.expanded > ul {
    border-bottom: 2px solid #eeeeee;
    padding-bottom: 15px; }
  .sub-nav.expanded .open-sub-nav:after {
    content: '\f021'; }
  .sub-nav__arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    padding: 0;
    width: 30px;
    background: #f2f9fe;
    z-index: 1;
    cursor: pointer;
    color: #7b7b7b;
    visibility: hidden;
    opacity: 0;
    -o-transition: opacity 0.2s ease-in-out;
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out; }
    .sub-nav__arrow:before {
      position: relative;
      display: inline-block;
      font-family: "Black Tie";
      content: "";
      font-weight: 600;
      font-size: 16px;
      top: 0;
      line-height: 19px; }
    .sub-nav__arrow--right {
      right: 0; }
    .sub-nav__arrow--left {
      /* left: 120px; */
      left: 0;
     }
      @media (max-width: 767px) {
        .sub-nav__arrow--left {
          left: 0px; } }
      .sub-nav__arrow--left:before {
        content: '\f092'; }
      .sub-nav__arrow--left:after {
        right: 0; }
    .sub-nav__arrow-show--left .sub-nav__arrow--left, .sub-nav__arrow-show--right .sub-nav__arrow--right {
      opacity: 1;
      visibility: visible; }
    @media (max-width: 767px) {
      .sub-nav__arrow-show--left .sub-nav__title {
        opacity: 0;
        -ms-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%); }
      .sub-nav__arrow-show--left > ul {
        width: calc(100% + 70px) !important;
        padding-left: 140px; } }
    .sub-nav__arrow-show--right .sub-nav__arrow--right {
      opacity: 1;
      visibility: visible; }

.spinner {
  margin: 0 auto;
  width: 70px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -o-transition: all 0.1s ease;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  .spinner > div {
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1s infinite ease-in-out both;
    animation: sk-bouncedelay 1s infinite ease-in-out both; }
  .spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s; }
  .spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s; }

@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0); }
  40% {
    -webkit-transform: scale(1); } }

@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0); }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1); } }

/* Tables */
body table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin: 15px 0; }
  @media (min-width: 768px) {
    body table {
      margin: 40px 0 0;
      display: table; } }

table:last-child {
  margin-bottom: 0px !important; }

tr {
  display: none; }

tr + tr {
  display: block;
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 5px solid #e5e5e5; }

@media (min-width: 768px) {
  tr,
  tr + tr {
    display: table-row;
    border-bottom: 0; } }

@media (min-width: 768px) {
  td, th {
    padding: 10px 20px; } }

tr:last-child {
  border: 0;
  margin: 0;
  padding: 0; }

th {
  display: none; }
  @media (min-width: 768px) {
    th {
      display: table-cell;
      background: #03A9F4;
      color: white; } }

td {
  display: block; }
  @media (min-width: 768px) {
    td {
      display: table-cell;
      -webkit-box-shadow: inset 0 -2px 0 #e5e5e5, inset 2px 0 0 #e5e5e5;
      box-shadow: inset 0 -2px 0 #e5e5e5, inset 2px 0 0 #e5e5e5;
      color: #222; }
      td:last-child {
        -webkit-box-shadow: inset 0 -2px 0 #e5e5e5, inset 2px 0 0 #e5e5e5, inset -2px 0 0 #e5e5e5;
        box-shadow: inset 0 -2px 0 #e5e5e5, inset 2px 0 0 #e5e5e5, inset -2px 0 0 #e5e5e5; } }

td + td {
  margin-top: 15px; }

td > span {
  font-weight: normal; }

* + ul,
* + ol,
* + dl,
* + p,
* + blockquote,
* + table {
  margin: 25px 0 0; }
  @media (max-width: 767px) {
    * + ul,
    * + ol,
    * + dl,
    * + p,
    * + blockquote,
    * + table {
      margin: 20px 0 0; } }

* + h1,
* + h2,
* + h3,
* + h4,
* + h5,
* + h6 {
  margin: 55px 0 0; }
  @media (max-width: 767px) {
    * + h1,
    * + h2,
    * + h3,
    * + h4,
    * + h5,
    * + h6 {
      margin: 30px 0 0; } }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #00447c;
  text-transform: uppercase;
  line-height: 1.1;
  font-weight: 300; }

h1 {
  font-size: 40px; }
  @media (max-width: 767px) {
    h1 {
      font-size: 30px; } }

h2 {
  font-size: 30px; }
  @media (max-width: 767px) {
    h2 {
      font-size: 26px; } }

h3 {
  font-size: 26px; }
  @media (max-width: 767px) {
    h3 {
      font-size: 20px; } }

h4 {
  font-size: 22px; }
  @media (max-width: 767px) {
    h4 {
      font-size: 17px; } }

h5,
h6 {
  font-size: 19px; }
  @media (max-width: 767px) {
    h5,
    h6 {
      font-size: 16px; } }

sup,
sub {
  font-size: 65%; }

.page-title,
.page-subtitle {
  font-weight: 300;
  text-align: center;
  padding-left: 25px;
  padding-right: 25px; }

.page-title {
  padding: 0 95px;
  max-width: 1050px;
  margin: 60px auto 0; }
  @media (max-width: 991px) {
    .page-title {
      padding: 0 50px; } }
  @media (max-width: 767px) {
    .page-title {
      padding: 0 25px;
      margin: 30px auto 0; } }
  .sub-nav__wrap + .main-content > .page-title:first-child {
    margin-top: 120px !important; }
    @media (max-width: 767px) {
      .sub-nav__wrap + .main-content > .page-title:first-child {
        margin-top: 60px !important; } }

.page-subtitle {
  font-size: 25px;
  padding: 0 95px;
  max-width: 1050px;
  margin: 0 auto !important; }
  @media (max-width: 991px) {
    .page-subtitle {
      padding: 0 50px; } }
  @media (max-width: 767px) {
    .page-subtitle {
      padding: 0 25px;
      font-size: 20px; } }
  .page-title + .page-subtitle {
    margin: 10px auto 0 !important; }

.notification {
  position: fixed;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  text-align: center;
  padding: 20px;
  background-color: #ffffff;
  color: #00447c;
  -ms-transform: translate(0, -101%);
  -webkit-transform: translate(0, -101%);
  transform: translate(0, -101%);
  -o-transition: transform 0.2s ease;
  -webkit-transition: transform 0.2s ease;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
  -o-transition: opacity 0.2s ease;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
  -o-transition: background-color 0.2s ease;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease; }
  @media (max-width: 767px) {
    .notification {
      padding: 15px; } }
  .notification, .notification * {
    -o-transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease;
    -webkit-transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease;
    -webkit-transition: opacity 0.2s ease, background-color 0.2s ease, -webkit-transform 0.2s ease;
    transition: opacity 0.2s ease, background-color 0.2s ease, -webkit-transform 0.2s ease;
    transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease;
    transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease, -webkit-transform 0.2s ease; }
  .notification:after {
    content: 'Got it';
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    text-align: center;
    position: absolute;
    left: 50%;
    bottom: 50%;
    opacity: 0;
    -o-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -ms-transform: translateY(200%) translateX(-50%);
    -webkit-transform: translateY(200%) translateX(-50%);
    transform: translateY(200%) translateX(-50%); }
    @media (max-width: 767px) {
      .notification:after {
        font-size: 16px; } }
  .notification p {
    font-weight: 500;
    font-size: 20px;
    font-size: 20px;
    color: #00447c;
    -o-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
    @media (max-width: 767px) {
      .notification p {
        font-size: 16px; } }
  .notification.show {
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    -o-transition: all 0.2s ease-in-out;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out; }
    .notification.show:hover p {
      -ms-transform: translate(0, -100%);
      -webkit-transform: translate(0, -100%);
      transform: translate(0, -100%);
      opacity: 0; }
    .notification.show:hover:after {
      -ms-transform: translateY(50%) translateX(-50%);
      -webkit-transform: translateY(50%) translateX(-50%);
      transform: translateY(50%) translateX(-50%);
      opacity: 1; }
  .notification-popup {
    position: fixed;
    overflow: hidden;
    bottom: 20px;
    right: 20px;
    margin-left: 20px;
    max-width: 400px;
    pointer-events: none;
    z-index: 1;
    -o-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
    .fixfixed .notification-popup {
      position: absolute;
      bottom: 20px; }
    .notification-popup.hide-popup {
      -o-transition-delay: 0.7s;
      -webkit-transition-delay: 0.7s;
      transition-delay: 0.7s;
      max-width: 88px; }
    .notification-popup__icon {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 60px;
      background: #00447c;
      z-index: 1;
      opacity: 0;
      cursor: pointer; }
      .notification-popup__icon i {
        position: absolute;
        top: 50%;
        left: 30px;
        -ms-transform: translate(0, -50%);
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
        font-size: 24px;
        color: #fff; }
    .notification-popup__content {
      margin-bottom: 60px;
      background: #00447c;
      background: #003968;
      border-bottom: none;
      opacity: 0;
      -ms-transform: translateY(100%);
      -webkit-transform: translateY(100%);
      transform: translateY(100%);
      -o-transition: all 0.2s cubic-bezier(0.7, 0, 0.3, 1);
      -webkit-transition: all 0.2s cubic-bezier(0.7, 0, 0.3, 1);
      transition: all 0.2s cubic-bezier(0.7, 0, 0.3, 1);
      -o-transition-delay: 0.5s;
      -webkit-transition-delay: 0.5s;
      transition-delay: 0.5s; }
      .notification-popup__content p {
        padding: 30px 80px 0 30px;
        line-height: 1.5;
        font-size: 20px;
        color: #ffffff; }
        @media (max-width: 767px) {
          .notification-popup__content p {
            padding: 25px 60px 0 25px;
            font-size: 16px; } }
      .notification-popup__content form {
        padding: 20px 30px 30px 30px; }
        @media (max-width: 767px) {
          .notification-popup__content form {
            padding: 20px; } }
        .notification-popup__content form .popup-input {
          position: relative; }
          .notification-popup__content form .popup-input > div {
            position: relative; }
            .notification-popup__content form .popup-input > div .error-tooltip {
              width: 25px;
              height: 25px;
              font-size: 9px;
              left: -25px; }
              .notification-popup__content form .popup-input > div .error-tooltip:after {
                right: -5px;
                top: 8px;
                border-width: 4px 0 4px 5px; }
          .notification-popup__content form .popup-input button {
            position: relative;
            right: 0;
            bottom: 0;
            top: 0;
            width: 60px;
            background: #ffffff;
            border: 2px solid #ffffff;
            margin-top: 10px;
            -o-transition: all 0.2s ease;
            -webkit-transition: all 0.2s ease;
            transition: all 0.2s ease; }
            @media (max-width: 767px) {
              .notification-popup__content form .popup-input button {
                width: 50px;
                padding: 0; } }
            .notification-popup__content form .popup-input button:before {
              position: relative;
              display: inline-block;
              font-family: "Black Tie";
              content: "";
              font-weight: 800;
              font-size: 26px;
              top: 0;
              -o-transition: all 0.2s ease;
              -webkit-transition: all 0.2s ease;
              transition: all 0.2s ease;
              color: #00447c; }
              @media (max-width: 767px) {
                .notification-popup__content form .popup-input button:before {
                  font-size: 22px; } }
            .notification-popup__content form .popup-input button:hover {
              background: #2a84db; }
              .notification-popup__content form .popup-input button:hover:before {
                color: #ffffff; }
          .notification-popup__content form .popup-input:before {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            background: white;
            z-index: 1;
            -o-transition: all 0.2s ease;
            -webkit-transition: all 0.2s ease;
            transition: all 0.2s ease;
            -o-transition-delay: 0.2s;
            -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
            opacity: 0;
            pointer-events: none; }
          .notification-popup__content form .popup-input:after {
            position: relative;
            display: inline-block;
            font-family: "Black Tie";
            content: "";
            font-weight: 600;
            font-size: 26px;
            top: 50%;
            -o-transition: all 0.4s cubic-bezier(0.155, 1.105, 0.295, 1.12);
            -webkit-transition: all 0.4s cubic-bezier(0.155, 1.105, 0.295, 1.12);
            transition: all 0.4s cubic-bezier(0.155, 1.105, 0.295, 1.12);
            -o-transition-delay: 0.5s;
            -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
            -ms-transform: scale(0.5, 0.5) translate(-50%, -50%);
            -webkit-transform: scale(0.5, 0.5) translate(-50%, -50%);
            transform: scale(0.5, 0.5) translate(-50%, -50%);
            moz-transform-origin: 50% 50%;
            -ms-transform-origin: 50% 50%;
            -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
            z-index: 1;
            position: absolute;
            left: 50%;
            color: #00447c;
            pointer-events: none;
            opacity: 0; }
          .notification-popup__content form .popup-input .form-group {
            padding: 0; }
        .notification-popup__content form input, .notification-popup__content form .newsletter-name-container, .notification-popup__content form select {
          border-bottom: none;
          background: #ffffff;
          height: 60px;
          font-size: 20px; }
          @media (max-width: 767px) {
            .notification-popup__content form input, .notification-popup__content form .newsletter-name-container, .notification-popup__content form select {
              height: 50px;
              font-size: 16px; } }
          .notification-popup__content form input::-webkit-input-placeholder, .notification-popup__content form .newsletter-name-container::-webkit-input-placeholder, .notification-popup__content form select::-webkit-input-placeholder {
            color: #fff;
            opacity: 1 !important; }
          .notification-popup__content form input:-moz-placeholder, .notification-popup__content form .newsletter-name-container:-moz-placeholder, .notification-popup__content form select:-moz-placeholder {
            color: #fff;
            opacity: 1 !important; }
          .notification-popup__content form input::-moz-placeholder, .notification-popup__content form .newsletter-name-container::-moz-placeholder, .notification-popup__content form select::-moz-placeholder {
            color: #fff;
            opacity: 1 !important; }
          .notification-popup__content form input:-ms-input-placeholder, .notification-popup__content form .newsletter-name-container:-ms-input-placeholder, .notification-popup__content form select:-ms-input-placeholder {
            color: #fff;
            opacity: 1 !important; }
        .notification-popup__content form .newsletter-name-container {
          margin-top: 10px;
          position: relative;
          overflow: hidden; }
          .notification-popup__content form .newsletter-name-container select {
            width: calc(100% + 60px);
            border: none; }
          @media (max-width: 767px) {
            .notification-popup__content form .newsletter-name-container:after {
              font-size: 16px; } }
        .notification-popup__content form input {
          text-indent: 20px; }
      .hide-popup .notification-popup__content {
        -ms-transform: translateY(100%) !important;
        -webkit-transform: translateY(100%) !important;
        transform: translateY(100%) !important;
        opacity: 0; }
    .notification-popup .close-popup {
      position: absolute;
      right: 20px;
      line-height: 1;
      top: 20px;
      z-index: 1;
      color: #ffffff;
      padding: 0; }
      .notification-popup .close-popup:before {
        position: absolute;
        top: 10px;
        bottom: 10px;
        width: 1px;
        background: #dedede;
        right: 40px;
        content: ''; }
    .notification-popup--show, .notification-popup--hide {
      z-index: 9999999;
      pointer-events: all; }
      .notification-popup--show .notification-popup__icon, .notification-popup--hide .notification-popup__icon {
        -webkit-animation-name: animJelly;
        animation-name: animJelly;
        -webkit-animation-duration: 1s;
        animation-duration: 1s;
        -webkit-animation-timing-function: linear;
        animation-timing-function: linear;
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        opacity: 1; }
    .notification-popup--show .notification-popup__content {
      -ms-transform: translateX(0);
      -webkit-transform: translateX(0);
      transform: translateX(0);
      max-height: 362px;
      opacity: 1; }
    .notification-popup--hide {
      -o-transition-delay: 0s !important;
      -webkit-transition-delay: 0s !important;
      transition-delay: 0s !important;
      opacity: 0; }
    .notification-popup.hide-popup .notification-popup__content {
      max-height: 0 !important; }
    .notification-popup.footer-hidden {
      opacity: 0;
      z-index: -1; }
    .notification-popup.signed-up .popup-input:before {
      opacity: 1; }
    .notification-popup.signed-up .popup-input:after {
      opacity: 1;
      -ms-transform: scale(1, 1) translate(-50%, -50%);
      -webkit-transform: scale(1, 1) translate(-50%, -50%);
      transform: scale(1, 1) translate(-50%, -50%); }

.error-tooltip {
  position: absolute;
  width: 30px;
  height: 30px;
  font-size: 14px;
  background: #d0152a;
  left: -40px;
  top: 10px;
  color: #ffffff;
  text-align: center;
  opacity: 0;
  -o-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  -ms-transform: scale(0, 0);
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
  z-index: 99; }
  @media (max-width: 767px) {
    .error-tooltip {
      left: -30px;
      width: 20px;
      height: 20px;
      font-size: 9px;
      top: 15px; } }
  .error-tooltip i {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  .error-tooltip.show {
    opacity: 1;
    -ms-transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1); }
  .form-group--radiocheck .error-tooltip {
    top: calc(50% + 16px);
    -ms-transform: translate(0, -50%) scale(0, 0);
    -webkit-transform: translate(0, -50%) scale(0, 0);
    transform: translate(0, -50%) scale(0, 0); }
    .form-group--radiocheck .error-tooltip.show {
      -ms-transform: translate(0, -50%) scale(1, 1);
      -webkit-transform: translate(0, -50%) scale(1, 1);
      transform: translate(0, -50%) scale(1, 1); }
    @media (max-width: 767px) {
      .form-group--radiocheck .error-tooltip {
        top: calc(50% + 31px); } }
  .error-tooltip:after {
    content: '';
    position: absolute;
    right: -6px;
    top: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #d0152a; }
    @media (max-width: 767px) {
      .error-tooltip:after {
        border-color: transparent transparent transparent #d0152a;
        top: 5px; } }

.warning {
  display: none;
  color: #d0152a;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1; }
  .warning.show {
    position: absolute;
    left: 0;
    bottom: 5px;
    font-size: 9px; }
    .form-group--radiocheck .warning.show {
      bottom: 26px; }

.modal {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.67);
  z-index: -1;
  text-align: center;
  opacity: 0;
  -o-transition: all 0.25s ease-in-out;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  overflow-x: hidden;
  overflow-y: auto; }
  .modal.raise-modal {
    z-index: 1000000000;
    display: block; }
  .modal.raise-modal-higher {
    z-index: 10000000000 !important; }
  .modal.show-modal {
    opacity: 1; }
  .modal .close-modal {
    position: absolute;
    z-index: 2;
    display: block;
    top: 44px;
    right: 44px;
    height: 52px;
    width: 52px;
    border-radius: 26px;
    background: #ffffff;
    text-align: center;
    -webkit-box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1); }
    @media (max-width: 950px) {
      .modal .close-modal {
        top: 35px;
        right: 35px;
        height: 30px;
        width: 30px;
        border-radius: 15px; } }
    @media (max-width: 767px) {
      .modal .close-modal {
        top: 10px;
        right: 10px; } }
    .modal .close-modal:hover {
      cursor: pointer; }
    .modal .close-modal i {
      font-size: 18px;
      line-height: 52px;
      vertical-align: top;
      color: #00447c; }
      @media (max-width: 950px) {
        .modal .close-modal i {
          font-size: 12px;
          line-height: 30px; } }

body .fancybox-overlay {
  background: rgba(29, 29, 29, 0.8); }

.fancybox-wrap .fancybox-close {
  z-index: 1200;
  position: absolute;
  top: -30px !important;
  right: -3px !important;
  width: 24px;
  height: 24px;
  cursor: pointer;
  text-indent: -9999px;
  background: none !important; }
  .fancybox-wrap .fancybox-close:before {
    content: '\f00d';
    position: absolute;
    top: 0px;
    left: 0px;
    font-family: fontAwesome;
    font-size: 21px;
    color: #fff;
    text-indent: 0;
    padding: 1px 0 2px;
    line-height: 1;
    width: 24px;
    text-align: center; }

.fancybox-wrap .fancybox-nav span {
  z-index: 1003;
  position: absolute;
  top: 50%;
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  width: auto;
  height: auto;
  visibility: visible;
  cursor: pointer;
  background: none;
  margin: 0; }
  .fancybox-wrap .fancybox-nav span:before {
    position: relative;
    width: 35px;
    font-family: FontAwesome;
    font-size: 35px;
    color: #fff; }

.fancybox-wrap .fancybox-prev {
  z-index: 1010;
  left: 5px; }
  .fancybox-wrap .fancybox-prev span:before {
    content: '\f104'; }

.fancybox-wrap .fancybox-next {
  z-index: 1010;
  right: 5px; }
  .fancybox-wrap .fancybox-next span:before {
    content: '\f105'; }

body.wb-homepage-3 #wrap {
  background: url("../img/home-bg.jpg") no-repeat #f2f9fe;
  background-position: top center; }

body.wb-homepage-3 .main-body {
  padding: 60px 0 0; }
  @media (max-width: 767px) {
    body.wb-homepage-3 .main-body {
      padding: 50px 0 0; } }
  body.wb-homepage-3 .main-body:after {
    display: none; }
  body.wb-homepage-3 .main-body .standard-widget {
    padding: 0 0 0px; }
    @media (max-width: 767px) {
      body.wb-homepage-3 .main-body .standard-widget {
        padding: 0 0 50px; } }
    body.wb-homepage-3 .main-body .standard-widget .button {
      margin-top: 60px; }
      @media (max-width: 767px) {
        body.wb-homepage-3 .main-body .standard-widget .button {
          margin-top: 30px; } }
    body.wb-homepage-3 .main-body .standard-widget + .latest-project-widget {
      margin-top: 0 !important; }

body.wb-homepage-3 .image-slider-widget {
  position: relative;
  z-index: 0;
  /*clip-path: url(#clip2);
  -webkit-clip-path: url(#clip2);*/
  overflow: hidden; }
  body.wb-homepage-3 .image-slider-widget:before {
    display: none;
    content: " ";
    position: absolute;
    z-index: 3;
    width: 100%;
    height: 33px;
    left: 0;
    right: 0;
    top: 0;
    background: url("../img/top-curve-blue.png") no-repeat;
    background-size: 100% 100%; }
    @media (max-width: 991px) {
      body.wb-homepage-3 .image-slider-widget:before {
        height: 22px; } }
    @media (max-width: 767px) {
      body.wb-homepage-3 .image-slider-widget:before {
        height: 11px; } }
  body.wb-homepage-3 .image-slider-widget .widget-slider .slide {
    height: 653px; }
    @media (max-width: 767px) {
      body.wb-homepage-3 .image-slider-widget .widget-slider .slide {
        height: 350px; } }
    body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption {
      text-align: center;
      z-index: 3; }
      @media (max-width: 767px) {
        body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption {
          width: 100% !important; } }
      body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption .slide-caption-inner {
        padding-bottom: 17px; }
      body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption h4 {
        font-weight: 300;
        color: #ffffff;
        font-size: 40px;
        line-height: 1.1; }
        body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption h4 + h5 {
          margin-top: 12px; }
        @media (max-width: 767px) {
          body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption h4 {
            font-size: 30px; } }
      body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption h5 {
        font-weight: 700;
        color: #ffffff;
        font-size: 25px;
        line-height: 1.2;
        text-transform: none; }
        @media (max-width: 767px) {
          body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption h5 {
            font-size: 20px; } }
      body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption .button {
        background: #ffffff;
        color: #00447c;
        margin-top: 44px;
        padding: 14px 48px; }
        body.wb-homepage-3 .image-slider-widget .widget-slider .slide .slide-caption .button:hover, body.wb-homepage .image-slider-widget .widget-slider .slide .slide-caption .button:focus {
          color: #ffffff;
          background: #00447c; }
    body.wb-homepage-3 .image-slider-widget .widget-slider .slide .img {
      -webkit-filter: grayscale(100%);
      -moz-filter: grayscale(100%);
      -ms-filter: grayscale(100%);
      -o-filter: grayscale(100%);
      filter: grayscale(100%);
      -webkit-filter: gray;
      filter: gray;
      z-index: 0; }
    body.wb-homepage-3 .image-slider-widget .widget-slider .slide .img-filter, body.wb-homepage-3 .image-slider-widget .widget-slider .slide .img-filter {
        position: absolute;
        z-index: 1;
        background: #00447c;
        opacity: 0.75;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
	
  body.wb-homepage-3 .image-slider-widget .widget-slider:before, body.wb-homepage .image-slider-widget .widget-slider:after {
    display: none !important; }

body.wb-homepage-3 .latest-project-widget {
  /*clip-path: url(#clip1);
  -webkit-clip-path: url(#clip1);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);*/ }
  body.wb-homepage-3 .latest-project-widget:before, body.wb-homepage .latest-project-widget:after {
    display: none; }

body.wb-homepage-3 footer:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: -100px;
  height: 100px;
  background: white;
  z-index: -1; }

body.wb-homepage-3 svg {
  width: 0;
  height: 0;
  position: absolute; }

.under-slider {
  display: block;
  color: #00447c;
  font-size: 30px;
  line-height: 1;
  height: 30px;
  width: 30px;
  position: absolute;
  z-index: 2;
  left: 50%;
  -ms-transform: translate(-50%, -15px);
  -webkit-transform: translate(-50%, -15px);
  transform: translate(-50%, -15px); }
  @media (max-width: 767px) {
    .under-slider {
      -ms-transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0);
      transform: translate(-50%, 0); } }
  .under-slider i {
    line-height: 1; }

@media (max-width: 767px) {
  .blog-widget {
    padding-bottom: 10px; } }

.blog-widget .container > h3 {
  font-weight: 300;
  font-size: 40px;
  line-height: 1.1;
  position: relative;
  z-index: 0;
  padding-right: 130px; }
  @media (max-width: 767px) {
    .blog-widget .container > h3 {
      font-size: 30px;
      padding-right: 0px; } }
  @media (max-width: 767px) {
    .blog-widget .container > h3 span {
      display: block; } }
  .blog-widget .container > h3 .button {
    position: absolute;
    z-index: 1;
    right: -3px;
    top: 19px;
    font-weight: 300;
    color: #00447c; }
    @media (max-width: 767px) {
      .blog-widget .container > h3 .button {
        position: relative;
        right: auto;
        top: auto;
        margin-top: 20px; } }

.blog-widget .flex-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 93px; }
  @media (max-width: 767px) {
    .blog-widget .flex-list {
      margin-top: 0px; } }
  html.ie10 .blog-widget .flex-list {
    display: block; }
  .blog-widget .flex-list a {
    width: calc(50% - 34px);
    -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    position: relative;
    z-index: 0;
    overflow: hidden; }
    @media (max-width: 767px) {
      .blog-widget .flex-list a {
        width: 100%;
        margin-top: 34px; } }
    html.ie10 .blog-widget .flex-list a {
      display: inline-block;
      vertical-align: top; }
      @media (min-width: 768px) {
        html.ie10 .blog-widget .flex-list a:nth-child(2n) {
          margin-left: 63px; } }
      @media (max-width: 767px) {
        html.ie10 .blog-widget .flex-list a {
          width: 100%;
          margin-top: 34px; } }
    .blog-widget .flex-list a .img {
      position: relative;
      z-index: 1;
      height: 587px; }
      @media (max-width: 991px) {
        .blog-widget .flex-list a .img {
          height: 480px; } }
      @media (max-width: 767px) {
        .blog-widget .flex-list a .img {
          height: 400px; } }
    .blog-widget .flex-list a .text {
      position: absolute;
      z-index: 2;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 0 70px 65px;
      background: #ffffff;
      text-align: center; }
      @media (max-width: 991px) {
        .blog-widget .flex-list a .text {
          padding: 0 25px 30px; } }
      .blog-widget .flex-list a .text > img {
        position: absolute;
        z-index: 3;
        display: block;
        width: 100%;
        height: auto;
        top: -12px;
        left: 0;
        right: 0;
        height: 12px;
        width: 100%; }
      .blog-widget .flex-list a .text-inner {
        padding-top: 104px; }
        @media (max-width: 991px) {
          .blog-widget .flex-list a .text-inner {
            padding-top: 75px; } }
        @media (max-width: 767px) {
          .blog-widget .flex-list a .text-inner {
            padding-top: 18px; } }
      .blog-widget .flex-list a .text .height-restrictor {
        -o-transition: max-height 250ms ease-in-out;
        -webkit-transition: max-height 250ms ease-in-out;
        transition: max-height 250ms ease-in-out;
        max-height: 0px;
        overflow: hidden; }
        @media (max-width: 767px) {
          .blog-widget .flex-list a .text .height-restrictor {
            max-height: none;
            overflow: auto; } }
      .blog-widget .flex-list a .text h3 {
        font-weight: 700;
        color: #00447c;
        font-size: 25px;
        line-height: 1.4;
        text-transform: none; }
        .blog-widget .flex-list a .text h3:before {
          content: "\F094";
          font-family: "Black Tie";
          font-size: 30px;
          line-height: 37px;
          position: absolute;
          z-index: 0;
          left: 50%;
          top: 18px;
          -ms-transform: translate(-50%, 0);
          -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          font-weight: normal; }
          @media (max-width: 767px) {
            .blog-widget .flex-list a .text h3:before {
              display: none; } }
      .blog-widget .flex-list a .text p {
        margin: 30px 0 0;
        color: #010101; }
        @media (max-width: 991px) {
          .blog-widget .flex-list a .text p {
            display: none; } }
      .blog-widget .flex-list a .text .button {
        margin-top: 35px;
        color: #ffffff !important; }
        @media (max-width: 767px) {
          .blog-widget .flex-list a .text .button {
            padding: 14px 32px;
            margin-top: 20px; } }
    .blog-widget .flex-list a:nth-child(n + 3) {
      margin-top: 68px; }
      @media (max-width: 991px) {
        .blog-widget .flex-list a:nth-child(n + 3) {
          margin-top: 34px; } }
    .blog-widget .flex-list a:hover .text .height-restrictor, .blog-widget .flex-list a:focus .text .height-restrictor {
      max-height: 250px; }
    .blog-widget .flex-list a:hover .text h3:before, .blog-widget .flex-list a:focus .text h3:before {
      content: "\F095"; }
    .blog-widget .flex-list a:hover .text p, .blog-widget .flex-list a:focus .text p {
      color: #010101; }
    .blog-widget .flex-list a:hover .text .button, .blog-widget .flex-list a:focus .text .button {
      color: #ffffff !important; }

/* IE OVERRIDES */
_:-ms-lang(x), body.wb-homepage-3 #wrap {
  background: #f2f9fe !important; }

_:-ms-lang(x), body.wb-homepage-3 .home-slider:after,
_:-ms-lang(x), body.wb-homepage-3 .latest-project-widget:before,
_:-ms-lang(x), body.wb-homepage-3 .latest-project-widget:after,
_:-ms-lang(x), body.wb-homepage-3 .image-slider-widget:before,
_:-ms-lang(x), body.wb-homepage-3 .main-body:after {
  display: block !important; }

.sitemap-list,
.sitemap-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
  clear: both; }

.sitemap-list > li {
  padding: 40px 0;
  border-bottom: 2px solid #e5e5e5;
  font-size: 24px; }
  @media (max-width: 767px) {
    .sitemap-list > li {
      padding: 25px 0;
      font-size: 18px; } }
  .sitemap-list > li.child-page {
    margin-left: 2em;
    padding: .5em; }
  .sitemap-list > li a {
    display: block;
    color: #00447c; }
  .sitemap-list > li ul {
    margin-top: 15px; }
    .sitemap-list > li ul li {
      font-size: 16px; }
      @media (max-width: 767px) {
        .sitemap-list > li ul li {
          font-size: 14px; } }
      .sitemap-list > li ul li a {
        color: #222; }
        .sitemap-list > li ul li a:before {
          content: "- ";
          margin-right: 6px; }
      .sitemap-list > li ul li ul {
        margin: 5px 0;
        padding-left: 25px; }

body.maintenance section.container {
  height: 100%;
  position: relative;
  z-index: 0;
  text-align: center;
  display: block; }

body.maintenance article {
  margin: 25px 0; }
  @media (min-width: 768px) {
    body.maintenance article {
      margin: 0;
      position: absolute;
      z-index: 1;
      top: 50%;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); } }

body.maintenance i.fa {
  line-height: 1;
  color: #fff;
  font-size: 90px; }

body.maintenance .text-container {
  color: #03A9F4;
  background: #fff;
  padding: 25px;
  margin-top: 25px;
  border-radius: 25px; }
  @media (min-width: 768px) {
    body.maintenance .text-container {
      padding: 40px;
      margin-top: 40px;
      border-radius: 40px; } }

body.wb-products .main-body {
  padding-top: 95px; }
  @media (max-width: 767px) {
    body.wb-products .main-body {
      padding-top: 50px; } }

.products-top-widget .container {
  max-width: 910px;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.products-top-widget .main-description {
  width: calc(63% - 1px);
  padding-right: 50px;
  border-right: 1px solid #becad2; }
  @media (max-width: 835px) {
    .products-top-widget .main-description {
      display: block;
      width: 100%;
      padding-right: 0;
      border-right: 0;
      padding-bottom: 50px;
      border-bottom: 1px solid #becad2; } }
  @media (max-width: 767px) {
    .products-top-widget .main-description {
      padding-bottom: 25px; } }
  .products-top-widget .main-description h1 {
    font-weight: 300;
    font-size: 40px;
    line-height: 1.1;
    color: #00447c;
    margin: 0; }
    @media (max-width: 767px) {
      .products-top-widget .main-description h1 {
        font-size: 30px; } }
    .products-top-widget .main-description h1 + * {
      margin: 38px 0 0; }
      @media (max-width: 767px) {
        .products-top-widget .main-description h1 + * {
          margin-top: 15px; } }

.products-top-widget .quicklinks {
  width: 37%;
  padding-left: 50px; }
  @media (max-width: 835px) {
    .products-top-widget .quicklinks {
      display: block;
      width: 100%;
      padding-left: 0;
      padding-top: 50px; } }
  @media (max-width: 767px) {
    .products-top-widget .quicklinks {
      padding-top: 25px; } }
  .products-top-widget .quicklinks h2 {
    font-weight: 300;
    font-size: 40px;
    line-height: 1.1;
    color: #00447c;
    margin: 0; }
    @media (max-width: 767px) {
      .products-top-widget .quicklinks h2 {
        font-size: 30px; } }
    .products-top-widget .quicklinks h2 + * {
      margin: 31px 0 0; }
      @media (max-width: 767px) {
        .products-top-widget .quicklinks h2 + * {
          margin-top: 15px; } }
  .products-top-widget .quicklinks ul {
    list-style: none;
    padding: 0; }
    .products-top-widget .quicklinks ul li + li {
      border-top: 1px solid #becad2; }
    .products-top-widget .quicklinks ul a {
      font-size: 14px;
      line-height: 18px;
      color: #00447c;
      font-weight: 700;
      position: relative;
      z-index: 0;
      display: block;
      text-transform: uppercase;
      padding: 13px 45px 15px 0; }
      .products-top-widget .quicklinks ul a:after {
        content: "\F097";
        font-family: "Black Tie";
        font-size: 12px;
        line-height: 1;
        color: #00447c;
        font-weight: normal;
        position: absolute;
        z-index: 1;
        top: 17px;
        right: 1px;
        display: block; }

#main-desc {
  border-right: none;
  width: 1000px!important;
}

#tb-page-title {
  text-align: center;
}

#tb-black-title {
  color: black;
}

#pr-header-container {
  width: 100%;
}

#pr-header-products li {
  list-style: none;
  font-size: 12px;
}

#pr-header-products ul {
  padding-left: 0px;
}

#tb-title {
  color: Black;
  font-weight: bold;
  text-align: center;
}

.masterCol {
  border-right: 1px solid grey;
}

.noBorderCol {
  border: none;
}

.masterCol a {
  tect-decoration: none;
  border: solid 1px #00447C;
}

.masterCol h6 {
  color: black;
  font-weight: bold;
  text-align: center;
}

#pr-header-product-index h6 {
  white-space: nowrap;
}

#pr-header-product-index li {
  list-style: none;
  font-size: 12px;
}

#pr-header-product-index ul {
  padding-left: 0px;
}

.productsBtn {
  text-align: left;
  margin-bottom: 10px;
  color: black;
  width: 100%;
}

.productsBtn:hover {
  border: 1px solid white;
  color: white;
  background-color: #00447C;
}

.middleCol {
  padding-left: 0px!important;
  padding-right: 5px;
}

/* #products-top-widget {
  background-color: white;
} */

.tb-main-content {
  float: center;
}

#products-select-wrap {
  background-color: #F2F9FE;
}

.product-widget .container {
  max-width: 910px; }

.single-product .product-widget .container {
  max-width: 1050px; }
  .single-product .product-widget .container:before, .single-product .product-widget .container:after {
    display: none; }

.listing-filter-widget + .product-widget,
.product-widget + .product-widget {
  margin-top: 0 !important;
  padding-top: 90px; }
  @media (max-width: 767px) {
    .listing-filter-widget + .product-widget,
    .product-widget + .product-widget {
      padding-top: 40px; } }

.product-widget--title {
  position: relative;
  z-index: 1;
  display: block;
  font-size: 40px;
  line-height: 1.1; }
  @media (max-width: 767px) {
    .product-widget--title {
      font-size: 25px; } }
  .product-widget--title span {
    position: relative;
    z-index: 1;
    display: inline-block;
    vertical-align: middle; }
    @media (max-width: 767px) {
      .product-widget--title span {
        display: block; } }
  .product-widget--title .product-popup {
    position: absolute;
    z-index: 2;
    display: none;
    top: 95px;
    left: -20px;
    right: -20px;
    background: #00447c;
    padding: 60px 79px 56px;
    -webkit-box-shadow: 0px 5px 36px 4px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 5px 36px 4px rgba(0, 0, 0, 0.25); }
    @media (max-width: 950px) {
      .product-widget--title .product-popup {
        left: 0px;
        right: 0px;
        padding: 30px 40px; } }
    @media (max-width: 767px) {
      .product-widget--title .product-popup {
        top: 106px;
        padding: 25px; } }
    .product-widget--title .product-popup.active {
      display: block; }
    .product-widget--title .product-popup--close {
      position: absolute;
      z-index: 2;
      display: block;
      top: -23px;
      right: -23px;
      height: 46px;
      width: 46px;
      border-radius: 23px;
      background: #ffffff;
      text-align: center;
      -webkit-box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1); }
      @media (max-width: 950px) {
        .product-widget--title .product-popup--close {
          top: -15px;
          right: -15px;
          height: 30px;
          width: 30px;
          border-radius: 15px; } }
      .product-widget--title .product-popup--close:hover {
        cursor: pointer; }
      .product-widget--title .product-popup--close i {
        font-size: 16px;
        line-height: 46px;
        vertical-align: top;
        color: #00447c; }
        @media (max-width: 950px) {
          .product-widget--title .product-popup--close i {
            font-size: 12px;
            line-height: 30px; } }
    .product-widget--title .product-popup--button {
      background: #ffffff;
      display: inline-block;
      width: 100px;
      height: 43px;
      border-radius: 10px;
      position: relative;
      z-index: 0;
      text-transform: none; }
      @media (max-width: 767px) {
        .product-widget--title .product-popup--button {
          display: block; } }
      .product-widget--title .product-popup--button span {
        font-size: 16px;
        line-height: 20px;
        font-weight: 700; }
        .product-widget--title .product-popup--button span sup {
          font-size: 10px; }
      .product-widget--title .product-popup--button span,
      .product-widget--title .product-popup--button img {
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
      .product-widget--title .product-popup--button img {
        height: 33px;
        width: auto; }
      .product-widget--title .product-popup--button + .product-popup--button {
        margin-left: 2px; }
        @media (max-width: 767px) {
          .product-widget--title .product-popup--button + .product-popup--button {
            margin: 5px 0 0 0; } }
    .product-widget--title .product-popup h4 {
      color: #ffffff;
      font-size: 40px;
      line-height: 1.1;
      margin: 14px 0 0; }
      @media (max-width: 767px) {
        .product-widget--title .product-popup h4 {
          font-size: 30px;
          margin: 10px 0 0; } }
    .product-widget--title .product-popup p {
      color: #ffffff;
      font-size: 18px;
      line-height: 1.72;
      text-transform: none;
      margin: 20px 0 0; }
      @media (max-width: 767px) {
        .product-widget--title .product-popup p {
          font-size: 16px;
          margin: 15px 0 0; } }

.product-widget--button {
  position: relative;
  z-index: 4;
  display: inline-block;
  vertical-align: middle;
  height: 37px;
  border: 2px solid #00447c;
  font-weight: 700;
  font-size: 12px;
  line-height: 33px;
  padding: 0 18px;
  margin: 2px 0 0 22px;
  border-radius: 10px; }
  @media (max-width: 767px) {
    .product-widget--button {
      margin: 10px 0 0 0; } }
  .product-widget--button[href="#"], .product-widget--button[href=""] {
    cursor: pointer !important; }
  .product-widget--button.active:after {
    display: block;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    z-index: 4;
    top: 65px;
    left: 50%;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    border-style: solid;
    border-width: 0 18.5px 18px 18.5px;
    border-color: transparent transparent #00447c transparent;
    font-size: 0;
    line-height: 0; }
    @media (max-width: 767px) {
      .product-widget--button.active:after {
        top: 45px; } }

.product-widget .flex-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 58px;
  position: relative;
  z-index: 0; }
  @media (max-width: 767px) {
    .product-widget .flex-list {
      margin-top: 20px; } }
  .product-widget .flex-list a {
    width: calc(50% - 20px);
    position: relative;
    z-index: 0;
    background: #ffffff;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    margin: 20px 0; }
    @media (max-width: 550px) {
      .product-widget .flex-list a {
        width: 100%; } }
    .product-widget .flex-list a .img {
      position: relative;
      z-index: 0;
      width: calc(100% - 40px);
      margin: 20px 20px 31px;
      padding-top: 55.3%;
      background-color: #f2f9fe; }
    .product-widget .flex-list a .text {
      position: relative;
      z-index: 0;
      width: 100%;
      padding: 0 25px 40px;
      text-align: center; }
      @media (max-width: 767px) {
        .product-widget .flex-list a .text {
          padding: 0 20px 30px; } }
      .product-widget .flex-list a .text h3 {
        text-transform: none;
        font-size: 30px;
        line-height: 1.4;
        font-weight: 700; }
        @media (max-width: 767px) {
          .product-widget .flex-list a .text h3 {
            font-size: 20px; } }
        .product-widget .flex-list a .text h3 + p {
          margin-top: 10px; }
      .product-widget .flex-list a .text p {
        color: #969696;
        font-size: 20px;
        line-height: 1.35;
        font-weight: 400; }
        @media (max-width: 767px) {
          .product-widget .flex-list a .text p {
            font-size: 16px; } }

.widget-container + .product-widget--noresults {
  margin-top: 34px !important;
  padding-top: 0 !important; }
  @media (max-width: 767px) {
    .widget-container + .product-widget--noresults {
      margin-top: 60px !important;
      padding-top: 0 !important; } }

.product-widget--noresults .inner-container {
  text-align: center;
  max-width: 582px;
  margin: 0 auto; }

.product-widget--noresults img + h4 {
  margin-top: 22px 0 0; }

.product-widget--noresults h4 {
  color: #3b8ede;
  font-size: 30px;
  line-height: 1.33;
  text-transform: uppercase;
  font-weight: 700; }
  .product-widget--noresults h4 + p {
    margin-top: 15px; }

.product-widget--noresults .button {
  padding: 14px 60px;
  margin-top: 30px; }

.products-container {
  max-width: 1280px;
  width: 100%;
  height: 100%;
  padding: 0 70px;
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: left; }
  @media (max-width: 950px) {
    .products-container {
      padding: 0 50px; } }
  @media (max-width: 767px) {
    .products-container {
      padding: 0 25px; } }
  .products-container .products-inner-container {
    background: #f2f9fe;
    margin: 70px -30px; }
    @media (max-width: 950px) {
      .products-container .products-inner-container {
        margin: 50px 0; } }
    @media (max-width: 767px) {
      .products-container .products-inner-container {
        margin: 25px 0; } }
    .products-container .products-inner-container .banner {
      position: relative;
      z-index: 0;
      display: block;
      height: 386px; }
      @media (max-width: 767px) {
        .products-container .products-inner-container .banner {
          height: 250px; } }
      .products-container .products-inner-container .banner .banner-text {
        position: absolute;
        z-index: 4;
        top: 40.8%;
        left: 70px;
        right: 70px;
        display: block; }
        @media (max-width: 950px) {
          .products-container .products-inner-container .banner .banner-text {
            left: 50px;
            right: 50px; } }
        @media (max-width: 767px) {
          .products-container .products-inner-container .banner .banner-text {
            left: 25px;
            right: 25px;
            top: 32.5%; } }
        .products-container .products-inner-container .banner .banner-text h2,
        .products-container .products-inner-container .banner .banner-text h1,
        .products-container .products-inner-container .banner .banner-text h3 {
          color: #ffffff;
          font-weight: 100; }
        .products-container .products-inner-container .banner .banner-text h1 {
          font-size: 45px;
          margin-top: 13px !important; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .banner .banner-text h1 {
              font-size: 30px;
              margin-top: 5px !important; } }
        .products-container .products-inner-container .banner .banner-text h2 {
          font-size: 20px;
          text-transform: uppercase; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .banner .banner-text h2 {
              font-size: 16px; } }
        .products-container .products-inner-container .banner .banner-text h3 {
          font-size: 20px;
          margin-top: 22px !important;
          text-transform: none; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .banner .banner-text h3 {
              font-size: 16px;
              margin-top: 15px !important; } }
      .products-container .products-inner-container .banner .img {
        position: relative;
        z-index: 0;
        display: block;
        height: 386px;
        width: 100%; }
        @media (max-width: 767px) {
          .products-container .products-inner-container .banner .img {
            height: 250px; } }
        .products-container .products-inner-container .banner .img:before, .products-container .products-inner-container .banner .img:after {
          position: absolute;
          display: block;
          content: " ";
          width: 100%;
          left: 0;
          right: 0;
          bottom: 0; }
        .products-container .products-inner-container .banner .img:before {
          z-index: 1;
          height: 100%;
          top: 0;
          background-image: -webkit-linear-gradient(top, transparent 0%, #00447c 64%);
          background-image: -o-linear-gradient(top, transparent 0%, #00447c 64%);
          background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(64%, #00447c));
          background-image: linear-gradient(to bottom, transparent 0%, #00447c 64%);
          background-repeat: repeat-x;
          filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#FF00447C', GradientType=0);
          opacity: 0.65; }
        .products-container .products-inner-container .banner .img:after {
          z-index: 2;
          height: 26px;
          background: url("../img/bottom-curve-blue.png") no-repeat;
          background-size: 100% 100%; }
          @media (max-width: 991px) {
            .products-container .products-inner-container .banner .img:after {
              height: 17px; } }
          @media (max-width: 767px) {
            .products-container .products-inner-container .banner .img:after {
              height: 8px; } }
    .products-container .products-inner-container .content {
      padding: 70px 40px 72px;
      display: -webkit-box;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media (max-width: 767px) {
        .products-container .products-inner-container .content {
          padding: 25px 15px; } }
    .products-container .products-inner-container .half-width {
      padding: 0 30px;
      width: 50%; }
      @media (max-width: 991px) {
        .products-container .products-inner-container .half-width {
          padding: 0;
          width: 100%; }
          .products-container .products-inner-container .half-width + .half-width {
            margin-top: 35px; } }
      @media (max-width: 767px) {
        .products-container .products-inner-container .half-width + .half-width {
          margin-top: 25px; } }
      .products-container .products-inner-container .half-width--singular + .half-width--singular {
        margin-top: 35px; }
        @media (max-width: 767px) {
          .products-container .products-inner-container .half-width--singular + .half-width--singular {
            margin-top: 25px; } }
      .products-container .products-inner-container .half-width--documents h4 {
        font-size: 30px;
        text-transform: none; }
        @media (max-width: 767px) {
          .products-container .products-inner-container .half-width--documents h4 {
            font-size: 22px; } }
        .products-container .products-inner-container .half-width--documents h4 + ul {
          margin-top: 25px; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width--documents h4 + ul {
              margin-top: 20px; } }
      .products-container .products-inner-container .half-width--documents ul {
        list-style: none;
        padding: 0; }
      .products-container .products-inner-container .half-width--documents li + li {
        margin-top: 15px; }
      .products-container .products-inner-container .half-width--documents a {
        display: block;
        padding: 10px 90px 10px 10px;
        background: #ffffff;
        -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
        position: relative;
        z-index: 0; }
        @media (max-width: 550px) {
          .products-container .products-inner-container .half-width--documents a {
            padding: 10px; } }
        .products-container .products-inner-container .half-width--documents a .icon-left-cont {
          display: inline-block;
          vertical-align: top;
          height: 59px;
          line-height: 59px;
          width: 59px;
          background: #f2f9fe;
          text-align: center;
          margin-right: 16px; }
          @media (max-width: 550px) {
            .products-container .products-inner-container .half-width--documents a .icon-left-cont {
              height: 30px;
              line-height: 30px;
              width: 30px;
              margin-right: 10px; } }
          .products-container .products-inner-container .half-width--documents a .icon-left-cont i[class^="icon-"],
          .products-container .products-inner-container .half-width--documents a .icon-left-cont i[class*=" icon-"] {
            color: #00447c;
            font-size: 26px;
            line-height: 59px; }
            @media (max-width: 550px) {
              .products-container .products-inner-container .half-width--documents a .icon-left-cont i[class^="icon-"],
              .products-container .products-inner-container .half-width--documents a .icon-left-cont i[class*=" icon-"] {
                font-size: 15px;
                line-height: 30px; } }
        .products-container .products-inner-container .half-width--documents a .text-cont {
          display: inline-block;
          vertical-align: top;
          width: calc(100% - 70px - 81px);
          font-weight: 700;
          font-size: 20px;
          line-height: 26px;
          padding: 16px 0 17px; }
          @media (max-width: 550px) {
            .products-container .products-inner-container .half-width--documents a .text-cont {
              width: calc(100% - 45px);
              font-size: 16px;
              line-height: 22px;
              padding: 4px 0 4px; } }
        .products-container .products-inner-container .half-width--documents a .icon-right-cont {
          display: block;
          background: #ffffff;
          text-align: center;
          border-left: 1px solid #e5eaef;
          position: absolute;
          z-index: 1;
          top: 10px;
          right: 10px;
          padding-left: 10px; }
          @media (max-width: 550px) {
            .products-container .products-inner-container .half-width--documents a .icon-right-cont {
              display: none; } }
          .products-container .products-inner-container .half-width--documents a .icon-right-cont .btr {
            height: 59px;
            line-height: 59px;
            width: 59px;
            color: #00447c;
            font-size: 24px; }
      .products-container .products-inner-container .half-width--facts {
        background: #ffffff;
        -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
        padding: 36px 40px 42px; }
        @media (max-width: 767px) {
          .products-container .products-inner-container .half-width--facts {
            padding: 15px; } }
        .products-container .products-inner-container .half-width--facts h4 {
          font-size: 30px;
          text-transform: none; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width--facts h4 {
              font-size: 22px; } }
          .products-container .products-inner-container .half-width--facts h4 + ul {
            margin-top: 25px; }
            @media (max-width: 767px) {
              .products-container .products-inner-container .half-width--facts h4 + ul {
                margin-top: 20px; } }
        .products-container .products-inner-container .half-width--facts ul {
          padding: 0; }
          .products-container .products-inner-container .half-width--facts ul li {
            display: block;
            position: relative;
            z-index: 0;
            font-size: 18px;
            line-height: 34px;
            padding-left: 28px; }
            @media (max-width: 767px) {
              .products-container .products-inner-container .half-width--facts ul li {
                font-size: 16px;
                line-height: 26px;
                padding-left: 25px; } }
            .products-container .products-inner-container .half-width--facts ul li + li {
              margin-top: 3px; }
              @media (max-width: 767px) {
                .products-container .products-inner-container .half-width--facts ul li + li {
                  margin-top: 5px; } }
            .products-container .products-inner-container .half-width--facts ul li:before {
              display: block;
              position: absolute;
              z-index: 1;
              content: "\F012";
              font-family: "Black Tie";
              font-weight: 900;
              top: 0;
              left: 0;
              font-size: 16px;
              line-height: 34px;
              color: #00447c; }
              @media (max-width: 767px) {
                .products-container .products-inner-container .half-width--facts ul li:before {
                  font-size: 13px;
                  line-height: 26px; } }
          .products-container .products-inner-container .half-width--facts ul strong {
            font-weight: 700;
            color: #00447c;
            margin-right: 6px; }
            @media (max-width: 767px) {
              .products-container .products-inner-container .half-width--facts ul strong {
                margin-right: 3px; } }
      .products-container .products-inner-container .half-width--reccommended {
        background: #00447c; }
        .products-container .products-inner-container .half-width--reccommended .inner-container {
          padding: 35px 40px 41px; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width--reccommended .inner-container {
              padding: 15px; } }
        .products-container .products-inner-container .half-width--reccommended h4 {
          font-size: 26px;
          color: #ffffff; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width--reccommended h4 {
              font-size: 22px; } }
          .products-container .products-inner-container .half-width--reccommended h4 + p {
            margin: 17px 0 0; }
        .products-container .products-inner-container .half-width--reccommended p {
          font-size: 16px;
          line-height: 24px;
          color: #ffffff; }
        .products-container .products-inner-container .half-width--reccommended a {
          display: block;
          width: 100%;
          background: #003561;
          color: #ffffff;
          font-size: 18px;
          line-height: 26px;
          padding: 11px 40px 13px;
          font-weight: 700; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width--reccommended a {
              padding: 11px 15px 13px;
              font-size: 16px;
              line-height: 24px; } }
      .products-container .products-inner-container .half-width .contact-widget .contact-cont {
        padding: 32px 40px 41px; }
        @media (max-width: 767px) {
          .products-container .products-inner-container .half-width .contact-widget .contact-cont {
            padding: 15px; } }
        .products-container .products-inner-container .half-width .contact-widget .contact-cont > h3 {
          font-size: 30px;
          font-weight: 100; }
          @media (max-width: 767px) {
            .products-container .products-inner-container .half-width .contact-widget .contact-cont > h3 {
              font-size: 22px; } }
          .products-container .products-inner-container .half-width .contact-widget .contact-cont > h3 + p,
          .products-container .products-inner-container .half-width .contact-widget .contact-cont > h3 + form,
          .products-container .products-inner-container .half-width .contact-widget .contact-cont > h3 + .form-complete {
            margin: 29px 0 0; }
        .products-container .products-inner-container .half-width .contact-widget .contact-cont .button-container {
          margin-top: 15px; }
          .products-container .products-inner-container .half-width .contact-widget .contact-cont .button-container button {
            padding-right: 0;
            padding-left: 0;
            width: 100%;
            text-align: center; }
        .products-container .products-inner-container .half-width .contact-widget .contact-cont form + p,
        .products-container .products-inner-container .half-width .contact-widget .contact-cont .form-complete + p {
          display: block;
          text-align: center;
          margin: 22px 0 0;
          font-size: 14px;
          line-height: 19px; }
  .products-container.single-products-container {
    position: static;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    padding: 0;
    height: auto; }
    .products-container.single-products-container .products-inner-container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 991px) {
        .products-container.single-products-container .products-inner-container {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
          -ms-flex-direction: column;
          flex-direction: column; } }
    .products-container.single-products-container .slider-show .slide {
      height: 260px; }
    .products-container.single-products-container .slider-control {
      margin-top: 15px; }
      .products-container.single-products-container .slider-control .slick-list {
        padding: 0 !important; }
      .products-container.single-products-container .slider-control .slide {
        height: 90px;
        width: calc(33.33% - 10px) !important;
        position: relative;
        z-index: 0; }
        .products-container.single-products-container .slider-control .slide:nth-child(2), .products-container.single-products-container .slider-control .slide:nth-child(3) {
          margin-left: 15px; }
        .products-container.single-products-container .slider-control .slide:before {
          position: absolute;
          z-index: 1;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          border: 3px solid transparent;
          display: block;
          content: " "; }
        .products-container.single-products-container .slider-control .slide:hover {
          cursor: pointer; }
          .products-container.single-products-container .slider-control .slide:hover:before {
            cursor: pointer; }
        .products-container.single-products-container .slider-control .slide.slick-current:before {
          border-color: #3b8ede; }

h1.page-title + .project-widget {
  margin-top: 100px !important; }
  @media (max-width: 767px) {
    h1.page-title + .project-widget {
      margin-top: 30px !important; } }

.project-widget {
  margin-top: 0 !important; }
  .project-widget + .pagenumber-container {
    margin-top: 65px; }
  .project-widget .flex-list {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    html.ie10 .project-widget .flex-list {
      display: block; }
      html.ie10 .project-widget .flex-list:after {
        content: "";
        display: block;
        width: 1px;
        height: 1px;
        clear: both; }
    .project-widget .flex-list a {
      position: relative;
      z-index: 0;
      width: 33.33%;
      padding: 0;
      color: #ffffff; }
      html.ie10 .project-widget .flex-list a {
        display: block;
        float: left; }
        @media (min-width: 1200px) {
          html.ie10 .project-widget .flex-list a:nth-child(n + 4):before {
            content: "";
            display: block;
            width: 1px;
            height: 1px;
            clear: both; } }
      @media (max-width: 1199px) {
        .project-widget .flex-list a {
          width: 50%; }
          .project-widget .flex-list a:nth-child(n + 3):before {
            content: "";
            display: block;
            width: 1px;
            height: 1px;
            clear: both; } }
      @media (max-width: 570px) {
        .project-widget .flex-list a {
          width: 100%;
          float: none !important; } }
      .project-widget .flex-list a .img {
        position: relative;
        z-index: 0;
        width: 100%;
        padding-top: 100%; }
        @media (min-width: 1281px) {
          .project-widget .flex-list a .img {
            padding-top: 0;
            height: 427px; } }
      .project-widget .flex-list a .start-text,
      .project-widget .flex-list a .end-text {
        position: absolute;
        z-index: 1;
        height: 100%;
        width: 100%;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        -o-transition: all 250ms ease-in-out;
        -webkit-transition: all 250ms ease-in-out;
        transition: all 250ms ease-in-out; }
        .project-widget .flex-list a .start-text .text-inner,
        .project-widget .flex-list a .end-text .text-inner {
          position: absolute;
          z-index: 2; }
      .project-widget .flex-list a .start-text {
        opacity: 1;
        background-image: -webkit-linear-gradient(top, rgba(0, 68, 124, 0) 0%, rgba(0, 68, 124, 0.8) 100%);
        background-image: -o-linear-gradient(top, rgba(0, 68, 124, 0) 0%, rgba(0, 68, 124, 0.8) 100%);
        background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 68, 124, 0)), to(rgba(0, 68, 124, 0.8)));
        background-image: linear-gradient(to bottom, rgba(0, 68, 124, 0) 0%, rgba(0, 68, 124, 0.8) 100%);
        background-repeat: repeat-x;
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000447C', endColorstr='#CC00447C', GradientType=0); }
        .project-widget .flex-list a .start-text .text-inner {
          bottom: 0;
          left: 0;
          right: 0;
          padding: 0 32px 23px; }
          .project-widget .flex-list a .start-text .text-inner h3 {
            font-size: 25px;
            line-height: 1.4;
            color: #ffffff;
            text-transform: none; }
            @media (max-width: 767px) {
              .project-widget .flex-list a .start-text .text-inner h3 {
                font-size: 20px; } }
      .project-widget .flex-list a .end-text {
        opacity: 0;
        background: rgba(0, 68, 124, 0.8); }
        .project-widget .flex-list a .end-text .text-inner {
          top: 50%;
          left: 50%;
          -ms-transform: translate(-50%, -50%);
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
          text-align: center;
          width: 100%;
          padding: 0 50px; }
          @media (max-width: 767px) {
            .project-widget .flex-list a .end-text .text-inner {
              padding: 0 25px; } }
        .project-widget .flex-list a .end-text h3 {
          font-size: 40px;
          color: #ffffff;
          line-height: 1; }
          @media (max-width: 767px) {
            .project-widget .flex-list a .end-text h3 {
              font-size: 30px; } }
        .project-widget .flex-list a .end-text .building_type {
          font-weight: 700;
          font-size: 25px;
          line-height: 1.1;
          margin-top: 13px; }
          @media (max-width: 767px) {
            .project-widget .flex-list a .end-text .building_type {
              font-size: 19px;
              margin-top: 10px; } }
        .project-widget .flex-list a .end-text .excerpt {
          font-size: 20px;
          line-height: 27px;
          margin-top: 19px; }
          @media (max-width: 767px) {
            .project-widget .flex-list a .end-text .excerpt {
              font-size: 15px;
              line-height: 20px;
              margin-top: 14px; } }
        .project-widget .flex-list a .end-text i {
          font-size: 18px;
          line-height: 1;
          margin-top: 36px; }
          @media (max-width: 767px) {
            .project-widget .flex-list a .end-text i {
              font-size: 14px;
              margin-top: 27px; } }
      .project-widget .flex-list a:hover .start-text {
        opacity: 0; }
      .project-widget .flex-list a:hover .end-text {
        opacity: 1; }
  .widget-container + .project-widget--noresults {
    margin-top: 34px !important; }
    @media (max-width: 767px) {
      .widget-container + .project-widget--noresults {
        margin-top: 60px !important; } }
  .project-widget--noresults .inner-container {
    text-align: center;
    max-width: 582px;
    margin: 0 auto; }
  .project-widget--noresults img + h4 {
    margin-top: 22px 0 0; }
  .project-widget--noresults h4 {
    color: #3b8ede;
    font-size: 30px;
    line-height: 1.33;
    text-transform: uppercase;
    font-weight: 700; }
    .project-widget--noresults h4 + p {
      margin-top: 15px; }
  .project-widget--noresults .button {
    padding: 14px 60px;
    margin-top: 30px; }

body.wb-shading-for header,
body.wb-shading-for .header__bg {
  position: absolute; }

body.wb-shading-for #wrap > section {
  position: relative;
  z-index: 0;
  min-height: 100vh; }
  body.wb-shading-for #wrap > section.main-body {
    padding: 0;
    height: 100vh;
    min-height: auto; }
    body.wb-shading-for #wrap > section.main-body:after {
      display: none; }
    body.wb-shading-for #wrap > section.main-body h1 {
      position: absolute;
      z-index: 2;
      width: 100%;
      text-align: center;
      bottom: 0;
      left: 0;
      right: 0;
      background: #f2f9fe;
      color: #00447c;
      font-size: 40px;
      padding: 20px 25px 114px; }
      @media (max-width: 767px) {
        body.wb-shading-for #wrap > section.main-body h1 {
          padding: 20px 25px 35px;
          font-size: 30px; } }
      body.wb-shading-for #wrap > section.main-body h1:before {
        display: block;
        content: " ";
        position: absolute;
        z-index: 2;
        width: 100%;
        height: 34px;
        left: 0;
        right: 0;
        top: -33px;
        background: url("../img/bottom-curve-blue.png") no-repeat;
        background-size: 100% 100%; }
        @media (max-width: 991px) {
          body.wb-shading-for #wrap > section.main-body h1:before {
            height: 22px;
            top: -22px; } }
        @media (max-width: 767px) {
          body.wb-shading-for #wrap > section.main-body h1:before {
            height: 11px;
            top: -11px; } }
    body.wb-shading-for #wrap > section.main-body .img {
      position: absolute;
      z-index: 1;
      width: 100%;
      height: 100%;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
      body.wb-shading-for #wrap > section.main-body .img:after {
        content: " ";
        display: block;
        position: absolute;
        z-index: 1;
        width: 100%;
        height: 100%;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        background-image: -webkit-linear-gradient(top, #00447c 0%, transparent 52%);
        background-image: -o-linear-gradient(top, #00447c 0%, transparent 52%);
        background-image: -webkit-gradient(linear, left top, left bottom, from(#00447c), color-stop(52%, transparent));
        background-image: linear-gradient(to bottom, #00447c 0%, transparent 52%);
        background-repeat: repeat-x;
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF00447C', endColorstr='#00000000', GradientType=0);
        opacity: 0.7; }

nav.shading-nav {
  position: absolute;
  display: block;
  z-index: 3;
  left: 0;
  right: 0;
  top: calc(100vh - 62px);
  width: 100%;
  height: 62px;
  background: #00447c;
  padding: 0; }
  @media (max-width: 767px) {
    nav.shading-nav {
      display: none; } }
  nav.shading-nav.sticky {
    position: fixed;
    top: 0; }
  nav.shading-nav ul {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    text-align: center; }
  nav.shading-nav li {
    height: 62px;
    display: inline-block;
    position: relative; }
    nav.shading-nav li:after {
      content: '|';
      font-size: 16px;
      color: white;
      position: absolute;
      right: -2px;
      top: 50%;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
    nav.shading-nav li:last-child:after {
      display: none; }
    nav.shading-nav li a {
      color: #ffffff;
      font-size: 15px;
      line-height: 20px;
      padding: 21px 23px;
      text-transform: uppercase;
      display: block; }
      @media (min-width: 992px) and (max-width: 1199px) {
        nav.shading-nav li a {
          padding: 21px 18px;
          font-size: 14px; } }
      @media (min-width: 768px) and (max-width: 991px) {
        nav.shading-nav li a {
          padding: 21px 10px;
          font-size: 12px; } }
      nav.shading-nav li a:hover, nav.shading-nav li a.active {
        color: #8fc9e6; }

.app-cont {
	/* changed from relative to absolute */
  position: absolute;
  z-index: 5;
  padding: 30px;
  min-height: 100vh;
  width: calc(100% - 80px);
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: flex-start;
  -ms-flex-pack: flex-start;
  justify-content: flex-start; }
  @media (max-width: 767px) {
    .app-cont {
      padding: 15px;
      width: 100%; } }
  section.odd .app-cont {
    -webkit-box-pack: flex-end;
    -ms-flex-pack: flex-end;
    justify-content: flex-end;
    margin-left: 80px; }
    @media (max-width: 767px) {
      section.odd .app-cont {
        margin-left: 0px; } }
  .app-cont__inner {
    position: relative;
    z-index: 5;
    padding-right: 37px;
    overflow: hidden; }
    @media (max-width: 767px) {
      .app-cont__inner {
        padding: 0 !important; } }
    section.odd .app-cont__inner {
      padding-right: 0;
      padding-left: 37px; }
  .app-cont__button {
    position: absolute;
    z-index: 5;
    top: 40px;
    right: 0;
    width: 37px;
    height: 48px;
    background: #ffffff;
    border-radius: 0 5px 5px 0;
    cursor: pointer; }
    @media (max-width: 767px) {
      .app-cont__button {
        display: none; } }
    .app-cont__button:after {
      content: "\F096";
      font-family: "Black Tie";
      font-size: 16px;
      line-height: 1;
      display: block;
      position: absolute;
      z-index: 6;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      cursor: pointer;
      pointer-events: all;
      font-weight: 700;
      color: #00447c; }
    section.odd .app-cont__button {
      border-radius: 5px 0 0 5px;
      right: auto;
      left: 0; }
      section.odd .app-cont__button:after {
        content: "\F097"; }
    section.closed .app-cont__button:after {
      content: "\F097"; }
    section.odd.closed .app-cont__button:after {
      content: "\F096"; }
  .app-cont__content {
    background: rgba(255, 255, 255, 0.88);
    padding: 100px 68px;
    width: 535px;
    position: relative;
    z-index: 0;
    border-radius: 10px;
    opacity: 1;
    -o-transition: 250ms opacity ease-in-out;
    -webkit-transition: 250ms opacity ease-in-out;
    transition: 250ms opacity ease-in-out; }
    @media (max-width: 767px) {
      .app-cont__content {
        padding: 50px 25px;
        width: 100%; } }
    section.closed .app-cont__content {
      opacity: 0; }
    .app-cont__content h4 {
      font-size: 16px;
      font-weight: 400;
      margin: 0; }
    .app-cont__content h3 {
      font-size: 36px;
      font-weight: 400;
      margin: 13px 0 0; }
      @media (max-width: 767px) {
        .app-cont__content h3 {
          font-size: 25px; } }
      .app-cont__content h3 + p {
        margin: 20px 0 0; }
    .app-cont__content p {
      margin: 0; }
      @media (max-width: 767px) {
        .app-cont__content p {
          display: none; } }
    .app-cont__content .button-cont {
      display: -webkit-box;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 41px; }
      .app-cont__content .button-cont .button {
        width: calc(50% - 5px);
        padding-left: 0;
        padding-right: 0;
        text-align: center;
        font-weight: 300; }
        @media (max-width: 767px) {
          .app-cont__content .button-cont .button {
            width: 100%;
            padding: 14px 10px; }
            .app-cont__content .button-cont .button + .button {
              margin-top: 15px; } }
    .app-cont__content .button-download {
      margin-top: 15px;
      width: 100%;
      background: transparent;
      border: 2px solid #3b8ede;
      color: #3b8ede;
      padding: 13px 0;
      text-align: center;
      font-size: 20px;
      line-height: 20px;
      font-weight: 300; }
      @media (max-width: 767px) {
        .app-cont__content .button-download {
          padding: 13px 10px; } }
      .app-cont__content .button-download i {
        font-weight: normal;
        font-size: 16px;
        line-height: 20px;
        vertical-align: top;
        margin-left: 10px; }

.shading-for-slider {
  position: absolute;
  z-index: 0;
  height: 100%;
  width: 100%;
  top: -1px;
  right: 0;
  bottom: -1px;
  left: 0; }
  .shading-for-slider .slick-list,
  .shading-for-slider .slick-track {
    position: absolute;
    z-index: 1;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .shading-for-slider .slick-dots {
    z-index: 5;
    bottom: auto;
    top: 50%;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0); }
    @media (max-width: 767px) {
      .shading-for-slider .slick-dots {
        display: none; } }
    section.even .shading-for-slider .slick-dots {
      left: auto;
      right: 40px; }
    section.odd .shading-for-slider .slick-dots {
      left: 40px; }
    .shading-for-slider .slick-dots li {
      line-height: 16px;
      float: none; }
      .shading-for-slider .slick-dots li + li {
        margin: 16px 0 0 0 !important; }
      .shading-for-slider .slick-dots li button {
        line-height: 16px; }

body.single-project .masthead-slider:after {
  /*background:url("../img/bottom-curve-white.svg") no-repeat;*/
  background: url("../img/bottom-curve-white.png") no-repeat;
  background-size: 100% 100%; }

body.single-project .main-body {
  padding-top: 0; }

body.single-project .project-details-section {
  position: relative;
  z-index: 0;
  background: #ffffff;
  padding: 115px 0 123px; }
  @media (max-width: 991px) {
    body.single-project .project-details-section {
      padding: 50px 0 65px; } }
  body.single-project .project-details-section:after {
    display: block;
    content: " ";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 33px;
    left: 0;
    right: 0;
    bottom: -33px;
    /*background:url("../img/top-curve-white.svg") no-repeat;*/
    background: url("../img/top-curve-white.png") no-repeat;
    background-size: 100% 100%; }
    @media (max-width: 991px) {
      body.single-project .project-details-section:after {
        height: 22px;
        bottom: -22px; } }
    @media (max-width: 767px) {
      body.single-project .project-details-section:after {
        height: 11px;
        bottom: -11px; } }

body.single-project p.project-subtitle {
  font-size: 14px;
  line-height: 1.1;
  color: #00447c;
  text-transform: uppercase; }
  body.single-project p.project-subtitle + h1 {
    font-weight: 300;
    color: #00447c;
    text-transform: uppercase;
    margin: 19px 0 44px; }
    @media (max-width: 767px) {
      body.single-project p.project-subtitle + h1 {
        margin: 9px 0 30px; } }

body.single-project .flex-container {
  position: relative;
  z-index: 0; }
  body.single-project .flex-container .project-slider {
    width: 64.9%;
    position: absolute;
    z-index: 1;
    height: 100%;
    /*.slide {
				height:100%;

				@include breakpoint("sm-xs") {
					height:550px;
				}

				@include breakpoint("xs") {
					height:300px;
				}
			}*/ }
    @media (max-width: 991px) {
      body.single-project .flex-container .project-slider {
        width: 100%;
        position: relative;
        height: auto; } }
    @media (max-width: 991px) {
      body.single-project .flex-container .project-slider .slide {
        height: 550px; } }
    @media (max-width: 767px) {
      body.single-project .flex-container .project-slider .slide {
        height: 300px; } }
    body.single-project .flex-container .project-slider .slick-arrow {
      width: 26px;
      height: 26px; }
      body.single-project .flex-container .project-slider .slick-arrow:after {
        font-size: 26px;
        line-height: 26px;
        font-weight: 700;
        color: #ffffff;
        text-shadow: 0 0 2px #000; }
    body.single-project .flex-container .project-slider .slick-prev {
      left: 20px; }
      body.single-project .flex-container .project-slider .slick-prev:after {
        content: '\F096'; }
    body.single-project .flex-container .project-slider .slick-next {
      left: auto;
      right: 20px; }
      body.single-project .flex-container .project-slider .slick-next:after {
        content: '\F097'; }
    body.single-project .flex-container .project-slider + .description-container {
      width: 100%;
      padding-left: 73%;
      position: relative;
      z-index: 0; }
      @media (max-width: 991px) {
        body.single-project .flex-container .project-slider + .description-container {
          margin-top: 50px;
          padding: 0; } }
  body.single-project .flex-container .description-container {
    width: 100%; }
    body.single-project .flex-container .description-container h3 {
      color: #000000;
      font-size: 16px;
      line-height: 1.1;
      text-transform: uppercase;
      font-weight: 400; }
      body.single-project .flex-container .description-container h3 + p {
        margin-top: 10px; }
      body.single-project .flex-container .description-container h3:first-of-type {
        margin-top: -3px; }
        @media (max-width: 991px) {
          body.single-project .flex-container .description-container h3:first-of-type {
            margin-top: 0; } }
    body.single-project .flex-container .description-container p {
      color: #00447c;
      font-size: 22px;
      line-height: 1.6;
      font-weight: 700; }
      body.single-project .flex-container .description-container p + h3 {
        margin-top: 43px; }
        @media (max-width: 991px) {
          body.single-project .flex-container .description-container p + h3 {
            margin-top: 23px; } }

body.single-project .button-container {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 64.9%;
  margin-top: 21px;
  text-align: center; }
  @media (max-width: 991px) {
    body.single-project .button-container {
      width: 100%; } }
  body.single-project .button-container .button {
    width: calc(50% - 10px);
    font-weight: 300;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 20px;
    line-height: 20px; }
    @media (max-width: 767px) {
      body.single-project .button-container .button {
        width: 100%; } }
    body.single-project .button-container .button-project {
      background: transparent;
      border: 2px solid #3b8ede;
      color: #3b8ede; }
      @media (max-width: 767px) {
        body.single-project .button-container .button-project {
          margin-top: 15px; } }

body.blog-listing .blog-widget .flex-list a {
  display: block;
  position: relative;
  z-index: 0; }
  body.blog-listing .blog-widget .flex-list a:before {
    display: block;
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    background: red;
    color: #ffffff !important;
    height: 75px;
    width: 75px;
    border-radius: 0 0 100% 0;
    font-family: "Black Tie";
    content: "\F04D";
    font-size: 22px;
    line-height: 1;
    padding: 19px 0 0 19px; }
  body.blog-listing .blog-widget .flex-list a.company:before, body.blog-listing .blog-widget .flex-list a.company-fr:before, body.blog-listing .blog-widget .flex-list a.company-de:before {
    background: #3b8ede;
    content: "\F0D6"; }
  body.blog-listing .blog-widget .flex-list a.industry:before, body.blog-listing .blog-widget .flex-list a.industry-fr:before, body.blog-listing .blog-widget .flex-list a.industry-de:before {
    background: #00447c;
    content: "\F0CE"; }
  body.blog-listing .blog-widget .flex-list a:hover .button,
  body.blog-listing .blog-widget .flex-list a .button:hover {
    color: #ffffff;
    background: #3b8ede; }

.signup-container .close-modal {
  top: -26px;
  right: -26px; }
  @media (max-width: 950px) {
    .signup-container .close-modal {
      top: -15px;
      right: -15px; } }
  @media (max-width: 767px) {
    .signup-container .close-modal {
      top: -15px;
      right: -15px; } }

.download-center-widget {
  /*& + .download-center-widget:not(.download-center-widget--noresults) {
		margin-top:0px !important;

		.inner-container {
			margin-top:$widgetMargin - 96px !important;

			@include breakpoint('xs') {
				margin-top:$widgetMobileMargin !important;
			}
		}
	}*/ }
  .download-center-widget .widget-title {
    margin-bottom: 50px !important; }
  .download-center-widget .container {
    max-width: 1400px; }
  .listing-filter-widget + .download-center-widget,
  .download-center-widget + .download-center-widget {
    margin-top: 90px !important; }
    @media (max-width: 767px) {
      .listing-filter-widget + .download-center-widget,
      .download-center-widget + .download-center-widget {
        margin-top: 60px !important; } }
  .download-center-widget .flex-list {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -20px;
    padding: 0 20px;
    width: calc(100% + 40px); }
    @media (max-width: 767px) {
      .download-center-widget .flex-list {
        padding: 0; } }
    @media (max-width: 520px) {
      .download-center-widget .flex-list {
        margin: -10px;
        width: calc(100% + 20px); } }
    .download-center-widget .flex-list a {
      width: calc(20% - 40px);
      position: relative;
      z-index: 0;
      background: #ffffff;
      -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
      margin: 20px; }
      @media (max-width: 1199px) {
        .download-center-widget .flex-list a {
          width: calc(25% - 40px); } }
      @media (max-width: 999px) {
        .download-center-widget .flex-list a {
          width: calc(33.33% - 40px); } }
      @media (max-width: 767px) {
        .download-center-widget .flex-list a {
          width: calc(50% - 40px); } }
      @media (max-width: 520px) {
        .download-center-widget .flex-list a {
          margin: 10px;
          width: calc(50% - 20px); } }
      .download-center-widget .flex-list a .img,
      .download-center-widget .flex-list a .no-img {
        position: relative;
        z-index: 0;
        width: calc(100% - 40px);
        margin: 20px 20px 33px;
        padding-top: 55.5%;
        background-color: #f2f9fe; }
        @media (max-width: 520px) {
          .download-center-widget .flex-list a .img,
          .download-center-widget .flex-list a .no-img {
            margin-bottom: 20px; } }
      .download-center-widget .flex-list a .no-img:after {
        display: block;
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        content: "\e6c7";
        font-family: "Linearicons";
        font-style: normal;
        font-variant: normal;
        font-weight: normal;
        line-height: 1;
        text-transform: none;
        color: #00447c;
        font-size: 68px; }
        @media (max-width: 520px) {
          .download-center-widget .flex-list a .no-img:after {
            font-size: 46px; } }
      .download-center-widget .flex-list a .text {
        position: relative;
        z-index: 0;
        width: calc(100% - 40px);
        margin: 0 20px 31px;
        text-align: center; }
        @media (max-width: 520px) {
          .download-center-widget .flex-list a .text {
            margin-bottom: 20px; } }
        .download-center-widget .flex-list a .text h3 {
          text-transform: none;
          font-size: 22px;
          line-height: 1.4;
          font-weight: 400; }
          @media (max-width: 520px) {
            .download-center-widget .flex-list a .text h3 {
              font-size: 17px; } }
          .download-center-widget .flex-list a .text h3 + p {
            margin-top: 7px; }
        .download-center-widget .flex-list a .text p {
          color: #969696; }
          @media (max-width: 520px) {
            .download-center-widget .flex-list a .text p {
              line-height: 1.4;
              padding-top: 5px; } }
  .download-center-widget--noresults .inner-container {
    text-align: center;
    max-width: 582px;
    margin: 0 auto; }
  .download-center-widget--noresults img + h4 {
    margin-top: 22px 0 0; }
  .download-center-widget--noresults h4 {
    color: #3b8ede;
    font-size: 30px;
    line-height: 1.33;
    text-transform: uppercase;
    font-weight: 700; }
    .download-center-widget--noresults h4 + p {
      margin-top: 15px; }
  .download-center-widget--noresults .button {
    padding: 14px 60px;
    margin-top: 30px; }
  .download-center-widget--brochures .flex-list a .no-img:after {
    content: "\e6d6"; }
  .download-center-widget--datasheets .flex-list a .no-img:after {
    content: "\e6d8"; }
  .download-center-widget--installdrawings .flex-list a .no-img:after {
    content: "\e62d"; }
  .download-center-widget--specs .flex-list a .no-img:after {
    content: "\e6cb"; }
  .download-center-widget--installmanuals .flex-list a .no-img:after {
    content: "\e715"; }
  .download-center-widget--maintenance .flex-list a .no-img:after {
    content: "\e718"; }
  .download-center-widget--terms .flex-list a .no-img:after {
    content: "\e6dc"; }
  .download-center-widget--terms-and-conditions-of-sale .flex-list a .no-img:after {
    content: "\e613"; }
  .download-center-widget--datasheet .flex-list a .no-img:after {
    content: "\e6d8"; }
  .download-center-widget--product-overview .flex-list a .no-img:after {
    content: "\e6d4"; }
  .download-center-widget--order-forms .flex-list a .no-img:after {
    content: "\e6d1"; }

.signup-container {
  text-align: left;
  position: absolute;
  z-index: 10;
  background: #ffffff;
  width: 720px;
  padding: 70px;
  border-top: 8px solid #00447c;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }
  @media (max-width: 770px) {
    .signup-container {
      width: calc(100% - 50px);
      padding: 25px;
      margin: 25px;
      left: 0;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); } }
  .signup-container h4 {
    text-transform: none;
    font-weight: 700;
    font-size: 35px;
    line-height: 1.1;
    margin: 0 !important; }
  .signup-container p {
    margin: 30px 0 42px !important; }
  .signup-container .button-container {
    margin-top: 32px; }
  .signup-container .button {
    display: inline-block;
    width: calc(50% - 11px);
    padding-left: 0;
    padding-right: 0;
    text-align: center; }
    @media (max-width: 767px) {
      .signup-container .button {
        display: block;
        width: 100%; } }
    .signup-container .button + .button {
      margin-left: 16px; }
      @media (max-width: 767px) {
        .signup-container .button + .button {
          margin: 15px 0 0 0; } }
    .signup-container .button--nosignup {
      border: 3px solid #ebebeb;
      color: #ebebeb;
      background: #ffffff; }
      .signup-container .button--nosignup:hover {
        background: #ebebeb;
        color: #ffffff; }

.widget-container {
  position: relative;
  z-index: 0; }
  .widget-container .widget-title {
    display: block;
    text-align: center;
    margin-top: -8px;
    margin-bottom: 80px;
    font-weight: 300;
    font-size: 40px; }
    @media (max-width: 767px) {
      .widget-container .widget-title {
        font-size: 30px;
        margin-bottom: 45px; } }
  .widget-container + .widget-container,
  .project-details-section + .widget-container {
    margin-top: 120px; }
    @media (max-width: 767px) {
      .widget-container + .widget-container,
      .project-details-section + .widget-container {
        margin-top: 60px; } }
  .project-details-section + .widget-container {
    padding-top: 33px; }

.page-title + .widget-container,
.page-subtitle + .widget-container {
  margin-top: 60px !important; }
  @media (max-width: 767px) {
    .page-title + .widget-container,
    .page-subtitle + .widget-container {
      margin-top: 30px !important; } }
  body.wb-homepage-3 .page-title + .widget-container, body.wb-homepage-3
  .page-subtitle + .widget-container {
    margin-top: 60px !important; }
    @media (max-width: 767px) {
      body.wb-homepage-3 .page-title + .widget-container, body.wb-homepage-3
      .page-subtitle + .widget-container {
        margin-top: 30px !important; } }

.widget-container + .page-title,
.widget-container + .page-subtitle,
.page-title + .listing-filter-widget {
  margin-top: 120px !important; }
  @media (max-width: 767px) {
    .widget-container + .page-title,
    .widget-container + .page-subtitle,
    .page-title + .listing-filter-widget {
      margin-top: 60px !important; } }

.cards-widget .flex-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  html.ie10 .cards-widget .flex-list {
    display: block; }
  @media (max-width: 991px) {
    .cards-widget .flex-list {
      margin-top: 0px; } }
  .cards-widget .flex-list a {
    width: calc(33.33% - 46.67px);
    -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    position: relative;
    z-index: 0;
    overflow: hidden;
    background: #ffffff; }
    html.ie10 .cards-widget .flex-list a {
      display: inline-block;
      vertical-align: top;
      position: relative; }
    @media (min-width: 992px) {
      .cards-widget .flex-list a {
        margin-left: 70px; }
        .cards-widget .flex-list a:nth-child(3n - 2) {
          margin-left: 0; }
        .cards-widget .flex-list a:nth-child(n+4) {
          margin-top: 70px; }
        html.ie10 .cards-widget .flex-list a {
          margin-left: 65px; }
          html.ie10 .cards-widget .flex-list a:nth-child(3n - 2) {
            margin-left: 0; }
          html.ie10 .cards-widget .flex-list a:nth-child(n+4):before {
            content: "";
            display: block;
            width: 1px;
            height: 1px;
            clear: both; } }
    @media (min-width: 671px) and (max-width: 991px) {
      .cards-widget .flex-list a {
        width: calc(50% - 35px);
        margin-left: 70px; }
        .cards-widget .flex-list a:nth-child(2n - 1) {
          margin-left: 0; }
        .cards-widget .flex-list a:nth-child(n+3) {
          margin-top: 70px; }
        html.ie10 .cards-widget .flex-list a {
          margin-left: 65px; }
          html.ie10 .cards-widget .flex-list a:nth-child(2n - 1) {
            margin-left: 0; } }
    @media (max-width: 670px) {
      .cards-widget .flex-list a {
        width: 100%; }
        .cards-widget .flex-list a + a {
          margin-top: 30px; } }
    .cards-widget .flex-list a .img {
      position: relative;
      z-index: 1;
      padding-top: 77.4%; }
    .cards-widget .flex-list a .text {
      position: relative;
      z-index: 2;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 35px 39px 36px;
      background: #ffffff; }
      @media (max-width: 767px) {
        .cards-widget .flex-list a .text {
          padding: 25px; } }
      .cards-widget .flex-list a .text:before {
        content: " ";
        position: absolute;
        z-index: 3;
        display: block;
        width: 100%;
        height: auto;
        top: -12px;
        left: 0;
        right: 0;
        height: 12px;
        width: 100%;
        background: url("../img/blog-widget-curve.png") no-repeat;
        background-size: 100% 100%; }
      .cards-widget .flex-list a .text h3 {
        font-weight: 700;
        color: #00447c;
        font-size: 25px;
        line-height: 1.4;
        text-transform: none; }
      .cards-widget .flex-list a .text p {
        margin: 2px 0 0;
        color: #010101; }
      .cards-widget .flex-list a .text .button {
        margin-top: 25px;
        color: #00447c;
        font-size: 16px;
        line-height: 33px;
        padding: 0 22px 0 0; }
        .cards-widget .flex-list a .text .button i {
          font-size: 16px;
          line-height: 33px; }

.contact-widget .container {
  max-width: 770px; }

.contact-widget .contact-cont {
  background: #ffffff;
  padding: 68px 70px;
  border-top: 8px solid #00447c;
  -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15); }
  @media (max-width: 767px) {
    .contact-widget .contact-cont {
      -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
      box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
      padding: 25px; } }
  .contact-widget .contact-cont > h3 {
    text-transform: none;
    font-weight: 700;
    font-size: 35px;
    line-height: 40px; }
    @media (max-width: 767px) {
      .contact-widget .contact-cont > h3 {
        font-size: 25px;
        line-height: 30px; } }
    .contact-widget .contact-cont > h3 + p,
    .contact-widget .contact-cont > h3 + form,
    .contact-widget .contact-cont > h3 + .form-complete {
      margin: 31px 0 0; }
  .contact-widget .contact-cont > p + form,
  .contact-widget .contact-cont > p + .form-complete {
    margin-top: 42px; }

.contact-widget .form-group > label {
  font-weight: 700;
  color: #00447c;
  font-size: 20px;
  line-height: 30px;
  padding: 25px 0 16px; }

.contact-widget select {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #959595;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 15px;
  line-height: 25px;
  padding: 12px 115px 13px 16px;
  width: calc(100% + 60px);
  background-color: transparent;
  position: relative;
  z-index: 2;
  border: 0;
  white-space: nowrap;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis; }
  .contact-widget select:focus::-ms-value {
    background-color: white;
    color: #0054a0; }
  .contact-widget select option {
    padding: 0 20px;
    font-size: 15px;
    line-height: 25px;
    color: #959595;
    font-weight: 400;
    text-transform: uppercase; }

.contact-widget .select-wrap {
  position: relative;
  overflow: hidden;
  cursor: pointer; }
  .contact-widget .select-wrap:after {
    font-family: 'Black Tie';
    font-weight: normal;
    content: '\F091';
    margin: 0;
    color: #00447c;
    display: block;
    position: absolute;
    top: 50%;
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 23px;
    line-height: 1;
    font-size: 16px;
    z-index: 1; }

.contact-widget .filled select {
  color: #0054a0;
  font-weight: bold; }

.contact-widget .filled .select-wrap:after {
  color: #0054a0; }

.contact-widget .select-group .radio-check-title {
  margin-bottom: 10px; }

.contact-widget .button-container {
  position: relative;
  height: 50px;
  margin-top: 35px; }

.contact-widget .button {
  position: relative;
  left: 50%;
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  padding-left: 55px;
  padding-right: 55px;
  margin-top: 0; }
  @media (max-width: 378px) {
    .contact-widget .button {
      left: 0;
      -ms-transform: translate(0, 0);
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
      padding-left: 0;
      padding-right: 0;
      width: 100%;
      text-align: center; } }
  .contact-widget .button span {
    -o-transition: all 0.1s ease;
    -webkit-transition: all 0.1s ease;
    transition: all 0.1s ease; }
  .contact-widget .button .spinner {
    opacity: 0; }

.contact-widget .contact-widget-sending {
  position: relative; }
  .contact-widget .contact-widget-sending .button span {
    opacity: 0; }
  .contact-widget .contact-widget-sending .spinner {
    opacity: 1; }
  .contact-widget .contact-widget-sending:after {
    position: absolute;
    content: '';
    top: 0;
    bottom: 0;
    right: 0;
    left: 0; }





















.radio-check-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .radio-check-list label {
    position: relative;
    right: auto;
    bottom: auto;
    -ms-transform: none;
    -webkit-transform: none;
    transform: none; }

.checkbox-cont {
  margin: 6px 25px 4px 0;
  width: calc(50% - 25px); }
  @media (min-width: 768px) {
    .checkbox-cont:nth-child(even) {
      padding-left: 28px; } }
  @media (max-width: 767px) {
    .checkbox-cont {
      width: 100%; } }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 20px;
  margin: 0;
  padding: 0;
  opacity: 0;
  display: none; }
  input[type="checkbox"] + label,
  input[type="radio"] + label {
    position: relative;
    display: inline-block;
    padding-left: 40px;
    color: #959595;
    font-size: 15px;
    line-height: 20px;
    font-weight: 400;
    cursor: pointer;
    text-transform: uppercase; }
    input[type="checkbox"] + label:before,
    input[type="radio"] + label:before {
      position: absolute;
      content: '';
      color: #959595;
      font-family: 'Black Tie';
      font-weight: normal;
      font-size: 20px;
      left: 0px;
      top: 0px;
      opacity: 1; }
  input[type="checkbox"]:checked + label,
  input[type="radio"]:checked + label {
    color: #00447c; }
    input[type="checkbox"]:checked + label:before,
    input[type="radio"]:checked + label:before {
      color: #00447c; }

/* checkbox checked icon */
input[type=checkbox] + label:before {
  content: "\F08B"; }

input[type=checkbox]:checked + label:before {
  content: "\F014"; }

/* radio checked icon */
input[type=radio] + label:before {
  content: "\F08C"; }

input[type=radio]:checked + label:before {
  content: "\F0D5"; }

/* radio/checkbox hover and selected styles */
.form-complete {
  position: relative;
  border: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  background: #ffffff;
  pointer-events: none; }
  .form-complete .contact-widget,
  .form-complete .success-message {
    -o-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease; }
  .form-complete .success-message {
    color: #00447c;
    position: absolute;
    padding: 0 30px;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    left: 0;
    right: 0;
    top: 50%;
    margin: 0 !important;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    display: none;
    line-height: 1.2; }
  .form-complete .contact-widget {
    pointer-events: none; }

aside .form-complete .success-message {
  font-size: 20px; }

.doc-down-widget .flex-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  html.ie10 .doc-down-widget .flex-list {
    display: block; }
  .doc-down-widget .flex-list a {
    width: calc(50% - 34px);
    padding: 34px 50px 32px 135px;
    position: relative;
    background: #ffffff;
    -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
    color: #00447c; }
    html.ie10 .doc-down-widget .flex-list a {
      display: inline-block;
      vertical-align: top; }
    @media (min-width: 768px) {
      .doc-down-widget .flex-list a:nth-child(n+3) {
        margin-top: 30px; }
      html.ie10 .doc-down-widget .flex-list a {
        margin-left: 64px; }
        html.ie10 .doc-down-widget .flex-list a:nth-child(2n - 1) {
          margin-left: 0; }
        html.ie10 .doc-down-widget .flex-list a:nth-child(n+3):before {
          content: "";
          display: block;
          width: 1px;
          height: 1px;
          clear: both;
          float: none; } }
    @media (max-width: 767px) {
      .doc-down-widget .flex-list a {
        width: 100%;
        -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
        box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
        padding: 20px 30px 20px 88px; }
        .doc-down-widget .flex-list a + a {
          margin-top: 25px; } }
    .doc-down-widget .flex-list a i {
      font-size: 68px;
      line-height: 1;
      position: absolute;
      top: 38px;
      left: 44px; }
      @media (max-width: 767px) {
        .doc-down-widget .flex-list a i {
          font-size: 30px;
          top: 24px;
          left: 30px; } }
    .doc-down-widget .flex-list a .text {
      min-height: 74px; }
      @media (max-width: 767px) {
        .doc-down-widget .flex-list a .text {
          min-height: 58px; } }
      .doc-down-widget .flex-list a .text h4 {
        text-transform: none;
        font-size: 25px;
        line-height: 1.2;
        -o-transition: all 0.25s ease;
        -webkit-transition: all 0.25s ease;
        transition: all 0.25s ease;
        font-weight: 700; }
        @media (max-width: 767px) {
          .doc-down-widget .flex-list a .text h4 {
            font-size: 20px; } }
      .doc-down-widget .flex-list a .text strong {
        display: block;
        color: #888f94;
        font-size: 18px;
        line-height: 1.53;
        margin-top: 10px; }
        @media (max-width: 767px) {
          .doc-down-widget .flex-list a .text strong {
            font-size: 16px; } }
    .doc-down-widget .flex-list a:hover {
      color: #888f94;
      opacity: 0.75; }
      .doc-down-widget .flex-list a:hover h4 {
        color: #888f94; }

.faq-widget .container {
  max-width: 770px; }

.faq-widget .accordion .accordion-group {
  border: 2px solid #cccccc; }
  .faq-widget .accordion .accordion-group.active {
    border-color: #00447c; }
    .faq-widget .accordion .accordion-group.active .accordion-btn {
      background: #00447c;
      color: #ffffff;
      padding-bottom: 28px; }
      @media (max-width: 767px) {
        .faq-widget .accordion .accordion-group.active .accordion-btn {
          padding-bottom: 25px; } }
      .faq-widget .accordion .accordion-group.active .accordion-btn:after {
        content: '\f021'; }
    .faq-widget .accordion .accordion-group.active .accordion-content {
      height: auto;
      border-color: #00447c; }
  .faq-widget .accordion .accordion-group .accordion-btn {
    color: #00447c;
    font-size: 25px;
    line-height: 1.4;
    font-weight: 700;
    padding: 23px 120px 26px 50px;
    display: block;
    width: 100%;
    position: relative;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
    @media (max-width: 767px) {
      .faq-widget .accordion .accordion-group .accordion-btn {
        font-size: 20px;
        padding: 25px 65px 25px 25px; } }
    .faq-widget .accordion .accordion-group .accordion-btn:after {
      font-size: 20px;
      line-height: 1;
      font-weight: normal;
      position: absolute;
      top: 50%;
      right: 50px;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      font-family: 'Black Tie';
      content: '\f01b'; }
      @media (max-width: 767px) {
        .faq-widget .accordion .accordion-group .accordion-btn:after {
          font-size: 16px;
          right: 25px; } }
  .faq-widget .accordion .accordion-group .accordion-content {
    height: 0;
    overflow: hidden;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    border-top: 2px solid transparent; }
    .faq-widget .accordion .accordion-group .accordion-content .accordion-content-inner {
      padding: 40px 50px 43px 50px; }
      @media (max-width: 767px) {
        .faq-widget .accordion .accordion-group .accordion-content .accordion-content-inner {
          padding: 25px; } }
  .faq-widget .accordion .accordion-group + .accordion-group {
    margin-top: 20px; }

.gallery-image-widget h3 {
  display: block;
  text-align: center;
  font-size: 40px;
  font-weight: 300;
  margin-bottom: 92px; }
  @media (max-width: 767px) {
    .gallery-image-widget h3 {
      font-size: 30px;
      margin-bottom: 45px; } }

.gallery-image-widget .gallery-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  html.ie10 .gallery-image-widget .gallery-list {
    display: block; }
  .gallery-image-widget .gallery-list a {
    width: calc(33.33% - 47px); }
    html.ie10 .gallery-image-widget .gallery-list a {
      display: inline-block;
      vertical-align: top;
      position: relative; }
    @media (min-width: 768px) {
      .gallery-image-widget .gallery-list a {
        margin-left: 70px; }
        .gallery-image-widget .gallery-list a:nth-child(3n - 2) {
          margin-left: 0; }
        .gallery-image-widget .gallery-list a:nth-child(n+4) {
          margin-top: 70px; }
        html.ie10 .gallery-image-widget .gallery-list a {
          margin-left: 65px; }
          html.ie10 .gallery-image-widget .gallery-list a:nth-child(3n - 2) {
            margin-left: 0; }
          html.ie10 .gallery-image-widget .gallery-list a:nth-child(n+4):before {
            content: "";
            display: block;
            width: 1px;
            height: 1px;
            clear: both; } }
    @media (max-width: 767px) {
      .gallery-image-widget .gallery-list a {
        width: calc(50% - 35px);
        margin-left: 70px; }
        .gallery-image-widget .gallery-list a:nth-child(2n - 1) {
          margin-left: 0; }
        .gallery-image-widget .gallery-list a:nth-child(n+3) {
          margin-top: 70px; }
        html.ie10 .gallery-image-widget .gallery-list a {
          margin-left: 65px; }
          html.ie10 .gallery-image-widget .gallery-list a:nth-child(2n - 1) {
            margin-left: 0; } }
    @media (max-width: 550px) {
      .gallery-image-widget .gallery-list a {
        width: calc(50% - 12.5px);
        margin-left: 25px; }
        .gallery-image-widget .gallery-list a:nth-child(2n - 1) {
          margin-left: 0; }
        .gallery-image-widget .gallery-list a:nth-child(n+3) {
          margin-top: 25px; }
        html.ie10 .gallery-image-widget .gallery-list a {
          margin-left: 20px; }
          html.ie10 .gallery-image-widget .gallery-list a:nth-child(2n - 1) {
            margin-left: 0; } }
    .gallery-image-widget a .img {
      height: 0;
      padding-top: 87.3%;
      position: relative; }
      .gallery-image-widget a .img:before, .gallery-image-widget a .img:after {
        -o-transition: all 0.35s ease;
        -webkit-transition: all 0.35s ease;
        transition: all 0.35s ease; }
      .gallery-image-widget a .img:before {
        background: rgba(0, 68, 124, 0.75);
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        right: 0;
        opacity: 0; }
      .gallery-image-widget a .img:after {
        content: "\F002";
        font-family: "Black Tie";
        font-size: 50px;
        position: absolute;
        left: 50%;
        top: 50%;
        -ms-transform: scale(0.5, 0.5) translate(-50%, -50%);
        -webkit-transform: scale(0.5, 0.5) translate(-50%, -50%);
        transform: scale(0.5, 0.5) translate(-50%, -50%);
        color: #ffffff;
        opacity: 0;
        moz-transform-origin: left top;
        -ms-transform-origin: left top;
        -webkit-transform-origin: left top;
        transform-origin: left top; }
        .gallery-image-widget .single-product-slider a .img:after {
          top: 30%;
        }
        @media (max-width: 767px) {
          .gallery-image-widget a .img:after {
            font-size: 35px; } }
    .gallery-image-widget a:hover .img:before, .gallery-image-widget a:hover .img:after {
      opacity: 1; }
    .gallery-image-widget a:hover .img:after {
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }

.image-text-widget {
  position: relative;
  z-index: 0; }
  .image-text-widget .img {
    display: block;
    position: absolute;
    z-index: 1;
    height: 0;
    width: 100%;
    padding-top: 51.35%; }
    @media (min-width: 1280px) {
      .image-text-widget .img {
        padding: 0;
        height: 656px; } }
    @media (max-width: 487px) {
      .image-text-widget .img {
        padding: 0;
        height: 250px; } }
    .image-text-widget .img:before, .image-text-widget .img:after {
      display: block;
      content: " ";
      position: absolute;
      z-index: 2;
      width: 100%;
      height: 33px;
      left: 0;
      right: 0; }
      @media (max-width: 991px) {
        .image-text-widget .img:before, .image-text-widget .img:after {
          height: 22px; } }
      @media (max-width: 767px) {
        .image-text-widget .img:before, .image-text-widget .img:after {
          height: 11px; } }
    .image-text-widget .img:before {
      top: 0;
      /*background:url("../img/top-curve-blue.svg") no-repeat;*/
      background: url("../img/top-curve-blue.png") no-repeat;
      background-size: 100% 100%; }
    .image-text-widget .img:after {
      bottom: 0;
      /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
      background: url("../img/bottom-curve-blue.png") no-repeat;
      background-size: 100% 100%; }
  .image-text-widget .text {
    position: relative;
    z-index: 4;
    display: block;
    padding-top: 30.8%;
    margin: 0 25px; }
    @media (min-width: 1280px) {
      .image-text-widget .text {
        padding-top: 395px; } }
    .image-text-widget .text .inner-text {
      position: relative;
      z-index: 4;
      display: block;
      max-width: 860px;
      margin: 0 auto;
      background: #ffffff;
      padding: 91px 105px 82px;
      text-align: center;
      -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
      box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15); }
      @media (max-width: 767px) {
        .image-text-widget .text .inner-text {
          padding: 30px 35px;
          -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15); } }
      .image-text-widget .text .inner-text h3 {
        font-size: 40px;
        font-weight: 300; }
        @media (max-width: 767px) {
          .image-text-widget .text .inner-text h3 {
            font-size: 28px; } }
        .image-text-widget .text .inner-text h3 + h4 {
          margin-top: 10px !important; }
        .image-text-widget .text .inner-text h3 + p {
          margin-top: 52px !important; }
          @media (max-width: 767px) {
            .image-text-widget .text .inner-text h3 + p {
              margin-top: 30px !important; } }
      .image-text-widget .text .inner-text h4 {
        font-size: 25px;
        font-weight: 300; }
        @media (max-width: 767px) {
          .image-text-widget .text .inner-text h4 {
            font-size: 20px; } }
        .image-text-widget .text .inner-text h4 + p {
          margin-top: 52px !important; }
          @media (max-width: 767px) {
            .image-text-widget .text .inner-text h4 + p {
              margin-top: 30px !important; } }

.latest-project-widget {
  position: relative;
  z-index: 0;
  max-height: 600px;
  overflow: hidden; }
  .latest-project-widget .text {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: block;
    background-image: -webkit-linear-gradient(left, rgba(0, 68, 124, 0.85) 0%, rgba(0, 68, 124, 0) 100%);
    background-image: -o-linear-gradient(left, rgba(0, 68, 124, 0.85) 0%, rgba(0, 68, 124, 0) 100%);
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 68, 124, 0.85)), to(rgba(0, 68, 124, 0)));
    background-image: linear-gradient(to right, rgba(0, 68, 124, 0.85) 0%, rgba(0, 68, 124, 0) 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#D900447C', endColorstr='#0000447C', GradientType=1); }
  .latest-project-widget .inner-text {
    position: relative;
    padding-top:50px;
    z-index: 2;
    width: 100%;
    padding-left: 11%;
    padding-right: 11%;
 }
    .latest-project-widget .inner-text > * {
      position: relative;
      z-index: 0; }
    .latest-project-widget .inner-text h3 {
      display: block;
      font-weight: 300;
      font-size: 40px;
      line-height: 1.1;
      color: #ffffff; }
      @media (max-width: 767px) {
        .latest-project-widget .inner-text h3 {
          font-size: 30px; } }
    .latest-project-widget .inner-text p {
      display: block;
      font-size: 25px;
      color: #ffffff;
      line-height: 1.3;
      margin: 7px 0 9px !important; }
      @media (max-width: 767px) {
        .latest-project-widget .inner-text p {
          font-size: 20px; } }
    .latest-project-widget .inner-text .button-icon {
      margin: 31px 0 97px 3px; }
      @media (max-width: 991px) {
        .latest-project-widget .inner-text .button-icon {
          margin: 25px 0 55px 3px; } }
      @media (max-width: 767px) {
        .latest-project-widget .inner-text .button-icon {
          margin: 20px 0 50px 3px; } }
    .latest-project-widget .inner-text .button-white {
      margin-left: 1px; }
      @media (max-width: 767px) {
        .latest-project-widget .inner-text .button-white {
          padding-left: 25px;
          padding-right: 25px; } }
  .latest-project-widget .img {
    position: relative;
    z-index: 0;
    padding-top: 46.7%;
    width: 100%;
    min-height: 445px; }
  .latest-project-widget:before, .latest-project-widget:after {
    display: block;
    content: " ";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 33px;
    left: 0;
    right: 0; }
    @media (max-width: 991px) {
      .latest-project-widget:before, .latest-project-widget:after {
        height: 22px; } }
    @media (max-width: 767px) {
      .latest-project-widget:before, .latest-project-widget:after {
        height: 11px; } }
  .latest-project-widget:before {
    top: 0;
    /*background:url("../img/top-curve-blue.svg") no-repeat;*/
    background: url("../img/top-curve-blue.png") no-repeat;
    background-size: 100% 100%; }
  .latest-project-widget:after {
    bottom: 0;
    /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
    background: url("../img/bottom-curve-blue.png") no-repeat;
    background-size: 100% 100%; }

.listing-filter-widget {
  background: #ffffff;
  padding: 80px 0;
  text-align: center; }
  @media (max-width: 767px) {
    .listing-filter-widget {
      padding: 50px 0; } }
  .listing-filter-widget .listing-title {
    position: absolute;
    z-index: 5;
    top: -107px;
    left: 50%;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    font-weight: 700;
    color: #3b8ede;
    font-size: 20px;
    line-height: 1.1;
    text-transform: uppercase; }
    @media (max-width: 767px) {
      .listing-filter-widget .listing-title {
        top: -77px;
        font-size: 16px; } }
  .listing-filter-widget .button {
    padding: 11px 0 12px;
    width: 250px;
    border: 2px solid #dddddd;
    background: #ffffff;
    color: #666666; }
    @media (max-width: 890px) {
      .listing-filter-widget .button {
        display: block;
        margin: 0 auto; } }
    @media (max-width: 300px) {
      .listing-filter-widget .button {
        width: 100%; } }
    .listing-filter-widget .button + .button {
      margin-left: 16px; }
      @media (max-width: 890px) {
        .listing-filter-widget .button + .button {
          margin: 20px auto 0 auto; } }
    .listing-filter-widget .button--company:not(.current) {
      color: #3b8ede; }
    .listing-filter-widget .button--industry:not(.current) {
      color: #00447c; }
    .listing-filter-widget .button.current, .listing-filter-widget .button:hover {
      border-color: #ebebeb;
      background: #ebebeb;
      color: #666666; }
    .listing-filter-widget .button i {
      font-size: 18px;
      line-height: 20px; }
    .listing-filter-widget .button span {
      font-size: 18px;
      font-weight: 400;
      line-height: 20px;
      text-transform: uppercase;
      margin-left: 15px; }
  .listing-filter-widget .select-wrap--button {
    position: relative;
    z-index: 0;
    display: inline-block;
    width: 280px;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer; }
    @media (max-width: 650px) {
      .listing-filter-widget .select-wrap--button {
        display: block;
        width: 100%; } }
    .listing-filter-widget .select-wrap--button:after {
      font-family: 'Black Tie';
      font-weight: normal;
      content: '\F091';
      margin: 0;
      color: #3b8ede;
      display: block;
      position: absolute;
      top: 50%;
      -ms-transform: translate(0, -50%);
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%);
      right: 30px;
      line-height: 1;
      font-size: 18px;
      z-index: 1;
      font-weight: 700; }
    .listing-filter-widget .select-wrap--button + .select-wrap--button {
      margin-left: 18px; }
      @media (max-width: 650px) {
        .listing-filter-widget .select-wrap--button + .select-wrap--button {
          margin: 20px 0 0 0; } }
    .listing-filter-widget .select-wrap--button select {
      cursor: pointer;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      color: #3b8ede;
      font-weight: 700;
      text-transform: uppercase;
      font-size: 16px;
      line-height: 25px;
      padding: 12px calc(24px + 103px) 12px 24px;
      width: calc(100% + 60px);
      background-color: transparent;
      position: relative;
      z-index: 2;
      border: 0;
      white-space: nowrap;
      overflow: hidden;
      -o-text-overflow: ellipsis;
      text-overflow: ellipsis; }
      .listing-filter-widget .select-wrap--button select:focus::-ms-value {
        background-color: white;
        color: #0054a0; }
      .listing-filter-widget .select-wrap--button select option {
        padding: 0 20px;
        font-size: 15px;
        line-height: 25px;
        color: #959595;
        font-weight: 400;
        text-transform: uppercase; }
  .listing-filter-widget:before, .listing-filter-widget:after {
    display: block;
    content: " ";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 33px;
    left: 0;
    right: 0; }
    @media (max-width: 991px) {
      .listing-filter-widget:before, .listing-filter-widget:after {
        height: 22px; } }
    @media (max-width: 767px) {
      .listing-filter-widget:before, .listing-filter-widget:after {
        height: 11px; } }
  .listing-filter-widget:before {
    top: 0;
    /*background:url("../img/top-curve-blue.svg") no-repeat;*/
    background: url("../img/top-curve-blue.png") no-repeat;
    background-size: 100% 100%; }
  .listing-filter-widget:after {
    bottom: 0;
    /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
    background: url("../img/bottom-curve-blue.png") no-repeat;
    background-size: 100% 100%; }
  .standard-widget + .listing-filter-widget {
    margin-top: 80px; }
    @media (max-width: 767px) {
      .standard-widget + .listing-filter-widget {
        margin-top: 60px; } }
  .listing-filter-widget + .blog-widget {
    margin-top: 80px; }
    @media (max-width: 767px) {
      .listing-filter-widget + .blog-widget {
        margin-top: 30px; } }
    .listing-filter-widget + .blog-widget .flex-list {
      margin: 0 !important; }
  .widget-container + .listing-filter-widget--product {
    margin-top: 125px; }
    @media (max-width: 767px) {
      .widget-container + .listing-filter-widget--product {
        margin-top: 70px !important; } }
  @media (max-width: 930px) {
    .listing-filter-widget--product .select-wrap--button {
      display: block;
      width: 100%; } }
  @media (max-width: 930px) {
    .listing-filter-widget--product .select-wrap--button + .select-wrap--button {
      margin: 20px 0 0 0; } }
  .listing-filter-widget--projects {
    padding-bottom: 40px; }
    .page-title + .listing-filter-widget--projects,
    .page-subtitle + .listing-filter-widget--projects,
    .widget-container + .listing-filter-widget--projects {
      margin-top: 114px !important; }
      @media (max-width: 767px) {
        .page-title + .listing-filter-widget--projects,
        .page-subtitle + .listing-filter-widget--projects,
        .widget-container + .listing-filter-widget--projects {
          margin-top: 55px !important; } }
    .listing-filter-widget--projects .container {
      max-width: 910px; }
    .listing-filter-widget--projects .select-wrap--button:nth-of-type(3) {
      margin-left: 0 !important; }
    .listing-filter-widget--projects .select-wrap--button:nth-of-type(3), .listing-filter-widget--projects .select-wrap--button:nth-of-type(4) {
      margin-top: 11px !important; }
    .listing-filter-widget--projects:after {
      display: none; }

.logos-widget .flex-list {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -50px; }
  @media (max-width: 767px) {
    .logos-widget .flex-list {
      margin-bottom: 0; } }
  html.ie10 .logos-widget .flex-list {
    display: block; }
  .logos-widget .flex-list a {
    position: relative;
    z-index: 1;
    border: 2px solid transparent;
    text-align: center;
    padding: 20px; }
    html.ie10 .logos-widget .flex-list a {
      display: inline-block; }
    @media (min-width: 768px) {
      .logos-widget .flex-list a {
        width: calc(33.33% - 46.67px);
        margin-left: 70px; }
        .logos-widget .flex-list a:nth-child(3n - 2) {
          margin-left: 0; }
        .logos-widget .flex-list a:nth-child(n+4) {
          margin-top: 50px; }
        html.ie10 .logos-widget .flex-list a {
          margin-left: 65px; }
          html.ie10 .logos-widget .flex-list a:nth-child(3n - 2) {
            margin-left: 0; }
          html.ie10 .logos-widget .flex-list a:nth-child(n+4):before {
            content: "";
            display: block;
            width: 1px;
            height: 1px;
            clear: both; } }
    @media (max-width: 767px) {
      .logos-widget .flex-list a {
        border-color: #00447c;
        width: calc(50% - 25px);
        margin-left: 50px; }
        .logos-widget .flex-list a:nth-child(2n - 1) {
          margin-left: 0; }
        .logos-widget .flex-list a:nth-child(n+3) {
          margin-top: 50px; }
        html.ie10 .logos-widget .flex-list a {
          width: 100%;
          margin-left: 0; }
          html.ie10 .logos-widget .flex-list a + a {
            margin-top: 25px; }
          html.ie10 .logos-widget .flex-list a:nth-child(2n - 1) {
            margin-left: 0; } }
    @media (max-width: 550px) {
      .logos-widget .flex-list a {
        width: 100%;
        margin-left: 0px; }
        .logos-widget .flex-list a:nth-child(n+3),
        .logos-widget .flex-list a + a {
          margin-top: 25px; }
        html.ie10 .logos-widget .flex-list a {
          width: 100%;
          margin-left: 0; }
          html.ie10 .logos-widget .flex-list a + a {
            margin-top: 25px; }
          html.ie10 .logos-widget .flex-list a:nth-child(2n - 1) {
            margin-top: 25px; } }
    .logos-widget .flex-list a .img-cont {
      height: 160px; }
    .logos-widget .flex-list a .img {
      width: 100%;
      height: 133px;
      display: block;
      background-size: contain;
      background-repeat: no-repeat;
      width: 80%;
      margin: 0 auto 33px;
      -webkit-filter: grayscale(100%);
      -moz-filter: grayscale(100%);
      -ms-filter: grayscale(100%);
      -o-filter: grayscale(100%);
      filter: grayscale(100%);
      -webkit-filter: gray;
      filter: gray; }
    .logos-widget .flex-list a i {
      font-size: 20px;
      line-height: 1;
      color: #00447c;
      display: block;
      opacity: 0;
      -o-transition: opacity 0.25s ease;
      -webkit-transition: opacity 0.25s ease;
      transition: opacity 0.25s ease; }
      @media (max-width: 767px) {
        .logos-widget .flex-list a i {
          opacity: 1; } }
    .logos-widget .flex-list a:hover {
      border-color: #00447c; }
      .logos-widget .flex-list a:hover i {
        opacity: 1; }

.map-widget {
  position: relative;
  z-index: 0; }
  .map-widget__wrap {
    width: 100%;
    position: relative;
    z-index: 0; }
    .map-widget__wrap:before, .map-widget__wrap:after {
      display: block;
      content: " ";
      position: absolute;
      z-index: 2;
      width: 100%;
      height: 33px;
      left: 0;
      right: 0; }
      @media (max-width: 991px) {
        .map-widget__wrap:before, .map-widget__wrap:after {
          height: 22px; } }
      @media (max-width: 767px) {
        .map-widget__wrap:before, .map-widget__wrap:after {
          height: 11px; } }
    .map-widget__wrap:before {
      top: 0;
      /*background:url("../img/top-curve-blue.svg") no-repeat;*/
      background: url("../img/top-curve-blue.png") no-repeat;
      background-size: 100% 100%; }
    .map-widget__wrap:after {
      bottom: 0;
      /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
      background: url("../img/bottom-curve-blue.png") no-repeat;
      background-size: 100% 100%; }
  .map-widget__map {
    display: block;
    padding-top: 51.35%;
    position: relative;
    overflow: hidden; }
    @media (min-width: 1280px) {
      .map-widget__map {
        padding: 0;
        height: 656px; } }
    @media (max-width: 487px) {
      .map-widget__map {
        padding: 0;
        height: 375px; } }
  .map-widget__infobox {
    margin-top: 55px;
    text-align: center;
    -webkit-box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.11);
    box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.11);
    width: 323px;
    padding: 25px 30px;
    background-color: #ffffff; }
    .map-widget__infobox * {
      font-family: 'Lato', sans-serif !important; }
    .map-widget__infobox h3 {
      text-transform: none;
      font-size: 20px;
      line-height: 35px; }
      .map-widget__infobox h3 + p {
        margin-top: 3px; }
    .map-widget__infobox p {
      font-size: 16px;
      line-height: 22px; }
      .map-widget__infobox p + p {
        margin-top: 0; }
      .map-widget__infobox p.tel {
        margin-top: 23px; }
      .map-widget__infobox p a {
        color: #000000; }
      .map-widget__infobox p strong {
        color: #00447c; }
  .map-widget .container {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 1; }
    @media (max-width: 767px) {
      .map-widget .container {
        right: auto; } }
    .map-widget .container h4 {
      display: inline-block;
      margin-bottom: 0;
      line-height: 1;
      padding: 30px;
      background: #03A9F4;
      color: #fff; }
      @media (max-width: 1199px) {
        .map-widget .container h4 {
          padding: 20px; } }
  .map-widget .gm-style img {
    width: 18px;
    height: 18px;
    top: 69px;
    right: 13px; }
  .map-widget .gmnoprint.gm-bundled-control {
    top: 50% !important;
    margin-top: -27px !important; }

.page-relationship-widget .flex-list a {
  display: block;
  position: relative;
  z-index: 0;
  -webkit-box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 0px 46px 0px rgba(0, 0, 0, 0.15); }
  @media (max-width: 767px) {
    .page-relationship-widget .flex-list a {
      -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
      box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15); } }
  .page-relationship-widget .flex-list a .img {
    display: block;
    position: absolute;
    z-index: 1;
    height: 100%;
    width: 56.6%; }
    @media (max-width: 991px) {
      .page-relationship-widget .flex-list a .img {
        width: 50%; } }
    @media (max-width: 767px) {
      .page-relationship-widget .flex-list a .img {
        padding-top: 60%;
        width: 100%;
        position: relative;
        height: 0; } }
  .page-relationship-widget .flex-list a .text {
    display: block;
    position: relative;
    z-index: 2;
    width: 100%;
    padding-left: 56.6%; }
    @media (max-width: 991px) {
      .page-relationship-widget .flex-list a .text {
        padding-left: 50%; } }
    @media (max-width: 767px) {
      .page-relationship-widget .flex-list a .text {
        padding: 0; }
        .page-relationship-widget .flex-list a .text:before {
          display: block;
          position: absolute;
          z-index: 3;
          content: " ";
          background: url("../img/blog-widget-curve.png") no-repeat;
          background-size: 100% 100%;
          height: 12px;
          width: 100%;
          top: -12px;
          left: 0; } }
    .page-relationship-widget .flex-list a .text .inner-text {
      display: block;
      background: #ffffff;
      position: relative;
      z-index: 2;
      padding: 91px 55px 101px 41px;
      text-align: center; }
      @media (max-width: 767px) {
        .page-relationship-widget .flex-list a .text .inner-text {
          padding: 40px 25px; } }
      .page-relationship-widget .flex-list a .text .inner-text:before {
        display: block;
        position: absolute;
        z-index: 3;
        content: " ";
        background: url("../img/read-more-curve.png") no-repeat;
        background-size: 100% 100%;
        height: 100%;
        width: 19px;
        top: 0;
        left: -19px; }
        @media (max-width: 767px) {
          .page-relationship-widget .flex-list a .text .inner-text:before {
            display: none; } }
    .page-relationship-widget .flex-list a .text h3 {
      font-size: 25px;
      line-height: 1.4;
      text-transform: none;
      font-weight: 400; }
      .page-relationship-widget .flex-list a .text h3 + p {
        margin-top: 30px; }
    .page-relationship-widget .flex-list a .text p {
      color: #010101; }
    .page-relationship-widget .flex-list a .text .button {
      margin-top: 35px; }
      @media (max-width: 991px) {
        .page-relationship-widget .flex-list a .text .button {
          padding: 14px 50px; } }
      @media (max-width: 767px) {
        .page-relationship-widget .flex-list a .text .button {
          padding: 14px 30px; } }
  .page-relationship-widget .flex-list a + a {
    margin-top: 25px; }

.share-widget {
  margin-top: 30px; }
  @media (max-width: 767px) {
    .share-widget {
      margin-top: 15px; } }
  .sub-nav__wrap + .main-content > .share-widget {
    margin-top: 0 !important; }
  .share-widget .container {
    text-align: center; }
  .share-widget h4 {
    display: inline-block;
    font-weight: 400;
    text-transform: none;
    font-size: 14px;
    line-height: 16px;
    vertical-align: top;
    color: #888f94; }
    @media (max-width: 767px) {
      .share-widget h4 {
        display: block;
        text-align: center;
        margin-bottom: 10px; } }
  .share-widget .addthis_toolbox,
  .share-widget .custom_images {
    display: inline-block;
    vertical-align: top;
    height: 16px; }
  .share-widget a {
    display: inline-block;
    vertical-align: top;
    color: #888f94;
    font-size: 16px;
    line-height: 16px !important;
    margin: 0 0 0 28px !important;
    cursor: pointer !important; }
    .share-widget a i {
      line-height: 16px;
      vertical-align: top; }
    @media (max-width: 767px) {
      .share-widget a:first-of-type {
        margin: 0 !important; } }

.standard-widget {
  text-align: center; }
  .single-product .standard-widget {
    margin-top: 60px; }
  .standard-widget .container {
    padding: 0 95px; }
    @media (max-width: 991px) {
      .standard-widget .container {
        padding: 0 50px; } }
    @media (max-width: 767px) {
      .standard-widget .container {
        padding: 0 25px; } }
    .standard-widget .container ol,
    .standard-widget .container ul {
      list-style: none;
      padding: 0; }
      .standard-widget .container ol li,
      .standard-widget .container ul li {
        position: relative;
        z-index: 1; }
        .standard-widget .container ol li:before,
        .standard-widget .container ul li:before {
          display: inline;
          margin-right: 5px; }
    .standard-widget .container ul li:before {
      font-family: "Black Tie";
      content: '\F08C' !important;
      font-weight: 900;
      font-size: 5px;
      line-height: 30px;
      vertical-align: top; }
    .standard-widget .container ol {
      counter-reset: my-badass-counter; }
      .standard-widget .container ol li:before {
        content: counter(my-badass-counter) ".";
        counter-increment: my-badass-counter; }
  .standard-widget .social-media {
    list-style: none;
    margin: 0;
    padding: 0; }
    .standard-widget .social-media li {
      float: left; }
      .standard-widget .social-media li a {
        font-size: 28px;
        padding: 8px 5px;
        margin-right: 10px; }

.video-widget .video-container {
  position: relative;
  overflow: hidden;
  max-height: 656px; }
  .video-widget .video-container a {
    cursor: pointer;
    display: block; }
    .video-widget .video-container a .text {
      position: absolute;
      left: 50%;
      top: 50%;
      -ms-transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 2;
      color: #ffffff;
      text-align: center;
      -o-transition: all 0.35s ease;
      -webkit-transition: all 0.35s ease;
      transition: all 0.35s ease;
      width: 100%;
      max-width: 745px;
      padding: 20px 25px 0; }
      @media (min-width: 768px) and (max-width: 991px) {
        .video-widget .video-container a .text {
          max-width: 535px; } }
      @media (max-width: 767px) {
        .video-widget .video-container a .text {
          max-width: 345px; } }
      .video-widget .video-container a .text h3,
      .video-widget .video-container a .text h4 {
        color: #ffffff;
        margin: 0; }
      .video-widget .video-container a .text h4 {
        text-transform: none;
        font-weight: 700;
        font-size: 25px;
        line-height: 1.2; }
        @media (min-width: 768px) and (max-width: 991px) {
          .video-widget .video-container a .text h4 {
            font-size: 20px; } }
        @media (max-width: 767px) {
          .video-widget .video-container a .text h4 {
            font-size: 16px; } }
      .video-widget .video-container a .text h3 {
        font-weight: 300;
        font-size: 40px;
        line-height: 1.25;
        margin-top: 22px; }
        @media (min-width: 768px) and (max-width: 991px) {
          .video-widget .video-container a .text h3 {
            font-size: 30px;
            margin-top: 15px; } }
        @media (max-width: 767px) {
          .video-widget .video-container a .text h3 {
            font-size: 20px;
            margin-top: 15px; } }
      .video-widget .video-container a .text i {
        font-size: 80px;
        line-height: 1;
        margin-top: 30px; }
        @media (min-width: 768px) and (max-width: 991px) {
          .video-widget .video-container a .text i {
            font-size: 40px;
            margin-top: 15px; } }
        @media (max-width: 767px) {
          .video-widget .video-container a .text i {
            font-size: 30px;
            margin-top: 10px; } }
    .video-widget .video-container a .img {
      height: 0;
      padding-top: 51.35%;
      -webkit-filter: grayscale(100%);
      -moz-filter: grayscale(100%);
      -ms-filter: grayscale(100%);
      -o-filter: grayscale(100%);
      filter: grayscale(100%);
      -webkit-filter: gray;
      filter: gray; }
      @media (min-width: 1280px) {
        .video-widget .video-container a .img {
          padding: 0;
          height: 656px; } }
      @media (max-width: 487px) {
        .video-widget .video-container a .img {
          padding: 0;
          height: 250px; } }
      .video-widget .video-container a .img-filter {
        position: absolute;
        z-index: 1;
        background: #00447c;
        opacity: 0.75;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
    .video-widget .video-container a:hover .text {
      -ms-transform: translate(-50%, -50%) scale(1.2, 1.2);
      -webkit-transform: translate(-50%, -50%) scale(1.2, 1.2);
      transform: translate(-50%, -50%) scale(1.2, 1.2); }
  .video-widget .video-container iframe {
    position: absolute;
    z-index: 3;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }

.video-widget:before, .video-widget:after {
  display: block;
  content: " ";
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 33px;
  left: 0;
  right: 0; }
  @media (max-width: 991px) {
    .video-widget:before, .video-widget:after {
      height: 22px; } }
  @media (max-width: 767px) {
    .video-widget:before, .video-widget:after {
      height: 11px; } }

.video-widget:before {
  top: 0;
  /*background:url("../img/top-curve-blue.svg") no-repeat;*/
  background: url("../img/top-curve-blue.png") no-repeat;
  background-size: 100% 100%; }

.video-widget:after {
  bottom: 0;
  /*background:url("../img/bottom-curve-blue.svg") no-repeat;*/
  background: url("../img/bottom-curve-blue.png") no-repeat;
  background-size: 100% 100%; }

.buttons-widget + .buttons-widget {
  margin-top: 20px; }

.button-wrap {
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc(100% + 20px);
  margin: 0 -10px -20px; }
  .button-wrap a {
    display: -webkit-box;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 10px 20px;
    padding: 15px 40px;
    width: calc(33.33% - 20px); }
    @media (min-width: 768px) and (max-width: 991px) {
      .button-wrap a {
        width: 60%; } }
    @media (max-width: 767px) {
      .button-wrap a {
        padding: 15px 30px;
        width: calc(100% - 20px); } }
    .button-wrap a i {
      font-size: 40px;
      font-weight: 400;
      margin-right: 20px; }
      @media (max-width: 767px) {
        .button-wrap a i {
          font-size: 35px; } }
    .button-wrap a .text {
      text-align: left; }
      .button-wrap a .text h3 {
        font-size: 22px;
        font-weight: 400;
        color: white; }
        @media (max-width: 767px) {
          .button-wrap a .text h3 {
            font-size: 20px; } }
      .button-wrap a .text span {
        text-transform: none;
        font-size: 17px;
        opacity: .75; }
    body.wb-homepage-3 .button-wrap a {
      width: auto !important; }

@media print {
  * {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact; }
  @page {
    margin: 0;
    size: auto; }
  body {
    margin: 18mm; }
  .header__bg,
  header .header__top,
  .header__bottom__pullright,
  .masthead-slider,
  .home-slider,
  .widget-container:not(.standard-widget):not(.products-top-widget):not(.faq-widget),
  .footer,
  .modal,
  .mob-menu-overlay,
  .under-slider,
  body.wb-homepage-3 .main-body .standard-widget .button,
  nav.shading-nav,
  body.wb-shading-for #wrap > section:not(.main-body),
  body.wb-shading-for #wrap > section.main-body .img,
  .project-slider,
  body.single-project .button-container,
  body.single-project .project-details-section:after,
  .products-top-widget .quicklinks,
  .pagenumber-container,
  .sub-nav__wrap {
    display: none;
    visibility: hidden;
    height: 0;
    width: 0;
    opacity: 0; }
  html,
  body,
  #wrap,
  header,
  body.wb-shading-for header, body.wb-shading-for .header__bg {
    position: relative;
    z-index: 0;
    background: #ffffff !important;
    color: #000000 !important; }
  a[href] {
    pointer-events: none; }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    color: #000000 !important; }
  .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important; }
  header {
    padding-bottom: 15px; }
    header .header__bottom {
      margin-top: 0 !important;
      text-align: center !important; }
    header .logo {
      width: 215px !important;
      height: 40px !important;
      margin: 0 !important;
      position: relative;
      z-index: 0; }
      header .logo img:not(.print-logo) {
        display: none !important; }
      header .logo img.print-logo {
        display: block !important; }
  section.main-body {
    padding: 25px 0 !important;
    background: #ffffff !important;
    height: auto !important; }
    section.main-body:after {
      display: none !important; }
  .widget-container + .widget-container,
  .project-details-section + .widget-container {
    margin-top: 50px !important; }
  .page-title + .widget-container,
  .page-subtitle + .widget-container,
  .widget-container + .page-title,
  .widget-container + .page-subtitle {
    margin-top: 25px !important; }
  .widget-container .widget-title {
    margin-bottom: 35px !important; }
  .faq-widget .accordion .accordion-group {
    border: 0px; }
    .faq-widget .accordion .accordion-group + .accordion-group {
      margin-top: 50px; }
    .faq-widget .accordion .accordion-group .accordion-btn {
      color: #000000;
      padding: 0px;
      text-align: center;
      font-weight: 400; }
      .faq-widget .accordion .accordion-group .accordion-btn:after {
        display: none; }
    .faq-widget .accordion .accordion-group .accordion-content {
      height: auto !important; }
      .faq-widget .accordion .accordion-group .accordion-content .accordion-content-inner {
        color: #000000;
        padding: 10px 0px;
        text-align: center; }
  body.wb-shading-for #wrap > section.main-body h1 {
    background: none !important;
    padding: 0;
    position: relative; }
    body.wb-shading-for #wrap > section.main-body h1:before {
      display: none !important; }
  .project-details-section {
    text-align: center; }
    .project-details-section .description-container {
      width: 100% !important; }
  body.single-project .project-details-section {
    padding: 0 0 25px; }
  body.single-project .flex-container .description-container p {
    color: #000000; }
  .products-top-widget .main-description {
    width: 100%;
    padding: 0;
    border: 0px;
    text-align: center; } }



    .gallery-image-widget
    .gallery-list a {
      width: 100%!important;
    }

    #image-col {
      margin-bottom: 15px;
      padding-left: 10px;
      padding-right: 10px;
    }

    .widget-container {
      margin-top: 0px!important;
    }

    .gallery-image-widget {
      display: none;
    }

    .videoPageCol {
      margin-bottom: 20px;
    }

    #loadMoreRow {
      text-align: center;
    }
    .notification-popup.hide-popup{
      pointer-events: none;
    }
    .notification-popup--show{
      pointer-events: auto!important;
    }

    .related-title {
      margin-top: 40px;
      margin-bottom: 10px;
      text-align: center;
    }

    .related-title h2 {
      font-weight: bold;
    }

    .featured-box {
      padding: 20px;
      padding-right: 0px;
      width: 100%;
      background-color: white;
      text-align: center;
      /* padding-top: 15px;
      padding-bottom: 15px; */
    }

    .featured-title {
      padding-top: 20px;
      padding-bottom: 5px;
      color: #00447c;
      font-weight: bold;
    }

    .featured-desc {
      color: grey;
      width: 90%;
      padding-left: 10%;
    }

    .product-img {
      width: 93%;
    }

    .slick-wrapper {
      margin: 10px;
    }

    .videoThumb {
      position: relative;
    }

    .videoThumb img {
      width: 100%;
    }

    .videoTitle {
      margin-top: 20px;
      margin-bottom: 10px;
      /* height: 70px; */
    }

    .modal2 {
      display: none;
    }
    .modal .close-modal2 {
        position: absolute;
        z-index: 2;
        display: block;
        top: 44px;
        right: 44px;
        height: 52px;
        width: 52px;
        border-radius: 26px;
        background: #ffffff;
        text-align: center;
        -webkit-box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1);
        box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.1);
    }
    .signup-container .close-modal2 {
        top: -26px;
        right: -26px;
    }

    .modal .close-modal2 i {
        font-size: 18px;
        line-height: 52px;
        vertical-align: top;
        color: #00447c;
        cursor:pointer;
    }

    .page-title-nue {
      font-size: 40px;
			margin-bottom: 40px;
    }































/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwibWFpbi5zY3NzIiwiYmFzZS9fdmFyaWFibGVzLnNjc3MiLCJiYXNlL19yZXNldHMuc2NzcyIsImJhc2UvX3NsaWRlci5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJiYXNlL19iYXNlLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImNvbXBvbmVudHMvX2xpc3RzLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19zdWItbmF2LnNjc3MiLCJjb21wb25lbnRzL19zcGlubmVyLnNjc3MiLCJjb21wb25lbnRzL190YWJsZXMuc2NzcyIsImNvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsImNvbXBvbmVudHMvX25vdGlmaWNhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbW9kYWxzLnNjc3MiLCJjb21wb25lbnRzL19mYW5jeWJveC5zY3NzIiwicGFnZXMvX2hvbWVwYWdlLnNjc3MiLCJwYWdlcy9fc2l0ZW1hcC5zY3NzIiwicGFnZXMvX21haW50ZW5hbmNlLnNjc3MiLCJwYWdlcy9fcHJvZHVjdC5zY3NzIiwicGFnZXMvX3Byb2plY3QtbGlzdGluZy5zY3NzIiwicGFnZXMvX3NoYWRpbmctZm9yLnNjc3MiLCJwYWdlcy9fc2luZ2xlLXByb2plY3Quc2NzcyIsInBhZ2VzL19ibG9nLWxpc3Rpbmcuc2NzcyIsInBhZ2VzL19kb3dubG9hZC1jZW50cmUuc2NzcyIsIndpZGdldHMvX3dpZGdldHMuc2NzcyIsIndpZGdldHMvX2NhcmRzLnNjc3MiLCJ3aWRnZXRzL19jb250YWN0LnNjc3MiLCJ3aWRnZXRzL19kb2MtZG93bi5zY3NzIiwid2lkZ2V0cy9fZmFxLnNjc3MiLCJ3aWRnZXRzL19pbWFnZS1nYWxsZXJ5LnNjc3MiLCJ3aWRnZXRzL19pbWFnZS10ZXh0LnNjc3MiLCJ3aWRnZXRzL19sYXRlc3QtcHJvamVjdC13aWRnZXQuc2NzcyIsIndpZGdldHMvX2xpc3RpbmctZmlsdGVyLnNjc3MiLCJ3aWRnZXRzL19sb2dvLnNjc3MiLCJ3aWRnZXRzL19tYXAuc2NzcyIsIndpZGdldHMvX3BhZ2UtcmVsYXRpb25zaGlwLnNjc3MiLCJ3aWRnZXRzL19zaGFyZS5zY3NzIiwid2lkZ2V0cy9fc3RhbmRhcmQuc2NzcyIsIndpZGdldHMvX3ZpZGVvLnNjc3MiLCJ3aWRnZXRzL19idXR0b25zLnNjc3MiLCJiYXNlL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7Ozs7Ozs7Ozs7O0VBZUU7QUNmRixlQUFlO0FDQWY7Ozs7a0VBSWtFO0FBQ2xFO0VBQ0ksbUNBQWlDO0VBQ2pDLG9DQUFrQyxFQUNyQzs7QUFFRDtFQUNJLG9CRFljO0VDWGQsZURZVTtFQ1hWLGtCQUFnQixFQUNuQjs7QUFFRDtFQUNJLG9CRE1jO0VDTGQsZURNVTtFQ0xWLGtCQUFnQixFQUNuQjs7QUFFRDs7RUFFSSx5QkFBdUIsRUFDMUI7O0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXFFSSxVQUFRO0VBQ1IsV0FBUztFQUNULFVBQVE7RUFDUixXQUFTO0VBQ1QsZ0JBQWM7RUFDZCx5QkFBdUI7RUFDdkIsd0JBQXNCLEVBQ3pCOztBQUVEO0VBQ0ksMkJBQXlCO0VBQ3pCLCtCQUE2QjtFQUM3QixhQUFXO0VBQ1gsbUJBQWlCO0VBQ2pCLG1CQUFpQixFQUNwQjs7QUFFRDtFQUNJLGdCQUFjO0VBQ2Qsa0JBQWdCO0VBQ2hCLGVEckZVO0VDc0ZWLG9CRGpHZTtFQ2tHZixVQUFRO0VBQ1IsV0FBUztFQUNULGFBQVc7RUFDWCxtQkFBaUI7RUFDakIsV0FBUyxFQUNaOztBQUVEO0VBQ0ksbUJBQWlCO0VBQ2pCLFdBQVM7RUFDVCxTQUFPO0VBQ1AsUUFBTTtFQUNOLGlCQUFlO0VB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bUI7TUFDbkIsbUJBQWlCO01BQ2pCLFdBQVMsRUFXWjtNQXhCTDtRQWlCZ0IseUJBQXVCLEVBQzFCO01BbEJiO1FBcUJnQiwwQkFBd0IsRUFDM0I7RUFLYjtJQUNJLDJCQUF5QjtJQUN6QiwrQkFBNEI7SUFDNUIsd0JBQXNCLEVBS3pCO0lBUkQ7TUFNUSx5QkFBdUIsRUFDMUI7RUFHTDs7SUFFSSw0QkFBMEIsRUFDN0I7RUFFRDs7OztJQUlJLDRCQUEwQixFQUM3QjtFQUVEO0lBQ0ksK0JBQTZCLEVBQ2hDO0VBRUQ7SUFFUSxZQUFVLEVBMEJiO0lBNUJMO01BS1ksaUJBQWUsRUFDbEI7SUFOVDtNQVNZLGUzQ3ZHRjtNMkN3R0UsYUFBVztNQUNYLG1CQUFpQjtNQUNqQixpQkFBZSxFQUtsQjtNQWpCVDtRQWVnQixjQUFZLEVBQ2Y7SUFoQmI7TUFvQlksd0JBQXNCLEVBT3pCO01BM0JUO1FBdUJnQixlM0NySE47UTJDc0hNLGtCQUFnQjtRQUNoQixtQkFBaUIsRUFDcEI7RUFLYjtJQUNJLDRCQUEwQjtJQUMxQixXQUFTO0lBQ1QsbUJBQWlCLEVBS3BCO0lBUkQ7TUFNUSx5QkFBdUIsRUFDMUI7RUFHTDtJQUNJLG1CQUFpQixFQUtwQjtJQU5EO01BSVEsdUJBQXFCLEVBQ3hCO0VBR0w7SUFDSSxrQkFBZ0IsRUFDbkI7RUFFRDtJQUNJLGUzQ3BKTSxFMkNxSlQ7RUFFRDtJQUNJLFlBQVU7SUFDVixXQUFTO0lBQ1QsWUFBVTtJQUNWLG1CQUFpQixFQUNwQixFQUFBIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogU0FTUyBndWlkZWxpbmVzXG5cbi5lbGVtZW50e1xuXHQvLyBOb3JtYWwgZWxlbWVudCBzdHlsZXMgaGVyZSBlLmcuIHBvc2l0aW9uOiByZWxhdGl2ZSBldGMuXG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCBmb3IgdGhpcyBlbGVtZW50XG5cblx0LmlubmVyLWVsZW1lbnRze1xuXHRcdC8vIFN0eWxlcyBmb3IgaW5uZXIgZWxlbWVudHMgaGVyZVxuXHR9XG5cblx0Ji5tb2RpZmllciB7XG5cdFx0Ly8gU3R5bGVzIGZvciBtb2RpZmllciBvZiBlbGVtZW50IGhlcmVcblx0fVxufVxuKi9cbi8qIFZhcmlhYmxlcyAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNQUlOICsgUkVTRVRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbioge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzAwNDQ3YztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzAwNDQ3YztcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbi5jaHJvbWVmcmFtZSxcbmxpLmdyYXBoaWMtb25seSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5odG1sLFxuYm9keSxcbmRpdixcbnNwYW4sXG5vYmplY3QsXG5pZnJhbWUsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wLFxuYmxvY2txdW90ZSxcbnByZSxcbmFiYnIsXG5hZGRyZXNzLFxuY2l0ZSxcbmNvZGUsXG5kZWwsXG5kZm4sXG5lbSxcbmltZyxcbmlucyxcbmtiZCxcbnEsXG5zYW1wLFxuc21hbGwsXG5zdHJvbmcsXG5zdWIsXG5zdXAsXG52YXIsXG5iLFxuaSxcbmRsLFxuZHQsXG5kZCxcbm9sLFxudWwsXG5saSxcbmZpZWxkc2V0LFxuZm9ybSxcbmxhYmVsLFxubGVnZW5kLFxudGFibGUsXG5jYXB0aW9uLFxudGJvZHksXG50Zm9vdCxcbnRoZWFkLFxudHIsXG50aCxcbnRkLFxuYXJ0aWNsZSxcbmFzaWRlLFxuY2FudmFzLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnksXG50aW1lLFxubWFyayxcbmF1ZGlvLFxudmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbmh0bWwge1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjg4O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2YyZjlmZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDsgfVxuXG4jd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNmMmY5ZmU7IH1cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogRW1iZWRkZWQgY29udGVudCAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudCAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxNXB4IDQwcHg7IH1cblxuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuLyogRm9ybXMgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xuICBtYXJnaW46IDA7XG4gIG91dGxpbmU6IDA7IH1cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKiBIVE1MNSAvIE1JU0MgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWVudSxcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIHF1b3Rlczogbm9uZTsgfVxuXG5ibG9ja3F1b3RlOmJlZm9yZSxcbmJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSxcbnE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgY29udGVudDogbm9uZTsgfVxuXG5pbnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0NDdjO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwYWRkaW5nOiAwIDJweDsgfVxuXG5kZWwge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4vKiBTTElERVJTICovXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIC5zbGlkZXIgLnNsaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLnNsaWRlciAuc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuc2xpZGVyIC5zbGlkZSAuaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAtbW96LXRyYW5zaXRpb246IDI1MG1zIG9wYWNpdHkgZWFzZS1pbi1vdXQ7XG4gICAgICAtby10cmFuc2l0aW9uOiAyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICAgICAgLW1zLXRyYW5zaXRpb246IDI1MG1zIG9wYWNpdHkgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDI1MG1zIG9wYWNpdHkgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiAyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0OyB9XG4gICAgICAuc2xpZGVyIC5zbGlkZSAuaW1nLnZpZGVvLXJlYWR5IHtcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5zbGlkZXIgLnNsaWRlIC52aWRlby1tYXNrIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMDsgfVxuICAgICAgLnNsaWRlciAuc2xpZGUgLnZpZGVvLW1hc2sgaWZyYW1lIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgLnNsaWRlciAuc2xpZGUgdmlkZW8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgLnNsaWRlciAuc2xpZGUgLnNsaWRlLWNhcHRpb24ge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnNsaWRlciAuc2xpZGUgLnNsaWRlLWNhcHRpb24uYm94LWNhcHRpb24ge1xuICAgICAgICAgIG1heC13aWR0aDogYXV0bzsgfSB9XG4gICAgLnNsaWRlciAuc2xpZGUgLmJveC1jYXB0aW9uIC5zbGlkZS1jYXB0aW9uLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zbGlkZXIgLnNsaWRlIC5ib3gtY2FwdGlvbiAuc2xpZGUtY2FwdGlvbi1pbm5lciB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgIC5zbGlkZXIgLnNsaWRlIC5ib3R0b20tYm94LWNhcHRpb24ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc2xpZGVyIC5zbGlkZSAuYm90dG9tLWJveC1jYXB0aW9uIHtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9IH1cbiAgICAgIC5zbGlkZXIgLnNsaWRlIC5ib3R0b20tYm94LWNhcHRpb24gLnNsaWRlLWNhcHRpb24taW5uZXIge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5zbGljay1zbGlkZXIge1xuICB6LWluZGV4OiAyOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHotaW5kZXg6IDU7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICdCbGFjayBUaWUnO1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDUwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAyNXB4OyB9IH1cbiAgICAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXEYwOTInOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiA1MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDI1cHg7IH0gfVxuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcRjA5Myc7IH1cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogNzNweDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICAgICAgICBib3R0b206IDMwcHg7IH0gfVxuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGJ1dHRvbjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBmb250LWZhbWlseTogJ0JsYWNrIFRpZSc7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxGMDhDXCI7XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgLnNsaWNrLWFjdGl2ZSBidXR0b246YWZ0ZXIge1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4uaG9tZS1zbGlkZXIge1xuICBjbGlwLXBhdGg6IHVybCgjaGVyby1jbGlwKTtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IHVybCgjaGVyby1jbGlwKTsgfVxuICAuaG9tZS1zbGlkZXI6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuaG9tZS1zbGlkZXI6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmhvbWUtc2xpZGVyOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMXB4OyB9IH1cbiAgLmhvbWUtc2xpZGVyIC5zbGlkZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDNweCk7IH1cbiAgICAuaG9tZS1zbGlkZXIgLnNsaWRlIC5pbWcge1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIC5ob21lLXNsaWRlciAuc2xpZGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwNDQ3YyAwJSwgdHJhbnNwYXJlbnQgNTIlKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDQ0N2MgMCUsIHRyYW5zcGFyZW50IDUyJSk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA0NDdjIDAlLCB0cmFuc3BhcmVudCA1MiUpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGMDA0NDdDJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0wKTtcbiAgICAgIG9wYWNpdHk6IDAuNzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaG9tZS1zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7IH0gfVxuICAuaG9tZS1zbGlkZXIgLnNsaWNrLWFycm93OmFmdGVyIHtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuXG4ubWFzdGhlYWQtc2xpZGVyIC5zbGlkZSB7XG4gIGhlaWdodDogNDk5cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm1hc3RoZWFkLXNsaWRlciAuc2xpZGUge1xuICAgICAgaGVpZ2h0OiAyNTBweDsgfSB9XG4gIC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5pbWcge1xuICAgIHotaW5kZXg6IDA7IH1cbiAgLm1hc3RoZWFkLXNsaWRlciAuc2xpZGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA0NDdjIDAlLCB0cmFuc3BhcmVudCA1MiUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDQ0N2MgMCUsIHRyYW5zcGFyZW50IDUyJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwNDQ3YyAwJSwgdHJhbnNwYXJlbnQgNTIlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGMDA0NDdDJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0wKTtcbiAgICBvcGFjaXR5OiAwLjc7IH1cblxuLm1hc3RoZWFkLXNsaWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzM3B4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5tYXN0aGVhZC1zbGlkZXI6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAyMnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm1hc3RoZWFkLXNsaWRlcjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuXG4uc2luZ2xlLXByb2R1Y3QgLm1hc3RoZWFkLXNsaWRlciAuc2xpZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiAxMDUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTMwcHg7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc2luZ2xlLXByb2R1Y3QgLm1hc3RoZWFkLXNsaWRlciAuc2xpZGUgLmJhbm5lci10ZXh0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gICAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMSwgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMiwgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5zaW5nbGUtcHJvZHVjdCAubWFzdGhlYWQtc2xpZGVyIC5zbGlkZSAuYmFubmVyLXRleHQgaDEge1xuICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgbWFyZ2luLXRvcDogOHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH0gfVxuICAgIC5zaW5nbGUtcHJvZHVjdCAubWFzdGhlYWQtc2xpZGVyIC5zbGlkZSAuYmFubmVyLXRleHQgaDIge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gICAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5iYW5uZXItdGV4dCBoMyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc2luZ2xlLXByb2R1Y3QgLm1hc3RoZWFkLXNsaWRlciAuc2xpZGUgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgLnNpbmdsZS1wcm9kdWN0IC5tYXN0aGVhZC1zbGlkZXIgLnNsaWRlIC5pbWc6YmVmb3JlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB0cmFuc3BhcmVudCAwJSwgIzAwNDQ3YyA2NCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHRyYW5zcGFyZW50IDAlLCAjMDA0NDdjIDY0JSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdHJhbnNwYXJlbnQgMCUsICMwMDQ0N2MgNjQlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMDAwJywgZW5kQ29sb3JzdHI9JyNGRjAwNDQ3QycsIEdyYWRpZW50VHlwZT0wKTtcbiAgICBvcGFjaXR5OiAwLjY1O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDsgfVxuXG4ud2lkZ2V0LXNsaWRlciAuc2xpZGUge1xuICBoZWlnaHQ6IDY1NnB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC53aWRnZXQtc2xpZGVyIC5zbGlkZSB7XG4gICAgICBoZWlnaHQ6IDM1MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndpZGdldC1zbGlkZXIgLnNsaWRlIHtcbiAgICAgIGhlaWdodDogMjUwcHg7IH0gfVxuXG4ud2lkZ2V0LXNsaWRlcjpiZWZvcmUsIC53aWRnZXQtc2xpZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMzcHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC53aWRnZXQtc2xpZGVyOmJlZm9yZSwgLndpZGdldC1zbGlkZXI6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAyMnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndpZGdldC1zbGlkZXI6YmVmb3JlLCAud2lkZ2V0LXNsaWRlcjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuXG4ud2lkZ2V0LXNsaWRlcjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cblxuLndpZGdldC1zbGlkZXI6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cblxuLndiLXByb2R1Y3RzIC5zbGlkZXItc2hvdyAuc2xpZGUge1xuICBoZWlnaHQ6IDI2MHB4OyB9XG5cbi53Yi1wcm9kdWN0cyAuc2xpZGVyLWNvbnRyb2wge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIC53Yi1wcm9kdWN0cyAuc2xpZGVyLWNvbnRyb2wgLnNsaWNrLWxpc3Qge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAud2ItcHJvZHVjdHMgLnNsaWRlci1jb250cm9sIC5zbGlkZSB7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEwcHgpICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgICAud2ItcHJvZHVjdHMgLnNsaWRlci1jb250cm9sIC5zbGlkZTpudGgtY2hpbGQoMiksIC53Yi1wcm9kdWN0cyAuc2xpZGVyLWNvbnRyb2wgLnNsaWRlOm50aC1jaGlsZCgzKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAgIC53Yi1wcm9kdWN0cyAuc2xpZGVyLWNvbnRyb2wgLnNsaWRlOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiIFwiOyB9XG4gICAgLndiLXByb2R1Y3RzIC5zbGlkZXItY29udHJvbCAuc2xpZGU6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAud2ItcHJvZHVjdHMgLnNsaWRlci1jb250cm9sIC5zbGlkZTpob3ZlcjpiZWZvcmUge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAud2ItcHJvZHVjdHMgLnNsaWRlci1jb250cm9sIC5zbGlkZS5zbGljay1jdXJyZW50OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICMzYjhlZGU7IH1cblxuLmltZyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pbWcgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHVzZXItZHJhZzogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5uby1jdXJzb3Ige1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDsgfVxuXG5zZWN0aW9uLm1haW4tYm9keSAud2lkZ2V0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRk9OVFMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5odG1sLFxuYm9keSxcbiN3cmFwLFxuaGVhZGVyLmhlYWRlciB7XG4gIG1pbi13aWR0aDogMzIwcHg7IH1cblxuLnJpZ2h0LFxuLmxlZnQge1xuICBmbG9hdDogbm9uZTsgfVxuXG4uY2xlYXJmaXgge1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDsgfVxuXG5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTsgfVxuXG4uc3RvcC1zY3JvbGxpbmcge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5uby1hbmltLFxuLm5vLWFuaW0gKiB7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1tcy10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm5vLWFuaW0tc2luZ2xlIHtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG5hIHtcbiAgY29sb3I6ICMwMDQ0N2M7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDsgfVxuICBhW2hyZWY9JyMnXSwgYVtocmVmPScnXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qIGFtZW5kaW5nIHRoZSBkZWZhdWx0IGJvb3RzdHJhcCAxNXB4IGd1dHRlcnMgKi9cbi5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMjVweDsgfVxuXG4uY29sLWxnLTEsIC5jb2wtbGctMTAsIC5jb2wtbGctMTEsIC5jb2wtbGctMTIsIC5jb2wtbGctMiwgLmNvbC1sZy0zLCAuY29sLWxnLTQsIC5jb2wtbGctNSwgLmNvbC1sZy02LCAuY29sLWxnLTcsIC5jb2wtbGctOCwgLmNvbC1sZy05LCAuY29sLW1kLTEsIC5jb2wtbWQtMTAsIC5jb2wtbWQtMTEsIC5jb2wtbWQtMTIsIC5jb2wtbWQtMiwgLmNvbC1tZC0zLCAuY29sLW1kLTQsIC5jb2wtbWQtNSwgLmNvbC1tZC02LCAuY29sLW1kLTcsIC5jb2wtbWQtOCwgLmNvbC1tZC05LCAuY29sLXNtLTEsIC5jb2wtc20tMTAsIC5jb2wtc20tMTEsIC5jb2wtc20tMTIsIC5jb2wtc20tMiwgLmNvbC1zbS0zLCAuY29sLXNtLTQsIC5jb2wtc20tNSwgLmNvbC1zbS02LCAuY29sLXNtLTcsIC5jb2wtc20tOCwgLmNvbC1zbS05LCAuY29sLXhzLTEsIC5jb2wteHMtMTAsIC5jb2wteHMtMTEsIC5jb2wteHMtMTIsIC5jb2wteHMtMiwgLmNvbC14cy0zLCAuY29sLXhzLTQsIC5jb2wteHMtNSwgLmNvbC14cy02LCAuY29sLXhzLTcsIC5jb2wteHMtOCwgLmNvbC14cy05IHtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG5cbi5tYWluLWJvZHkge1xuICBwYWRkaW5nOiAyMHB4IDAgMTUzcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubWFpbi1ib2R5IHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCA3MnB4OyB9IH1cbiAgLm1haW4tYm9keS5uby1tYXJnaW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgYm9keS5lcnJvcjQwNCAubWFpbi1ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgYm9keS5lcnJvcjQwNCAubWFpbi1ib2R5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHggIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmVycm9yNDA0IC5tYWluLWJvZHkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweCAhaW1wb3J0YW50OyB9IH1cbiAgLm1haW4tYm9keTphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5tYWluLWJvZHk6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm1haW4tYm9keTphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTFweDsgfSB9XG5cbi5kcmF3ZXIgLnNvY2lhbC1tZWRpYSBhLFxuLm1vYi1tZW51LWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiA0N3B4O1xuICB3aWR0aDogNTVweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogNDJweDtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5kcmF3ZXIgLnNvY2lhbC1tZWRpYSBhIGksXG4gIC5tb2ItbWVudS1idG4gaSB7XG4gICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4ucmVzaXplIC5zb2NpYWwtbWVkaWEgYSxcbi5yZXNpemUgLm1vYi1tZW51LWJ0biB7XG4gIGhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgd2lkdGg6IDQ3cHg7IH1cbiAgLnJlc2l6ZSAuc29jaWFsLW1lZGlhIGEgaSxcbiAgLnJlc2l6ZSAubW9iLW1lbnUtYnRuIGkge1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4OyB9XG5cbmhlYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiBpbmhlcml0O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDM7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAtbW96LXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICAtby10cmFuc2l0aW9uOiAyNTBtcyBhbGwgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICB0cmFuc2l0aW9uOiAyNTBtcyBhbGwgZWFzZTsgfVxuICBoZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIGhlYWRlciAuaGVhZGVyX190b3Age1xuICAgIG1hcmdpbi10b3A6IDI2cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgaGVpZ2h0OiAzNHB4OyB9XG4gICAgaGVhZGVyIC5oZWFkZXJfX3RvcF9fcGhvbmVsaW5rIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wX19waG9uZWxpbmsgaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wX19waG9uZWxpbmsgc3BhbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNnB4OyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wX19waG9uZWxpbms6aG92ZXIsIGhlYWRlciAuaGVhZGVyX190b3BfX3Bob25lbGluazpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgaGVhZGVyIC5oZWFkZXJfX3RvcCAubGFuZ19zZWxfY2xpY2tfY3VzdG9tIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICB6LWluZGV4OiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAgIGhlYWRlciAuaGVhZGVyX190b3AgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSBhIGZpZ3VyZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20gYSBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4OyB9XG4gICAgICAgIGhlYWRlciAuaGVhZGVyX190b3AgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSBhOmhvdmVyLCBoZWFkZXIgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20gYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIGhlYWRlciAuaGVhZGVyX190b3AgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSA+IGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcRjA5NVwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJCbGFjayBUaWVcIjtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIHJpZ2h0OiA2cHg7IH1cbiAgICAgIGhlYWRlciAuaGVhZGVyX190b3AgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSA+IGEuZXhwYW5kZWQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcRjA5NFwiOyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20gdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICAgICAgICAtby10cmFuc2l0aW9uOiAyNTBtcyBhbGwgZWFzZTtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IDI1MG1zIGFsbCBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uOiAyNTBtcyBhbGwgZWFzZTsgfVxuICAgICAgaGVhZGVyIC5oZWFkZXJfX3RvcCAubGFuZ19zZWxfY2xpY2tfY3VzdG9tLmV4cGFuZGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwNDQ3YzsgfVxuICAgICAgICBoZWFkZXIgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20uZXhwYW5kZWQgdWwge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4OyB9XG4gIGhlYWRlciAuaGVhZGVyX19ib3R0b20ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tIC5sb2dvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyMTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDg2MHB4KSB7XG4gICAgICAgIGhlYWRlciAuaGVhZGVyX19ib3R0b20gLmxvZ28ge1xuICAgICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH0gfVxuICAgICAgaGVhZGVyIC5oZWFkZXJfX2JvdHRvbSAubG9nbyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tIC5sb2dvIGltZy5wcmludC1sb2dvIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgaGVhZGVyIC5oZWFkZXJfX2JvdHRvbV9fcHVsbHJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGhlaWdodDogNDdweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5NXB4KSB7XG4gICAgICAgICAgaGVhZGVyIC5oZWFkZXJfX2JvdHRvbV9fcHVsbHJpZ2h0IHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDQ3cHg7IH1cbiAgICAgICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMThweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAgICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkgYTpob3ZlciwgaGVhZGVyIC5oZWFkZXJfX2JvdHRvbV9fcHVsbHJpZ2h0IHVsIGxpIGE6Zm9jdXMge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICAgICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAgICAgICAgIGhlYWRlciAuaGVhZGVyX19ib3R0b21fX3B1bGxyaWdodCB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4gICAgICBoZWFkZXIgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgLm1vYi1tZW51LWJ0biB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4gIGhlYWRlciAubW9iLW1lbnUtYnRuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDsgfVxuICAgIGhlYWRlciAubW9iLW1lbnUtYnRuOmhvdmVyLCBoZWFkZXIgLm1vYi1tZW51LWJ0bjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMwMDQ0N2M7IH1cbiAgICBoZWFkZXIgLm1vYi1tZW51LWJ0bi5mdWxsc2NyZWVuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDEwMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuc2hvdy1tb2ItbWVudSBoZWFkZXIgLm1vYi1tZW51LWJ0bi5mdWxsc2NyZWVuIHtcbiAgICAgICAgICBvcGFjaXR5OiAwOyB9IH1cbiAgaGVhZGVyLnJlc2l6ZSB7XG4gICAgYmFja2dyb3VuZDogIzAwNDQ3YzsgfVxuICAgIGhlYWRlci5yZXNpemUgLmhlYWRlcl9fdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDlweDsgfVxuICAgICAgaGVhZGVyLnJlc2l6ZSAuaGVhZGVyX190b3BfX3Bob25lbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7IH1cbiAgICAgICAgaGVhZGVyLnJlc2l6ZSAuaGVhZGVyX190b3BfX3Bob25lbGluayBpIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDsgfVxuICAgICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX3RvcF9fcGhvbmVsaW5rIHNwYW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4OyB9XG4gICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX3RvcCAubGFuZ19zZWxfY2xpY2tfY3VzdG9tIGEge1xuICAgICAgICBwYWRkaW5nOiA1cHggMjJweCA1cHggNXB4OyB9XG4gICAgICAgIGhlYWRlci5yZXNpemUgLmhlYWRlcl9fdG9wIC5sYW5nX3NlbF9jbGlja19jdXN0b20gYSBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICB3aWR0aDogMjJweDsgfVxuICAgICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX3RvcCAubGFuZ19zZWxfY2xpY2tfY3VzdG9tIGEgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cbiAgICAgICAgaGVhZGVyLnJlc2l6ZSAuaGVhZGVyX190b3AgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSBhOmFmdGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgIHJpZ2h0OiA2cHg7IH1cbiAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX2JvdHRvbSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX2JvdHRvbSAubG9nbyB7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4OyB9XG4gICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX2JvdHRvbV9fcHVsbHJpZ2h0IHtcbiAgICAgICAgaGVpZ2h0OiA0MXB4OyB9XG4gICAgICAgIGhlYWRlci5yZXNpemUgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkge1xuICAgICAgICAgIGhlaWdodDogNDBweDsgfVxuICAgICAgICAgIGhlYWRlci5yZXNpemUgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkgYSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAgICAgICAgIGhlYWRlci5yZXNpemUgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTNweDsgfVxuICAgICAgICBoZWFkZXIucmVzaXplIC5oZWFkZXJfX2JvdHRvbV9fcHVsbHJpZ2h0IC5tb2ItbWVudS1idG4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxM3B4OyB9XG4gICAgaGVhZGVyLnJlc2l6ZSAubW9iLW1lbnUtYnRuIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICBoZWFkZXIucmVzaXplIC5tb2ItbWVudS1idG4uZnVsbHNjcmVlbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTAxOyB9XG5cbi5oZWFkZXJfX2JnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTQzcHg7XG4gIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cbiAgLmhlYWRlcl9fYmcucmVzaXplIHtcbiAgICBoZWlnaHQ6IDExNnB4OyB9XG5cbi5kcmF3ZXIge1xuICB3aWR0aDogMjUwcHg7XG4gIHBhZGRpbmc6IDI2cHggMjZweCAwIDI2cHg7XG4gIGJhY2tncm91bmQ6ICMwM0E5RjQ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDElLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxJSwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDElLCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDElLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAxJSwgMCk7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlOyB9XG4gIC5kcmF3ZXIuZnVsbHNjcmVlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1vei10cmFuc2l0aW9uOiBub25lO1xuICAgIC1vLXRyYW5zaXRpb246IG5vbmU7XG4gICAgLW1zLXRyYW5zaXRpb246IG5vbmU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAuZHJhd2VyLmZ1bGxzY3JlZW4gLnNvY2lhbC1tZWRpYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIC5kcmF3ZXIuZnVsbHNjcmVlbiAubWFpbi1uYXYge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5kcmF3ZXIgLmNvbnRhaW5lciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLmRyYXdlciAuY29udGFpbmVyIC5zb2NpYWwtbWVkaWEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiA0N3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA3OHB4O1xuICAgICAgbGVmdDogMjVweDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuZHJhd2VyIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSB7XG4gICAgICAgICAgdG9wOiAzMHB4OyB9IH1cbiAgICAgIC5kcmF3ZXIgLmNvbnRhaW5lciAuc29jaWFsLW1lZGlhIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIC5kcmF3ZXIgLmNvbnRhaW5lciAuc29jaWFsLW1lZGlhIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjOGZjOWU2O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzhmYzllNjsgfVxuICAgICAgICAgIC5kcmF3ZXIgLmNvbnRhaW5lciAuc29jaWFsLW1lZGlhIGxpIGE6aG92ZXIsIC5kcmF3ZXIgLmNvbnRhaW5lciAuc29jaWFsLW1lZGlhIGxpIGE6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOGZjOWU2OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAuZHJhd2VyIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSBsaSBhIHtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgICAgICAgICAuZHJhd2VyIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSBsaSBhOmhvdmVyLCAuZHJhd2VyIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSBsaSBhOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICAuZHJhd2VyIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTlweDsgfVxuICAgIC5kcmF3ZXIgLmNvbnRhaW5lciAubW9iLW1lbnUtYnRuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNzhweDtcbiAgICAgIHJpZ2h0OiAyNXB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmRyYXdlciAuY29udGFpbmVyIC5tb2ItbWVudS1idG4ge1xuICAgICAgICAgIHRvcDogMzBweDsgfSB9XG4gICAgICAuZHJhd2VyIC5jb250YWluZXIgLm1vYi1tZW51LWJ0bjpob3ZlciwgLmRyYXdlciAuY29udGFpbmVyIC5tb2ItbWVudS1idG46Zm9jdXMge1xuICAgICAgICBjb2xvcjogIzAwNDQ3YztcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuZHJhd2VyIC5tYWluLW5hdiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgcGFkZGluZzogMCAyNXB4O1xuICAgIHotaW5kZXg6IDA7IH1cbiAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kcmF3ZXIgLm1haW4tbmF2IHVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA3NXB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSBhbmQgKG1heC1oZWlnaHQ6IDQ1MHB4KSB7XG4gICAgICAgIC5kcmF3ZXIgLm1haW4tbmF2IHVsIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAgICAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDdweDsgfVxuICAgICAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCB1bCArIGEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIGFuZCAobWF4LWhlaWdodDogNzI1cHgpIHtcbiAgICAgICAgLmRyYXdlciAubWFpbi1uYXYgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgICAgICAgIC5kcmF3ZXIgLm1haW4tbmF2IHVsIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4OyB9XG4gICAgICAgICAgLmRyYXdlciAubWFpbi1uYXYgdWwgbGkgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgLmRyYXdlciAubWFpbi1uYXYgdWwgdWwgKyBhIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtaGVpZ2h0OiA3MjVweCkge1xuICAgICAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgICAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgICAgLmRyYXdlciAubWFpbi1uYXYgdWwgdWwgKyBhIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICAuZHJhd2VyIC5tYWluLW5hdiBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzhmYzllNjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kcmF3ZXIgLm1haW4tbmF2IGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgICAuZHJhd2VyIC5tYWluLW5hdiBsaSBhOmhvdmVyLCAuZHJhd2VyIC5tYWluLW5hdiBsaSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICM4ZmM5ZTY7IH1cbiAgICAuZHJhd2VyIC5tYWluLW5hdiBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuZHJhd2VyIC5tYWluLW5hdiBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICAuZHJhd2VyIC5tYWluLW5hdiB1bCBsaS5tYWluLW5hdl9fbm90IGEge1xuICAgICAgY29sb3I6ICNlYmViZWI7IH1cbiAgICAgIC5kcmF3ZXIgLm1haW4tbmF2IHVsIGxpLm1haW4tbmF2X19ub3QgYTpob3ZlciwgLmRyYXdlciAubWFpbi1uYXYgdWwgbGkubWFpbi1uYXZfX25vdCBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNlYmViZWI7IH1cbiAgLmRyYXdlci5zaG93IHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gICAgLmRyYXdlci5zaG93LmZ1bGxzY3JlZW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB6LWluZGV4OiAxMDA7IH1cbiAgLmRyYXdlci5zaG93LWNvbnRlbnQgLmNvbnRhaW5lcixcbiAgLmRyYXdlci5zaG93LWNvbnRlbnQgLm1haW4tbmF2IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5kcmF3ZXIucmVzaXplIC5jb250YWluZXIgLnNvY2lhbC1tZWRpYSB7XG4gICAgaGVpZ2h0OiA0MXB4O1xuICAgIHRvcDogNTVweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmRyYXdlci5yZXNpemUgLmNvbnRhaW5lciAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgdG9wOiAzMHB4OyB9IH1cbiAgLmRyYXdlci5yZXNpemUgLmNvbnRhaW5lciAubW9iLW1lbnUtYnRuIHtcbiAgICB0b3A6IDU1cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5kcmF3ZXIucmVzaXplIC5jb250YWluZXIgLm1vYi1tZW51LWJ0biB7XG4gICAgICAgIHRvcDogMzBweDsgfSB9XG5cbi5tb2ItbWVudS1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCA2OCwgMTI0LCAwLjk3KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBvcGFjaXR5OiAwO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTsgfVxuXG5ib2R5LnNob3ctbW9iLW1lbnUgLm1vYi1tZW51LW92ZXJsYXkge1xuICBvcGFjaXR5OiAxOyB9XG5cbmJvZHkucmFpc2UtbW9iLW92ZXJsYXkgLm1vYi1tZW51LW92ZXJsYXkge1xuICB6LWluZGV4OiA5MDsgfVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb290ZXJfX3RvcCwgLmZvb3Rlcl9fbWlkZGxlLCAuZm9vdGVyX19ib3R0b20sIC5mb290ZXJfX2JsdWViYXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5mb290ZXJfX3RvcCB7XG4gICAgcGFkZGluZzogNjlweCAwIDM2cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5mb290ZXJfX3RvcCB7XG4gICAgICAgIHBhZGRpbmc6IDMycHggMCAxOHB4OyB9IH1cbiAgICAuZm9vdGVyX190b3AgaDYge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luOiAwIDAgMjJweDtcbiAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5mb290ZXJfX3RvcCAuc29jaWFsLW1lZGlhIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuZm9vdGVyX190b3AgLnNvY2lhbC1tZWRpYSBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICAuZm9vdGVyX190b3AgLnNvY2lhbC1tZWRpYSBsaSArIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTRweDsgfVxuICAgICAgLmZvb3Rlcl9fdG9wIC5zb2NpYWwtbWVkaWEgYSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgIC5mb290ZXJfX3RvcCAuc29jaWFsLW1lZGlhIGEgaSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICAuZm9vdGVyX190b3AgLnNvY2lhbC1tZWRpYSBhOmhvdmVyLCAuZm9vdGVyX190b3AgLnNvY2lhbC1tZWRpYSBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAuZm9vdGVyX19taWRkbGUgLnRleHQge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuZm9vdGVyX19taWRkbGUgLnRleHQge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5mb290ZXJfX21pZGRsZSAudGV4dCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgY29sb3I6ICMwMDQ0N2M7IH1cbiAgLmZvb3Rlcl9fbWlkZGxlIC5sb2NhdGlvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogMXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuZm9vdGVyX19taWRkbGUgLmxvY2F0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5mb290ZXJfX21pZGRsZSAubG9jYXRpb25zX19pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHBhZGRpbmctbGVmdDogODJweDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuZm9vdGVyX19taWRkbGUgLmxvY2F0aW9uc19faXRlbSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cbiAgICAgIC5mb290ZXJfX21pZGRsZSAubG9jYXRpb25zX19pdGVtOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxGMENBXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkJsYWNrIFRpZVwiO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBjb2xvcjogIzAwNDQ3YztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDQ2cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmZvb3Rlcl9fbWlkZGxlIC5sb2NhdGlvbnNfX2l0ZW06YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDJweDsgfSB9XG4gICAgICAuZm9vdGVyX19taWRkbGUgLmxvY2F0aW9uc19faXRlbS0tdGVsOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxGMDA1XCI7IH1cbiAgICAgIC5mb290ZXJfX21pZGRsZSAubG9jYXRpb25zX19pdGVtLS1lbWFpbDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcRjAwMVwiOyB9XG4gIC5mb290ZXJfX2JvdHRvbSB7XG4gICAgcGFkZGluZzogNDNweCAwIDYzcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5mb290ZXJfX2JvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMDsgfSB9XG4gICAgLmZvb3Rlcl9fYm90dG9tIGltZyB7XG4gICAgICB3aWR0aDogMTQxcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmZvb3Rlcl9fYmx1ZWJhciB7XG4gICAgYmFja2dyb3VuZDogIzAwNDQ3YztcbiAgICBwYWRkaW5nOiAzMnB4IDAgMjlweDsgfVxuICAgIC5mb290ZXJfX2JsdWViYXIgLmNvcHksXG4gICAgLmZvb3Rlcl9fYmx1ZWJhciAuY3JlYXRlZCxcbiAgICAuZm9vdGVyX19ibHVlYmFyIC5mb290ZXItbmF2IHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAuZm9vdGVyX19ibHVlYmFyIC5jb3B5LFxuICAgICAgICAuZm9vdGVyX19ibHVlYmFyIC5jcmVhdGVkLFxuICAgICAgICAuZm9vdGVyX19ibHVlYmFyIC5mb290ZXItbmF2IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuY29weSBhLFxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuY29weSBhOmhvdmVyLFxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuY3JlYXRlZCBhLFxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuY3JlYXRlZCBhOmhvdmVyLFxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuZm9vdGVyLW5hdiBhLFxuICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuZm9vdGVyLW5hdiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmZvb3Rlcl9fYmx1ZWJhciAuY3JlYXRlZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuY3JlYXRlZCB7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDA7IH0gfVxuICAgIC5mb290ZXJfX2JsdWViYXIgLmZvb3Rlci1uYXYge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIC5mb290ZXJfX2JsdWViYXIgLmZvb3Rlci1uYXYgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLmZvb3Rlcl9fYmx1ZWJhciAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAuZm9vdGVyX19ibHVlYmFyIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgICAgIC5mb290ZXJfX2JsdWViYXIgLmZvb3Rlci1uYXYgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTNweDsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIC5mb290ZXJfX2JsdWViYXIgLmZvb3Rlci1uYXYgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzcHggMCAwOyB9IH1cblxuLm5vdGlmaWNhdGlvbi0tc2hvdywgLm5vdGlmaWNhdGlvbi0taGlkZSB7XG4gIHotaW5kZXg6IDk5OTk5OTk7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7IH1cbiAgLm5vdGlmaWNhdGlvbi0tc2hvdyAubm90aWZpY2F0aW9uLXBvcHVwX19pY29uLCAubm90aWZpY2F0aW9uLS1oaWRlIC5ub3RpZmljYXRpb24tcG9wdXBfX2ljb24ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGFuaW1KZWxseTtcbiAgICBhbmltYXRpb24tbmFtZTogYW5pbUplbGx5O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsgfVxuXG4ubm90aWZpY2F0aW9uLS1zaG93IC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQge1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjM2I4ZWRlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgcGFkZGluZzogMTRweCA2OHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi13aGl0ZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBjb2xvcjogIzAwNDQ3YztcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAuYnV0dG9uLWljb24ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyOHB4OyB9XG4gICAgLmJ1dHRvbi1pY29uOmhvdmVyLCAuYnV0dG9uLWljb246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5idXR0b24taWNvbiBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDsgfVxuXG4vKiBzaXRlLXdpZGUgaW5wdXQgc3R5bGVzICovXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxudGV4dGFyZWEsXG4uc2VsZWN0LXdyYXAgc2VsZWN0LFxuLnNlbGVjdC13cmFwLFxuLmZpbGUtdXBsb2FkIC5mYWtlLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlYmViZWI7XG4gIG91dGxpbmU6IDA7XG4gIGNvbG9yOiAjOTU5NTk1O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2VsZWN0LXdyYXAge1xuICBwYWRkaW5nOiAwOyB9XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lO1xuICBoZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogOHB4IDE4cHg7IH1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5mb3JtLWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5mb3JtLWdyb3VwLS1yYWRpb2NoZWNrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDJweDsgfVxuICAuZm9ybS1ncm91cCArIC5mb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuXG4uZm9ybS1kaXZpZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgdWwubm8tbGlzdCxcbiAgb2wubm8tbGlzdCxcbiAgZGwubm8tbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIHVsIGxpIGEsXG4gIHVsIGRsIGxpIGEsXG4gIG9sIGxpIGEsXG4gIG9sIGRsIGxpIGEsXG4gIGRsIGxpIGEsXG4gIGRsIGRsIGxpIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgdWwuY29va2llLWxpc3QgbGkgKyBsaSxcbiAgb2wuY29va2llLWxpc3QgbGkgKyBsaSxcbiAgZGwuY29va2llLWxpc3QgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG51bC5saXN0LWxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2U1ZTVlNTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICB1bC5saXN0LWxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICB1bC5saXN0LWxpc3QgbGkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTVlNWU1OyB9XG4gICAgdWwubGlzdC1saXN0IGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgdWwubGlzdC1saXN0IGxpIGEge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9IH1cbiAgICB1bC5saXN0LWxpc3QgbGkgaDQge1xuICAgICAgY29sb3I6ICMyMjI7IH1cbiAgICB1bC5saXN0LWxpc3QgbGkgcCB7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5wYWdlbnVtYmVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5ibG9nLXdpZGdldCArIC5wYWdlbnVtYmVyLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNGVtOyB9XG5cbnVsLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogMzBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICB1bC5wYWdlLW51bWJlcnMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIHVsLnBhZ2UtbnVtYmVycyBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgdWwucGFnZS1udW1iZXJzIGxpLnByZXYge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cbiAgICB1bC5wYWdlLW51bWJlcnMgbGkubmV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjhweDsgfVxuICAgIHVsLnBhZ2UtbnVtYmVycyBsaSBhLFxuICAgIHVsLnBhZ2UtbnVtYmVycyBsaSBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDBweDtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICB1bC5wYWdlLW51bWJlcnMgbGkgYSBpLFxuICAgICAgdWwucGFnZS1udW1iZXJzIGxpIHNwYW4gaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICB1bC5wYWdlLW51bWJlcnMgbGkgYTpob3ZlciwgdWwucGFnZS1udW1iZXJzIGxpIGE6Zm9jdXMsXG4gICAgICB1bC5wYWdlLW51bWJlcnMgbGkgc3Bhbjpob3ZlcixcbiAgICAgIHVsLnBhZ2UtbnVtYmVycyBsaSBzcGFuOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMzYjhlZGU7IH1cbiAgICB1bC5wYWdlLW51bWJlcnMgbGkgc3Bhbi5jdXJyZW50IHtcbiAgICAgIGNvbG9yOiAjM2I4ZWRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uc3ViLW5hdiB7XG4gIGhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zdWItbmF2X193cmFwIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbi10b3A6IDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTZweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnN1Yi1uYXZfX3dyYXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgICAuc3ViLW5hdl9fd3JhcCAuY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZTZlZGYyO1xuICAgICAgcGFkZGluZzogMCA2OXB4IDU1cHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zdWItbmF2X193cmFwIC5jb250YWluZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZTZlZGYyO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjVweCAyN3B4OyB9IH1cbiAgLnN1Yi1uYXZfX2lubmVyd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgLnN1Yi1uYXZfX3RpdGxlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIGNvbG9yOiAjN2I3YjdiO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc3ViLW5hdl9fdGl0bGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9IH1cbiAgLnN1Yi1uYXYgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnN1Yi1uYXYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnN1Yi1uYXYgPiB1bCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNDZweCk7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc3ViLW5hdiA+IHVsIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDg1cHgpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5zdWItbmF2ID4gdWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gICAgICAuc3ViLW5hdiA+IHVsID4gbGkgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAwOyB9XG4gICAgICAuc3ViLW5hdiA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAxcHggMCAwO1xuICAgICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnN1Yi1uYXYgPiB1bCA+IGxpID4gYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgICAgICAuc3ViLW5hdiA+IHVsID4gbGkgPiBhOmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAuc3ViLW5hdiA+IHVsID4gbGkgPiBhIGkge1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNjMsIDAuMjksIDAuMTcsIDEuMjQ1KTtcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC42MywgMC4yOSwgMC4xNywgMS4yNDUpO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC42MywgMC4yOSwgMC4xNywgMS4yNDUpO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNjMsIDAuMjksIDAuMTcsIDEuMjQ1KTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC42MywgMC4yOSwgMC4xNywgMS4yNDUpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNHB4OyB9XG4gICAgICAuc3ViLW5hdiA+IHVsID4gbGkuaG92ZXIgPiBhIHtcbiAgICAgICAgY29sb3I6ICM3YjdiN2I7IH1cbiAgICAgICAgLnN1Yi1uYXYgPiB1bCA+IGxpLmhvdmVyID4gYSBpIHtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICBjb2xvcjogIzdiN2I3YjsgfVxuICAuc3ViLW5hdi1kcm9wZG93biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgLnN1Yi1uYXYtZHJvcGRvd24gPiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWF4LXdpZHRoOiAyNDVweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIGJhY2tncm91bmQ6ICNmMmY5ZmU7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zdWItbmF2LWRyb3Bkb3duID4gdWwge1xuICAgICAgICAgIG1heC13aWR0aDogMjIwcHggIWltcG9ydGFudDsgfSB9XG4gICAgICAuc3ViLW5hdi1kcm9wZG93biA+IHVsLmFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5zdWItbmF2LWRyb3Bkb3duID4gdWwgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1heC13aWR0aDogMjQ1cHggIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuc3ViLW5hdi1kcm9wZG93biA+IHVsIHVsIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfSB9XG4gICAgICAuc3ViLW5hdi1kcm9wZG93biA+IHVsID4gbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4IDE1cHg7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuc3ViLW5hdi1kcm9wZG93biA+IHVsID4gbGkgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7IH0gfVxuICAgICAgICAuc3ViLW5hdi1kcm9wZG93biA+IHVsID4gbGkgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICM3YjdiN2I7IH1cbiAgLnN1Yi1uYXYgLmN1cnJlbnQgPiBhIHtcbiAgICBjb2xvcjogIzAzQTlGNDsgfVxuICAgIC5zdWItbmF2IC5jdXJyZW50ID4gYTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDNBOUY0OyB9XG4gIC5zdWItbmF2IC5vcGVuLXN1Yi1uYXYge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZWVlZWVlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zdWItbmF2IC5vcGVuLXN1Yi1uYXY6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICdCbGFjayBUaWUnO1xuICAgICAgY29udGVudDogJ1xcZjAxYic7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDFweDsgfVxuICAuc3ViLW5hdi5leHBhbmRlZCA+IHVsIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2VlZWVlZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAuc3ViLW5hdi5leHBhbmRlZCAub3Blbi1zdWItbmF2OmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMDIxJzsgfVxuICAuc3ViLW5hdl9fYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogI2YyZjlmZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzdiN2I3YjtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuc3ViLW5hdl9fYXJyb3c6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkJsYWNrIFRpZVwiO1xuICAgICAgY29udGVudDogXCLvgpNcIjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMTlweDsgfVxuICAgIC5zdWItbmF2X19hcnJvdy0tcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAuc3ViLW5hdl9fYXJyb3ctLWxlZnQge1xuICAgICAgbGVmdDogMTIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc3ViLW5hdl9fYXJyb3ctLWxlZnQge1xuICAgICAgICAgIGxlZnQ6IDBweDsgfSB9XG4gICAgICAuc3ViLW5hdl9fYXJyb3ctLWxlZnQ6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjA5Mic7IH1cbiAgICAgIC5zdWItbmF2X19hcnJvdy0tbGVmdDphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLnN1Yi1uYXZfX2Fycm93LXNob3ctLWxlZnQgLnN1Yi1uYXZfX2Fycm93LS1sZWZ0LCAuc3ViLW5hdl9fYXJyb3ctc2hvdy0tcmlnaHQgLnN1Yi1uYXZfX2Fycm93LS1yaWdodCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnN1Yi1uYXZfX2Fycm93LXNob3ctLWxlZnQgLnN1Yi1uYXZfX3RpdGxlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgICAgLnN1Yi1uYXZfX2Fycm93LXNob3ctLWxlZnQgPiB1bCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA3MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE0MHB4OyB9IH1cbiAgICAuc3ViLW5hdl9fYXJyb3ctc2hvdy0tcmlnaHQgLnN1Yi1uYXZfX2Fycm93LS1yaWdodCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uc3Bpbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogNzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgLnNwaW5uZXIgPiBkaXYge1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzay1ib3VuY2VkZWxheSAxcyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICAgIGFuaW1hdGlvbjogc2stYm91bmNlZGVsYXkgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDsgfVxuICAuc3Bpbm5lciAuYm91bmNlMSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjMycztcbiAgICBhbmltYXRpb24tZGVsYXk6IC0wLjMyczsgfVxuICAuc3Bpbm5lciAuYm91bmNlMiB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjE2cztcbiAgICBhbmltYXRpb24tZGVsYXk6IC0wLjE2czsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stYm91bmNlZGVsYXkge1xuICAwJSwgODAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLWJvdW5jZWRlbGF5IHtcbiAgMCUsIDgwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbi8qIFRhYmxlcyAqL1xuYm9keSB0YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keSB0YWJsZSB7XG4gICAgICBtYXJnaW46IDQwcHggMCAwO1xuICAgICAgZGlzcGxheTogdGFibGU7IH0gfVxuXG50YWJsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7IH1cblxudHIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbnRyICsgdHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjZTVlNWU1OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICB0cixcbiAgdHIgKyB0ciB7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgdGQsIHRoIHtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7IH0gfVxuXG50cjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxudGgge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIHRoIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDNBOUY0O1xuICAgICAgY29sb3I6IHdoaXRlOyB9IH1cblxudGQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICB0ZCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMnB4IDAgI2U1ZTVlNSwgaW5zZXQgMnB4IDAgMCAjZTVlNWU1O1xuICAgICAgY29sb3I6ICMyMjI7IH1cbiAgICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMCAjZTVlNWU1LCBpbnNldCAycHggMCAwICNlNWU1ZTUsIGluc2V0IC0ycHggMCAwICNlNWU1ZTU7IH0gfVxuXG50ZCArIHRkIHtcbiAgbWFyZ2luLXRvcDogMTVweDsgfVxuXG50ZCA+IHNwYW4ge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbiogKyB1bCxcbiogKyBvbCxcbiogKyBkbCxcbiogKyBwLFxuKiArIGJsb2NrcXVvdGUsXG4qICsgdGFibGUge1xuICBtYXJnaW46IDQwcHggMCAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICogKyB1bCxcbiAgICAqICsgb2wsXG4gICAgKiArIGRsLFxuICAgICogKyBwLFxuICAgICogKyBibG9ja3F1b3RlLFxuICAgICogKyB0YWJsZSB7XG4gICAgICBtYXJnaW46IDIwcHggMCAwOyB9IH1cblxuKiArIGgxLFxuKiArIGgyLFxuKiArIGgzLFxuKiArIGg0LFxuKiArIGg1LFxuKiArIGg2IHtcbiAgbWFyZ2luOiA1NXB4IDAgMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAqICsgaDEsXG4gICAgKiArIGgyLFxuICAgICogKyBoMyxcbiAgICAqICsgaDQsXG4gICAgKiArIGg1LFxuICAgICogKyBoNiB7XG4gICAgICBtYXJnaW46IDMwcHggMCAwOyB9IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6ICMwMDQ0N2M7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDQwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cblxuaDIge1xuICBmb250LXNpemU6IDMwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDI2cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cblxuaDQge1xuICBmb250LXNpemU6IDIycHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cblxuaDUsXG5oNiB7XG4gIGZvbnQtc2l6ZTogMTlweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5zdXAsXG5zdWIge1xuICBmb250LXNpemU6IDY1JTsgfVxuXG4ucGFnZS10aXRsZSxcbi5wYWdlLXN1YnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cblxuLnBhZ2UtdGl0bGUge1xuICBwYWRkaW5nOiAwIDk1cHg7XG4gIG1heC13aWR0aDogMTA1MHB4O1xuICBtYXJnaW46IDYwcHggYXV0byAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDAgNTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICAgIG1hcmdpbjogMzBweCBhdXRvIDA7IH0gfVxuICAuc3ViLW5hdl9fd3JhcCArIC5tYWluLWNvbnRlbnQgPiAucGFnZS10aXRsZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnN1Yi1uYXZfX3dyYXAgKyAubWFpbi1jb250ZW50ID4gLnBhZ2UtdGl0bGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4ucGFnZS1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgcGFkZGluZzogMCA5NXB4O1xuICBtYXgtd2lkdGg6IDEwNTBweDtcbiAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAucGFnZS1zdWJ0aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwIDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucGFnZS1zdWJ0aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAucGFnZS10aXRsZSArIC5wYWdlLXN1YnRpdGxlIHtcbiAgICBtYXJnaW46IDEwcHggYXV0byAwICFpbXBvcnRhbnQ7IH1cblxuLm5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDA0NDdjO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDElKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMSUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMSUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDElKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMSUpO1xuICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubm90aWZpY2F0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDE1cHg7IH0gfVxuICAubm90aWZpY2F0aW9uLCAubm90aWZpY2F0aW9uICoge1xuICAgIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTsgfVxuICAubm90aWZpY2F0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiAnR290IGl0JztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3R0b206IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwJSkgdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm5vdGlmaWNhdGlvbjphZnRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5ub3RpZmljYXRpb24gcCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubm90aWZpY2F0aW9uIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAubm90aWZpY2F0aW9uLnNob3cge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAgIC5ub3RpZmljYXRpb24uc2hvdzpob3ZlciBwIHtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5ub3RpZmljYXRpb24uc2hvdzpob3ZlcjphZnRlciB7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAubm90aWZpY2F0aW9uLXBvcHVwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3R0b206IDIwcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOyB9XG4gICAgLmZpeGZpeGVkIC5ub3RpZmljYXRpb24tcG9wdXAge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAyMHB4OyB9XG4gICAgLm5vdGlmaWNhdGlvbi1wb3B1cC5oaWRlLXBvcHVwIHtcbiAgICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMC43cztcbiAgICAgIC1vLXRyYW5zaXRpb24tZGVsYXk6IDAuN3M7XG4gICAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogMC43cztcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC43cztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7XG4gICAgICBtYXgtd2lkdGg6IDg4cHg7IH1cbiAgICAubm90aWZpY2F0aW9uLXBvcHVwX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9faWNvbiBpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA0NDdjO1xuICAgICAgYmFja2dyb3VuZDogIzAwMzk2ODtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgLW1vei10cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuICAgICAgLW8tdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgICAgIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC41czsgfVxuICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBwIHtcbiAgICAgICAgcGFkZGluZzogMzBweCA4MHB4IDAgMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IHAge1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCA2MHB4IDAgMjVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHggMzBweCAzMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4OyB9IH1cbiAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dCA+IGRpdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAucG9wdXAtaW5wdXQgPiBkaXYgLmVycm9yLXRvb2x0aXAge1xuICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgICAgICAgbGVmdDogLTI1cHg7IH1cbiAgICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dCA+IGRpdiAuZXJyb3ItdG9vbHRpcDphZnRlciB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA0cHggMCA0cHggNXB4OyB9XG4gICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dCBidXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gLnBvcHVwLWlucHV0IGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gLnBvcHVwLWlucHV0IGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiQmxhY2sgVGllXCI7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwi74G2XCI7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMDA0NDdjOyB9XG4gICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAucG9wdXAtaW5wdXQgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dCBidXR0b246aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmE4NGRiOyB9XG4gICAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAucG9wdXAtaW5wdXQgYnV0dG9uOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gLnBvcHVwLWlucHV0OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5wb3B1cC1pbnB1dDphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJCbGFjayBUaWVcIjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi74CSXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE1NSwgMS4xMDUsIDAuMjk1LCAxLjEyKTtcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE1NSwgMS4xMDUsIDAuMjk1LCAxLjEyKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC40cyBjdWJpYy1iZXppZXIoMC4xNTUsIDEuMTA1LCAwLjI5NSwgMS4xMik7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE1NSwgMS4xMDUsIDAuMjk1LCAxLjEyKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGN1YmljLWJlemllcigwLjE1NSwgMS4xMDUsIDAuMjk1LCAxLjEyKTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41LCAwLjUpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIG1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICBjb2xvcjogIzAwNDQ3YztcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAucG9wdXAtaW5wdXQgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gaW5wdXQsIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lciwgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIHNlbGVjdCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSBpbnB1dCwgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5uZXdzbGV0dGVyLW5hbWUtY29udGFpbmVyLCAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gc2VsZWN0IHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciwgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIC5uZXdzbGV0dGVyLW5hbWUtY29udGFpbmVyOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLCAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gc2VsZWN0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIGlucHV0Oi1tb3otcGxhY2Vob2xkZXIsIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lcjotbW96LXBsYWNlaG9sZGVyLCAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gc2VsZWN0Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIsIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lcjo6LW1vei1wbGFjZWhvbGRlciwgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCBmb3JtIHNlbGVjdDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lcjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSBzZWxlY3Q6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQgZm9ybSAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lciBzZWxlY3Qge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gLm5ld3NsZXR0ZXItbmFtZS1jb250YWluZXI6YWZ0ZXIge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IGZvcm0gaW5wdXQge1xuICAgICAgICAgIHRleHQtaW5kZW50OiAyMHB4OyB9XG4gICAgICAuaGlkZS1wb3B1cCAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAubm90aWZpY2F0aW9uLXBvcHVwIC5jbG9zZS1wb3B1cCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdG9wOiAyMHB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cCAuY2xvc2UtcG9wdXA6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2RlZGVkZTtcbiAgICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gICAgLm5vdGlmaWNhdGlvbi1wb3B1cC0tc2hvdywgLm5vdGlmaWNhdGlvbi1wb3B1cC0taGlkZSB7XG4gICAgICB6LWluZGV4OiA5OTk5OTk5O1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxuICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cC0tc2hvdyAubm90aWZpY2F0aW9uLXBvcHVwX19pY29uLCAubm90aWZpY2F0aW9uLXBvcHVwLS1oaWRlIC5ub3RpZmljYXRpb24tcG9wdXBfX2ljb24ge1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltSmVsbHk7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltSmVsbHk7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLm5vdGlmaWNhdGlvbi1wb3B1cC0tc2hvdyAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IHtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgbWF4LWhlaWdodDogMzYycHg7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLm5vdGlmaWNhdGlvbi1wb3B1cC0taGlkZSB7XG4gICAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XG4gICAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICAgICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5ub3RpZmljYXRpb24tcG9wdXAuaGlkZS1wb3B1cCAubm90aWZpY2F0aW9uLXBvcHVwX19jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5ub3RpZmljYXRpb24tcG9wdXAuZm9vdGVyLWhpZGRlbiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgICAubm90aWZpY2F0aW9uLXBvcHVwLnNpZ25lZC11cCAucG9wdXAtaW5wdXQ6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAubm90aWZpY2F0aW9uLXBvcHVwLnNpZ25lZC11cCAucG9wdXAtaW5wdXQ6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLCAxKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEsIDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEsIDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLCAxKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uZXJyb3ItdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjZDAxNTJhO1xuICBsZWZ0OiAtNDBweDtcbiAgdG9wOiAxMHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLCAwKTtcbiAgei1pbmRleDogOTk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmVycm9yLXRvb2x0aXAge1xuICAgICAgbGVmdDogLTMwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgdG9wOiAxNXB4OyB9IH1cbiAgLmVycm9yLXRvb2x0aXAgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5lcnJvci10b29sdGlwLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvY2hlY2sgLmVycm9yLXRvb2x0aXAge1xuICAgIHRvcDogY2FsYyg1MCUgKyAxNnB4KTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKSBzY2FsZSgwLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDAsIDApOyB9XG4gICAgLmZvcm0tZ3JvdXAtLXJhZGlvY2hlY2sgLmVycm9yLXRvb2x0aXAuc2hvdyB7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDEsIDEpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSkgc2NhbGUoMSwgMSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSkgc2NhbGUoMSwgMSk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDEsIDEpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSkgc2NhbGUoMSwgMSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5mb3JtLWdyb3VwLS1yYWRpb2NoZWNrIC5lcnJvci10b29sdGlwIHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSArIDMxcHgpOyB9IH1cbiAgLmVycm9yLXRvb2x0aXA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTZweDtcbiAgICB0b3A6IDEwcHg7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA1cHggMCA1cHggNnB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2QwMTUyYTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmVycm9yLXRvb2x0aXA6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkMDE1MmE7XG4gICAgICAgIHRvcDogNXB4OyB9IH1cblxuLndhcm5pbmcge1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogI2QwMTUyYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC53YXJuaW5nLnNob3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogNXB4O1xuICAgIGZvbnQtc2l6ZTogOXB4OyB9XG4gICAgLmZvcm0tZ3JvdXAtLXJhZGlvY2hlY2sgLndhcm5pbmcuc2hvdyB7XG4gICAgICBib3R0b206IDI2cHg7IH1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42Nyk7XG4gIHotaW5kZXg6IC0xO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAubW9kYWwucmFpc2UtbW9kYWwge1xuICAgIHotaW5kZXg6IDEwMDAwMDAwMDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1vZGFsLnJhaXNlLW1vZGFsLWhpZ2hlciB7XG4gICAgei1pbmRleDogMTAwMDAwMDAwMDAgIWltcG9ydGFudDsgfVxuICAubW9kYWwuc2hvdy1tb2RhbCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubW9kYWwgLmNsb3NlLW1vZGFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDQ0cHg7XG4gICAgcmlnaHQ6IDQ0cHg7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjZweDtcbiAgICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAubW9kYWwgLmNsb3NlLW1vZGFsIHtcbiAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICByaWdodDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5tb2RhbCAuY2xvc2UtbW9kYWwge1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4OyB9IH1cbiAgICAubW9kYWwgLmNsb3NlLW1vZGFsOmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5tb2RhbCAuY2xvc2UtbW9kYWwgaSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogNTJweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgIC5tb2RhbCAuY2xvc2UtbW9kYWwgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9IH1cblxuYm9keSAuZmFuY3lib3gtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjksIDI5LCAyOSwgMC44KTsgfVxuXG4uZmFuY3lib3gtd3JhcCAuZmFuY3lib3gtY2xvc2Uge1xuICB6LWluZGV4OiAxMjAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTMwcHggIWltcG9ydGFudDtcbiAgcmlnaHQ6IC0zcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5mYW5jeWJveC13cmFwIC5mYW5jeWJveC1jbG9zZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGYwMGQnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgZm9udC1mYW1pbHk6IGZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgICBwYWRkaW5nOiAxcHggMCAycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5mYW5jeWJveC13cmFwIC5mYW5jeWJveC1uYXYgc3BhbiB7XG4gIHotaW5kZXg6IDEwMDM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDsgfVxuICAuZmFuY3lib3gtd3JhcCAuZmFuY3lib3gtbmF2IHNwYW46YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZmFuY3lib3gtd3JhcCAuZmFuY3lib3gtcHJldiB7XG4gIHotaW5kZXg6IDEwMTA7XG4gIGxlZnQ6IDVweDsgfVxuICAuZmFuY3lib3gtd3JhcCAuZmFuY3lib3gtcHJldiBzcGFuOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjEwNCc7IH1cblxuLmZhbmN5Ym94LXdyYXAgLmZhbmN5Ym94LW5leHQge1xuICB6LWluZGV4OiAxMDEwO1xuICByaWdodDogNXB4OyB9XG4gIC5mYW5jeWJveC13cmFwIC5mYW5jeWJveC1uZXh0IHNwYW46YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxmMTA1JzsgfVxuXG5ib2R5LndiLWhvbWVwYWdlICN3cmFwIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2hvbWUtYmcuanBnXCIpIG5vLXJlcGVhdCAjZjJmOWZlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyOyB9XG5cbmJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keSB7XG4gIHBhZGRpbmc6IDYwcHggMCAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keSB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgMDsgfSB9XG4gIGJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5LndiLWhvbWVwYWdlIC5tYWluLWJvZHkgLnN0YW5kYXJkLXdpZGdldCB7XG4gICAgcGFkZGluZzogMCAwIDEyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LndiLWhvbWVwYWdlIC5tYWluLWJvZHkgLnN0YW5kYXJkLXdpZGdldCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA1MHB4OyB9IH1cbiAgICBib2R5LndiLWhvbWVwYWdlIC5tYWluLWJvZHkgLnN0YW5kYXJkLXdpZGdldCAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LndiLWhvbWVwYWdlIC5tYWluLWJvZHkgLnN0YW5kYXJkLXdpZGdldCAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgICBib2R5LndiLWhvbWVwYWdlIC5tYWluLWJvZHkgLnN0YW5kYXJkLXdpZGdldCArIC5sYXRlc3QtcHJvamVjdC13aWRnZXQge1xuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbmJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGNsaXAtcGF0aDogdXJsKCNjbGlwMik7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiB1cmwoI2NsaXAyKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQ6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiAyMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQ6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiAxMXB4OyB9IH1cbiAgYm9keS53Yi1ob21lcGFnZSAuaW1hZ2Utc2xpZGVyLXdpZGdldCAud2lkZ2V0LXNsaWRlciAuc2xpZGUge1xuICAgIGhlaWdodDogNjUzcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiAzNTBweDsgfSB9XG4gICAgYm9keS53Yi1ob21lcGFnZSAuaW1hZ2Utc2xpZGVyLXdpZGdldCAud2lkZ2V0LXNsaWRlciAuc2xpZGUgLnNsaWRlLWNhcHRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgei1pbmRleDogMzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIC5zbGlkZS1jYXB0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cbiAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIC5zbGlkZS1jYXB0aW9uIC5zbGlkZS1jYXB0aW9uLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE3cHg7IH1cbiAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIC5zbGlkZS1jYXB0aW9uIGg0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgICAgICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuc2xpZGUtY2FwdGlvbiBoNCArIGg1IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIC5zbGlkZS1jYXB0aW9uIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gICAgICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuc2xpZGUtY2FwdGlvbiBoNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXIgLnNsaWRlIC5zbGlkZS1jYXB0aW9uIGg1IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuc2xpZGUtY2FwdGlvbiAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ0cHg7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggNDhweDsgfVxuICAgICAgICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuc2xpZGUtY2FwdGlvbiAuYnV0dG9uOmhvdmVyLCBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuc2xpZGUtY2FwdGlvbiAuYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDA0NDdjOyB9XG4gICAgYm9keS53Yi1ob21lcGFnZSAuaW1hZ2Utc2xpZGVyLXdpZGdldCAud2lkZ2V0LXNsaWRlciAuc2xpZGUgLmltZyB7XG4gICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgLW1vei1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIC1tcy1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICBmaWx0ZXI6IGdyYXk7XG4gICAgICB6LWluZGV4OiAwOyB9XG4gICAgICBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyIC5zbGlkZSAuaW1nLWZpbHRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwNDQ3YztcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwOyB9XG4gIGJvZHkud2ItaG9tZXBhZ2UgLmltYWdlLXNsaWRlci13aWRnZXQgLndpZGdldC1zbGlkZXI6YmVmb3JlLCBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0IC53aWRnZXQtc2xpZGVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuYm9keS53Yi1ob21lcGFnZSAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IHtcbiAgY2xpcC1wYXRoOiB1cmwoI2NsaXAxKTtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IHVybCgjY2xpcDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cbiAgYm9keS53Yi1ob21lcGFnZSAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0OmJlZm9yZSwgYm9keS53Yi1ob21lcGFnZSAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHkud2ItaG9tZXBhZ2UgZm9vdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IC0xMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHotaW5kZXg6IC0xOyB9XG5cbmJvZHkud2ItaG9tZXBhZ2Ugc3ZnIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi51bmRlci1zbGlkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMwMDQ0N2M7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgbGVmdDogNTAlO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xNXB4KTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTE1cHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTE1cHgpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xNXB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTE1cHgpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC51bmRlci1zbGlkZXIge1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApOyB9IH1cbiAgLnVuZGVyLXNsaWRlciBpIHtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJsb2ctd2lkZ2V0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfSB9XG5cbi5ibG9nLXdpZGdldCAuY29udGFpbmVyID4gaDMge1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgcGFkZGluZy1yaWdodDogMTMwcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmJsb2ctd2lkZ2V0IC5jb250YWluZXIgPiBoMyB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYmxvZy13aWRnZXQgLmNvbnRhaW5lciA+IGgzIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuYmxvZy13aWRnZXQgLmNvbnRhaW5lciA+IGgzIC5idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHJpZ2h0OiAtM3B4O1xuICAgIHRvcDogMTlweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjMDA0NDdjOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYmxvZy13aWRnZXQgLmNvbnRhaW5lciA+IGgzIC5idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG4uYmxvZy13aWRnZXQgLmZsZXgtbGlzdCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbW96LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiA5M3B4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDsgfSB9XG4gIGh0bWwuaWUxMCAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMzRweCk7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCA0NnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMzRweDsgfSB9XG4gICAgaHRtbC5pZTEwIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGh0bWwuaWUxMCAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2M3B4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBodG1sLmllMTAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzRweDsgfSB9XG4gICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAuaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBoZWlnaHQ6IDU4N3B4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAuaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDQ4MHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC5pbWcge1xuICAgICAgICAgIGhlaWdodDogNDAwcHg7IH0gfVxuICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDAgNzBweCA2NXB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjVweCAzMHB4OyB9IH1cbiAgICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgPiBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dC1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDRweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0LWlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NXB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dC1pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMThweDsgfSB9XG4gICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IC5oZWlnaHQtcmVzdHJpY3RvciB7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IG1heC1oZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgbWF4LWhlaWdodDogMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgLmhlaWdodC1yZXN0cmljdG9yIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bzsgfSB9XG4gICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBoMzpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFxGMDk0XCI7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiQmxhY2sgVGllXCI7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0b3A6IDE4cHg7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGgzOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBwIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICAgICAgY29sb3I6ICMwMTAxMDE7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IC5idXR0b24ge1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAzMnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobiArIDMpIHtcbiAgICAgIG1hcmdpbi10b3A6IDY4cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZChuICsgMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDM0cHg7IH0gfVxuICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGE6aG92ZXIgLnRleHQgLmhlaWdodC1yZXN0cmljdG9yLCAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOmZvY3VzIC50ZXh0IC5oZWlnaHQtcmVzdHJpY3RvciB7XG4gICAgICBtYXgtaGVpZ2h0OiAyNTBweDsgfVxuICAgIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGE6aG92ZXIgLnRleHQgaDM6YmVmb3JlLCAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOmZvY3VzIC50ZXh0IGgzOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcRjA5NVwiOyB9XG4gICAgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYTpob3ZlciAudGV4dCBwLCAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOmZvY3VzIC50ZXh0IHAge1xuICAgICAgY29sb3I6ICMwMTAxMDE7IH1cbiAgICAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOmhvdmVyIC50ZXh0IC5idXR0b24sIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGE6Zm9jdXMgLnRleHQgLmJ1dHRvbiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50OyB9XG5cbi8qIElFIE9WRVJSSURFUyAqL1xuXzotbXMtbGFuZyh4KSwgYm9keS53Yi1ob21lcGFnZSAjd3JhcCB7XG4gIGJhY2tncm91bmQ6ICNmMmY5ZmUgIWltcG9ydGFudDsgfVxuXG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5ob21lLXNsaWRlcjphZnRlcixcbl86LW1zLWxhbmcoeCksIGJvZHkud2ItaG9tZXBhZ2UgLmxhdGVzdC1wcm9qZWN0LXdpZGdldDpiZWZvcmUsXG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YWZ0ZXIsXG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0OmJlZm9yZSxcbl86LW1zLWxhbmcoeCksIGJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keTphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLnNpdGVtYXAtbGlzdCxcbi5zaXRlbWFwLWxpc3QgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5zaXRlbWFwLWxpc3QgPiBsaSB7XG4gIHBhZGRpbmc6IDQwcHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlNWU1ZTU7XG4gIGZvbnQtc2l6ZTogMjRweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2l0ZW1hcC1saXN0ID4gbGkge1xuICAgICAgcGFkZGluZzogMjVweCAwO1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgLnNpdGVtYXAtbGlzdCA+IGxpLmNoaWxkLXBhZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAyZW07XG4gICAgcGFkZGluZzogLjVlbTsgfVxuICAuc2l0ZW1hcC1saXN0ID4gbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICMwMDQ0N2M7IH1cbiAgLnNpdGVtYXAtbGlzdCA+IGxpIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgLnNpdGVtYXAtbGlzdCA+IGxpIHVsIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5zaXRlbWFwLWxpc3QgPiBsaSB1bCBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgICAgIC5zaXRlbWFwLWxpc3QgPiBsaSB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMyMjI7IH1cbiAgICAgICAgLnNpdGVtYXAtbGlzdCA+IGxpIHVsIGxpIGE6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIi0gXCI7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgICAgIC5zaXRlbWFwLWxpc3QgPiBsaSB1bCBsaSB1bCB7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuXG5ib2R5Lm1haW50ZW5hbmNlIHNlY3Rpb24uY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYm9keS5tYWludGVuYW5jZSBhcnRpY2xlIHtcbiAgbWFyZ2luOiAyNXB4IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5tYWludGVuYW5jZSBhcnRpY2xlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgfSB9XG5cbmJvZHkubWFpbnRlbmFuY2UgaS5mYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiA5MHB4OyB9XG5cbmJvZHkubWFpbnRlbmFuY2UgLnRleHQtY29udGFpbmVyIHtcbiAgY29sb3I6ICMwM0E5RjQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjVweDtcbiAgYm9yZGVyLXJhZGl1czogMjVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5Lm1haW50ZW5hbmNlIC50ZXh0LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7IH0gfVxuXG5ib2R5LndiLXByb2R1Y3RzIC5tYWluLWJvZHkge1xuICBwYWRkaW5nLXRvcDogOTVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LndiLXByb2R1Y3RzIC5tYWluLWJvZHkge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuXG4ucHJvZHVjdHMtdG9wLXdpZGdldCAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA5MTBweDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tb3otZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7XG4gIC1tb3otYm94LXBhY2s6IGp1c3RpZnk7XG4gIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLnByb2R1Y3RzLXRvcC13aWRnZXQgLm1haW4tZGVzY3JpcHRpb24ge1xuICB3aWR0aDogY2FsYyg2MyUgLSAxcHgpO1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYmVjYWQyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4MzVweCkge1xuICAgIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5tYWluLWRlc2NyaXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JlY2FkMjsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5tYWluLWRlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9IH1cbiAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLm1haW4tZGVzY3JpcHRpb24gaDEge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAubWFpbi1kZXNjcmlwdGlvbiBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gICAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLm1haW4tZGVzY3JpcHRpb24gaDEgKyAqIHtcbiAgICAgIG1hcmdpbjogMzhweCAwIDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAubWFpbi1kZXNjcmlwdGlvbiBoMSArICoge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG4ucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyB7XG4gIHdpZHRoOiAzNyU7XG4gIHBhZGRpbmctbGVmdDogNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODM1cHgpIHtcbiAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDsgfSB9XG4gIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5xdWlja2xpbmtzIGgyIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLnF1aWNrbGlua3MgaDIge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5xdWlja2xpbmtzIGgyICsgKiB7XG4gICAgICBtYXJnaW46IDMxcHggMCAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLnF1aWNrbGlua3MgaDIgKyAqIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLnF1aWNrbGlua3MgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5xdWlja2xpbmtzIHVsIGxpICsgbGkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiZWNhZDI7IH1cbiAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyB1bCBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBhZGRpbmc6IDEzcHggNDVweCAxNXB4IDA7IH1cbiAgICAgIC5wcm9kdWN0cy10b3Atd2lkZ2V0IC5xdWlja2xpbmtzIHVsIGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcRjA5N1wiO1xuICAgICAgICBmb250LWZhbWlseTogXCJCbGFjayBUaWVcIjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAxN3B4O1xuICAgICAgICByaWdodDogMXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHJvZHVjdC13aWRnZXQgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogOTEwcHg7IH1cblxuLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdpZGdldCAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMDUwcHg7IH1cbiAgLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdpZGdldCAuY29udGFpbmVyOmJlZm9yZSwgLnNpbmdsZS1wcm9kdWN0IC5wcm9kdWN0LXdpZGdldCAuY29udGFpbmVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0aW5nLWZpbHRlci13aWRnZXQgKyAucHJvZHVjdC13aWRnZXQsXG4ucHJvZHVjdC13aWRnZXQgKyAucHJvZHVjdC13aWRnZXQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctdG9wOiA5MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgKyAucHJvZHVjdC13aWRnZXQsXG4gICAgLnByb2R1Y3Qtd2lkZ2V0ICsgLnByb2R1Y3Qtd2lkZ2V0IHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9IH1cblxuLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDsgfSB9XG4gIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgc3BhbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0b3A6IDk1cHg7XG4gICAgbGVmdDogLTIwcHg7XG4gICAgcmlnaHQ6IC0yMHB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgcGFkZGluZzogNjBweCA3OXB4IDU2cHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCAzNnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwIHtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cCB7XG4gICAgICAgIHRvcDogMTA2cHg7XG4gICAgICAgIHBhZGRpbmc6IDI1cHg7IH0gfVxuICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cC0tY2xvc2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAtMjNweDtcbiAgICAgIHJpZ2h0OiAtMjNweDtcbiAgICAgIGhlaWdodDogNDZweDtcbiAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyM3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMjNweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3gtc2hhZG93OiAwcHggMnB4IDEycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAtLWNsb3NlIHtcbiAgICAgICAgICB0b3A6IC0xNXB4O1xuICAgICAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7IH0gfVxuICAgICAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cC0tY2xvc2U6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAtLWNsb3NlIGkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTUwcHgpIHtcbiAgICAgICAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwLS1jbG9zZSBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9IH1cbiAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwLS1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogNDNweDtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwLS1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAtLWJ1dHRvbiBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwLS1idXR0b24gc3BhbiBzdXAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAgICAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cC0tYnV0dG9uIHNwYW4sXG4gICAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwLS1idXR0b24gaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAgICAgLnByb2R1Y3Qtd2lkZ2V0LS10aXRsZSAucHJvZHVjdC1wb3B1cC0tYnV0dG9uIGltZyB7XG4gICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAtLWJ1dHRvbiArIC5wcm9kdWN0LXBvcHVwLS1idXR0b24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAtLWJ1dHRvbiArIC5wcm9kdWN0LXBvcHVwLS1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwIDA7IH0gfVxuICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAgaDQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgbWFyZ2luOiAxNHB4IDAgMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAgaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCAwOyB9IH1cbiAgICAucHJvZHVjdC13aWRnZXQtLXRpdGxlIC5wcm9kdWN0LXBvcHVwIHAge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS43MjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9kdWN0LXdpZGdldC0tdGl0bGUgLnByb2R1Y3QtcG9wdXAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDA7IH0gfVxuXG4ucHJvZHVjdC13aWRnZXQtLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDM3cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDQ0N2M7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gIHBhZGRpbmc6IDAgMThweDtcbiAgbWFyZ2luOiAycHggMCAwIDIycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucHJvZHVjdC13aWRnZXQtLWJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDEwcHggMCAwIDA7IH0gfVxuICAucHJvZHVjdC13aWRnZXQtLWJ1dHRvbltocmVmPVwiI1wiXSwgLnByb2R1Y3Qtd2lkZ2V0LS1idXR0b25baHJlZj1cIlwiXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7IH1cbiAgLnByb2R1Y3Qtd2lkZ2V0LS1idXR0b24uYWN0aXZlOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgdG9wOiA2NXB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDE4LjVweCAxOHB4IDE4LjVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDQ0N2MgdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAucHJvZHVjdC13aWRnZXQtLWJ1dHRvbi5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICB0b3A6IDQ1cHg7IH0gfVxuXG4ucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbW96LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiA1OHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnByb2R1Y3Qtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIC5wcm9kdWN0LXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgICAgIC5wcm9kdWN0LXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLnByb2R1Y3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICBtYXJnaW46IDIwcHggMjBweCAzMXB4O1xuICAgICAgcGFkZGluZy10b3A6IDU1LjMlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjlmZTsgfVxuICAgIC5wcm9kdWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyNXB4IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMzBweDsgfSB9XG4gICAgICAucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgICAgIC5wcm9kdWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgaDMgKyBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICAucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHAge1xuICAgICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zNTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAucHJvZHVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLndpZGdldC1jb250YWluZXIgKyAucHJvZHVjdC13aWRnZXQtLW5vcmVzdWx0cyB7XG4gIG1hcmdpbi10b3A6IDM0cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAud2lkZ2V0LWNvbnRhaW5lciArIC5wcm9kdWN0LXdpZGdldC0tbm9yZXN1bHRzIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4ucHJvZHVjdC13aWRnZXQtLW5vcmVzdWx0cyAuaW5uZXItY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDU4MnB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4ucHJvZHVjdC13aWRnZXQtLW5vcmVzdWx0cyBpbWcgKyBoNCB7XG4gIG1hcmdpbi10b3A6IDIycHggMCAwOyB9XG5cbi5wcm9kdWN0LXdpZGdldC0tbm9yZXN1bHRzIGg0IHtcbiAgY29sb3I6ICMzYjhlZGU7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnByb2R1Y3Qtd2lkZ2V0LS1ub3Jlc3VsdHMgaDQgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbi5wcm9kdWN0LXdpZGdldC0tbm9yZXN1bHRzIC5idXR0b24ge1xuICBwYWRkaW5nOiAxNHB4IDYwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLnByb2R1Y3RzLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTI4MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwIDcwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgIC5wcm9kdWN0cy1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMCA1MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnByb2R1Y3RzLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICNmMmY5ZmU7XG4gICAgbWFyZ2luOiA3MHB4IC0zMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDUwcHggMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDI1cHggMDsgfSB9XG4gICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAzODZweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuYmFubmVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDI1MHB4OyB9IH1cbiAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgdG9wOiA0MC44JTtcbiAgICAgICAgbGVmdDogNzBweDtcbiAgICAgICAgcmlnaHQ6IDcwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5NTBweCkge1xuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuYmFubmVyIC5iYW5uZXItdGV4dCB7XG4gICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDUwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuYmFubmVyLXRleHQge1xuICAgICAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgdG9wOiAzMi41JTsgfSB9XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuYmFubmVyIC5iYW5uZXItdGV4dCBoMixcbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IGgxLFxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuYmFubmVyLXRleHQgaDMge1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTNweCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuYmFubmVyLXRleHQgaDEge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IGgyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmJhbm5lci10ZXh0IGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjJweCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuYmFubmVyLXRleHQgaDMge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDsgfSB9XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuaW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAzODZweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1MHB4OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmltZzpiZWZvcmUsIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuYmFubmVyIC5pbWc6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDsgfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuaW1nOmJlZm9yZSB7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgdHJhbnNwYXJlbnQgMCUsICMwMDQ0N2MgNjQlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCB0cmFuc3BhcmVudCAwJSwgIzAwNDQ3YyA2NCUpO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50IDAlLCAjMDA0NDdjIDY0JSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjRkYwMDQ0N0MnLCBHcmFkaWVudFR5cGU9MCk7XG4gICAgICAgICAgb3BhY2l0eTogMC42NTsgfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuaW1nOmFmdGVyIHtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5iYW5uZXIgLmltZzphZnRlciB7XG4gICAgICAgICAgICAgIGhlaWdodDogMTdweDsgfSB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmJhbm5lciAuaW1nOmFmdGVyIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7IH0gfVxuICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA3MHB4IDQwcHggNzJweDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgICAgLW1vei1ib3gtcGFjazoganVzdGlmeTtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMjVweCAxNXB4OyB9IH1cbiAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgge1xuICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCArIC5oYWxmLXdpZHRoIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCArIC5oYWxmLXdpZHRoIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tc2luZ3VsYXIgKyAuaGFsZi13aWR0aC0tc2luZ3VsYXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tc2luZ3VsYXIgKyAuaGFsZi13aWR0aC0tc2luZ3VsYXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWRvY3VtZW50cyBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgaDQgKyB1bCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgaDQgKyB1bCB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWRvY3VtZW50cyBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDkwcHggMTBweCAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NTBweCkge1xuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDsgfSB9XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEgLmljb24tbGVmdC1jb250IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICBoZWlnaHQ6IDU5cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDU5cHg7XG4gICAgICAgICAgd2lkdGg6IDU5cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2YyZjlmZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWRvY3VtZW50cyBhIC5pY29uLWxlZnQtY29udCB7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEgLmljb24tbGVmdC1jb250IGlbY2xhc3NePVwiaWNvbi1cIl0sXG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgYSAuaWNvbi1sZWZ0LWNvbnQgaVtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTlweDsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gICAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEgLmljb24tbGVmdC1jb250IGlbY2xhc3NePVwiaWNvbi1cIl0sXG4gICAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEgLmljb24tbGVmdC1jb250IGlbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7IH0gfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWRvY3VtZW50cyBhIC50ZXh0LWNvbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4IC0gODFweCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwIDE3cHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZG9jdW1lbnRzIGEgLnRleHQtY29udCB7XG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0NXB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDAgNHB4OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgYSAuaWNvbi1yaWdodC1jb250IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNWVhZWY7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NTBweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgYSAuaWNvbi1yaWdodC1jb250IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1kb2N1bWVudHMgYSAuaWNvbi1yaWdodC1jb250IC5idHIge1xuICAgICAgICAgICAgaGVpZ2h0OiA1OXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU5cHg7XG4gICAgICAgICAgICB3aWR0aDogNTlweDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWZhY3RzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIHBhZGRpbmc6IDM2cHggNDBweCA0MnB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZmFjdHMge1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZmFjdHMgaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyBoNCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyBoNCArIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWZhY3RzIGg0ICsgdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWZhY3RzIHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyB1bCBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjhweDsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZmFjdHMgdWwgbGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyB1bCBsaSArIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9XG4gICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tZmFjdHMgdWwgbGkgKyBsaSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH0gfVxuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcRjAxMlwiO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJCbGFjayBUaWVcIjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWZhY3RzIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDsgfSB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1mYWN0cyB1bCBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLWZhY3RzIHVsIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7IH0gfVxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1yZWNjb21tZW5kZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDA0NDdjOyB9XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tcmVjY29tbWVuZGVkIC5pbm5lci1jb250YWluZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDM1cHggNDBweCA0MXB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLXJlY2NvbW1lbmRlZCAuaW5uZXItY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweDsgfSB9XG4gICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tcmVjY29tbWVuZGVkIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aC0tcmVjY29tbWVuZGVkIGg0IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLXJlY2NvbW1lbmRlZCBoNCArIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAxN3B4IDAgMDsgfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGgtLXJlY2NvbW1lbmRlZCBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1yZWNjb21tZW5kZWQgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzAwMzU2MTtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgcGFkZGluZzogMTFweCA0MHB4IDEzcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoLS1yZWNjb21tZW5kZWQgYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDExcHggMTVweCAxM3B4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4OyB9IH1cbiAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCB7XG4gICAgICAgIHBhZGRpbmc6IDMycHggNDBweCA0MXB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250ID4gaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGggLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LWNvbnQgPiBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250ID4gaDMgKyBwLFxuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciAuaGFsZi13aWR0aCAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IGgzICsgZm9ybSxcbiAgICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGggLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LWNvbnQgPiBoMyArIC5mb3JtLWNvbXBsZXRlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjlweCAwIDA7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250IC5idXR0b24tY29udGFpbmVyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250IC5idXR0b24tY29udGFpbmVyIGJ1dHRvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIC5oYWxmLXdpZHRoIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250IGZvcm0gKyBwLFxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyIC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIgLmhhbGYtd2lkdGggLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LWNvbnQgLmZvcm0tY29tcGxldGUgKyBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAyMnB4IDAgMDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE5cHg7IH1cbiAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5wcm9kdWN0cy1jb250YWluZXIuc2luZ2xlLXByb2R1Y3RzLWNvbnRhaW5lciAucHJvZHVjdHMtaW5uZXItY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyLnNpbmdsZS1wcm9kdWN0cy1jb250YWluZXIgLnByb2R1Y3RzLWlubmVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItc2hvdyAuc2xpZGUge1xuICAgICAgaGVpZ2h0OiAyNjBweDsgfVxuICAgIC5wcm9kdWN0cy1jb250YWluZXIuc2luZ2xlLXByb2R1Y3RzLWNvbnRhaW5lciAuc2xpZGVyLWNvbnRyb2wge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItY29udHJvbCAuc2xpY2stbGlzdCB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItY29udHJvbCAuc2xpZGUge1xuICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDsgfVxuICAgICAgICAucHJvZHVjdHMtY29udGFpbmVyLnNpbmdsZS1wcm9kdWN0cy1jb250YWluZXIgLnNsaWRlci1jb250cm9sIC5zbGlkZTpudGgtY2hpbGQoMiksIC5wcm9kdWN0cy1jb250YWluZXIuc2luZ2xlLXByb2R1Y3RzLWNvbnRhaW5lciAuc2xpZGVyLWNvbnRyb2wgLnNsaWRlOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItY29udHJvbCAuc2xpZGU6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItY29udHJvbCAuc2xpZGU6aG92ZXIge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAgIC5wcm9kdWN0cy1jb250YWluZXIuc2luZ2xlLXByb2R1Y3RzLWNvbnRhaW5lciAuc2xpZGVyLWNvbnRyb2wgLnNsaWRlOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgICAgLnByb2R1Y3RzLWNvbnRhaW5lci5zaW5nbGUtcHJvZHVjdHMtY29udGFpbmVyIC5zbGlkZXItY29udHJvbCAuc2xpZGUuc2xpY2stY3VycmVudDpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzNiOGVkZTsgfVxuXG5oMS5wYWdlLXRpdGxlICsgLnByb2plY3Qtd2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBoMS5wYWdlLXRpdGxlICsgLnByb2plY3Qtd2lkZ2V0IHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDsgfSB9XG5cbi5wcm9qZWN0LXdpZGdldCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAucHJvamVjdC13aWRnZXQgKyAucGFnZW51bWJlci1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDY1cHg7IH1cbiAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIGh0bWwuaWUxMCAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgaHRtbC5pZTEwIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDtcbiAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIGh0bWwuaWUxMCAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgICBodG1sLmllMTAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobiArIDQpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZChuICsgMyk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzBweCkge1xuICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgxcHgpIHtcbiAgICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5pbWcge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDQyN3B4OyB9IH1cbiAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnN0YXJ0LXRleHQsXG4gICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0OyB9XG4gICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnN0YXJ0LXRleHQgLnRleHQtaW5uZXIsXG4gICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLmVuZC10ZXh0IC50ZXh0LWlubmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuc3RhcnQtdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCA2OCwgMTI0LCAwKSAwJSwgcmdiYSgwLCA2OCwgMTI0LCAwLjgpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDY4LCAxMjQsIDApIDAlLCByZ2JhKDAsIDY4LCAxMjQsIDAuOCkgMTAwJSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgNjgsIDEyNCwgMCkgMCUsIHJnYmEoMCwgNjgsIDEyNCwgMC44KSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDAwMDQ0N0MnLCBlbmRDb2xvcnN0cj0nI0NDMDA0NDdDJywgR3JhZGllbnRUeXBlPTApOyB9XG4gICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnN0YXJ0LXRleHQgLnRleHQtaW5uZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMzJweCAyM3B4OyB9XG4gICAgICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuc3RhcnQtdGV4dCAudGV4dC1pbm5lciBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLnN0YXJ0LXRleHQgLnRleHQtaW5uZXIgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNjgsIDEyNCwgMC44KTsgfVxuICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCAudGV4dC1pbm5lciB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDAgNTBweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuZW5kLXRleHQgLnRleHQtaW5uZXIge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLmVuZC10ZXh0IC5idWlsZGluZ190eXBlIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEzcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIC5wcm9qZWN0LXdpZGdldCAuZmxleC1saXN0IGEgLmVuZC10ZXh0IC5idWlsZGluZ190eXBlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cbiAgICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuZW5kLXRleHQgLmV4Y2VycHQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjdweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCAuZXhjZXJwdCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHg7IH0gfVxuICAgICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhIC5lbmQtdGV4dCBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzZweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYSAuZW5kLXRleHQgaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjdweDsgfSB9XG4gICAgICAucHJvamVjdC13aWRnZXQgLmZsZXgtbGlzdCBhOmhvdmVyIC5zdGFydC10ZXh0IHtcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgLnByb2plY3Qtd2lkZ2V0IC5mbGV4LWxpc3QgYTpob3ZlciAuZW5kLXRleHQge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gIC53aWRnZXQtY29udGFpbmVyICsgLnByb2plY3Qtd2lkZ2V0LS1ub3Jlc3VsdHMge1xuICAgIG1hcmdpbi10b3A6IDM0cHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLndpZGdldC1jb250YWluZXIgKyAucHJvamVjdC13aWRnZXQtLW5vcmVzdWx0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDsgfSB9XG4gIC5wcm9qZWN0LXdpZGdldC0tbm9yZXN1bHRzIC5pbm5lci1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDU4MnB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5wcm9qZWN0LXdpZGdldC0tbm9yZXN1bHRzIGltZyArIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAyMnB4IDAgMDsgfVxuICAucHJvamVjdC13aWRnZXQtLW5vcmVzdWx0cyBoNCB7XG4gICAgY29sb3I6ICMzYjhlZGU7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC5wcm9qZWN0LXdpZGdldC0tbm9yZXN1bHRzIGg0ICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIC5wcm9qZWN0LXdpZGdldC0tbm9yZXN1bHRzIC5idXR0b24ge1xuICAgIHBhZGRpbmc6IDE0cHggNjBweDtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbmJvZHkud2Itc2hhZGluZy1mb3IgaGVhZGVyLFxuYm9keS53Yi1zaGFkaW5nLWZvciAuaGVhZGVyX19iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG5ib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbWluLWhlaWdodDogMTAwdmg7IH1cbiAgYm9keS53Yi1zaGFkaW5nLWZvciAjd3JhcCA+IHNlY3Rpb24ubWFpbi1ib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogYXV0bzsgfVxuICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgYm9keS53Yi1zaGFkaW5nLWZvciAjd3JhcCA+IHNlY3Rpb24ubWFpbi1ib2R5IGgxIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQ6ICNmMmY5ZmU7XG4gICAgICBjb2xvcjogIzAwNDQ3YztcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMjVweCAxMTRweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keSBoMSB7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAyNXB4IDM1cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cbiAgICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keSBoMTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTMzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICBib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbi5tYWluLWJvZHkgaDE6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgICAgIHRvcDogLTIycHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICBib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbi5tYWluLWJvZHkgaDE6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgICAgIHRvcDogLTExcHg7IH0gfVxuICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keSAuaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgYm9keS53Yi1zaGFkaW5nLWZvciAjd3JhcCA+IHNlY3Rpb24ubWFpbi1ib2R5IC5pbWc6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDQ0N2MgMCUsIHRyYW5zcGFyZW50IDUyJSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDQ0N2MgMCUsIHRyYW5zcGFyZW50IDUyJSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDQ0N2MgMCUsIHRyYW5zcGFyZW50IDUyJSk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGMDA0NDdDJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAwMCcsIEdyYWRpZW50VHlwZT0wKTtcbiAgICAgICAgb3BhY2l0eTogMC43OyB9XG5cbm5hdi5zaGFkaW5nLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDM7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IGNhbGMoMTAwdmggLSA2MnB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjJweDtcbiAgYmFja2dyb3VuZDogIzAwNDQ3YztcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBuYXYuc2hhZGluZy1uYXYge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIG5hdi5zaGFkaW5nLW5hdi5zdGlja3kge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7IH1cbiAgbmF2LnNoYWRpbmctbmF2IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIG5hdi5zaGFkaW5nLW5hdiBsaSB7XG4gICAgaGVpZ2h0OiA2MnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBuYXYuc2hhZGluZy1uYXYgbGk6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ3wnO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgfVxuICAgIG5hdi5zaGFkaW5nLW5hdiBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBuYXYuc2hhZGluZy1uYXYgbGkgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZzogMjFweCAyM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgbmF2LnNoYWRpbmctbmF2IGxpIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDIxcHggMThweDtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgbmF2LnNoYWRpbmctbmF2IGxpIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDIxcHggMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICAgICAgbmF2LnNoYWRpbmctbmF2IGxpIGE6aG92ZXIsIG5hdi5zaGFkaW5nLW5hdiBsaSBhLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjOGZjOWU2OyB9XG5cbi5hcHAtY29udCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgcGFkZGluZzogMzBweDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1vei1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWJveC1wYWNrOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgLW1vei1ib3gtcGFjazogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtcGFjazogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5hcHAtY29udCB7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBzZWN0aW9uLm9kZCAuYXBwLWNvbnQge1xuICAgIC13ZWJraXQtYm94LXBhY2s6IGZsZXgtZW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAtbW96LWJveC1wYWNrOiBmbGV4LWVuZDtcbiAgICAtbXMtZmxleC1wYWNrOiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBzZWN0aW9uLm9kZCAuYXBwLWNvbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMHB4OyB9IH1cbiAgLmFwcC1jb250X19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgcGFkZGluZy1yaWdodDogMzdweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYXBwLWNvbnRfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9IH1cbiAgICBzZWN0aW9uLm9kZCAuYXBwLWNvbnRfX2lubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7IH1cbiAgLmFwcC1jb250X19idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIHRvcDogNDBweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzdweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmFwcC1jb250X19idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuYXBwLWNvbnRfX2J1dHRvbjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcRjA5NlwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiQmxhY2sgVGllXCI7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogNjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzAwNDQ3YzsgfVxuICAgIHNlY3Rpb24ub2RkIC5hcHAtY29udF9fYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDsgfVxuICAgICAgc2VjdGlvbi5vZGQgLmFwcC1jb250X19idXR0b246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcRjA5N1wiOyB9XG4gICAgc2VjdGlvbi5jbG9zZWQgLmFwcC1jb250X19idXR0b246YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXEYwOTdcIjsgfVxuICAgIHNlY3Rpb24ub2RkLmNsb3NlZCAuYXBwLWNvbnRfX2J1dHRvbjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcRjA5NlwiOyB9XG4gIC5hcHAtY29udF9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg4KTtcbiAgICBwYWRkaW5nOiAxMDBweCA2OHB4O1xuICAgIHdpZHRoOiA1MzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNpdGlvbjogMjUwbXMgb3BhY2l0eSBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiAyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICAgIC1tcy10cmFuc2l0aW9uOiAyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMjUwbXMgb3BhY2l0eSBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiAyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYXBwLWNvbnRfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDI1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICBzZWN0aW9uLmNsb3NlZCAuYXBwLWNvbnRfX2NvbnRlbnQge1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5hcHAtY29udF9fY29udGVudCBoNCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgLmFwcC1jb250X19jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW46IDEzcHggMCAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmFwcC1jb250X19jb250ZW50IGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDI1cHg7IH0gfVxuICAgICAgLmFwcC1jb250X19jb250ZW50IGgzICsgcCB7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7IH1cbiAgICAuYXBwLWNvbnRfX2NvbnRlbnQgcCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYXBwLWNvbnRfX2NvbnRlbnQgcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmFwcC1jb250X19jb250ZW50IC5idXR0b24tY29udCB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAgICAgLW1vei1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcbiAgICAgIC1tb3otYm94LXBhY2s6IGp1c3RpZnk7XG4gICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tdG9wOiA0MXB4OyB9XG4gICAgICAuYXBwLWNvbnRfX2NvbnRlbnQgLmJ1dHRvbi1jb250IC5idXR0b24ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA1cHgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuYXBwLWNvbnRfX2NvbnRlbnQgLmJ1dHRvbi1jb250IC5idXR0b24ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDEwcHg7IH1cbiAgICAgICAgICAgIC5hcHAtY29udF9fY29udGVudCAuYnV0dG9uLWNvbnQgLmJ1dHRvbiArIC5idXR0b24ge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICAuYXBwLWNvbnRfX2NvbnRlbnQgLmJ1dHRvbi1kb3dubG9hZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMzYjhlZGU7XG4gICAgICBjb2xvcjogIzNiOGVkZTtcbiAgICAgIHBhZGRpbmc6IDEzcHggMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5hcHAtY29udF9fY29udGVudCAuYnV0dG9uLWRvd25sb2FkIHtcbiAgICAgICAgICBwYWRkaW5nOiAxM3B4IDEwcHg7IH0gfVxuICAgICAgLmFwcC1jb250X19jb250ZW50IC5idXR0b24tZG93bmxvYWQgaSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5zaGFkaW5nLWZvci1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogLTFweDtcbiAgbGVmdDogMDsgfVxuICAuc2hhZGluZy1mb3Itc2xpZGVyIC5zbGljay1saXN0LFxuICAuc2hhZGluZy1mb3Itc2xpZGVyIC5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDsgfVxuICAuc2hhZGluZy1mb3Itc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgICB6LWluZGV4OiA1O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc2hhZGluZy1mb3Itc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgc2VjdGlvbi5ldmVuIC5zaGFkaW5nLWZvci1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiA0MHB4OyB9XG4gICAgc2VjdGlvbi5vZGQgLnNoYWRpbmctZm9yLXNsaWRlciAuc2xpY2stZG90cyB7XG4gICAgICBsZWZ0OiA0MHB4OyB9XG4gICAgLnNoYWRpbmctZm9yLXNsaWRlciAuc2xpY2stZG90cyBsaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICAuc2hhZGluZy1mb3Itc2xpZGVyIC5zbGljay1kb3RzIGxpICsgbGkge1xuICAgICAgICBtYXJnaW46IDE2cHggMCAwIDAgIWltcG9ydGFudDsgfVxuICAgICAgLnNoYWRpbmctZm9yLXNsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTZweDsgfVxuXG5ib2R5LnNpbmdsZS1wcm9qZWN0IC5tYXN0aGVhZC1zbGlkZXI6YWZ0ZXIge1xuICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtd2hpdGUucG5nXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cblxuYm9keS5zaW5nbGUtcHJvamVjdCAubWFpbi1ib2R5IHtcbiAgcGFkZGluZy10b3A6IDA7IH1cblxuYm9keS5zaW5nbGUtcHJvamVjdCAucHJvamVjdC1kZXRhaWxzLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDExNXB4IDAgMTIzcHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgYm9keS5zaW5nbGUtcHJvamVjdCAucHJvamVjdC1kZXRhaWxzLXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogNTBweCAwIDY1cHg7IH0gfVxuICBib2R5LnNpbmdsZS1wcm9qZWN0IC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtMzNweDtcbiAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS13aGl0ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgYm90dG9tOiAtMjJweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTFweDtcbiAgICAgICAgYm90dG9tOiAtMTFweDsgfSB9XG5cbmJvZHkuc2luZ2xlLXByb2plY3QgcC5wcm9qZWN0LXN1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBjb2xvcjogIzAwNDQ3YztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBib2R5LnNpbmdsZS1wcm9qZWN0IHAucHJvamVjdC1zdWJ0aXRsZSArIGgxIHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAxOXB4IDAgNDRweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5zaW5nbGUtcHJvamVjdCBwLnByb2plY3Qtc3VidGl0bGUgKyBoMSB7XG4gICAgICAgIG1hcmdpbjogOXB4IDAgMzBweDsgfSB9XG5cbmJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciB7XG4gICAgd2lkdGg6IDY0LjklO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvKi5zbGlkZSB7XG5cdFx0XHRcdGhlaWdodDoxMDAlO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHRcdFx0aGVpZ2h0OjU1MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRoZWlnaHQ6MzAwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH0qLyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5mbGV4LWNvbnRhaW5lciAucHJvamVjdC1zbGlkZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLnByb2plY3Qtc2xpZGVyIC5zbGlkZSB7XG4gICAgICAgIGhlaWdodDogNTUwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLnByb2plY3Qtc2xpZGVyIC5zbGlkZSB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICBoZWlnaHQ6IDI2cHg7IH1cbiAgICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAycHggIzAwMDsgfVxuICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiAyMHB4OyB9XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5mbGV4LWNvbnRhaW5lciAucHJvamVjdC1zbGlkZXIgLnNsaWNrLXByZXY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxGMDk2JzsgfVxuICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDIwcHg7IH1cbiAgICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciAuc2xpY2stbmV4dDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXEYwOTcnOyB9XG4gICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLnByb2plY3Qtc2xpZGVyICsgLmRlc2NyaXB0aW9uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNzMlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5wcm9qZWN0LXNsaWRlciArIC5kZXNjcmlwdGlvbi1jb250YWluZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5kZXNjcmlwdGlvbi1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLmRlc2NyaXB0aW9uLWNvbnRhaW5lciBoMyB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLmRlc2NyaXB0aW9uLWNvbnRhaW5lciBoMyArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5mbGV4LWNvbnRhaW5lciAuZGVzY3JpcHRpb24tY29udGFpbmVyIGgzOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5kZXNjcmlwdGlvbi1jb250YWluZXIgaDM6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5mbGV4LWNvbnRhaW5lciAuZGVzY3JpcHRpb24tY29udGFpbmVyIHAge1xuICAgICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLmRlc2NyaXB0aW9uLWNvbnRhaW5lciBwICsgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiA0M3B4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmZsZXgtY29udGFpbmVyIC5kZXNjcmlwdGlvbi1jb250YWluZXIgcCArIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIzcHg7IH0gfVxuXG5ib2R5LnNpbmdsZS1wcm9qZWN0IC5idXR0b24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tb3otZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtYm94LXBhY2s6IGp1c3RpZnk7XG4gIC1tb3otYm94LXBhY2s6IGp1c3RpZnk7XG4gIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiA2NC45JTtcbiAgbWFyZ2luLXRvcDogMjFweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLmJ1dHRvbi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBib2R5LnNpbmdsZS1wcm9qZWN0IC5idXR0b24tY29udGFpbmVyIC5idXR0b24ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5idXR0b24tY29udGFpbmVyIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgYm9keS5zaW5nbGUtcHJvamVjdCAuYnV0dG9uLWNvbnRhaW5lciAuYnV0dG9uLXByb2plY3Qge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjM2I4ZWRlO1xuICAgICAgY29sb3I6ICMzYjhlZGU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5idXR0b24tY29udGFpbmVyIC5idXR0b24tcHJvamVjdCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbmJvZHkuYmxvZy1saXN0aW5nIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwOyB9XG4gIGJvZHkuYmxvZy1saXN0aW5nIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGE6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgMTAwJSAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMDAlIDA7XG4gICAgZm9udC1mYW1pbHk6IFwiQmxhY2sgVGllXCI7XG4gICAgY29udGVudDogXCJcXEYwNERcIjtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZzogMTlweCAwIDAgMTlweDsgfVxuICBib2R5LmJsb2ctbGlzdGluZyAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhLmNvbXBhbnk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2I4ZWRlO1xuICAgIGNvbnRlbnQ6IFwiXFxGMEQ2XCI7IH1cbiAgYm9keS5ibG9nLWxpc3RpbmcgLmJsb2ctd2lkZ2V0IC5mbGV4LWxpc3QgYS5pbmR1c3RyeTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgY29udGVudDogXCJcXEYwQ0VcIjsgfVxuICBib2R5LmJsb2ctbGlzdGluZyAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhOmhvdmVyIC5idXR0b24sXG4gIGJvZHkuYmxvZy1saXN0aW5nIC5ibG9nLXdpZGdldCAuZmxleC1saXN0IGEgLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogIzNiOGVkZTsgfVxuXG4uc2lnbnVwLWNvbnRhaW5lciAuY2xvc2UtbW9kYWwge1xuICB0b3A6IC0yNnB4O1xuICByaWdodDogLTI2cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk1MHB4KSB7XG4gICAgLnNpZ251cC1jb250YWluZXIgLmNsb3NlLW1vZGFsIHtcbiAgICAgIHRvcDogLTE1cHg7XG4gICAgICByaWdodDogLTE1cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2lnbnVwLWNvbnRhaW5lciAuY2xvc2UtbW9kYWwge1xuICAgICAgdG9wOiAtMTVweDtcbiAgICAgIHJpZ2h0OiAtMTVweDsgfSB9XG5cbi5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IHtcbiAgLyomICsgLmRvd25sb2FkLWNlbnRlci13aWRnZXQ6bm90KC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1ub3Jlc3VsdHMpIHtcblx0XHRtYXJnaW4tdG9wOjBweCAhaW1wb3J0YW50O1xuXG5cdFx0LmlubmVyLWNvbnRhaW5lciB7XG5cdFx0XHRtYXJnaW4tdG9wOiR3aWRnZXRNYXJnaW4gLSA5NnB4ICFpbXBvcnRhbnQ7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiR3aWRnZXRNb2JpbGVNYXJnaW4gIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH0qLyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHggIWltcG9ydGFudDsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDsgfVxuICAubGlzdGluZy1maWx0ZXItd2lkZ2V0ICsgLmRvd25sb2FkLWNlbnRlci13aWRnZXQsXG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0ICsgLmRvd25sb2FkLWNlbnRlci13aWRnZXQge1xuICAgIG1hcmdpbi10b3A6IDkwcHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCArIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LFxuICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgKyAuZG93bmxvYWQtY2VudGVyLXdpZGdldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDsgfSB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IC0yMHB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgNDBweCk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAgIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgICAgICBtYXJnaW46IC0xMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7IH0gfVxuICAgIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSA0MHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBtYXJnaW46IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSA0MHB4KTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTk5cHgpIHtcbiAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSA0MHB4KTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7IH0gfVxuICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC5pbWcsXG4gICAgICAuZG93bmxvYWQtY2VudGVyLXdpZGdldCAuZmxleC1saXN0IGEgLm5vLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBtYXJnaW46IDIwcHggMjBweCAzM3B4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNTUuNSU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY5ZmU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC5pbWcsXG4gICAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC5uby1pbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gICAgICAuZG93bmxvYWQtY2VudGVyLXdpZGdldCAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBjb250ZW50OiBcIlxcZTZjN1wiO1xuICAgICAgICBmb250LWZhbWlseTogXCJMaW5lYXJpY29uc1wiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICBmb250LXNpemU6IDY4cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0NnB4OyB9IH1cbiAgICAgIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBtYXJnaW46IDAgMjBweCAzMXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICAgICAgICAuZG93bmxvYWQtY2VudGVyLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgaDMge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAgICAgICAgIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBoMyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gICAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGgzICsgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3cHg7IH1cbiAgICAgICAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHAge1xuICAgICAgICAgIGNvbG9yOiAjOTY5Njk2OyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgICAgICAgICAuZG93bmxvYWQtY2VudGVyLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgcCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH0gfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0tbm9yZXN1bHRzIC5pbm5lci1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDU4MnB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1ub3Jlc3VsdHMgaW1nICsgaDQge1xuICAgIG1hcmdpbi10b3A6IDIycHggMCAwOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1ub3Jlc3VsdHMgaDQge1xuICAgIGNvbG9yOiAjM2I4ZWRlO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMS4zMztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0tbm9yZXN1bHRzIGg0ICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1ub3Jlc3VsdHMgLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTRweCA2MHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQtLWJyb2NodXJlcyAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2ZDZcIjsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0tZGF0YXNoZWV0cyAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2ZDhcIjsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0taW5zdGFsbGRyYXdpbmdzIC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZTYyZFwiOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1zcGVjcyAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2Y2JcIjsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0taW5zdGFsbG1hbnVhbHMgLmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlNzE1XCI7IH1cbiAgLmRvd25sb2FkLWNlbnRlci13aWRnZXQtLW1haW50ZW5hbmNlIC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZTcxOFwiOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS10ZXJtcyAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2ZGNcIjsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0tdGVybXMtYW5kLWNvbmRpdGlvbnMtb2Ytc2FsZSAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2MTNcIjsgfVxuICAuZG93bmxvYWQtY2VudGVyLXdpZGdldC0tZGF0YXNoZWV0IC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZTZkOFwiOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1wcm9kdWN0LW92ZXJ2aWV3IC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZTZkNFwiOyB9XG4gIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0LS1vcmRlci1mb3JtcyAuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG4gICAgY29udGVudDogXCJcXGU2ZDFcIjsgfVxuXG4uc2lnbnVwLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHdpZHRoOiA3MjBweDtcbiAgcGFkZGluZzogNzBweDtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICMwMDQ0N2M7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NzBweCkge1xuICAgIC5zaWdudXAtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICBtYXJnaW46IDI1cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyB9IH1cbiAgLnNpZ251cC1jb250YWluZXIgaDQge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNpZ251cC1jb250YWluZXIgcCB7XG4gICAgbWFyZ2luOiAzMHB4IDAgNDJweCAhaW1wb3J0YW50OyB9XG4gIC5zaWdudXAtY29udGFpbmVyIC5idXR0b24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4OyB9XG4gIC5zaWdudXAtY29udGFpbmVyIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxMXB4KTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zaWdudXAtY29udGFpbmVyIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5zaWdudXAtY29udGFpbmVyIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnNpZ251cC1jb250YWluZXIgLmJ1dHRvbiArIC5idXR0b24ge1xuICAgICAgICAgIG1hcmdpbjogMTVweCAwIDAgMDsgfSB9XG4gICAgLnNpZ251cC1jb250YWluZXIgLmJ1dHRvbi0tbm9zaWdudXAge1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ViZWJlYjtcbiAgICAgIGNvbG9yOiAjZWJlYmViO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAgICAgLnNpZ251cC1jb250YWluZXIgLmJ1dHRvbi0tbm9zaWdudXA6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWJlYmViO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ud2lkZ2V0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDsgfVxuICAud2lkZ2V0LWNvbnRhaW5lciAud2lkZ2V0LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLThweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiA0MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAud2lkZ2V0LWNvbnRhaW5lciAud2lkZ2V0LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgLndpZGdldC1jb250YWluZXIgKyAud2lkZ2V0LWNvbnRhaW5lcixcbiAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgLndpZGdldC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDEyMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAud2lkZ2V0LWNvbnRhaW5lciArIC53aWRnZXQtY29udGFpbmVyLFxuICAgICAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgLndpZGdldC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4OyB9IH1cbiAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgLndpZGdldC1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzM3B4OyB9XG5cbi5wYWdlLXRpdGxlICsgLndpZGdldC1jb250YWluZXIsXG4ucGFnZS1zdWJ0aXRsZSArIC53aWRnZXQtY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogNjBweCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5wYWdlLXRpdGxlICsgLndpZGdldC1jb250YWluZXIsXG4gICAgLnBhZ2Utc3VidGl0bGUgKyAud2lkZ2V0LWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICBib2R5LndiLWhvbWVwYWdlIC5wYWdlLXRpdGxlICsgLndpZGdldC1jb250YWluZXIsIGJvZHkud2ItaG9tZXBhZ2VcbiAgLnBhZ2Utc3VidGl0bGUgKyAud2lkZ2V0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogNjBweCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LndiLWhvbWVwYWdlIC5wYWdlLXRpdGxlICsgLndpZGdldC1jb250YWluZXIsIGJvZHkud2ItaG9tZXBhZ2VcbiAgICAgIC5wYWdlLXN1YnRpdGxlICsgLndpZGdldC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4ud2lkZ2V0LWNvbnRhaW5lciArIC5wYWdlLXRpdGxlLFxuLndpZGdldC1jb250YWluZXIgKyAucGFnZS1zdWJ0aXRsZSxcbi5wYWdlLXRpdGxlICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldCB7XG4gIG1hcmdpbi10b3A6IDEyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLndpZGdldC1jb250YWluZXIgKyAucGFnZS10aXRsZSxcbiAgICAud2lkZ2V0LWNvbnRhaW5lciArIC5wYWdlLXN1YnRpdGxlLFxuICAgIC5wYWdlLXRpdGxlICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4uY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1vei1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBodG1sLmllMTAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMHB4OyB9IH1cbiAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDQ2LjY3cHgpO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggNDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cbiAgICBodG1sLmllMTAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogNzBweDsgfVxuICAgICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGE6bnRoLWNoaWxkKG4rNCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgICAgICAgaHRtbC5pZTEwIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjVweDsgfVxuICAgICAgICAgIGh0bWwuaWUxMCAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGh0bWwuaWUxMCAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobis0KTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NzFweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDM1cHgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogNzBweDsgfVxuICAgICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGE6bnRoLWNoaWxkKG4rMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgICAgICAgaHRtbC5pZTEwIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjVweDsgfVxuICAgICAgICAgIGh0bWwuaWUxMCAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhICsgYSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG4gICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgcGFkZGluZy10b3A6IDc3LjQlOyB9XG4gICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDM1cHggMzlweCAzNnB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgICAgIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Jsb2ctd2lkZ2V0LWN1cnZlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBoMyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAuY2FyZHMtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBwIHtcbiAgICAgICAgbWFyZ2luOiAycHggMCAwO1xuICAgICAgICBjb2xvcjogIzAxMDEwMTsgfVxuICAgICAgLmNhcmRzLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIGNvbG9yOiAjMDA0NDdjO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgICAgICBwYWRkaW5nOiAwIDIycHggMCAwOyB9XG4gICAgICAgIC5jYXJkcy13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IC5idXR0b24gaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4OyB9XG5cbi5jb250YWN0LXdpZGdldCAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NzBweDsgfVxuXG4uY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDY4cHggNzBweDtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICMwMDQ0N2M7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCB7XG4gICAgICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LWNvbnQgPiBoMyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jb250YWN0LXdpZGdldCAuY29udGFjdC1jb250ID4gaDMge1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9IH1cbiAgICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IGgzICsgcCxcbiAgICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IGgzICsgZm9ybSxcbiAgICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IGgzICsgLmZvcm0tY29tcGxldGUge1xuICAgICAgbWFyZ2luOiAzMXB4IDAgMDsgfVxuICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IHAgKyBmb3JtLFxuICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3QtY29udCA+IHAgKyAuZm9ybS1jb21wbGV0ZSB7XG4gICAgbWFyZ2luLXRvcDogNDJweDsgfVxuXG4uY29udGFjdC13aWRnZXQgLmZvcm0tZ3JvdXAgPiBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDA0NDdjO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiAyNXB4IDAgMTZweDsgfVxuXG4uY29udGFjdC13aWRnZXQgc2VsZWN0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgY29sb3I6ICM5NTk1OTU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmc6IDEycHggMTE1cHggMTNweCAxNnB4O1xuICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlcjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLmNvbnRhY3Qtd2lkZ2V0IHNlbGVjdDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogIzAwNTRhMDsgfVxuICAuY29udGFjdC13aWRnZXQgc2VsZWN0IG9wdGlvbiB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBjb2xvcjogIzk1OTU5NTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmNvbnRhY3Qtd2lkZ2V0IC5zZWxlY3Qtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jb250YWN0LXdpZGdldCAuc2VsZWN0LXdyYXA6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAnQmxhY2sgVGllJztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbnRlbnQ6ICdcXEYwOTEnO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzAwNDQ3YztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICByaWdodDogMjNweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgei1pbmRleDogMTsgfVxuXG4uY29udGFjdC13aWRnZXQgLmZpbGxlZCBzZWxlY3Qge1xuICBjb2xvcjogIzAwNTRhMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmNvbnRhY3Qtd2lkZ2V0IC5maWxsZWQgLnNlbGVjdC13cmFwOmFmdGVyIHtcbiAgY29sb3I6ICMwMDU0YTA7IH1cblxuLmNvbnRhY3Qtd2lkZ2V0IC5zZWxlY3QtZ3JvdXAgLnJhZGlvLWNoZWNrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uY29udGFjdC13aWRnZXQgLmJ1dHRvbi1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNTBweDtcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uY29udGFjdC13aWRnZXQgLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgcGFkZGluZy1sZWZ0OiA1NXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNzhweCkge1xuICAgIC5jb250YWN0LXdpZGdldCAuYnV0dG9uIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAuY29udGFjdC13aWRnZXQgLmJ1dHRvbiBzcGFuIHtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTsgfVxuICAuY29udGFjdC13aWRnZXQgLmJ1dHRvbiAuc3Bpbm5lciB7XG4gICAgb3BhY2l0eTogMDsgfVxuXG4uY29udGFjdC13aWRnZXQgLmNvbnRhY3Qtd2lkZ2V0LXNlbmRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LXdpZGdldC1zZW5kaW5nIC5idXR0b24gc3BhbiB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuY29udGFjdC13aWRnZXQgLmNvbnRhY3Qtd2lkZ2V0LXNlbmRpbmcgLnNwaW5uZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmNvbnRhY3Qtd2lkZ2V0IC5jb250YWN0LXdpZGdldC1zZW5kaW5nOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwOyB9XG5cbi5yYWRpby1jaGVjay1saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1vei1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcbiAgLW1vei1ib3gtcGFjazoganVzdGlmeTtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAucmFkaW8tY2hlY2stbGlzdCBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH1cblxuLmNoZWNrYm94LWNvbnQge1xuICBtYXJnaW46IDZweCAyNXB4IDRweCAwO1xuICB3aWR0aDogY2FsYyg1MCUgLSAyNXB4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuY2hlY2tib3gtY29udDpudGgtY2hpbGQoZXZlbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyOHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmNoZWNrYm94LWNvbnQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjBweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgY29sb3I6ICM5NTk1OTU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUsXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgY29sb3I6ICM5NTk1OTU7XG4gICAgICBmb250LWZhbWlseTogJ0JsYWNrIFRpZSc7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdG9wOiAwcHg7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgIGNvbG9yOiAjMDA0NDdjOyB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29sb3I6ICMwMDQ0N2M7IH1cblxuLyogY2hlY2tib3ggY2hlY2tlZCBpY29uICovXG5pbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxGMDhCXCI7IH1cblxuaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxGMDE0XCI7IH1cblxuLyogcmFkaW8gY2hlY2tlZCBpY29uICovXG5pbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxGMDhDXCI7IH1cblxuaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxGMEQ1XCI7IH1cblxuLyogcmFkaW8vY2hlY2tib3ggaG92ZXIgYW5kIHNlbGVjdGVkIHN0eWxlcyAqL1xuLmZvcm0tY29tcGxldGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLmZvcm0tY29tcGxldGUgLmNvbnRhY3Qtd2lkZ2V0LFxuICAuZm9ybS1jb21wbGV0ZSAuc3VjY2Vzcy1tZXNzYWdlIHtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTsgfVxuICAuZm9ybS1jb21wbGV0ZSAuc3VjY2Vzcy1tZXNzYWdlIHtcbiAgICBjb2xvcjogIzAwNDQ3YztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgLmZvcm0tY29tcGxldGUgLmNvbnRhY3Qtd2lkZ2V0IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5hc2lkZSAuZm9ybS1jb21wbGV0ZSAuc3VjY2Vzcy1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAyMHB4OyB9XG5cbi5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbW96LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIGh0bWwuaWUxMCAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAzNHB4KTtcbiAgICBwYWRkaW5nOiAzNHB4IDUwcHggMzJweCAxMzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDQ2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgY29sb3I6ICMwMDQ0N2M7IH1cbiAgICBodG1sLmllMTAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGE6bnRoLWNoaWxkKG4rMykge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICBodG1sLmllMTAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogNjRweDsgfVxuICAgICAgICBodG1sLmllMTAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGE6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGh0bWwuaWUxMCAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobiszKTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBmbG9hdDogbm9uZTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDE1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMzBweCAyMHB4IDg4cHg7IH1cbiAgICAgICAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGEgKyBhIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3QgYSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogNjhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzOHB4O1xuICAgICAgbGVmdDogNDRweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICB0b3A6IDI0cHg7XG4gICAgICAgICAgbGVmdDogMzBweDsgfSB9XG4gICAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQge1xuICAgICAgbWluLWhlaWdodDogNzRweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA1OHB4OyB9IH1cbiAgICAgIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IGg0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmRvYy1kb3duLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICAgIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogIzg4OGY5NDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41MztcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAuZG9jLWRvd24td2lkZ2V0IC5mbGV4LWxpc3QgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzg4OGY5NDtcbiAgICAgIG9wYWNpdHk6IDAuNzU7IH1cbiAgICAgIC5kb2MtZG93bi13aWRnZXQgLmZsZXgtbGlzdCBhOmhvdmVyIGg0IHtcbiAgICAgICAgY29sb3I6ICM4ODhmOTQ7IH1cblxuLmZhcS13aWRnZXQgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNzcwcHg7IH1cblxuLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIHtcbiAgYm9yZGVyOiAycHggc29saWQgI2NjY2NjYzsgfVxuICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDQ0N2M7IH1cbiAgICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAuYWN0aXZlIC5hY2NvcmRpb24tYnRuIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyOHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwLmFjdGl2ZSAuYWNjb3JkaW9uLWJ0biB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH0gfVxuICAgICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwLmFjdGl2ZSAuYWNjb3JkaW9uLWJ0bjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGYwMjEnOyB9XG4gICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwLmFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDA0NDdjOyB9XG4gIC5mYXEtd2lkZ2V0IC5hY2NvcmRpb24gLmFjY29yZGlvbi1ncm91cCAuYWNjb3JkaW9uLWJ0biB7XG4gICAgY29sb3I6ICMwMDQ0N2M7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAyM3B4IDEyMHB4IDI2cHggNTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIC5hY2NvcmRpb24tYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDY1cHggMjVweCAyNXB4OyB9IH1cbiAgICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAgLmFjY29yZGlvbi1idG46YWZ0ZXIge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogNTBweDtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnQmxhY2sgVGllJztcbiAgICAgIGNvbnRlbnQ6ICdcXGYwMWInOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIC5hY2NvcmRpb24tYnRuOmFmdGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgcmlnaHQ6IDI1cHg7IH0gfVxuICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIC5hY2NvcmRpb24tY29udGVudCAuYWNjb3JkaW9uLWNvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweCA1MHB4IDQzcHggNTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5mYXEtd2lkZ2V0IC5hY2NvcmRpb24gLmFjY29yZGlvbi1ncm91cCAuYWNjb3JkaW9uLWNvbnRlbnQgLmFjY29yZGlvbi1jb250ZW50LWlubmVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAyNXB4OyB9IH1cbiAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwICsgLmFjY29yZGlvbi1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uZ2FsbGVyeS1pbWFnZS13aWRnZXQgaDMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDkycHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7IH0gfVxuXG4uZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIGh0bWwuaWUxMCAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYSB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gNDdweCk7IH1cbiAgICBodG1sLmllMTAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCBhIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDcwcHg7IH1cbiAgICAgICAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYTpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYTpudGgtY2hpbGQobis0KSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNzBweDsgfVxuICAgICAgICBodG1sLmllMTAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDY1cHg7IH1cbiAgICAgICAgICBodG1sLmllMTAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYTpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGh0bWwuaWUxMCAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCBhOm50aC1jaGlsZChuKzQpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCBhIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMzVweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4OyB9XG4gICAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKG4rMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgICAgICAgaHRtbC5pZTEwIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2NXB4OyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NTBweCkge1xuICAgICAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEyLjVweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4OyB9XG4gICAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKG4rMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAgICAgaHRtbC5pZTEwIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEgLmltZyB7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogODcuMyU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEgLmltZzpiZWZvcmUsIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEgLmltZzphZnRlciB7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGVhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlOyB9XG4gICAgICAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCBhIC5pbWc6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCA2OCwgMTI0LCAwLjc1KTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICAuZ2FsbGVyeS1pbWFnZS13aWRnZXQgLmdhbGxlcnktbGlzdCBhIC5pbWc6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcRjAwMlwiO1xuICAgICAgICBmb250LWZhbWlseTogXCJCbGFjayBUaWVcIjtcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjUsIDAuNSkgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSwgMC41KSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBtb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAgICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGEgLmltZzphZnRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM1cHg7IH0gfVxuICAgIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6aG92ZXIgLmltZzpiZWZvcmUsIC5nYWxsZXJ5LWltYWdlLXdpZGdldCAuZ2FsbGVyeS1saXN0IGE6aG92ZXIgLmltZzphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLmdhbGxlcnktaW1hZ2Utd2lkZ2V0IC5nYWxsZXJ5LWxpc3QgYTpob3ZlciAuaW1nOmFmdGVyIHtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uaW1hZ2UtdGV4dC13aWRnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7IH1cbiAgLmltYWdlLXRleHQtd2lkZ2V0IC5pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogNTEuMzUlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLmltYWdlLXRleHQtd2lkZ2V0IC5pbWcge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBoZWlnaHQ6IDY1NnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDg3cHgpIHtcbiAgICAgIC5pbWFnZS10ZXh0LXdpZGdldCAuaW1nIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDsgfSB9XG4gICAgLmltYWdlLXRleHQtd2lkZ2V0IC5pbWc6YmVmb3JlLCAuaW1hZ2UtdGV4dC13aWRnZXQgLmltZzphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmltYWdlLXRleHQtd2lkZ2V0IC5pbWc6YmVmb3JlLCAuaW1hZ2UtdGV4dC13aWRnZXQgLmltZzphZnRlciB7XG4gICAgICAgICAgaGVpZ2h0OiAyMnB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLmltZzpiZWZvcmUsIC5pbWFnZS10ZXh0LXdpZGdldCAuaW1nOmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuICAgIC5pbWFnZS10ZXh0LXdpZGdldCAuaW1nOmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLmltZzphZnRlciB7XG4gICAgICBib3R0b206IDA7XG4gICAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7IH1cbiAgLmltYWdlLXRleHQtd2lkZ2V0IC50ZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMzAuOCU7XG4gICAgbWFyZ2luOiAwIDI1cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLnRleHQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzk1cHg7IH0gfVxuICAgIC5pbWFnZS10ZXh0LXdpZGdldCAudGV4dCAuaW5uZXItdGV4dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDg2MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgcGFkZGluZzogOTFweCAxMDVweCA4MnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCA0NnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmltYWdlLXRleHQtd2lkZ2V0IC50ZXh0IC5pbm5lci10ZXh0IHtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4IDM1cHg7XG4gICAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9IH1cbiAgICAgIC5pbWFnZS10ZXh0LXdpZGdldCAudGV4dCAuaW5uZXItdGV4dCBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLnRleHQgLmlubmVyLXRleHQgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICAgICAgLmltYWdlLXRleHQtd2lkZ2V0IC50ZXh0IC5pbm5lci10ZXh0IGgzICsgaDQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDsgfVxuICAgICAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLnRleHQgLmlubmVyLXRleHQgaDMgKyBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1MnB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIC5pbWFnZS10ZXh0LXdpZGdldCAudGV4dCAuaW5uZXItdGV4dCBoMyArIHAge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgLmltYWdlLXRleHQtd2lkZ2V0IC50ZXh0IC5pbm5lci10ZXh0IGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIC5pbWFnZS10ZXh0LXdpZGdldCAudGV4dCAuaW5uZXItdGV4dCBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgICAgICAuaW1hZ2UtdGV4dC13aWRnZXQgLnRleHQgLmlubmVyLXRleHQgaDQgKyBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1MnB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgIC5pbWFnZS10ZXh0LXdpZGdldCAudGV4dCAuaW5uZXItdGV4dCBoNCArIHAge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4ubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IC50ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCA2OCwgMTI0LCAwLjg1KSAwJSwgcmdiYSgwLCA2OCwgMTI0LCAwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCA2OCwgMTI0LCAwLjg1KSAwJSwgcmdiYSgwLCA2OCwgMTI0LCAwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgNjgsIDEyNCwgMC44NSkgMCUsIHJnYmEoMCwgNjgsIDEyNCwgMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNEOTAwNDQ3QycsIGVuZENvbG9yc3RyPScjMDAwMDQ0N0MnLCBHcmFkaWVudFR5cGU9MSk7IH1cbiAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTElO1xuICAgIHBhZGRpbmctcmlnaHQ6IDExJTtcbiAgICBwYWRkaW5nLXRvcDogNHB4OyB9XG4gICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCA+ICoge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDsgfVxuICAgIC5sYXRlc3QtcHJvamVjdC13aWRnZXQgLmlubmVyLXRleHQgaDMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cbiAgICAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IC5pbm5lci10ZXh0IHAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBtYXJnaW46IDdweCAwIDlweCAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIC5sYXRlc3QtcHJvamVjdC13aWRnZXQgLmlubmVyLXRleHQgLmJ1dHRvbi1pY29uIHtcbiAgICAgIG1hcmdpbjogMzFweCAwIDk3cHggM3B4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCAuYnV0dG9uLWljb24ge1xuICAgICAgICAgIG1hcmdpbjogMjVweCAwIDU1cHggM3B4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IC5pbm5lci10ZXh0IC5idXR0b24taWNvbiB7XG4gICAgICAgICAgbWFyZ2luOiAyMHB4IDAgNTBweCAzcHg7IH0gfVxuICAgIC5sYXRlc3QtcHJvamVjdC13aWRnZXQgLmlubmVyLXRleHQgLmJ1dHRvbi13aGl0ZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMXB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCAuaW5uZXItdGV4dCAuYnV0dG9uLXdoaXRlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG4gIC5sYXRlc3QtcHJvamVjdC13aWRnZXQgLmltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgcGFkZGluZy10b3A6IDQ2LjclO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQ0NXB4OyB9XG4gIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YmVmb3JlLCAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldDpiZWZvcmUsIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxhdGVzdC1wcm9qZWN0LXdpZGdldDpiZWZvcmUsIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuICAubGF0ZXN0LXByb2plY3Qtd2lkZ2V0OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuXG4ubGlzdGluZy1maWx0ZXItd2lkZ2V0IHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogODBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5saXN0aW5nLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNTtcbiAgICB0b3A6IC0xMDdweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjM2I4ZWRlO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLmxpc3RpbmctdGl0bGUge1xuICAgICAgICB0b3A6IC03N3B4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5idXR0b24ge1xuICAgIHBhZGRpbmc6IDExcHggMCAxMnB4O1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZGRkZGRkO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgY29sb3I6ICM2NjY2NjY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogODkwcHgpIHtcbiAgICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMwMHB4KSB7XG4gICAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuYnV0dG9uICsgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMTZweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDg5MHB4KSB7XG4gICAgICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLmJ1dHRvbiArIC5idXR0b24ge1xuICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDAgYXV0bzsgfSB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuYnV0dG9uLS1jb21wYW55Om5vdCguY3VycmVudCkge1xuICAgICAgY29sb3I6ICMzYjhlZGU7IH1cbiAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5idXR0b24tLWluZHVzdHJ5Om5vdCguY3VycmVudCkge1xuICAgICAgY29sb3I6ICMwMDQ0N2M7IH1cbiAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5idXR0b24uY3VycmVudCwgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ViZWJlYjtcbiAgICAgIGJhY2tncm91bmQ6ICNlYmViZWI7XG4gICAgICBjb2xvcjogIzY2NjY2NjsgfVxuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLmJ1dHRvbiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuYnV0dG9uIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLnNlbGVjdC13cmFwLS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjgwcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLnNlbGVjdC13cmFwLS1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLnNlbGVjdC13cmFwLS1idXR0b246YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICdCbGFjayBUaWUnO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGNvbnRlbnQ6ICdcXEYwOTEnO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6ICMzYjhlZGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuc2VsZWN0LXdyYXAtLWJ1dHRvbiArIC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxOHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgICAgICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCAuc2VsZWN0LXdyYXAtLWJ1dHRvbiArIC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7IH0gfVxuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgLnNlbGVjdC13cmFwLS1idXR0b24gc2VsZWN0IHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBjb2xvcjogIzNiOGVkZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICBwYWRkaW5nOiAxMnB4IGNhbGMoMjRweCArIDEwM3B4KSAxMnB4IDI0cHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHNlbGVjdDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGNvbG9yOiAjMDA1NGEwOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0IC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHNlbGVjdCBvcHRpb24ge1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIGNvbG9yOiAjOTU5NTk1O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5saXN0aW5nLWZpbHRlci13aWRnZXQ6YmVmb3JlLCAubGlzdGluZy1maWx0ZXItd2lkZ2V0OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldDpiZWZvcmUsIC5saXN0aW5nLWZpbHRlci13aWRnZXQ6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldDpiZWZvcmUsIC5saXN0aW5nLWZpbHRlci13aWRnZXQ6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuICAubGlzdGluZy1maWx0ZXItd2lkZ2V0OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG4gIC5saXN0aW5nLWZpbHRlci13aWRnZXQ6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuICAuc3RhbmRhcmQtd2lkZ2V0ICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldCB7XG4gICAgbWFyZ2luLXRvcDogODBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnN0YW5kYXJkLXdpZGdldCArIC5saXN0aW5nLWZpbHRlci13aWRnZXQge1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4OyB9IH1cbiAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCArIC5ibG9nLXdpZGdldCB7XG4gICAgbWFyZ2luLXRvcDogODBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldCArIC5ibG9nLXdpZGdldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQgKyAuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAud2lkZ2V0LWNvbnRhaW5lciArIC5saXN0aW5nLWZpbHRlci13aWRnZXQtLXByb2R1Y3Qge1xuICAgIG1hcmdpbi10b3A6IDEyNXB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAud2lkZ2V0LWNvbnRhaW5lciArIC5saXN0aW5nLWZpbHRlci13aWRnZXQtLXByb2R1Y3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiA3MHB4ICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0LS1wcm9kdWN0IC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTMwcHgpIHtcbiAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0LS1wcm9kdWN0IC5zZWxlY3Qtd3JhcC0tYnV0dG9uICsgLnNlbGVjdC13cmFwLS1idXR0b24ge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwOyB9IH1cbiAgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gICAgLnBhZ2UtdGl0bGUgKyAubGlzdGluZy1maWx0ZXItd2lkZ2V0LS1wcm9qZWN0cyxcbiAgICAucGFnZS1zdWJ0aXRsZSArIC5saXN0aW5nLWZpbHRlci13aWRnZXQtLXByb2plY3RzLFxuICAgIC53aWRnZXQtY29udGFpbmVyICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMge1xuICAgICAgbWFyZ2luLXRvcDogMTE0cHggIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wYWdlLXRpdGxlICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMsXG4gICAgICAgIC5wYWdlLXN1YnRpdGxlICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMsXG4gICAgICAgIC53aWRnZXQtY29udGFpbmVyICsgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDU1cHggIWltcG9ydGFudDsgfSB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMgLmNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDkxMHB4OyB9XG4gICAgLmxpc3RpbmctZmlsdGVyLXdpZGdldC0tcHJvamVjdHMgLnNlbGVjdC13cmFwLS1idXR0b246bnRoLW9mLXR5cGUoMykge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5saXN0aW5nLWZpbHRlci13aWRnZXQtLXByb2plY3RzIC5zZWxlY3Qtd3JhcC0tYnV0dG9uOm50aC1vZi10eXBlKDMpLCAubGlzdGluZy1maWx0ZXItd2lkZ2V0LS1wcm9qZWN0cyAuc2VsZWN0LXdyYXAtLWJ1dHRvbjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMXB4ICFpbXBvcnRhbnQ7IH1cbiAgICAubGlzdGluZy1maWx0ZXItd2lkZ2V0LS1wcm9qZWN0czphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbW96LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAtNTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIGh0bWwuaWUxMCAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDsgfVxuICAgIGh0bWwuaWUxMCAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gNDYuNjdweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4OyB9XG4gICAgICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgzbiAtIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobis0KSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgICAgICBodG1sLmllMTAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2NXB4OyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgzbiAtIDIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZChuKzQpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3QgYSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzAwNDQ3YztcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4OyB9XG4gICAgICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3QgYTpudGgtY2hpbGQobiszKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgICAgICBodG1sLmllMTAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhICsgYSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7IH1cbiAgICAgICAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGE6bnRoLWNoaWxkKG4rMyksXG4gICAgICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhICsgYSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfVxuICAgICAgICBodG1sLmllMTAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhICsgYSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gICAgICAgICAgaHRtbC5pZTEwIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhIC5pbWctY29udCB7XG4gICAgICBoZWlnaHQ6IDE2MHB4OyB9XG4gICAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTMzcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMzNweDtcbiAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAtbW96LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgLW1zLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgLW8tZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIGZpbHRlcjogZ3JheTsgfVxuICAgIC5sb2dvcy13aWRnZXQgLmZsZXgtbGlzdCBhIGkge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogIzAwNDQ3YztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgICAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGEgaSB7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfSB9XG4gICAgLmxvZ29zLXdpZGdldCAuZmxleC1saXN0IGE6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDA0NDdjOyB9XG4gICAgICAubG9nb3Mtd2lkZ2V0IC5mbGV4LWxpc3QgYTpob3ZlciBpIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuXG4ubWFwLXdpZGdldCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDsgfVxuICAubWFwLXdpZGdldF9fd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgICAubWFwLXdpZGdldF9fd3JhcDpiZWZvcmUsIC5tYXAtd2lkZ2V0X193cmFwOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAubWFwLXdpZGdldF9fd3JhcDpiZWZvcmUsIC5tYXAtd2lkZ2V0X193cmFwOmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5tYXAtd2lkZ2V0X193cmFwOmJlZm9yZSwgLm1hcC13aWRnZXRfX3dyYXA6YWZ0ZXIge1xuICAgICAgICAgIGhlaWdodDogMTFweDsgfSB9XG4gICAgLm1hcC13aWRnZXRfX3dyYXA6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuICAgIC5tYXAtd2lkZ2V0X193cmFwOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuICAubWFwLXdpZGdldF9fbWFwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogNTEuMzUlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLm1hcC13aWRnZXRfX21hcCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogNjU2cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODdweCkge1xuICAgICAgLm1hcC13aWRnZXRfX21hcCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogMzc1cHg7IH0gfVxuICAubWFwLXdpZGdldF9faW5mb2JveCB7XG4gICAgbWFyZ2luLXRvcDogNTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogMHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTEpO1xuICAgIHdpZHRoOiAzMjNweDtcbiAgICBwYWRkaW5nOiAyNXB4IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5tYXAtd2lkZ2V0X19pbmZvYm94ICoge1xuICAgICAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZiAhaW1wb3J0YW50OyB9XG4gICAgLm1hcC13aWRnZXRfX2luZm9ib3ggaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfVxuICAgICAgLm1hcC13aWRnZXRfX2luZm9ib3ggaDMgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9XG4gICAgLm1hcC13aWRnZXRfX2luZm9ib3ggcCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDsgfVxuICAgICAgLm1hcC13aWRnZXRfX2luZm9ib3ggcCArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAubWFwLXdpZGdldF9faW5mb2JveCBwLnRlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIzcHg7IH1cbiAgICAgIC5tYXAtd2lkZ2V0X19pbmZvYm94IHAgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAubWFwLXdpZGdldF9faW5mb2JveCBwIHN0cm9uZyB7XG4gICAgICAgIGNvbG9yOiAjMDA0NDdjOyB9XG4gIC5tYXAtd2lkZ2V0IC5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5tYXAtd2lkZ2V0IC5jb250YWluZXIge1xuICAgICAgICByaWdodDogYXV0bzsgfSB9XG4gICAgLm1hcC13aWRnZXQgLmNvbnRhaW5lciBoNCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZDogIzAzQTlGNDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5tYXAtd2lkZ2V0IC5jb250YWluZXIgaDQge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuICAubWFwLXdpZGdldCAuZ20tc3R5bGUgaW1nIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgdG9wOiA2OXB4O1xuICAgIHJpZ2h0OiAxM3B4OyB9XG4gIC5tYXAtd2lkZ2V0IC5nbW5vcHJpbnQuZ20tYnVuZGxlZC1jb250cm9sIHtcbiAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IC0yN3B4ICFpbXBvcnRhbnQ7IH1cblxuLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDQ2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEge1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9IH1cbiAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA1Ni42JTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEgLmltZyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMDsgfSB9XG4gIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDU2LjYlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNTAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dDpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ibG9nLXdpZGdldC1jdXJ2ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdG9wOiAtMTJweDtcbiAgICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuaW5uZXItdGV4dCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgcGFkZGluZzogOTFweCA1NXB4IDEwMXB4IDQxcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuaW5uZXItdGV4dCB7XG4gICAgICAgICAgcGFkZGluZzogNDBweCAyNXB4OyB9IH1cbiAgICAgIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IC5pbm5lci10ZXh0OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvcmVhZC1tb3JlLWN1cnZlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtMTlweDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuaW5uZXItdGV4dDpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgaDMge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCAuZmxleC1saXN0IGEgLnRleHQgaDMgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IHAge1xuICAgICAgY29sb3I6ICMwMTAxMDE7IH1cbiAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAucGFnZS1yZWxhdGlvbnNoaXAtd2lkZ2V0IC5mbGV4LWxpc3QgYSAudGV4dCAuYnV0dG9uIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNHB4IDUwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhIC50ZXh0IC5idXR0b24ge1xuICAgICAgICAgIHBhZGRpbmc6IDE0cHggMzBweDsgfSB9XG4gIC5wYWdlLXJlbGF0aW9uc2hpcC13aWRnZXQgLmZsZXgtbGlzdCBhICsgYSB7XG4gICAgbWFyZ2luLXRvcDogMjVweDsgfVxuXG4uc2hhcmUtd2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuc2hhcmUtd2lkZ2V0IHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAuc3ViLW5hdl9fd3JhcCArIC5tYWluLWNvbnRlbnQgPiAuc2hhcmUtd2lkZ2V0IHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNoYXJlLXdpZGdldCAuY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNoYXJlLXdpZGdldCBoNCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgY29sb3I6ICM4ODhmOTQ7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zaGFyZS13aWRnZXQgaDQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgLnNoYXJlLXdpZGdldCAuYWRkdGhpc190b29sYm94LFxuICAuc2hhcmUtd2lkZ2V0IC5jdXN0b21faW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBoZWlnaHQ6IDE2cHg7IH1cbiAgLnNoYXJlLXdpZGdldCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBjb2xvcjogIzg4OGY5NDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAwIDI4cHggIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5zaGFyZS13aWRnZXQgYSBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLnNoYXJlLXdpZGdldCBhOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfSB9XG5cbi5zdGFuZGFyZC13aWRnZXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNpbmdsZS1wcm9kdWN0IC5zdGFuZGFyZC13aWRnZXQge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgLnN0YW5kYXJkLXdpZGdldCAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwIDk1cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5zdGFuZGFyZC13aWRnZXQgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgNTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuc3RhbmRhcmQtd2lkZ2V0IC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuICAgIC5zdGFuZGFyZC13aWRnZXQgLmNvbnRhaW5lciBvbCxcbiAgICAuc3RhbmRhcmQtd2lkZ2V0IC5jb250YWluZXIgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5zdGFuZGFyZC13aWRnZXQgLmNvbnRhaW5lciBvbCBsaSxcbiAgICAgIC5zdGFuZGFyZC13aWRnZXQgLmNvbnRhaW5lciB1bCBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAuc3RhbmRhcmQtd2lkZ2V0IC5jb250YWluZXIgb2wgbGk6YmVmb3JlLFxuICAgICAgICAuc3RhbmRhcmQtd2lkZ2V0IC5jb250YWluZXIgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAuc3RhbmRhcmQtd2lkZ2V0IC5jb250YWluZXIgdWwgbGk6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkJsYWNrIFRpZVwiO1xuICAgICAgY29udGVudDogJ1xcRjA4QycgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIC5zdGFuZGFyZC13aWRnZXQgLmNvbnRhaW5lciBvbCB7XG4gICAgICBjb3VudGVyLXJlc2V0OiBteS1iYWRhc3MtY291bnRlcjsgfVxuICAgICAgLnN0YW5kYXJkLXdpZGdldCAuY29udGFpbmVyIG9sIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobXktYmFkYXNzLWNvdW50ZXIpIFwiLlwiO1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbXktYmFkYXNzLWNvdW50ZXI7IH1cbiAgLnN0YW5kYXJkLXdpZGdldCAuc29jaWFsLW1lZGlhIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnN0YW5kYXJkLXdpZGdldCAuc29jaWFsLW1lZGlhIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAuc3RhbmRhcmQtd2lkZ2V0IC5zb2NpYWwtbWVkaWEgbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgcGFkZGluZzogOHB4IDVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LWhlaWdodDogNjU2cHg7IH1cbiAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZTtcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDc0NXB4O1xuICAgICAgcGFkZGluZzogMjBweCAyNXB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUzNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAudmlkZW8td2lkZ2V0IC52aWRlby1jb250YWluZXIgYSAudGV4dCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzNDVweDsgfSB9XG4gICAgICAudmlkZW8td2lkZ2V0IC52aWRlby1jb250YWluZXIgYSAudGV4dCBoMyxcbiAgICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IGg0IHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLnRleHQgaDQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLnRleHQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLnRleHQgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAudmlkZW8td2lkZ2V0IC52aWRlby1jb250YWluZXIgYSAudGV4dCBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhIC50ZXh0IGkge1xuICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLnRleHQgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLnRleHQgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cbiAgICAudmlkZW8td2lkZ2V0IC52aWRlby1jb250YWluZXIgYSAuaW1nIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiA1MS4zNSU7XG4gICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgLW1vei1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIC1tcy1maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIC1vLWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICBmaWx0ZXI6IGdyYXk7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLmltZyB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBoZWlnaHQ6IDY1NnB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODdweCkge1xuICAgICAgICAudmlkZW8td2lkZ2V0IC52aWRlby1jb250YWluZXIgYSAuaW1nIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGhlaWdodDogMjUwcHg7IH0gfVxuICAgICAgLnZpZGVvLXdpZGdldCAudmlkZW8tY29udGFpbmVyIGEgLmltZy1maWx0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDQ0N2M7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDsgfVxuICAgIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBhOmhvdmVyIC50ZXh0IHtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4yLCAxLjIpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4yLCAxLjIpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMiwgMS4yKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4yLCAxLjIpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4yLCAxLjIpOyB9XG4gIC52aWRlby13aWRnZXQgLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4udmlkZW8td2lkZ2V0OmJlZm9yZSwgLnZpZGVvLXdpZGdldDphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzM3B4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAudmlkZW8td2lkZ2V0OmJlZm9yZSwgLnZpZGVvLXdpZGdldDphZnRlciB7XG4gICAgICBoZWlnaHQ6IDIycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAudmlkZW8td2lkZ2V0OmJlZm9yZSwgLnZpZGVvLXdpZGdldDphZnRlciB7XG4gICAgICBoZWlnaHQ6IDExcHg7IH0gfVxuXG4udmlkZW8td2lkZ2V0OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgLypiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTsgfVxuXG4udmlkZW8td2lkZ2V0OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG5cbi5idXR0b25zLXdpZGdldCArIC5idXR0b25zLXdpZGdldCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLmJ1dHRvbi13cmFwIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1vei1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tb3otZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLW1vei1ib3gtcGFjazogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gIG1hcmdpbjogMCAtMTBweCAtMjBweDsgfVxuICAuYnV0dG9uLXdyYXAgYSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgLW1vei1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMCAxMHB4IDIwcHg7XG4gICAgcGFkZGluZzogMTVweCA0MHB4O1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDIwcHgpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIC5idXR0b24td3JhcCBhIHtcbiAgICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYnV0dG9uLXdyYXAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpOyB9IH1cbiAgICAuYnV0dG9uLXdyYXAgYSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYnV0dG9uLXdyYXAgYSBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDM1cHg7IH0gfVxuICAgIC5idXR0b24td3JhcCBhIC50ZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIC5idXR0b24td3JhcCBhIC50ZXh0IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmJ1dHRvbi13cmFwIGEgLnRleHQgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICAgIC5idXR0b24td3JhcCBhIC50ZXh0IHNwYW4ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICBvcGFjaXR5OiAuNzU7IH1cbiAgICBib2R5LndiLWhvbWVwYWdlIC5idXR0b24td3JhcCBhIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgLXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBzaXplOiBhdXRvOyB9XG4gIGJvZHkge1xuICAgIG1hcmdpbjogMThtbTsgfVxuICAuaGVhZGVyX19iZyxcbiAgaGVhZGVyIC5oZWFkZXJfX3RvcCxcbiAgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQsXG4gIC5tYXN0aGVhZC1zbGlkZXIsXG4gIC5ob21lLXNsaWRlcixcbiAgLndpZGdldC1jb250YWluZXI6bm90KC5zdGFuZGFyZC13aWRnZXQpOm5vdCgucHJvZHVjdHMtdG9wLXdpZGdldCk6bm90KC5mYXEtd2lkZ2V0KSxcbiAgLmZvb3RlcixcbiAgLm1vZGFsLFxuICAubW9iLW1lbnUtb3ZlcmxheSxcbiAgLnVuZGVyLXNsaWRlcixcbiAgYm9keS53Yi1ob21lcGFnZSAubWFpbi1ib2R5IC5zdGFuZGFyZC13aWRnZXQgLmJ1dHRvbixcbiAgbmF2LnNoYWRpbmctbmF2LFxuICBib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbjpub3QoLm1haW4tYm9keSksXG4gIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keSAuaW1nLFxuICAucHJvamVjdC1zbGlkZXIsXG4gIGJvZHkuc2luZ2xlLXByb2plY3QgLmJ1dHRvbi1jb250YWluZXIsXG4gIGJvZHkuc2luZ2xlLXByb2plY3QgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uOmFmdGVyLFxuICAucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyxcbiAgLnBhZ2VudW1iZXItY29udGFpbmVyLFxuICAuc3ViLW5hdl9fd3JhcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgaHRtbCxcbiAgYm9keSxcbiAgI3dyYXAsXG4gIGhlYWRlcixcbiAgYm9keS53Yi1zaGFkaW5nLWZvciBoZWFkZXIsIGJvZHkud2Itc2hhZGluZy1mb3IgLmhlYWRlcl9fYmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50OyB9XG4gIGFbaHJlZl0ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAgIGhlYWRlciAuaGVhZGVyX19ib3R0b20ge1xuICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICBoZWFkZXIgLmxvZ28ge1xuICAgICAgd2lkdGg6IDIxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMDsgfVxuICAgICAgaGVhZGVyIC5sb2dvIGltZzpub3QoLnByaW50LWxvZ28pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICBoZWFkZXIgLmxvZ28gaW1nLnByaW50LWxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIHNlY3Rpb24ubWFpbi1ib2R5IHtcbiAgICBwYWRkaW5nOiAyNXB4IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICBzZWN0aW9uLm1haW4tYm9keTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLndpZGdldC1jb250YWluZXIgKyAud2lkZ2V0LWNvbnRhaW5lcixcbiAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgLndpZGdldC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHggIWltcG9ydGFudDsgfVxuICAucGFnZS10aXRsZSArIC53aWRnZXQtY29udGFpbmVyLFxuICAucGFnZS1zdWJ0aXRsZSArIC53aWRnZXQtY29udGFpbmVyLFxuICAud2lkZ2V0LWNvbnRhaW5lciArIC5wYWdlLXRpdGxlLFxuICAud2lkZ2V0LWNvbnRhaW5lciArIC5wYWdlLXN1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4ICFpbXBvcnRhbnQ7IH1cbiAgLndpZGdldC1jb250YWluZXIgLndpZGdldC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweCAhaW1wb3J0YW50OyB9XG4gIC5mYXEtd2lkZ2V0IC5hY2NvcmRpb24gLmFjY29yZGlvbi1ncm91cCB7XG4gICAgYm9yZGVyOiAwcHg7IH1cbiAgICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAgKyAuYWNjb3JkaW9uLWdyb3VwIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAgLmFjY29yZGlvbi1idG4ge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAuZmFxLXdpZGdldCAuYWNjb3JkaW9uIC5hY2NvcmRpb24tZ3JvdXAgLmFjY29yZGlvbi1idG46YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgICAgLmZhcS13aWRnZXQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIC5hY2NvcmRpb24tY29udGVudCAuYWNjb3JkaW9uLWNvbnRlbnQtaW5uZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbi5tYWluLWJvZHkgaDEge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uLm1haW4tYm9keSBoMTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uIC5kZXNjcmlwdGlvbi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBib2R5LnNpbmdsZS1wcm9qZWN0IC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMCAwIDI1cHg7IH1cbiAgYm9keS5zaW5nbGUtcHJvamVjdCAuZmxleC1jb250YWluZXIgLmRlc2NyaXB0aW9uLWNvbnRhaW5lciBwIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAucHJvZHVjdHMtdG9wLXdpZGdldCAubWFpbi1kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuIiwiLyogU0FTUyBndWlkZWxpbmVzXG5cbi5lbGVtZW50e1xuXHQvLyBOb3JtYWwgZWxlbWVudCBzdHlsZXMgaGVyZSBlLmcuIHBvc2l0aW9uOiByZWxhdGl2ZSBldGMuXG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCBmb3IgdGhpcyBlbGVtZW50XG5cblx0LmlubmVyLWVsZW1lbnRze1xuXHRcdC8vIFN0eWxlcyBmb3IgaW5uZXIgZWxlbWVudHMgaGVyZVxuXHR9XG5cblx0Ji5tb2RpZmllciB7XG5cdFx0Ly8gU3R5bGVzIGZvciBtb2RpZmllciBvZiBlbGVtZW50IGhlcmVcblx0fVxufVxuKi9cblxuLy8gQmFzZSwgTWl4aW5zIGFuZCB2YXJpYWJsZXNcbkBpbXBvcnQgJ2Jhc2UvbWl4aW5zJyxcblx0XHQnYmFzZS92YXJpYWJsZXMnO1xuXG5AaW1wb3J0ICdiYXNlL3Jlc2V0cycsXG5cdFx0J2Jhc2Uvc2xpZGVyJyxcblx0XHQnYmFzZS9iYXNlJztcblxuLy8gU2l0ZSBMYXlvdXRcbkBpbXBvcnQgJ2xheW91dC9oZWFkZXInLFxuXHRcdCdsYXlvdXQvZm9vdGVyJztcblxuLy8gU2l0ZSBDb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbicsXG5cdFx0J2NvbXBvbmVudHMvZm9ybXMnLFxuXHRcdCdjb21wb25lbnRzL2xpc3RzJyxcblx0XHQnY29tcG9uZW50cy9wYWdpbmF0aW9uJywgXG5cdFx0J2NvbXBvbmVudHMvc3ViLW5hdicsXG5cdFx0J2NvbXBvbmVudHMvc3Bpbm5lcicsXG5cdFx0J2NvbXBvbmVudHMvdGFibGVzJyxcblx0XHQnY29tcG9uZW50cy90eXBvZ3JhcGh5Jyxcblx0XHQnY29tcG9uZW50cy9ub3RpZmljYXRpb24nLFxuXHRcdCdjb21wb25lbnRzL21vZGFscycsXG5cdFx0J2NvbXBvbmVudHMvZmFuY3lib3gnO1xuXG4vLyBQYWdlc1xuQGltcG9ydCAncGFnZXMvaG9tZXBhZ2UnLFxuXHRcdCdwYWdlcy9zaXRlbWFwJyxcblx0XHQncGFnZXMvc3VicGFnZScsXG5cdFx0J3BhZ2VzL21haW50ZW5hbmNlJyxcblx0XHQncGFnZXMvcHJvZHVjdCcsXG5cdFx0J3BhZ2VzL3Byb2plY3QtbGlzdGluZycsXG5cdFx0J3BhZ2VzL3NoYWRpbmctZm9yJyxcblx0XHQncGFnZXMvc2luZ2xlLXByb2plY3QnLFxuXHRcdCdwYWdlcy9ibG9nLWxpc3RpbmcnLFxuXHRcdCdwYWdlcy9kb3dubG9hZC1jZW50cmUnO1xuXG4vLyBHbG9iYWwgV2lkZ2V0IFN0eWxlc1xuQGltcG9ydCAnd2lkZ2V0cy93aWRnZXRzJztcblxuLy8gV2lkZ2V0c1xuQGltcG9ydCAnd2lkZ2V0cy9jYXJkcycsXG5cdFx0J3dpZGdldHMvY29udGFjdCcsXG5cdFx0J3dpZGdldHMvZG9jLWRvd24nLFxuXHRcdCd3aWRnZXRzL2ZhcScsXG5cdFx0J3dpZGdldHMvaW1hZ2UtZ2FsbGVyeScsXG5cdFx0J3dpZGdldHMvaW1hZ2Utc2xpZGVyJyxcblx0XHQnd2lkZ2V0cy9pbWFnZS10ZXh0Jyxcblx0XHQnd2lkZ2V0cy9sYXRlc3QtcHJvamVjdC13aWRnZXQnLFxuXHRcdCd3aWRnZXRzL2xpc3RpbmctZmlsdGVyJyxcblx0XHQnd2lkZ2V0cy9sb2dvJyxcblx0XHQnd2lkZ2V0cy9tYXAnLFxuXHRcdCd3aWRnZXRzL3BhZ2UtcmVsYXRpb25zaGlwJyxcblx0XHQnd2lkZ2V0cy9zaGFyZScsXG5cdFx0J3dpZGdldHMvc3RhbmRhcmQnLFxuXHRcdCd3aWRnZXRzL3ZpZGVvJyxcblx0XHQnd2lkZ2V0cy9idXR0b25zJztcblxuLy8gTWlzY1xuQGltcG9ydCAnYmFzZS9wcmludCc7XG5cblxuIiwiLyogVmFyaWFibGVzICovXG4kcHJpbWFyeUNvbG91cjojMDNBOUY0O1xuJHRleHRPblByaW1hcnlDb2xvdXI6d2hpdGU7XG4kcHJpbWFyeUNvbG91ckhvdmVyOmRhcmtlbigkcHJpbWFyeUNvbG91ciwxNSUpO1xuJHRleHRDb2xvdXI6IzIyMjtcbiRib3JkZXJDb2xvdXI6I2U1ZTVlNTtcbiRib3JkZXJXaWR0aDoycHg7XG4kYm94QmFja2dyb3VuZDojZWVlO1xuJGJhY2tncm91bmRDb2xvdXI6I2ZmZjtcblxuJG1haW5XaWRnZXRQYWRkaW5nOiA0MHB4O1xuJHNpZGViYXJXaWRnZXRQYWRkaW5nOiAyNXB4O1xuJG1haW5XaWRnZXRQYWRkaW5nTW9iaWxlOiAyNXB4O1xuJHNpZGViYXJXaWRnZXRQYWRkaW5nTW9iaWxlOiAyNXB4O1xuXG4kZ3V0dGVyV2lkdGg6MjVweDtcblxuXG5cblxuJGxpZ2h0X2JsdWU6I2YyZjlmZTtcbiRzb2NpYWxfbGlnaHRfYmx1ZTojOGZjOWU2O1xuJGJyaWdodF9ibHVlOiMzYjhlZGU7XG4kZGFya19ibHVlOiMwMDQ0N2M7XG4kd2hpdGU6I2ZmZmZmZjtcbiRvZmZfd2hpdGU6I2ViZWJlYjtcbiRsaWdodF9ncmV5OiNlNmVkZjI7XG4kZ3JleTojODg4Zjk0O1xuJGRhcmtfZ3JleTojN2I3YjdiO1xuJGJvcmRlcl9ncmV5OiNjY2NjY2M7XG4kZm9ybV9ncmV5OiM5NTk1OTU7XG4kYmxhY2s6IzAwMDAwMDtcbiRvZmZfYmxhY2s6IzAxMDEwMTtcbiRjdXN0b21fcmVkOiNkMDE1MmE7XG5cbiR3aWRnZXRNYXJnaW46MTIwcHg7XG4kd2lkZ2V0TW9iaWxlTWFyZ2luOjYwcHg7IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBNQUlOICsgUkVTRVRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbioge1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO1xufVxuXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiRkYXJrX2JsdWU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHRleHQtc2hhZG93Om5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiRkYXJrX2JsdWU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHRleHQtc2hhZG93Om5vbmU7XG59XG5cbi5jaHJvbWVmcmFtZSxcbmxpLmdyYXBoaWMtb25seSB7XG4gICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG59XG5cbmh0bWwsXG5ib2R5LFxuZGl2LFxuc3Bhbixcbm9iamVjdCxcbmlmcmFtZSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnAsXG5ibG9ja3F1b3RlLFxucHJlLFxuYWJicixcbmFkZHJlc3MsXG5jaXRlLFxuY29kZSxcbmRlbCxcbmRmbixcbmVtLFxuaW1nLFxuaW5zLFxua2JkLFxucSxcbnNhbXAsXG5zbWFsbCxcbnN0cm9uZyxcbnN1YixcbnN1cCxcbnZhcixcbmIsXG5pLFxuZGwsXG5kdCxcbmRkLFxub2wsXG51bCxcbmxpLFxuZmllbGRzZXQsXG5mb3JtLFxubGFiZWwsXG5sZWdlbmQsXG50YWJsZSxcbmNhcHRpb24sXG50Ym9keSxcbnRmb290LFxudGhlYWQsXG50cixcbnRoLFxudGQsXG5hcnRpY2xlLFxuYXNpZGUsXG5jYW52YXMsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSxcbnRpbWUsXG5tYXJrLFxuYXVkaW8sXG52aWRlbyB7XG4gICAgbWFyZ2luOjA7XG4gICAgcGFkZGluZzowO1xuICAgIGJvcmRlcjowO1xuICAgIG91dGxpbmU6MDtcbiAgICBmb250LXNpemU6MTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xufVxuXG5odG1sIHtcbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDoxMDAlO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG92ZXJmbG93LXg6aGlkZGVuO1xufVxuXG5ib2R5IHtcbiAgICBmb250LXNpemU6MTZweDtcbiAgICBsaW5lLWhlaWdodDoxLjg4O1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBiYWNrZ3JvdW5kOiRsaWdodF9ibHVlO1xuICAgIG1hcmdpbjowO1xuICAgIHBhZGRpbmc6MDtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjA7XG59XG5cbiN3cmFwIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjA7XG4gICAgcmlnaHQ6MDtcbiAgICBsZWZ0OjA7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIGJhY2tncm91bmQ6JGxpZ2h0X2JsdWU7ICAgXG59XG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLyogRW1iZWRkZWQgY29udGVudCAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuc3ZnOm5vdCg6cm9vdCkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKiBHcm91cGluZyBjb250ZW50ICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAxNXB4IDQwcHg7XG59XG5ociB7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgbWFyZ2luOiAxZW0gMDtcbiAgICBwYWRkaW5nOiAwO1xufVxucHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxMDAlO1xufVxuLyogRm9ybXMgKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIG1hcmdpbjogMDtcbiAgICBvdXRsaW5lOiAwO1xufVxuYnV0dG9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKiBIVE1MNSAvIE1JU0MgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWVudSxcbm5hdixcbnNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gICAgcXVvdGVzOiBub25lO1xufVxuXG5ibG9ja3F1b3RlOmJlZm9yZSxcbmJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSxcbnE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG59XG5cbmlucyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtfYmx1ZTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgcGFkZGluZzowIDJweDtcbn1cblxuZGVsIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xufSIsIi8qIFNMSURFUlMgKi9cbi5zbGlkZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6MDtcblxuICAgIC5zbGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbSgyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0KTtcblxuICAgICAgICAgICAgJi52aWRlby1yZWFkeSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZpZGVvLW1hc2sge1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OjA7XG5cbiAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDoxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6MDtcbiAgICAgICAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGlkZS1jYXB0aW9uIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwgLTUwJSkpO1xuICAgICAgICAgICAgJi5ib3gtY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYm94LWNhcHRpb24ge1xuICAgICAgICAgICAgLnNsaWRlLWNhcHRpb24taW5uZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbS1ib3gtY2FwdGlvbiB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0obm9uZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNsaWRlLWNhcHRpb24taW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMCA3MHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgei1pbmRleDoyO1xuXG4gICAgLnNsaWRlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDo1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgd2lkdGg6MjJweDtcbiAgICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICAgIHotaW5kZXg6NTtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTonQmxhY2sgVGllJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo0MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTozMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OjUwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBsZWZ0OjI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6J1xcRjA5Mic7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OjUwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICByaWdodDoyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OidcXEYwOTMnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgYm90dG9tOjczcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKC01MCUpKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGJvdHRvbTozMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6bGVmdDtcblxuICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDozcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgICAgICBib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50Oi05OTk5cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOjE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6MTZweDtcbiAgICAgICAgICAgIG91dGxpbmU6MDtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICAgIHdpZHRoOjE2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjE2cHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6J0JsYWNrIFRpZSc7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIlxcRjA4Q1wiO1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OjA7XG4gICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWFjdGl2ZSBidXR0b246YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaG9tZS1zbGlkZXIge1xuICAgIGNsaXAtcGF0aDogdXJsKCNoZXJvLWNsaXApO1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiB1cmwoI2hlcm8tY2xpcCk7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDoyO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MzNweDtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDowO1xuICAgICAgICBib3R0b206MDtcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbS14cycpIHtcbiAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGUge1xuICAgICAgICBoZWlnaHQ6Y2FsYygxMDB2aCAtIDQzcHgpO1xuXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDozO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkZGFya19ibHVlLCB0cmFuc3BhcmVudCwgMCUsIDUyJSk7XG4gICAgICAgICAgICBvcGFjaXR5OjAuNztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHhcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRleHQtc2hhZG93OiAwcHggMHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFzdGhlYWQtc2xpZGVyIHtcbiAgICAuc2xpZGUge1xuICAgICAgICBoZWlnaHQ6NDk5cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MjUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5pbWcge1xuICAgICAgICAgICAgei1pbmRleDowO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkZGFya19ibHVlLCB0cmFuc3BhcmVudCwgMCUsIDUyJSk7XG4gICAgICAgICAgICBvcGFjaXR5OjAuNztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDoyO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MzNweDtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDowO1xuICAgICAgICBib3R0b206MDtcbiAgICAgICAgLypiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5zaW5nbGUtcHJvZHVjdCAmIHtcbiAgICAgICAgLnNsaWRle1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIC5iYW5uZXItdGV4dHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwNTBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxMzBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjokdGV4dE9uUHJpbWFyeUNvbG91cjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpe1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoMSwgaDIsIGgze1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaDF7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpe1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoMntcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpe1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBoM3tcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKHRyYW5zcGFyZW50LCAkZGFya19ibHVlLCAwJSwgNjQlKTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTowLjY1O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53aWRnZXQtc2xpZGVyIHtcbiAgICAuc2xpZGUge1xuICAgICAgICBoZWlnaHQ6NjU2cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MzUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGhlaWdodDoyNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDoyO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MzNweDtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDowO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuICAgICAgICAgICAgaGVpZ2h0OjIycHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGhlaWdodDoxMXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgLypiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJvdHRvbTowO1xuICAgICAgIFx0LypiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG4gICAgfVxufVxuXG4ud2ItcHJvZHVjdHMge1xuICAgIC5zbGlkZXItc2hvdyB7XG4gICAgICAgIC5zbGlkZSB7XG4gICAgICAgICAgICBoZWlnaHQ6MjYwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGVyLWNvbnRyb2wge1xuICAgICAgICBtYXJnaW4tdG9wOjE1cHg7XG5cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgcGFkZGluZzowICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgICAgaGVpZ2h0OjkwcHg7XG4gICAgICAgICAgICB3aWR0aDpjYWxjKDMzLjMzJSAtIDEwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6MDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMiksXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6MTtcbiAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXI6M3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1jdXJyZW50OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiRicmlnaHRfYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvLyBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSwgJjphZnRlcnsgZGlzcGxheTogdGFibGU7IGNvbnRlbnQ6IFwiIFwiOyB9XG4gICY6YWZ0ZXJ7IGNsZWFyOmJvdGg7IH1cbn1cblxuLy8gSWNvblxuQG1peGluIGljb24oJGZvbnQsICRjb2RlLCAkd2VpZ2h0LCAkc2l6ZSwgJHRvcCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGNvbnRlbnQ6ICRjb2RlO1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJHNpemU7XG4gIHRvcDogJHRvcDtcbn1cblxuLy8gZ2VuZXJpYyBhbmltXG5AbWl4aW4gYW5pbSgkdHJhbnNpdGlvbikge1xuXHQgICAtbW96LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHQgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHQgICAgLW1zLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXHQtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuXG4vLyBnZW5lcmljIHRyYW5zZm9ybVxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3Jtcykge1xuXHQgICAtbW96LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG5cdCAgICAgLW8tdHJhbnNmb3JtOiAkdHJhbnNmb3Jtcztcblx0ICAgIC1tcy10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuXHQtd2Via2l0LXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgICAgICAgdHJhbnNmb3JtOiAkdHJhbnNmb3Jtcztcbn1cbi8vIHJvdGF0ZVxuQG1peGluIHJvdGF0ZSAoJGRlZykge1xuICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKCN7JGRlZ31kZWcpKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vLyBzY2FsZVxuQG1peGluIHNjYWxlKCR4LCR5KSB7XG5cdCBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoJHgsJHkpKTtcbn1cbi8vIHRyYW5zbGF0ZVxuQG1peGluIHRyYW5zbGF0ZSAoJHgsICR5KSB7XG4gICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKCR4LCAkeSkpO1xufVxuXG4vLyBza2V3XG5AbWl4aW4gc2tldyAoJHgsICR5KSB7XG4gICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2tldygjeyR4fWRlZywgI3skeX1kZWcpKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLy90cmFuc2Zvcm0gb3JpZ2luXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbiAoJG9yaWdpbikge1xuICAgIG1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuXHQgICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG5cdCAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcblx0LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG4vL3RyYW5zaXRpb24gZGVsYXkgb3JpZ2luXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSAoJGRlbGF5KSB7XG4gICAgLW1vei10cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG5cdCAgICAgLW8tdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xuXHQgICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcblx0LXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG5cblxuQG1peGluIGZsZXhib3gge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG5AbWl4aW4gZmxleC13cmFwKCR2YWx1ZTogbm93cmFwKSB7XG4gIC13ZWJraXQtZmxleC13cmFwOiAkdmFsdWU7XG4gIC1tb3otZmxleC13cmFwOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gbm93cmFwIHtcbiAgICAtbXMtZmxleC13cmFwOiBub25lO1xuICB9IEBlbHNlIHtcbiAgICAtbXMtZmxleC13cmFwOiAkdmFsdWU7XG4gIH1cbiAgZmxleC13cmFwOiAkdmFsdWU7XG59XG5cbkBtaXhpbiBmbGV4KCR2YWx1ZSkge1xuXHQtd2Via2l0LWZsZXg6ICR2YWx1ZTtcblx0LW1vei1mbGV4OiAkdmFsdWU7XG5cdC1tcy1mbGV4OiAkdmFsdWU7XG5cdGZsZXg6ICR2YWx1ZTtcbn1cblxuQG1peGluIGp1c3RpZnkoJHZhbHVlKSB7XG4gIC13ZWJraXQtYm94LXBhY2s6ICR2YWx1ZTtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcbiAgLW1vei1ib3gtcGFjazogJHZhbHVlO1xuICAtbXMtZmxleC1wYWNrOiAkdmFsdWU7XG4gIGp1c3RpZnktY29udGVudDogJHZhbHVlO1xufVxuXG5AbWl4aW4gc3BhY2VCZXR3ZWVuIHtcbiAgLXdlYmtpdC1ib3gtcGFjazoganVzdGlmeTtcbiAgLW1vei1ib3gtcGFjazoganVzdGlmeTtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuQG1peGluIGFsaWduKCR2YWx1ZSkge1xuICAtd2Via2l0LWJveC1hbGlnbjogJHZhbHVlO1xuICAtbW96LWJveC1hbGlnbjogJHZhbHVlO1xuICAtbXMtZmxleC1hbGlnbjogJHZhbHVlO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiAkdmFsdWU7XG4gIGFsaWduLWl0ZW1zOiAkdmFsdWU7XG59XG5cbkBtaXhpbiBmbGV4T3JkZXIoJHZhbHVlKSB7XG5cdG9yZGVyOiAkdmFsdWU7XG5cdC13ZWJraXQtb3JkZXI6ICR2YWx1ZTtcblx0LW1zLWZsZXgtb3JkZXI6ICR2YWx1ZTtcbn1cblxuQG1peGluIGFsaWduQ29udGVudCgkdmFsdWUpIHtcblx0LXdlYmtpdC1hbGlnbi1jb250ZW50OiAkdmFsdWU7XG5cdC1tb3otYWxpZ24tY29udGVudDogJHZhbHVlO1xuXHQtbXMtYWxpZ24tY29udGVudDogJHZhbHVlO1xuXHRhbGlnbi1jb250ZW50OiAkdmFsdWU7XG59XG5cblxuQG1peGluIGFsaWduU2VsZigkYWxpZ246IGF1dG8pIHtcblx0LXdlYmtpdC1hbGlnbi1zZWxmOiAkYWxpZ247XG5cdC1tb3otYWxpZ24tc2VsZjogJGFsaWduO1xuXHQtbXMtYWxpZ24tc2VsZjogJGFsaWduO1xuXHRhbGlnbi1zZWxmOiAkYWxpZ247XG59XG5cbkBtaXhpbiBhbGlnbkl0ZW1zKCR2YWx1ZSkge1xuXHQtd2Via2l0LWFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdC1tb3otYWxpZ24taXRlbXM6ICR2YWx1ZTtcblx0LW1zLWFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdGFsaWduLWl0ZW1zOiAkdmFsdWU7XG59XG5cblxuXG5cbi8vIFJFU1BPTlNJVkUgQlJFQUtQT0lOVFNcblxuQG1peGluIGJyZWFrcG9pbnQoJG1pbjogMCwgJG1heDogMCkge1xuICAkdHlwZTogdHlwZS1vZigkbWluKTtcblxuICBAaWYgJHR5cGUgPT0gc3RyaW5nIHtcbiAgICBAaWYgJG1pbiA9PSB4cyB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkgeyBAY29udGVudDsgfSAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1vYmlsZSBEZXZpY2VzXG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJG1pbiA9PSB4cy1scmcge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyBAY29udGVudDsgfSAgICAvLyBNb2JpbGUgTGFyZ2VcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkbWluID09IHhzLXNtbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkgeyBAY29udGVudDsgfSAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1vYmlsZSBTbWFsbFxuICAgIH1cblxuICAgIEBlbHNlIGlmICRtaW4gPT0gc20teHMge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHsgQGNvbnRlbnQ7IH0gICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNb2JpbGUgJiBUYWJsZXQgRGV2aWNlc1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRtaW4gPT0gc20ge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgeyBAY29udGVudDsgfSAgICAvLyBUYWJsZXQgRGV2aWNlc1xuICAgIH1cblxuICAgIEBlbHNlIGlmICRtaW4gPT0gbWQteHMge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7IEBjb250ZW50OyB9ICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNb2JpbGUsIFRhYmxldCAmIERlc2t0b3BzXG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJG1pbiA9PSBtZC1zbSB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyBAY29udGVudDsgfSAgIC8vIFRhYmxldCBEZXZpY2VzICYgRGVza3RvcHNcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkbWluID09IG1kIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IEBjb250ZW50OyB9ICAgLy8gRGVza3RvcHNcbiAgICB9XG5cbiAgICBAZWxzZSBpZiAkbWluID09IGxnIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgeyBAY29udGVudDsgfSAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2lkZXNjcmVlbiBEZXNrdG9wc1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSBwYXNzIGEgd2FybmluZyB0byB0aGUgY29tcGlsZXIgYXMgdG8gdGhlIGFwcHJvcHJpYXRlIG9wdGlvbnNcbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiBcIlRoZSBicmVha3BvaW50IG1peGluIHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgYXR0cmlidXRlczogeHMsIHhzLXNtbCwgeHMtbHJnLCBzbS14cywgc20sIG1kLCBsZ1wiO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkdHlwZSA9PSBudW1iZXIge1xuICAgIC8vIEFsbG93IGZvciBjdXN0b20gcGFyYW1ldGVycyBmb3IgbWluIGFuZCBtYXggc2l6ZVxuICAgICRxdWVyeTogXCJhbGxcIiAhZGVmYXVsdDtcbiAgICBAaWYgICAgICAkbWluICE9IDAgYW5kICRtYXggIT0gMCB7ICRxdWVyeTogXCIobWluLXdpZHRoOiAjeyRtaW59KSBhbmQgKG1heC13aWR0aDogI3skbWF4fSlcIjsgfSAvLyBzZXQgYm90aCBtaW4gYW5kIG1heFxuICAgIEBlbHNlIGlmICRtaW4gIT0gMCBhbmQgJG1heCA9PSAwIHsgJHF1ZXJ5OiBcIihtaW4td2lkdGg6ICN7JG1pbn0pXCI7IH0gLy8gc2V0IGp1c3QgbWluXG4gICAgQGVsc2UgaWYgJG1pbiA9PSAwIGFuZCAkbWF4ICE9IDAgeyAkcXVlcnk6IFwiKG1heC13aWR0aDogI3skbWF4fSlcIjsgfSAvLyBzZXQganVzdCBtYXhcbiAgICBAbWVkaWEgI3skcXVlcnl9IHsgQGNvbnRlbnQ7IH1cbiAgfVxufVxuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtAY29udGVudH1cbiAgJjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICB7QGNvbnRlbnR9XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAge0Bjb250ZW50fVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgIHtAY29udGVudH1cbn1cblxuXG5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi5pbWcge1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XG4gICAgbWFyZ2luOjA7XG4gICAgcGFkZGluZzowO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcblxuICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6MTAwJTtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgdXNlci1kcmFnOiBub25lOyBcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxufVxuXG4ubm8tY3Vyc29yIHtcbiAgICBjdXJzb3I6ZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG5zZWN0aW9uLm1haW4tYm9keSAud2lkZ2V0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgY2xlYXI6Ym90aDtcbiAgICB3aWR0aDoxMDAlO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZPTlRTIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6J0xhdG8nLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbn1cblxuaHRtbCxcbmJvZHksXG4jd3JhcCxcbmhlYWRlci5oZWFkZXIge1xuICAgIG1pbi13aWR0aDozMjBweDtcbn1cblxuLnJpZ2h0LFxuLmxlZnQge1xuICAgIGZsb2F0OiBub25lO1xufVxuXG4uY2xlYXJmaXgge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbn1cblxuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgYm9yZGVyOjA7XG4gICAgYm94LXNoYWRvdzpub25lICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTpub25lICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYW5pbShhbGwgLjI1cyBlYXNlKTtcbn1cblxuLnN0b3Atc2Nyb2xsaW5nIHtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG59XG5cbi5uby1hbmltLFxuLm5vLWFuaW0gKiB7XG4gICAgQGluY2x1ZGUgYW5pbShub25lICFpbXBvcnRhbnQpO1xufVxuXG4ubm8tYW5pbS1zaW5nbGUge1xuICAgIEBpbmNsdWRlIGFuaW0obm9uZSAhaW1wb3J0YW50KTtcbn1cblxuYSB7XG4gICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICBAaW5jbHVkZSBhbmltKGFsbCAuMjVzIGVhc2UpO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIG91dGxpbmU6MCAhaW1wb3J0YW50O1xuXG4gICAgJltocmVmPScjJ10sXG4gICAgJltocmVmPScnXSB7XG4gICAgICAgIGN1cnNvcjpkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgfVxufVxuXG4vKiBhbWVuZGluZyB0aGUgZGVmYXVsdCBib290c3RyYXAgMTVweCBndXR0ZXJzICovXG4uY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6JGd1dHRlcldpZHRoO1xuICAgIHBhZGRpbmctcmlnaHQ6JGd1dHRlcldpZHRoO1xuICAgIHdpZHRoOmF1dG8gIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6MTAwMHB4ICsgKDIgKiAkZ3V0dGVyV2lkdGgpO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyV2lkdGg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlcldpZHRoO1xufVxuXG4uY29sLWxnLTEsLmNvbC1sZy0xMCwuY29sLWxnLTExLC5jb2wtbGctMTIsLmNvbC1sZy0yLC5jb2wtbGctMywuY29sLWxnLTQsLmNvbC1sZy01LC5jb2wtbGctNiwuY29sLWxnLTcsLmNvbC1sZy04LC5jb2wtbGctOSwuY29sLW1kLTEsLmNvbC1tZC0xMCwuY29sLW1kLTExLC5jb2wtbWQtMTIsLmNvbC1tZC0yLC5jb2wtbWQtMywuY29sLW1kLTQsLmNvbC1tZC01LC5jb2wtbWQtNiwuY29sLW1kLTcsLmNvbC1tZC04LC5jb2wtbWQtOSwuY29sLXNtLTEsLmNvbC1zbS0xMCwuY29sLXNtLTExLC5jb2wtc20tMTIsLmNvbC1zbS0yLC5jb2wtc20tMywuY29sLXNtLTQsLmNvbC1zbS01LC5jb2wtc20tNiwuY29sLXNtLTcsLmNvbC1zbS04LC5jb2wtc20tOSwuY29sLXhzLTEsLmNvbC14cy0xMCwuY29sLXhzLTExLC5jb2wteHMtMTIsLmNvbC14cy0yLC5jb2wteHMtMywuY29sLXhzLTQsLmNvbC14cy01LC5jb2wteHMtNiwuY29sLXhzLTcsLmNvbC14cy04LC5jb2wteHMtOSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyV2lkdGg7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlcldpZHRoO1xufVxuXG4ubWFpbi1ib2R5IHtcbiAgICBwYWRkaW5nOjIwcHggMCAoJHdpZGdldE1hcmdpbiszM3B4KTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjA7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgcGFkZGluZzoyMHB4IDAgKCR3aWRnZXRNb2JpbGVNYXJnaW4rMTJweCk7XG4gICAgfVxuICAgICYubm8tbWFyZ2luIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBib2R5LmVycm9yNDA0ICYge1xuICAgICAgICBwYWRkaW5nLXRvcDo3MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6NDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDoyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjMzcHg7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmRyYXdlciAuc29jaWFsLW1lZGlhIGEsXG4ubW9iLW1lbnUtYnRuIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6NDdweDtcbiAgICB3aWR0aDo1NXB4O1xuICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OjQycHg7XG4gICAgYm9yZGVyOjJweCBzb2xpZCAkd2hpdGU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHBhZGRpbmc6MDtcbiAgICBib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuXG4gICAgaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjQycHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICB9XG59XG5cbi5yZXNpemUgLnNvY2lhbC1tZWRpYSBhLFxuLnJlc2l6ZSAubW9iLW1lbnUtYnRuIHtcbiAgICBoZWlnaHQ6NDBweDtcbiAgICBmb250LXNpemU6MTZweDtcbiAgICBsaW5lLWhlaWdodDozNnB4O1xuICAgIHdpZHRoOjQ3cHg7XG5cbiAgICBpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6MzZweDtcbiAgICB9XG59XG5cbmhlYWRlciB7XG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgd2lkdGg6aW5oZXJpdDtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjM7XG4gICAgcGFkZGluZy1ib3R0b206MjBweDtcbiAgICBAaW5jbHVkZSBhbmltKDI1MG1zIGFsbCBlYXNlKTtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuaGVhZGVyX190b3Age1xuICAgICAgICBtYXJnaW4tdG9wOjI2cHg7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICAgIGhlaWdodDozNHB4O1xuXG4gICAgICAgICZfX3Bob25lbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjRweDtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6NXB4O1xuICAgICAgICAgICAgLy9tYXJnaW4tcmlnaHQ6MTEzcHg7ICAgIFxuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoyNHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTsgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxhbmdfc2VsX2NsaWNrX2N1c3RvbSB7XG4gICAgICAgICAgICAvL2Rpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIHJpZ2h0Oi0ycHg7XG4gICAgICAgICAgICB6LWluZGV4OjA7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6NXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czo1cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OjA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzo1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDoyNXB4OyAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7ICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjI0cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTNweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjRweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTsgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlxcRjA5NVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTpcIkJsYWNrIFRpZVwiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTNweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6MTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjExcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXFxGMDk0XCI7XG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW0oMjUwbXMgYWxsIGVhc2UpO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGRhcmtfYmx1ZTtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDoyNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyX19ib3R0b20ge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOjE4cHg7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjA7XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDoyMTVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojg2MHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTkwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDphdXRvO1xuXG4gICAgICAgICAgICAgICAgJi5wcmludC1sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3B1bGxyaWdodCB7XG4gICAgICAgICAgICBmbG9hdDpyaWdodDtcbiAgICAgICAgICAgIGhlaWdodDo0N3B4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpyaWdodDtcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojk5NXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NDdweDtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjQ3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjQzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6MnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2ItbWVudS1idG4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5tb2ItbWVudS1idG4ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZnVsbHNjcmVlbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDE7XG5cbiAgICAgICAgICAgIGJvZHkuc2hvdy1tb2ItbWVudSAmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIil7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJlc2l6ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6JGRhcmtfYmx1ZTtcblxuICAgICAgICAuaGVhZGVyX190b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDo5cHg7XG5cbiAgICAgICAgICAgICZfX3Bob25lbGluayB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjExcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjJweDtcbiAgICAgICAgICAgICAgICAvL21hcmdpbi1yaWdodDo5N3B4O1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjIycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDo1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGFuZ19zZWxfY2xpY2tfY3VzdG9tIHtcbiAgICAgICAgICAgICAgICBhIHsgIFxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjVweCAyMnB4IDVweCA1cHg7ICAgICAgICAgICBcblxuICAgICAgICAgICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjIycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoyMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjIycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDoycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDo2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyX19ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDoxMnB4O1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTkwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3B1bGxyaWdodCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjQxcHg7XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDo0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDozNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubW9iLW1lbnUtYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5tb2ItbWVudS1idG4ge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYuZnVsbHNjcmVlbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlYWRlcl9fYmcge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgei1pbmRleDoxO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjE0M3B4O1xuICAgIGJhY2tncm91bmQ6JGRhcmtfYmx1ZTtcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcblxuICAgICYucmVzaXplIHtcbiAgICAgICAgaGVpZ2h0OjExNnB4O1xuICAgIH1cbn1cblxuLmRyYXdlciB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIHBhZGRpbmc6IDI2cHggMjZweCAwIDI2cHg7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnlDb2xvdXI7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgxMDElLCAwKTtcbiAgICBAaW5jbHVkZSBhbmltKGFsbCAuMzVzIGVhc2UpO1xuXG4gICAgJi5mdWxsc2NyZWVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICBAaW5jbHVkZSBhbmltKG5vbmUpO1xuXG4gICAgICAgIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubWFpbi1uYXYge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgQGluY2x1ZGUgYW5pbShvcGFjaXR5IDI1MG1zIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgei1pbmRleDoxO1xuXG4gICAgICAgIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6NDdweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgdG9wOjc4cHg7XG4gICAgICAgICAgICBsZWZ0OiRndXR0ZXJXaWR0aDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKXtcbiAgICAgICAgICAgICAgICB0b3A6MzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRzb2NpYWxfbGlnaHRfYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiRzb2NpYWxfbGlnaHRfYmx1ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiRzb2NpYWxfbGlnaHRfYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKXtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjowcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE5cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1vYi1tZW51LWJ0biB7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDo3OHB4O1xuICAgICAgICAgICAgcmlnaHQ6JGd1dHRlcldpZHRoO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIil7XG4gICAgICAgICAgICAgICAgdG9wOjMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4tbmF2IHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICBAaW5jbHVkZSBhbmltKG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQpO1xuICAgICAgICBmbG9hdDpub25lOyBcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICB0b3A6IDUwJTsgXG4gICAgICAgIGxlZnQ6IDUwJTsgXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICAgIHBhZGRpbmc6MCAkZ3V0dGVyV2lkdGg7XG4gICAgICAgIHotaW5kZXg6MDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6NzVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtYXgtaGVpZ2h0OiA0NTBweCkge1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo3cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206N3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDoxNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MTVweDtcblxuICAgICAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo3cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwgKyBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA3MjVweCkge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0Om5vbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6N3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjdweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6N3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB1bCArIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNzI1cHgpIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjEwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MjBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHVsICsgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7IFxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjQwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiRzb2NpYWxfbGlnaHRfYmx1ZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKXtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JHNvY2lhbF9saWdodF9ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjQwcHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIil7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCBsaS5tYWluLW5hdl9fbm90IHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiRvZmZfd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokb2ZmX3doaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpLmN1cnJlbnRfcGFnZV9pdGVtIGEsXG4gICAgICAgIGxpLmN1cnJlbnQtbWVudS1pdGVtIGEsXG4gICAgICAgIGxpIGE6aG92ZXIge1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgMCk7XG5cbiAgICAgICAgJi5mdWxsc2NyZWVuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB6LWluZGV4OjEwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2hvdy1jb250ZW50IHtcbiAgICAgICAgLmNvbnRhaW5lcixcbiAgICAgICAgLm1haW4tbmF2IHtcbiAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYucmVzaXplIHtcbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6NDFweDtcbiAgICAgICAgICAgICAgICB0b3A6NTVweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKXtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9iLW1lbnUtYnRuIHtcbiAgICAgICAgICAgICAgICB0b3A6NTVweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKXtcbiAgICAgICAgICAgICAgICAgICAgdG9wOjMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9iLW1lbnUtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZGFya19ibHVlLCAwLjk3KTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgYW5pbShvcGFjaXR5IC4zcyBlYXNlKTtcbn1cblxuYm9keS5zaG93LW1vYi1tZW51IC5tb2ItbWVudS1vdmVybGF5IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG5ib2R5LnJhaXNlLW1vYi1vdmVybGF5IC5tb2ItbWVudS1vdmVybGF5IHtcbiAgICB6LWluZGV4OiA5MDtcbn0iLCIuZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX190b3AsXG4gICAgJl9fbWlkZGxlLFxuICAgICZfX2JvdHRvbSxcbiAgICAmX19ibHVlYmFyIHtcbiAgICAgICAgY2xlYXI6Ym90aDtcbiAgICB9XG5cbiAgICAmX190b3Age1xuICAgICAgICBwYWRkaW5nOjY5cHggMCAzNnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOjMycHggMCAxOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgICAgbWFyZ2luOjAgMCAyMnB4O1xuICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwtbWVkaWEge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgbWFyZ2luOjA7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWlkZGxlIHtcbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MzBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvY2F0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjFweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjMwcHggMCAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjM3cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDo4MnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OjA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXFxGMENBXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OlwiQmxhY2sgVGllXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDozN3B4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjQ2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6MnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICYtLWFkZHJlc3Mge1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi0tdGVsIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlxcRjAwNVwiO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi0tZW1haWwge1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXFxGMDAxXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib3R0b20ge1xuICAgICAgICBwYWRkaW5nOjQzcHggMCA2M3B4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOjMwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDoxNDFweDtcbiAgICAgICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICZfX2JsdWViYXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiRkYXJrX2JsdWU7XG4gICAgICAgIHBhZGRpbmc6MzJweCAwIDI5cHg7XG5cbiAgICAgICAgLmNvcHksXG4gICAgICAgIC5jcmVhdGVkLFxuICAgICAgICAuZm9vdGVyLW5hdiB7XG4gICAgICAgICAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS4zO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlOyBcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcIm1kLXhzXCIpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSxcbiAgICAgICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlOyBcbiAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29weSB7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5jcmVhdGVkIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwibWQteHNcIikge1xuICAgICAgICAgICAgICAgIG1hcmdpbjoxNXB4IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9vdGVyLW5hdiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICBtYXJnaW46MDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTNweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46M3B4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vdGlmaWNhdGlvbiB7XG4gICAgJi0tc2hvdywgJi0taGlkZSB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9faWNvbiB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltSmVsbHk7XG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogYW5pbUplbGx5O1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi0tc2hvdyB7XG5cbiAgICAgICAgLm5vdGlmaWNhdGlvbi1wb3B1cF9fY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgwKSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICB9ICAgIFxufSIsIi5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6JGJyaWdodF9ibHVlO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBmb250LXNpemU6MjBweDtcbiAgICBsaW5lLWhlaWdodDoxLjE7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjA7XG4gICAgcGFkZGluZzoxNHB4IDY4cHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgIG1hcmdpbjowO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIGJvcmRlcjowO1xuICAgIGJveC1zaGFkb3c6bm9uZTtcbiAgICBAaW5jbHVkZSBhbmltKGFsbCAuMjVzIGVhc2UpO1xuICAgIFxuICAgIC8vYTpob3ZlciAmLCBcbiAgICAmOmhvdmVyLCBcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDokZGFya19ibHVlO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuXG4gICAgJi13aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NDBweDsgXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6NDBweDsgICAgICBcbiAgICB9XG5cbiAgICAmLWljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgcGFkZGluZy1yaWdodDoyOHB4O1xuXG4gICAgICAgIC8vYTpob3ZlciAmLFxuICAgICAgICAmOmhvdmVyLCBcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICBjb2xvcjpkYXJrZW4oJHdoaXRlLCAwLjE1KTtcbiAgICAgICAgfSBcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxLjE7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogc2l0ZS13aWRlIGlucHV0IHN0eWxlcyAqL1xuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbnRleHRhcmVhLFxuLnNlbGVjdC13cmFwIHNlbGVjdCxcbi5zZWxlY3Qtd3JhcCxcbi5maWxlLXVwbG9hZCAuZmFrZS1pbnB1dCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6MHB4O1xuICAgIGJvcmRlcjoycHggc29saWQgJG9mZl93aGl0ZTtcbiAgICBvdXRsaW5lOjA7XG4gICAgY29sb3I6JGZvcm1fZ3JleTtcbiAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICBib3gtc2hhZG93Om5vbmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6MTVweDtcbiAgICBsaW5lLWhlaWdodDoyNXB4O1xuICAgIHBhZGRpbmc6MTBweCAyMHB4IDExcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06bm9uZTtcbiAgICBmb250LXdlaWdodDpub3JtYWw7XG4gICAgYXBwZWFyYW5jZTpub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xuICAgIGRpc3BsYXk6YmxvY2s7XG59XG5cbi5zZWxlY3Qtd3JhcCB7XG4gICAgcGFkZGluZzowO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG59XG5cbnRleHRhcmVhIHtcbiAgICByZXNpemU6bm9uZTtcbiAgICBoZWlnaHQ6MjAwcHg7XG4gICAgb3ZlcmZsb3c6YXV0bztcbiAgICBwYWRkaW5nOjhweCAxOHB4O1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OmF1dG87XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7XG4gICAgLW1vei1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xuICAgIC13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtcbiAgICBib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgYXBwZWFyYW5jZTpub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xufVxuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxubGVnZW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxub3B0Z3JvdXAge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206MTVweDtcbiAgICBtYXJnaW46MDtcblxuICAgICYtLXJhZGlvY2hlY2sge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTo0MnB4O1xuICAgIH1cblxuICAgICYgKyAuZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjUwcHg7XG4gICAgfVxufVxuXG4uZm9ybS1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OiRib3JkZXJXaWR0aDtcbiAgICBiYWNrZ3JvdW5kOiRib3JkZXJDb2xvdXI7XG59IiwidWwsXG5vbCxcbmRsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgJi5uby1saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgJiBsaSBhLFxuICAgIGRsIGxpIGEge1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgICYuY29va2llLWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6MjBweDtcbiAgICB9XG59XG5cbnVsLmxpc3QtbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRtYWluV2lkZ2V0UGFkZGluZztcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFpbldpZGdldFBhZGRpbmc7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRib3JkZXJDb2xvdXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRtYWluV2lkZ2V0UGFkZGluZ01vYmlsZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1haW5XaWRnZXRQYWRkaW5nTW9iaWxlO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYm9yZGVyQ29sb3VyO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6ICRtYWluV2lkZ2V0UGFkZGluZztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkbWFpbldpZGdldFBhZGRpbmc7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogJG1haW5XaWRnZXRQYWRkaW5nTW9iaWxlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAkbWFpbldpZGdldFBhZGRpbmdNb2JpbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3VyO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIucGFnZW51bWJlci1jb250YWluZXIge1xuXHRtYXJnaW46MDtcblx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cblx0LmJsb2ctd2lkZ2V0ICsgJiB7XG5cdFx0bWFyZ2luLXRvcDo0ZW07XG5cdH1cbn1cblxudWwucGFnZS1udW1iZXJzIHtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdG1hcmdpbjowIGF1dG87XG5cdHBhZGRpbmc6MDtcblx0aGVpZ2h0OjMwcHg7XG5cdGxpc3Qtc3R5bGU6bm9uZTtcblxuXHRsaSB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cblx0XHQmICsgbGkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6MjBweDtcblx0XHR9XG5cblx0XHQmLnByZXYge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjhweDsgXG5cdFx0fVxuXG5cdFx0Ji5uZXh0IHtcblx0XHRcdG1hcmdpbi1sZWZ0OjI4cHg7IFxuXHRcdH1cblxuXHRcdGEsXG5cdFx0c3BhbiB7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRmb250LXNpemU6MjdweDtcblx0XHRcdGxpbmUtaGVpZ2h0OjMwcHg7XG5cdFx0XHRoZWlnaHQ6MzBweDtcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0Y29sb3I6JGRhcmtfYmx1ZTtcblx0XHRcdGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG5cdFx0XHRib3JkZXI6MHB4O1xuXHRcdFx0QGluY2x1ZGUgYW5pbShhbGwgMjUwbXMgZWFzZS1pbi1vdXQpO1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdGZvbnQtd2VpZ2h0OjQwMDtcblxuXHRcdFx0aSB7XG5cdFx0XHRcdGZvbnQtc2l6ZToxOHB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDozMHB4O1xuXHRcdFx0XHRmb250LXdlaWdodDpub3JtYWw7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0Y29sb3I6JGJyaWdodF9ibHVlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNwYW4uY3VycmVudCB7XG5cdFx0XHRjb2xvcjokYnJpZ2h0X2JsdWU7XG5cdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0fVxuXHR9XG59IiwiLnN1Yi1uYXYge1xuICAgIGhlaWdodDoxOHB4O1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICBmb250LXNpemU6MDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIG1hcmdpbi10b3A6MTNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo1NnB4O1xuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTozcHggc29saWQgJGxpZ2h0X2dyZXk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowIDI1cHggMjdweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjNweCBzb2xpZCAkbGlnaHRfZ3JleTtcbiAgICAgICAgICAgIHBhZGRpbmc6MCA2OXB4IDU1cHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6MTAwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXJ3cmFwIHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6MDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOjEzcHg7XG4gICAgICAgICAgICB3aWR0aDo4NXB4O1xuICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAuM3MgZWFzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBsaW5lLWhlaWdodDoxOHB4O1xuICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjEycHg7XG4gICAgICAgIGNvbG9yOiRkYXJrX2dyZXk7XG4gICAgICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgID4gdWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIHdpZHRoOmNhbGMoMTAwJSAtIDg1cHgpO1xuICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGwgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTQ2cHgpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246c3RhdGljICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6MThweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4zcyBlYXNlKTtcblxuICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIGhlaWdodDowO1xuICAgICAgICAgICAgICAgIHdpZHRoOjA7XG4gICAgICAgICAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxOHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjFweCAwIDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjAgMTVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTJweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY2xlYXI6Ym90aDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjNzIGN1YmljLWJlemllciguNjMsLjI5LC4xNywxLjI0NSkpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2dyZXk7XG5cbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC05MGRlZykpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6JGRhcmtfZ3JleTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltKG9wYWNpdHkgLjJzIGVhc2UpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRsaWdodF9ibHVlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6MjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjQ1cHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDoxMHB4O1xuICAgICAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxMnB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTVweDtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6bm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMTVweCAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAuMnMgZWFzZSk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2dyZXk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VycmVudCB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnlDb2xvdXI7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5Q29sb3VyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9wZW4tc3ViLW5hdiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRib3JkZXJXaWR0aCBzb2xpZCAjZWVlZWVlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQmxhY2sgVGllJztcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwMWInO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyV2lkdGggc29saWQgI2VlZWVlZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5vcGVuLXN1Yi1uYXY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZjAyMSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgd2lkdGg6MzBweDtcbiAgICAgICAgYmFja2dyb3VuZDokbGlnaHRfYmx1ZTtcbiAgICAgICAgei1pbmRleDoxO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgY29sb3I6JGRhcmtfZ3JleTtcbiAgICAgICAgdmlzaWJpbGl0eTpoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgQGluY2x1ZGUgYW5pbShvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQpO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24oJ0JsYWNrIFRpZScsICdcXGYwOTMnLCA2MDAsIDE2cHgsIDApO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTlweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1sZWZ0IHtcbiAgICAgICAgICAgIGxlZnQ6MTIwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwOTInO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtc2hvdyB7XG4gICAgICAgICAgICAmLS1sZWZ0IC5zdWItbmF2X19hcnJvdy0tbGVmdCwgJi0tcmlnaHQgLnN1Yi1uYXZfX2Fycm93LS1yaWdodCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1sZWZ0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgLnN1Yi1uYXZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA3MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tcmlnaHQgLnN1Yi1uYXZfX2Fycm93LS1yaWdodCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5zcGlubmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogNzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBAaW5jbHVkZSBhbmltKGFsbCAwLjFzIGVhc2UpO1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNrLWJvdW5jZWRlbGF5IDFzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG4gICAgICAgIGFuaW1hdGlvbjogc2stYm91bmNlZGVsYXkgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgICB9XG4gICAgLmJvdW5jZTEge1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuMzJzO1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjMycztcbiAgICB9XG4gICAgLmJvdW5jZTIge1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuMTZzO1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjE2cztcbiAgICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc2stYm91bmNlZGVsYXkge1xuICAgIDAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgfVxuICAgIDQwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjApO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgc2stYm91bmNlZGVsYXkge1xuICAgIDAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgfVxuICAgIDQwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjApO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMCk7XG4gICAgfVxufSIsIi8qIFRhYmxlcyAqL1xuXG5ib2R5IHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMTVweCAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbjogNzY4cHgpIHtcbiAgICAgICAgbWFyZ2luOiAkbWFpbldpZGdldFBhZGRpbmcgMCAwO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG59XG50YWJsZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcbn1cbnRyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxudHIgKyB0ciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJGJvcmRlckNvbG91cjtcbn1cbnRyLFxudHIgKyB0ciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOiA3NjhweCkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxufVxuQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOjc2OHB4KSB7XG4gICAgdGQsIHRoIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgIH1cbn1cbnRyOmZpcnN0LWNoaWxkIHt9IHRyOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cbnRoIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbjogNzY4cHgpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnlDb2xvdXI7XG4gICAgICAgIGNvbG9yOiAkdGV4dE9uUHJpbWFyeUNvbG91cjtcbiAgICB9XG59XG50ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOiA3NjhweCkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwICgtJGJvcmRlcldpZHRoKSAwICRib3JkZXJDb2xvdXIsIGluc2V0ICRib3JkZXJXaWR0aCAwIDAgJGJvcmRlckNvbG91cjtcbiAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3VyO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLSRib3JkZXJXaWR0aCkgMCAkYm9yZGVyQ29sb3VyLCBpbnNldCAkYm9yZGVyV2lkdGggMCAwICRib3JkZXJDb2xvdXIsIGluc2V0ICgtJGJvcmRlcldpZHRoKSAwIDAgJGJvcmRlckNvbG91cjtcbiAgICAgICAgfVxuICAgIH1cbn1cbnRkICsgdGQge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG59XG50ZCA+IHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59IiwiLy8gKiArIGgyIGZvcm1hdCB0byBvbmx5IGFwcGx5IG1hcmdpbi10b3AgdG8gaGVhZGluZ3MgdGhhdCBhcmVuJ3QgYSBmaXJzdC1jaGlsZFxuKiB7XG4gICAgKyB1bCxcbiAgICArIG9sLFxuICAgICsgZGwsXG4gICAgKyBwLFxuICAgICsgYmxvY2txdW90ZSxcbiAgICArIHRhYmxlIHtcbiAgICAgICAgbWFyZ2luOjQwcHggMCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgbWFyZ2luOjIwcHggMCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgKyBoMSxcbiAgICArIGgyLFxuICAgICsgaDMsXG4gICAgKyBoNCxcbiAgICArIGg1LFxuICAgICsgaDYge1xuICAgICAgICBtYXJnaW46NTVweCAwIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBtYXJnaW46MzBweCAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OjEuMTtcbiAgICBmb250LXdlaWdodDozMDA7XG5cbiAgICAmICsgdWwsXG4gICAgJiArIG9sLFxuICAgICYgKyBkbCxcbiAgICAmICsgcCxcbiAgICAmICsgYmxvY2txdW90ZSxcbiAgICAmICsgdGFibGUsXG4gICAgJiArIGgxLFxuICAgICYgKyBoMixcbiAgICAmICsgaDMsXG4gICAgJiArIGg0LFxuICAgICYgKyBoNSxcbiAgICAmICsgaDYge1xuICAgICAgICAvL21hcmdpbjo3MHB4IDAgMDtcblxuICAgICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAvLyAgICBtYXJnaW46MzVweCAwIDA7XG4gICAgICAgIC8vfVxuICAgIH1cbn1cbmgxIHtcbiAgICBmb250LXNpemU6NDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICBmb250LXNpemU6MzBweDtcbiAgICB9XG59XG5oMiB7XG4gICAgZm9udC1zaXplOjMwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgZm9udC1zaXplOjI2cHg7XG4gICAgfVxufVxuaDMge1xuICAgIGZvbnQtc2l6ZToyNnB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgIH1cbn1cbmg0IHtcbiAgICBmb250LXNpemU6MjJweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgfVxufVxuaDUsXG5oNiB7XG4gICAgZm9udC1zaXplOjE5cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgfVxufVxuXG5zdXAsXG5zdWIge1xuICAgZm9udC1zaXplOjY1JTsgXG59XG5cbi5wYWdlLXRpdGxlLFxuLnBhZ2Utc3VidGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6JGd1dHRlcldpZHRoO1xuICAgIHBhZGRpbmctcmlnaHQ6JGd1dHRlcldpZHRoO1xufVxuXG4ucGFnZS10aXRsZSB7XG4gICAgcGFkZGluZzowICgkZ3V0dGVyV2lkdGggKyA3MHB4KTtcbiAgICBtYXgtd2lkdGg6MTAwMHB4ICsgKDIgKiAkZ3V0dGVyV2lkdGgpO1xuICAgIG1hcmdpbjo2MHB4IGF1dG8gMDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuICAgICAgICBwYWRkaW5nOjAgNTBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgcGFkZGluZzowICRndXR0ZXJXaWR0aDtcbiAgICAgICAgbWFyZ2luOjMwcHggYXV0byAwO1xuICAgIH0gXG5cbiAgICAuc3ViLW5hdl9fd3JhcCArIC5tYWluLWNvbnRlbnQgPiAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDokd2lkZ2V0TWFyZ2luICFpbXBvcnRhbnQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDokd2lkZ2V0TW9iaWxlTWFyZ2luICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYWdlLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6MjVweDtcbiAgICBwYWRkaW5nOjAgKCRndXR0ZXJXaWR0aCArIDcwcHgpO1xuICAgIG1heC13aWR0aDoxMDAwcHggKyAoMiAqICRndXR0ZXJXaWR0aCk7XG4gICAgbWFyZ2luOjAgYXV0byAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG4gICAgICAgIHBhZGRpbmc6MCA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICBwYWRkaW5nOjAgJGd1dHRlcldpZHRoO1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICB9XG5cbiAgICAucGFnZS10aXRsZSArICYge1xuICAgICAgICBtYXJnaW46MTBweCBhdXRvIDAgIWltcG9ydGFudDtcbiAgICB9XG59IiwiLm5vdGlmaWNhdGlvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBjb2xvcjogJGRhcmtfYmx1ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTEwMSUpO1xuICAgIEBpbmNsdWRlIGFuaW0odHJhbnNmb3JtIC4ycyBlYXNlKTtcbiAgICBAaW5jbHVkZSBhbmltKG9wYWNpdHkgLjJzIGVhc2UpO1xuICAgIEBpbmNsdWRlIGFuaW0oYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZSk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICB9XG5cbiAgICAmLCAqIHtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBvcGFjaXR5IDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBvcGFjaXR5IDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ0dvdCBpdCc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAuMnMgZWFzZS1pbi1vdXQpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgyMDAlKSB0cmFuc2xhdGVYKC01MCUpKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgY29sb3I6ICRkYXJrX2JsdWU7XG4gICAgICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4ycyBlYXNlKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2hvdyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAgICAgICAmOmhvdmVyICB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTEwMCUpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDUwJSkgdHJhbnNsYXRlWCgtNTAlKSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtcG9wdXAge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjJzIGVhc2UpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXG4gICAgICAgIH1cblxuXG4gICAgICAgIC5maXhmaXhlZCAmIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaGlkZS1wb3B1cCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuN3MpO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFya19ibHVlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmtfYmx1ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkZGFya19ibHVlLDQlKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMDAlKSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAuMnMgY3ViaWMtYmV6aWVyKDAuNywwLDAuMywxKSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuNXMpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDgwcHggMCAzMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjVweCA2MHB4IDAgMjVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDMwcHggMzBweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wb3B1cC1pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5lcnJvci10b29sdGlwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTI1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDRweCAwIDRweCA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTs7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4ycyBlYXNlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb24oJ0JsYWNrIFRpZScsICdcXGYwNzYnLCA4MDAsIDI2cHgsIDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4ycyBlYXNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtfYmx1ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGJyaWdodF9ibHVlLDQlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAuMnMgZWFzZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuMnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29uKCdCbGFjayBUaWUnLCAnXFxmMDEyJywgNjAwLCAyNnB4LCA1MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjRzIGN1YmljLWJlemllcigwLjE1NSwgMS4xMDUsIDAuMjk1LCAxLjEyKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWRlbGF5KDAuNXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNSwwLjUpIHRyYW5zbGF0ZSgtNTAlLC01MCUpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oNTAlIDUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrX2JsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0LCAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lciwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubmV3c2xldHRlci1uYW1lLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG5cblxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5oaWRlLXBvcHVwICYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDEwMCUpICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZS1wb3B1cCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGVkZWRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zaG93LCAmLS1oaWRlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuXG4gICAgICAgICAgICAubm90aWZpY2F0aW9uLXBvcHVwX19pY29uIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltSmVsbHk7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1KZWxseTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi0tc2hvdyB7XG5cbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKDApKTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzNjJweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLS1oaWRlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tZGVsYXkoMHMgIWltcG9ydGFudCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5oaWRlLXBvcHVwIHtcbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZm9vdGVyLWhpZGRlbiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7IFxuICAgICAgICB9XG5cbiAgICAgICAgJi5zaWduZWQtdXAge1xuICAgICAgICAgICAgLnBvcHVwLWlucHV0IHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLDEpIHRyYW5zbGF0ZSgtNTAlLC01MCUpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi5lcnJvci10b29sdGlwIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDozMHB4O1xuICAgIGhlaWdodDozMHB4O1xuICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgIGJhY2tncm91bmQ6JGN1c3RvbV9yZWQ7XG4gICAgbGVmdDotNDBweDtcbiAgICB0b3A6MTBweDtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgb3BhY2l0eTowO1xuICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4ycyBlYXNlKTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMCwgMCkpO1xuICAgIHotaW5kZXg6OTk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgbGVmdDotMzBweDtcbiAgICAgICAgd2lkdGg6MjBweDtcbiAgICAgICAgaGVpZ2h0OjIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTo5cHg7XG4gICAgICAgIHRvcDoxNXB4O1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgIH1cblxuICAgICYuc2hvdyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLCAxKSk7XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAtLXJhZGlvY2hlY2sgJiB7XG4gICAgICAgIHRvcDpjYWxjKDUwJSArIDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDAsIDApKTtcblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgwLCAtNTAlKSBzY2FsZSgxLCAxKSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIHRvcDpjYWxjKDUwJSArIDMxcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICByaWdodDotNnB4O1xuICAgICAgICB0b3A6MTBweDtcbiAgICAgICAgd2lkdGg6MDtcbiAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgIGJvcmRlci1zdHlsZTpzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOjVweCAwIDVweCA2cHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY3VzdG9tX3JlZDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY3VzdG9tX3JlZDtcbiAgICAgICAgICAgIHRvcDo1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53YXJuaW5nIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgY29sb3I6JGN1c3RvbV9yZWQ7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6MTtcblxuICAgICYuc2hvdyB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIGJvdHRvbTo1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTo5cHg7XG5cbiAgICAgICAgLmZvcm0tZ3JvdXAtLXJhZGlvY2hlY2sgJiB7XG4gICAgICAgICAgICBib3R0b206MjZweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubW9kYWwge1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIGxlZnQ6MDtcbiAgICB0b3A6MDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTowO1xuICAgIGJhY2tncm91bmQ6cmdiYSgkYmxhY2ssIDAuNjcpO1xuICAgIHotaW5kZXg6LTE7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgb3BhY2l0eTowO1xuICAgIEBpbmNsdWRlIGFuaW0oYWxsIC4yNXMgZWFzZS1pbi1vdXQpO1xuICAgIG92ZXJmbG93LXg6aGlkZGVuO1xuICAgIG92ZXJmbG93LXk6YXV0bztcblxuICAgICYucmFpc2UtbW9kYWwge1xuICAgICAgICB6LWluZGV4OjEwMDAwMDAwMDA7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuXG4gICAgJi5yYWlzZS1tb2RhbC1oaWdoZXIge1xuICAgICAgICB6LWluZGV4OjEwMDAwMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5zaG93LW1vZGFsIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgIH1cblxuICAgIC5jbG9zZS1tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHRvcDo0NHB4O1xuICAgICAgICByaWdodDo0NHB4O1xuICAgICAgICBoZWlnaHQ6NTJweDtcbiAgICAgICAgd2lkdGg6NTJweDtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjI2cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MjZweDtcbiAgICAgICAgYmFja2dyb3VuZDokd2hpdGU7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBib3gtc2hhZG93OjBweCAycHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5NTBweCkge1xuICAgICAgICAgICAgdG9wOjM1cHg7XG4gICAgICAgICAgICByaWdodDozNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OjMwcHg7XG4gICAgICAgICAgICB3aWR0aDozMHB4O1xuICAgICAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjE1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjE1cHg7XG4gICAgICAgIH0gXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgIHRvcDoxMHB4O1xuICAgICAgICAgICAgcmlnaHQ6MTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6NTJweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5NTBweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiYm9keSAuZmFuY3lib3gtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyOSwgMjksIDI5LCAwLjgpO1xufVxuLmZhbmN5Ym94LXdyYXAge1xuICAgIC5mYW5jeWJveC1jbG9zZSB7XG4gICAgICAgIHotaW5kZXg6MTIwMDtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDotMzBweCAhaW1wb3J0YW50O1xuICAgICAgICByaWdodDotM3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOjI0cHg7XG4gICAgICAgIGhlaWdodDoyNHB4O1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgdGV4dC1pbmRlbnQ6LTk5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDpub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6J1xcZjAwZCc7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDowcHg7XG4gICAgICAgICAgICBsZWZ0OjBweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBmb250QXdlc29tZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMXB4O1xuICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OjA7XG4gICAgICAgICAgICBwYWRkaW5nOjFweCAwIDJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgICAgICB3aWR0aDoyNHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZhbmN5Ym94LW5hdiBzcGFuIHtcbiAgICAgICAgei1pbmRleDogMTAwMztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmFuY3lib3gtcHJldiB7XG4gICAgICAgIHotaW5kZXg6IDEwMTA7XG4gICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgc3BhbjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZjEwNCc7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZhbmN5Ym94LW5leHQge1xuICAgICAgICB6LWluZGV4OiAxMDEwO1xuICAgICAgICByaWdodDogNXB4O1xuICAgICAgICBzcGFuOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMTA1JztcbiAgICAgICAgfVxuICAgIH1cbn0iLCJib2R5LndiLWhvbWVwYWdlIHtcblx0I3dyYXAge1xuXHRcdGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2hvbWUtYmcuanBnXCIpIG5vLXJlcGVhdCAkbGlnaHRfYmx1ZTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOnRvcCBjZW50ZXI7XG5cdH1cblxuXHQubWFpbi1ib2R5IHtcblx0XHRwYWRkaW5nOjYwcHggMCAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdHBhZGRpbmc6NTBweCAwIDA7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG5cdFx0LnN0YW5kYXJkLXdpZGdldCB7XG5cdFx0XHRwYWRkaW5nOjAgMCAxMjBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0cGFkZGluZzowIDAgNTBweDtcblx0XHRcdH1cblxuXHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdG1hcmdpbi10b3A6NjBweDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmICsgLmxhdGVzdC1wcm9qZWN0LXdpZGdldCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6MCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fSBcblx0XG5cdC5pbWFnZS1zbGlkZXItd2lkZ2V0IHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHR6LWluZGV4OjA7XG5cdFx0Y2xpcC1wYXRoOiB1cmwoI2NsaXAyKTtcbiAgICAgICAgLXdlYmtpdC1jbGlwLXBhdGg6IHVybCgjY2xpcDIpO1xuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG5cblx0XHQmOmJlZm9yZSB7XG5cdCAgICAgICAgZGlzcGxheTpub25lO1xuXHQgICAgICAgIGNvbnRlbnQ6XCIgXCI7XG5cdCAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG5cdCAgICAgICAgei1pbmRleDozO1xuXHQgICAgICAgIHdpZHRoOjEwMCU7XG5cdCAgICAgICAgaGVpZ2h0OjMzcHg7XG5cdCAgICAgICAgbGVmdDowO1xuXHQgICAgICAgIHJpZ2h0OjA7XG5cdCAgICAgICAgdG9wOjA7XG5cdCAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcblx0ICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuXG5cdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG5cdCAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuXHQgICAgICAgIH1cblx0ICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0ICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG5cdCAgICAgICAgfVxuXHQgICAgfVxuXG5cdFx0LndpZGdldC1zbGlkZXIge1xuXHRcdCAgICAuc2xpZGUge1xuXHRcdCAgICAgICAgaGVpZ2h0OjY1M3B4O1xuXG5cdFx0ICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHQgICAgICAgICAgICBoZWlnaHQ6MzUwcHg7XG5cdFx0ICAgICAgICB9XG5cblx0XHQgICAgICAgIC5zbGlkZS1jYXB0aW9uIHtcblx0XHQgICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHQgICAgICAgICAgICB6LWluZGV4OjM7XG5cblx0XHRcdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHQgICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHQgICAgICAgIH1cblxuXHRcdCAgICAgICAgICAgIC5zbGlkZS1jYXB0aW9uLWlubmVyIHtcblx0XHQgICAgICAgICAgICBcdHBhZGRpbmctYm90dG9tOjE3cHg7XG5cdFx0ICAgICAgICAgICAgfVxuXG5cdFx0ICAgICAgICAgICAgaDQge1xuXHRcdCAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XG5cdFx0ICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcblx0XHQgICAgICAgICAgICAgICAgZm9udC1zaXplOjQwcHg7XG5cdFx0ICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMTtcblxuXHRcdCAgICAgICAgICAgICAgICAmICsgaDUge1xuXHRcdCAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMnB4O1xuXHRcdCAgICAgICAgICAgICAgICB9XG5cblx0XHQgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0ICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MzBweDtcblx0XHQgICAgICAgICAgICAgICAgfVxuXHRcdCAgICAgICAgICAgIH1cblxuXHRcdCAgICAgICAgICAgIGg1IHtcblx0XHQgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuXHRcdCAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG5cdFx0ICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyNXB4O1xuXHRcdCAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxLjI7XG5cdFx0ICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cblx0XHQgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0ICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcblx0XHQgICAgICAgICAgICAgICAgfVxuXHRcdCAgICAgICAgICAgIH1cblxuXHRcdCAgICAgICAgICAgIC5idXR0b24ge1xuXHRcdCAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcblx0XHQgICAgICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcblx0XHQgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo0NHB4O1xuXHRcdCAgICAgICAgICAgICAgICBwYWRkaW5nOjE0cHggNDhweDtcblxuXHRcdCAgICAgICAgICAgICAgICAmOmhvdmVyLFxuXHRcdCAgICAgICAgICAgICAgICAmOmZvY3VzIHtcblx0XHQgICAgICAgICAgICAgICAgXHRjb2xvcjokd2hpdGU7XG5cdFx0ICAgICAgICAgICAgICAgIFx0YmFja2dyb3VuZDokZGFya19ibHVlO1xuXHRcdCAgICAgICAgICAgICAgICB9XG5cdFx0ICAgICAgICAgICAgfVxuXHRcdCAgICAgICAgfVxuXG5cdFx0ICAgICAgICAuaW1nIHtcblx0XHQgICAgICAgICAgICAtd2Via2l0LWZpbHRlcjpncmF5c2NhbGUoMTAwJSk7XG5cdFx0ICAgICAgICAgICAgLW1vei1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuXHRcdCAgICAgICAgICAgIC1tcy1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuXHRcdCAgICAgICAgICAgIC1vLWZpbHRlcjpncmF5c2NhbGUoMTAwJSk7XG5cdFx0ICAgICAgICAgICAgZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtcblx0XHQgICAgICAgICAgICBmaWx0ZXI6Z3JheTtcblx0XHQgICAgICAgICAgICB6LWluZGV4OjA7XG5cblx0XHQgICAgICAgICAgICAmLWZpbHRlciB7XG5cdFx0ICAgICAgICAgICAgXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHotaW5kZXg6MTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6JGRhcmtfYmx1ZTtcblx0XHRcdFx0XHRcdG9wYWNpdHk6MC43NTtcblx0XHRcdFx0XHRcdHRvcDowO1xuXHRcdFx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0XHRcdGJvdHRvbTowO1xuXHRcdFx0XHRcdFx0bGVmdDowO1xuXHRcdCAgICAgICAgICAgIH1cblx0XHQgICAgICAgIH1cblx0XHQgICAgfVxuXG5cdFx0XHQmOmJlZm9yZSxcblx0XHQgICAgJjphZnRlciB7XG5cdFx0XHRcdGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5sYXRlc3QtcHJvamVjdC13aWRnZXQge1xuXHRcdGNsaXAtcGF0aDogdXJsKCNjbGlwMSk7XG4gICAgICAgIC13ZWJraXQtY2xpcC1wYXRoOiB1cmwoI2NsaXAxKTsgXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHR9XG5cdH1cblxuXHRmb290ZXI6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxufVxuXG4udW5kZXItc2xpZGVyIHtcblx0ZGlzcGxheTpibG9jaztcblx0Y29sb3I6JGRhcmtfYmx1ZTtcblx0Zm9udC1zaXplOjMwcHg7XG5cdGxpbmUtaGVpZ2h0OjE7XG5cdGhlaWdodDozMHB4O1xuXHR3aWR0aDozMHB4O1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0ei1pbmRleDoyO1xuXHRsZWZ0OjUwJTtcblx0QGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsLTE1cHgpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsMCk7XG5cdH1cblxuXHRpIHtcblx0XHRsaW5lLWhlaWdodDoxO1xuXHR9XG59XG5cbi5ibG9nLXdpZGdldCB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cdH1cblxuXHQuY29udGFpbmVyID4gaDMge1xuXHRcdGZvbnQtd2VpZ2h0OjMwMDtcblx0XHRmb250LXNpemU6NDBweDtcblx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDowO1xuXHRcdHBhZGRpbmctcmlnaHQ6MTMwcHg7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OjBweDtcblx0XHR9XG5cblx0XHRzcGFuIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbiB7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6MTtcblx0XHRcdHJpZ2h0Oi0zcHg7XG5cdFx0XHR0b3A6MTlweDtcblx0XHRcdGZvbnQtd2VpZ2h0OjMwMDtcblx0XHRcdGNvbG9yOiRkYXJrX2JsdWU7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHRyaWdodDphdXRvO1xuXHRcdFx0XHR0b3A6YXV0bztcblx0XHRcdFx0bWFyZ2luLXRvcDoyMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5mbGV4LWxpc3Qge1xuXHRcdEBpbmNsdWRlIGZsZXhib3g7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcblx0XHRAaW5jbHVkZSBzcGFjZUJldHdlZW4oKTtcblx0XHRtYXJnaW4tdG9wOjkzcHg7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0bWFyZ2luLXRvcDowcHg7XG5cdFx0fVxuXG5cdFx0aHRtbC5pZTEwICYge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHR9XG5cblx0XHRhIHtcbiAgICAgICAgICAgIHdpZHRoOmNhbGMoNTAlIC0gMzRweCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OjBweCAwcHggNDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDowO1xuXHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOjM0cHg7XG5cdFx0XHR9XG5cblx0XHRcdGh0bWwuaWUxMCAmIHtcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOnRvcDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtaW46NzY4cHgpIHtcblx0ICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG5cdCAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NjNweDtcblx0ICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjM0cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRcdGhlaWdodDo1ODdweDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwic20teHNcIikge1xuXHRcdFx0XHRcdGhlaWdodDo0ODBweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0aGVpZ2h0OjQwMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50ZXh0IHtcblx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdHotaW5kZXg6Mjtcblx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdGxlZnQ6MDtcblx0XHRcdFx0cmlnaHQ6MDtcblx0XHRcdFx0cGFkZGluZzowIDcwcHggNjVweDtcblx0XHRcdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHRcdFx0cGFkZGluZzowIDI1cHggMzBweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYgPiBpbWcge1xuXHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdHotaW5kZXg6Mztcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OmF1dG87XG5cdFx0XHRcdFx0dG9wOi0xMnB4O1xuXHRcdFx0XHRcdGxlZnQ6MDtcblx0XHRcdFx0XHRyaWdodDowO1xuXHRcdFx0XHRcdGhlaWdodDoxMnB4O1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLWlubmVyIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDoxMDRweDtcdFxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOjc1cHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctdG9wOjE4cHg7XG5cdFx0XHRcdFx0fVx0XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuaGVpZ2h0LXJlc3RyaWN0b3Ige1xuXHRcdFx0XHRcdEBpbmNsdWRlIGFuaW0obWF4LWhlaWdodCAyNTBtcyBlYXNlLWluLW91dCk7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDowcHg7XG5cdFx0XHRcdFx0b3ZlcmZsb3c6aGlkZGVuO1x0XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0bWF4LWhlaWdodDpub25lO1xuXHRcdFx0XHRcdFx0b3ZlcmZsb3c6YXV0bztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXHRcdFx0XHRcdGNvbG9yOiRkYXJrX2JsdWU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjI1cHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS40O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XHRcblxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6XCJcXEYwOTRcIjtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OlwiQmxhY2sgVGllXCI7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MzBweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjM3cHg7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHotaW5kZXg6MDtcblx0XHRcdFx0XHRcdGxlZnQ6NTAlO1xuXHRcdFx0XHRcdFx0dG9wOjE4cHg7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgMCk7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDpub3JtYWw7XHRcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdG1hcmdpbjozMHB4IDAgMDtcblx0XHRcdFx0XHRjb2xvcjokb2ZmX2JsYWNrO1x0XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6OTkxcHgpIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYnV0dG9uIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjM1cHg7XG5cdFx0XHRcdFx0Y29sb3I6JHdoaXRlICFpbXBvcnRhbnQ7XHRcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjE0cHggMzJweDtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MjBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpudGgtY2hpbGQobiArIDMpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDo2OHB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDozNHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0LnRleHQge1xuXHRcdFx0XHRcdC5oZWlnaHQtcmVzdHJpY3RvciB7XG5cdFx0XHRcdFx0XHRtYXgtaGVpZ2h0OjI1MHB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGgzOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OlwiXFxGMDk1XCI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0XHRjb2xvcjokb2ZmX2JsYWNrO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5idXR0b24ge1xuXHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qIElFIE9WRVJSSURFUyAqLyBcbl86LW1zLWxhbmcoeCksIGJvZHkud2ItaG9tZXBhZ2UgI3dyYXAge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodF9ibHVlICFpbXBvcnRhbnQ7XG59XG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5ob21lLXNsaWRlcjphZnRlcixcbl86LW1zLWxhbmcoeCksIGJvZHkud2ItaG9tZXBhZ2UgLmxhdGVzdC1wcm9qZWN0LXdpZGdldDpiZWZvcmUsXG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5sYXRlc3QtcHJvamVjdC13aWRnZXQ6YWZ0ZXIsXG5fOi1tcy1sYW5nKHgpLCBib2R5LndiLWhvbWVwYWdlIC5pbWFnZS1zbGlkZXItd2lkZ2V0OmJlZm9yZSxcbl86LW1zLWxhbmcoeCksIGJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keTphZnRlciAge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4iLCIuc2l0ZW1hcC1saXN0LFxuLnNpdGVtYXAtbGlzdCB1bCB7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46MDtcbiAgICBjbGVhcjpib3RoO1xufVxuLnNpdGVtYXAtbGlzdCB7XG4gICAgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6JG1haW5XaWRnZXRQYWRkaW5nIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206JGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvdXI7XG4gICAgICAgIGZvbnQtc2l6ZToyNHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgcGFkZGluZzokbWFpbldpZGdldFBhZGRpbmdNb2JpbGUgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICB9XG4gICAgICAgICYuY2hpbGQtcGFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDoyZW07XG4gICAgICAgICAgICBwYWRkaW5nOi41ZW07XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE0cHg7XG4gICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3VyO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLSBcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDo2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjo1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsImJvZHkubWFpbnRlbmFuY2Uge1xuICAgIHNlY3Rpb24uY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGFydGljbGUge1xuICAgICAgICBtYXJnaW46IDI1cHggMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOiA3NjhweCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGkuZmEge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kQ29sb3VyO1xuICAgICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgfVxuICAgIC50ZXh0LWNvbnRhaW5lciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeUNvbG91cjtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmRDb2xvdXI7XG4gICAgICAgIHBhZGRpbmc6ICRtYWluV2lkZ2V0UGFkZGluZ01vYmlsZTtcbiAgICAgICAgbWFyZ2luLXRvcDogJG1haW5XaWRnZXRQYWRkaW5nTW9iaWxlO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRtYWluV2lkZ2V0UGFkZGluZ01vYmlsZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJG1haW5XaWRnZXRQYWRkaW5nTW9iaWxlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW46IDc2OHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkbWFpbldpZGdldFBhZGRpbmc7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkbWFpbldpZGdldFBhZGRpbmc7XG4gICAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRtYWluV2lkZ2V0UGFkZGluZztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRtYWluV2lkZ2V0UGFkZGluZztcbiAgICAgICAgfVxuICAgIH1cbn0iLCJib2R5LndiLXByb2R1Y3RzIHtcblx0Lm1haW4tYm9keSB7XG5cdFx0cGFkZGluZy10b3A6OTVweDtcblxuXHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDo1MHB4O1xuXHQgICAgfVxuXHR9XG59XG5cbi5wcm9kdWN0cy10b3Atd2lkZ2V0IHtcblx0LmNvbnRhaW5lciB7XG5cdFx0bWF4LXdpZHRoOjkxMHB4O1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG4gICAgICAgIEBpbmNsdWRlIHNwYWNlQmV0d2Vlbjtcblx0fVxuXG5cdC5tYWluLWRlc2NyaXB0aW9uIHtcblx0XHR3aWR0aDpjYWxjKDYzJSAtIDFweCk7XG5cdFx0cGFkZGluZy1yaWdodDo1MHB4O1xuXHRcdGJvcmRlci1yaWdodDoxcHggc29saWQgI2JlY2FkMjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo4MzVweCkge1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OjA7XG5cdFx0XHRib3JkZXItcmlnaHQ6MDtcblx0XHRcdHBhZGRpbmctYm90dG9tOjUwcHg7XG5cdFx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAjYmVjYWQyO1xuICAgICAgICB9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0cGFkZGluZy1ib3R0b206MjVweDtcbiAgICAgICAgfVxuXG5cdFx0aDEge1xuXHRcdFx0Zm9udC13ZWlnaHQ6MzAwO1xuXHRcdFx0Zm9udC1zaXplOjQwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0bWFyZ2luOjA7XG5cdCAgICBcblx0ICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHQgICAgXHR9XG5cblx0XHRcdCYgKyAqIHtcblx0XHRcdFx0bWFyZ2luOjM4cHggMCAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdCAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5xdWlja2xpbmtzIHtcblx0XHR3aWR0aDozNyU7XG5cdFx0cGFkZGluZy1sZWZ0OjUwcHg7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6ODM1cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuXHRcdFx0cGFkZGluZy1sZWZ0OjA7XG5cdFx0XHRwYWRkaW5nLXRvcDo1MHB4O1xuICAgICAgICB9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0cGFkZGluZy10b3A6MjVweDtcbiAgICAgICAgfVxuXG5cdFx0aDIge1xuXHRcdFx0Zm9udC13ZWlnaHQ6MzAwO1xuXHRcdFx0Zm9udC1zaXplOjQwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0bWFyZ2luOjA7XG5cdCAgICBcblx0ICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHQgICAgXHR9XG5cblx0XHRcdCYgKyAqIHtcblx0XHRcdFx0bWFyZ2luOjMxcHggMCAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdCAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHR1bCB7XG5cdFx0XHRsaXN0LXN0eWxlOm5vbmU7XG5cdFx0XHRwYWRkaW5nOjA7XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0XG5cdFx0XHRcdCYgKyBsaSB7XG5cdFx0XHRcdFx0Ym9yZGVyLXRvcDoxcHggc29saWQgI2JlY2FkMjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtc2l6ZToxNHB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDoxOHB4O1xuXHRcdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHR6LWluZGV4OjA7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdFx0cGFkZGluZzoxM3B4IDQ1cHggMTVweCAwO1xuXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6XCJcXEYwOTdcIjtcblx0XHRcdFx0XHRmb250LWZhbWlseTpcIkJsYWNrIFRpZVwiO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxMnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjE7XG5cdFx0XHRcdFx0Y29sb3I6JGRhcmtfYmx1ZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDpub3JtYWw7XG5cdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0ei1pbmRleDoxO1xuXHRcdFx0XHRcdHRvcDoxN3B4O1xuXHRcdFx0XHRcdHJpZ2h0OjFweDtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XHRcdFx0XG59XG5cbi5wcm9kdWN0LXdpZGdldCB7XG5cdC5jb250YWluZXIge1xuXHRcdG1heC13aWR0aDo5MTBweDtcblx0fVxuXHQuc2luZ2xlLXByb2R1Y3QgJiB7XG5cdFx0LmNvbnRhaW5lciB7XG5cdFx0XHRtYXgtd2lkdGg6IDEwNTBweDtcblx0XHRcdCY6YmVmb3JlLCAmOmFmdGVye1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5saXN0aW5nLWZpbHRlci13aWRnZXQgKyAmLFxuXHQmICsgLnByb2R1Y3Qtd2lkZ2V0IHtcblx0XHRtYXJnaW4tdG9wOjAgIWltcG9ydGFudDtcblx0XHRwYWRkaW5nLXRvcDo5MHB4O1xuXHQgICAgXG5cdCAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHRcdHBhZGRpbmctdG9wOjQwcHg7XG5cdCAgICB9XG5cdH1cblxuXHQmLS10aXRsZSB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDoxO1xuXHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0Zm9udC1zaXplOjQwcHg7XG5cdFx0bGluZS1oZWlnaHQ6MS4xO1xuXHQgICAgXG5cdCAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHRcdGZvbnQtc2l6ZToyNXB4O1xuXHQgICAgfVxuXG5cdFx0c3BhbiB7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6MTtcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5wcm9kdWN0LXBvcHVwIHtcblx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0ei1pbmRleDoyO1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0dG9wOjk1cHg7XG5cdFx0XHRsZWZ0Oi0yMHB4O1xuXHRcdFx0cmlnaHQ6LTIwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiRkYXJrX2JsdWU7XG5cdFx0XHRwYWRkaW5nOjYwcHggNzlweCA1NnB4O1xuXHRcdFx0Ym94LXNoYWRvdzowcHggNXB4IDM2cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7IFxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6OTUwcHgpIHtcblx0XHRcdFx0bGVmdDowcHg7XG5cdFx0XHRcdHJpZ2h0OjBweDtcblx0XHRcdFx0cGFkZGluZzozMHB4IDQwcHg7XG4gICAgICAgICAgICB9XG5cdCAgICBcblx0ICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdHRvcDoxMDZweDtcblx0XHRcdFx0cGFkZGluZzoyNXB4O1xuXHQgICAgXHR9XG5cblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdH1cblxuXHRcdFx0Ji0tY2xvc2Uge1xuXHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0ei1pbmRleDoyO1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHR0b3A6LTIzcHg7XG5cdFx0XHRcdHJpZ2h0Oi0yM3B4O1xuXHRcdFx0XHRoZWlnaHQ6NDZweDtcblx0XHRcdFx0d2lkdGg6NDZweDtcblx0XHRcdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOjIzcHg7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6MjNweDtcblx0XHRcdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRib3gtc2hhZG93OjBweCAycHggMTJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5NTBweCkge1xuXHRcdFx0XHRcdHRvcDotMTVweDtcblx0XHRcdFx0XHRyaWdodDotMTVweDtcblx0XHRcdFx0XHRoZWlnaHQ6MzBweDtcblx0XHRcdFx0XHR3aWR0aDozMHB4O1xuXHRcdFx0XHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czoxNXB4O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6MTVweDtcblx0ICAgICAgICAgICAgfSBcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRjdXJzb3I6cG9pbnRlcjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjQ2cHg7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246dG9wO1xuXHRcdFx0XHRcdGNvbG9yOiRkYXJrX2JsdWU7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6OTUwcHgpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxMnB4O1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MzBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji0tYnV0dG9uIHtcblx0XHRcdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHR3aWR0aDoxMDBweDtcblx0XHRcdFx0aGVpZ2h0OjQzcHg7XG5cdFx0XHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czoxMHB4O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOjEwcHg7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHR6LWluZGV4OjA7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdCAgICAgICAgfVxuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjIwcHg7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXG5cdFx0XHRcdFx0c3VwIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxMHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0c3Bhbixcblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRcdFx0dG9wOjUwJTtcblx0XHRcdFx0XHRsZWZ0OjUwJTtcblx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGhlaWdodDozM3B4O1xuXHRcdFx0XHRcdHdpZHRoOmF1dG87XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmICsgLnByb2R1Y3QtcG9wdXAtLWJ1dHRvbiB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6MnB4O1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdG1hcmdpbjo1cHggMCAwIDA7XG5cdFx0XHQgICAgICAgIH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRoNCB7XG5cdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0Zm9udC1zaXplOjQwcHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjEuMTtcblx0XHRcdFx0bWFyZ2luOjE0cHggMCAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRcdFx0bWFyZ2luOjEwcHggMCAwO1xuXHRcdCAgICAgICAgfVxuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRmb250LXNpemU6MThweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6MS43Mjtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0XHRcdFx0bWFyZ2luOjIwcHggMCAwO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XG5cdFx0XHRcdFx0bWFyZ2luOjE1cHggMCAwO1xuXHRcdCAgICAgICAgfVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtLWJ1dHRvbiB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDo0O1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOm1pZGRsZTtcblx0XHRoZWlnaHQ6MzdweDtcblx0XHRib3JkZXI6MnB4IHNvbGlkICRkYXJrX2JsdWU7XG5cdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXHRcdGZvbnQtc2l6ZToxMnB4O1xuXHRcdGxpbmUtaGVpZ2h0OjMzcHg7XG5cdFx0cGFkZGluZzowIDE4cHg7XG5cdFx0bWFyZ2luOjJweCAwIDAgMjJweDtcblx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6MTBweDtcblx0XHRib3JkZXItcmFkaXVzOjEwcHg7XG5cdCAgICBcblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHRcdFx0bWFyZ2luOjEwcHggMCAwIDA7XG5cdCAgICB9XG5cblx0XHQmW2hyZWY9XCIjXCJdLFxuXHRcdCZbaHJlZj1cIlwiXSB7XG5cdFx0XHRjdXJzb3I6cG9pbnRlciAhaW1wb3J0YW50O1xuXHRcdH1cblxuXHRcdCYuYWN0aXZlOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRjb250ZW50OlwiIFwiO1xuXHRcdFx0aGVpZ2h0OjA7XG5cdFx0XHR3aWR0aDowO1xuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OjQ7XG5cdFx0XHR0b3A6NjVweDtcblx0XHRcdGxlZnQ6NTAlO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsIDApO1xuXHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRcdGJvcmRlci13aWR0aDowIDE4LjVweCAxOHB4IDE4LjVweDtcblx0XHRcdGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkZGFya19ibHVlIHRyYW5zcGFyZW50O1xuXHRcdFx0Zm9udC1zaXplOjA7XG5cdFx0XHRsaW5lLWhlaWdodDowO1xuXHQgICAgXG5cdCAgICBcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHRcdFx0XHR0b3A6NDVweDtcblx0ICAgIFx0fVxuXHRcdH1cblx0fVxuXG5cdC5mbGV4LWxpc3Qge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG4gICAgICAgIEBpbmNsdWRlIHNwYWNlQmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLXRvcDo1OHB4O1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDowO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgXHRtYXJnaW4tdG9wOjIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgXHR3aWR0aDpjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICBcdHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBcdHotaW5kZXg6MDtcbiAgICAgICAgXHRiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgXHRib3gtc2hhZG93OjBweCAwcHggMTBweCAwcHggcmdiYSgkYmxhY2ssIDAuMSk7XG4gICAgICAgIFx0bWFyZ2luOjIwcHggMDtcblxuICAgICAgICBcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1NTBweCkge1xuICAgICAgICBcdFx0d2lkdGg6MTAwJTtcbiAgICAgICAgXHR9XG5cblx0XHRcdC5pbWcge1xuICAgICAgICBcdFx0cG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIFx0XHR6LWluZGV4OjA7XG4gICAgICAgIFx0XHR3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgXHRcdG1hcmdpbjoyMHB4IDIwcHggMzFweDtcbiAgICAgICAgXHRcdHBhZGRpbmctdG9wOjU1LjMlO1xuICAgICAgICBcdFx0YmFja2dyb3VuZC1jb2xvcjokbGlnaHRfYmx1ZTtcblx0XHRcdH1cblxuXHRcdFx0LnRleHQge1xuXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgXHRcdHotaW5kZXg6MDtcbiAgICAgICAgXHRcdHdpZHRoOjEwMCU7XG4gICAgICAgIFx0XHRwYWRkaW5nOjAgMjVweCA0MHB4O1xuICAgICAgICBcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgXHRcdFx0cGFkZGluZzowIDIwcHggMzBweDtcblx0XHQgICAgICAgIH1cblxuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0XHRcdFx0XHRmb250LXNpemU6MzBweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjQ7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToyMHB4O1xuXHRcdFx0ICAgICAgICB9XG5cblx0XHRcdFx0XHQmICsgcCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjEwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRjb2xvcjojOTY5Njk2O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToyMHB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjEuMzU7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6NDAwO1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0ICAgICAgICB9XG5cdFx0XHRcdH1cblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cblxuXHQmLS1ub3Jlc3VsdHMge1xuXHRcdC53aWRnZXQtY29udGFpbmVyICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiR3aWRnZXRNYXJnaW4gLSA4NnB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nLXRvcDowICFpbXBvcnRhbnQ7XG5cdFx0ICAgIFxuXHRcdCAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHQgICAgICAgIG1hcmdpbi10b3A6JHdpZGdldE1vYmlsZU1hcmdpbiAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nLXRvcDowICFpbXBvcnRhbnQ7XG5cdFx0ICAgIH1cblx0XHR9XG5cblx0XHQuaW5uZXItY29udGFpbmVyIHtcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0bWF4LXdpZHRoOjU4MnB4O1xuXHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0JiArIGg0IHtcblx0XHRcdFx0bWFyZ2luLXRvcDoyMnB4IDAgMDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0aDQge1xuXHRcdFx0Y29sb3I6JGJyaWdodF9ibHVlO1xuXHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDoxLjMzO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXG5cdFx0XHQmICsgcCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0cCB7XG5cblx0XHR9XG5cdFx0XG5cdFx0LmJ1dHRvbiB7XG5cdFx0XHRwYWRkaW5nOjE0cHggNjBweDtcblx0XHRcdG1hcmdpbi10b3A6MzBweDtcblx0XHR9XG5cdH1cbn1cblxuLnByb2R1Y3RzLWNvbnRhaW5lciB7XG5cdG1heC13aWR0aDoxMjgwcHg7XG5cdHdpZHRoOjEwMCU7XG5cdGhlaWdodDoxMDAlO1xuXHRwYWRkaW5nOjAgNzBweDtcblx0cG9zaXRpb246YWJzb2x1dGU7XG5cdHotaW5kZXg6MTA7XG5cdHRvcDo1MCU7XG5cdGxlZnQ6NTAlO1xuXHRAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdHRleHQtYWxpZ246bGVmdDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5NTBweCkge1xuXHRcdHBhZGRpbmc6MCA1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0cGFkZGluZzowIDI1cHg7XG4gICAgfVxuXG5cdC5wcm9kdWN0cy1pbm5lci1jb250YWluZXIge1xuXHRcdGJhY2tncm91bmQ6JGxpZ2h0X2JsdWU7XG5cdFx0bWFyZ2luOiA3MHB4IC0zMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5NTBweCkge1xuXHRcdFx0bWFyZ2luOjUwcHggMDtcbiAgICAgICAgfVxuXG5cdCAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0bWFyZ2luOjI1cHggMDtcblx0ICAgIH1cblxuXHRcdC5iYW5uZXIge1xuXHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OjA7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0aGVpZ2h0OjM4NnB4O1xuXG5cdFx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdGhlaWdodDoyNTBweDtcblx0XHQgICAgfVxuXG5cdFx0XHQuYmFubmVyLXRleHQge1x0XG5cdFx0ICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHQgICAgICAgIHotaW5kZXg6NDtcblx0XHRcdFx0dG9wOjQwLjglO1xuXHRcdFx0XHRsZWZ0OjcwcHg7XG5cdFx0XHRcdHJpZ2h0OjcwcHg7XHRcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblxuXHRcdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojk1MHB4KSB7XG5cdFx0XHRcdFx0bGVmdDo1MHB4O1xuXHRcdFx0XHRcdHJpZ2h0OjUwcHg7XHRcblx0XHQgICAgICAgIH1cblxuXHRcdFx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0bGVmdDoyNXB4O1xuXHRcdFx0XHRcdHJpZ2h0OjI1cHg7XHRcblx0XHRcdFx0XHR0b3A6MzIuNSU7XG5cdFx0XHQgICAgfVxuXG5cdFx0XHRcdGgyLFxuXHRcdFx0XHRoMSxcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDoxMDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdGgxIHtcblx0XHRcdFx0XHRmb250LXNpemU6NDVweDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjEzcHggIWltcG9ydGFudDtcblxuXHRcdFx0ICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjVweCAhaW1wb3J0YW50O1xuXHRcdFx0ICAgICAgICB9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRoMiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjIwcHg7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXG5cdFx0XHQgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MTZweDtcblx0XHRcdCAgICAgICAgfVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToyMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MjJweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cblx0XHRcdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4ICFpbXBvcnRhbnQ7XG5cdFx0XHQgICAgICAgIH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuaW1nIHtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdHotaW5kZXg6MDtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0aGVpZ2h0OjM4NnB4O1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXG5cdFx0XHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRoZWlnaHQ6MjUwcHg7XG5cdFx0XHQgICAgfVxuXG5cdFx0XHRcdCY6YmVmb3JlLFxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdCAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdCAgICAgICAgY29udGVudDpcIiBcIjtcblx0XHQgICAgICAgICAgICB3aWR0aDoxMDAlO1xuXHRcdFx0ICAgICAgICBsZWZ0OjA7XG5cdFx0XHQgICAgICAgIHJpZ2h0OjA7XG5cdFx0XHQgICAgICAgIGJvdHRvbTowO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0ICAgICAgICB6LWluZGV4OjE7XG5cdFx0ICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG5cdFx0ICAgICAgICAgICAgdG9wOjA7XG5cdFx0ICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdmVydGljYWwodHJhbnNwYXJlbnQsICRkYXJrX2JsdWUsIDAlLCA2NCUpO1xuXHRcdCAgICAgICAgICAgIG9wYWNpdHk6MC42NTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0ICAgICAgICB6LWluZGV4OjI7XG5cdFx0XHQgICAgICAgIGhlaWdodDoyNnB4O1xuXHRcdFx0ICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuXHRcdFx0ICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuXG5cdFx0XHQgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuXHRcdFx0ICAgICAgICAgICAgaGVpZ2h0OjE3cHg7XG5cdFx0XHQgICAgICAgIH1cblxuXHRcdFx0ICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHRcdCAgICAgICAgICAgIGhlaWdodDo4cHg7XG5cdFx0XHQgICAgICAgIH1cblx0XHRcdCAgICB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvbnRlbnQge1xuXHRcdFx0cGFkZGluZzo3MHB4IDQwcHggNzJweDtcbiAgICAgICAgXHRAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBcdEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICAgICAgXHRAaW5jbHVkZSBzcGFjZUJldHdlZW47XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdHBhZGRpbmc6MjVweCAxNXB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5oYWxmLXdpZHRoIHtcblx0XHRcdHBhZGRpbmc6MCAzMHB4O1xuXHRcdFx0d2lkdGg6NTAlO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6OTkxcHgpIHtcblx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXG5cdFx0XHRcdCYgKyAuaGFsZi13aWR0aCB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDozNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdCYgKyAuaGFsZi13aWR0aCB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDoyNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtLXNpbmd1bGFyIHtcblx0XHRcdFx0JiArIC5oYWxmLXdpZHRoLS1zaW5ndWxhciB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDozNXB4O1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MjVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji0tZG9jdW1lbnRzIHtcblx0XHRcdFx0aDQge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjIycHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JiArIHVsIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MjVweDtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDoyMHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRsaXN0LXN0eWxlOm5vbmU7XG5cdFx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGkge1xuXG5cdFx0XHRcdFx0JiArIGxpIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdHBhZGRpbmc6MTBweCA5MHB4IDEwcHggMTBweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiR3aGl0ZTtcblx0XHRcdFx0XHRib3gtc2hhZG93OjBweCAwcHggMTBweCAwcHggcmdiYSgkYmxhY2ssIDAuMSk7IFxuXHRcdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHRcdHotaW5kZXg6MDtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1NTBweCkge1xuXHRcdFx0XHRcdFx0cGFkZGluZzoxMHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHQuaWNvbi1sZWZ0LWNvbnQge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6NTlweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjU5cHg7XG5cdFx0XHRcdFx0XHR3aWR0aDo1OXB4O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDokbGlnaHRfYmx1ZTtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjE2cHg7XG5cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1NTBweCkge1xuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6MzBweDtcblx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MzBweDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6MzBweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjEwcHg7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdGlbY2xhc3NePVwiaWNvbi1cIl0sXG5cdFx0XHRcdFx0XHRpW2NsYXNzKj1cIiBpY29uLVwiXSB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiRkYXJrX2JsdWU7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToyNnB4O1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDo1OXB4O1xuXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1NTBweCkge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNXB4O1xuXHRcdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjMwcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblxuXHRcdFx0XHRcdC50ZXh0LWNvbnQge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0XHRcdFx0XHR3aWR0aDpjYWxjKDEwMCUgLSA3MHB4IC0gODFweCk7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MjBweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjI2cHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjE2cHggMCAxN3B4O1xuXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NTUwcHgpIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6Y2FsYygxMDAlIC0gNDVweCk7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoyMnB4O1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nOjRweCAwIDRweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0Lmljb24tcmlnaHQtY29udCB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OjFweCBzb2xpZCAjZTVlYWVmO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRcdFx0XHR0b3A6MTBweDtcblx0XHRcdFx0XHRcdHJpZ2h0OjEwcHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTBweDtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjU1MHB4KSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LmJ0ciB7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDo1OXB4O1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDo1OXB4O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDo1OXB4O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6MjRweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji0tZmFjdHMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiR3aGl0ZTtcblx0XHRcdFx0Ym94LXNoYWRvdzowcHggMHB4IDEwcHggMHB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuXHRcdFx0XHRwYWRkaW5nOjM2cHggNDBweCA0MnB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0cGFkZGluZzoxNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aDQge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOm5vbmU7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjIycHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JiArIHVsIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MjVweDtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDoyMHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHVsIHtcblx0XHRcdFx0XHRwYWRkaW5nOjA7XG5cblx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdFx0XHR6LWluZGV4OjA7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MThweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjM0cHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MjhweDtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XG5cdFx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjI2cHg7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDoyNXB4O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmICsgbGkge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjNweDtcblxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6NXB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdHotaW5kZXg6MTtcblx0XHRcdFx0XHRcdFx0Y29udGVudDpcIlxcRjAxMlwiO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTpcIkJsYWNrIFRpZVwiO1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDo5MDA7XG5cdFx0XHRcdFx0XHRcdHRvcDowO1xuXHRcdFx0XHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDozNHB4O1xuXHRcdFx0XHRcdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjEzcHg7XG5cdFx0XHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MjZweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdHN0cm9uZyB7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0XHRcdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjZweDtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OjNweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji0tcmVjY29tbWVuZGVkIHtcblx0XHRcdFx0YmFja2dyb3VuZDokZGFya19ibHVlO1xuXG5cdFx0XHRcdC5pbm5lci1jb250YWluZXIge1xuXHRcdFx0XHRcdHBhZGRpbmc6MzVweCA0MHB4IDQxcHg7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0cGFkZGluZzoxNXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGg0IHtcblx0XHRcdFx0XHRmb250LXNpemU6MjZweDtcblx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjIycHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JiArIHAge1xuXHRcdFx0XHRcdFx0bWFyZ2luOjE3cHggMCAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjI0cHg7XG5cdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IzAwMzU2MTtcblx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjE4cHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MjZweDtcblx0XHRcdFx0XHRwYWRkaW5nOjExcHggNDBweCAxM3B4O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OjcwMDtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjExcHggMTVweCAxM3B4O1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDoyNHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY29udGFjdC13aWRnZXQge1xuXHRcdFx0XHQuY29udGFjdC1jb250IHtcblx0XHRcdFx0XHRwYWRkaW5nOjMycHggNDBweCA0MXB4O1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MTVweDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmID4gaDMge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDoxMDA7XG5cblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZToyMnB4O1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmICsgcCxcblx0XHRcdFx0XHRcdCYgKyBmb3JtLFxuXHRcdFx0XHRcdFx0JiArIC5mb3JtLWNvbXBsZXRlIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOjI5cHggMCAwO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5idXR0b24tY29udGFpbmVyIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcblxuXHRcdFx0XHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDowO1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MDtcblx0XHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Zm9ybSArIHAsXG5cdFx0XHRcdFx0LmZvcm0tY29tcGxldGUgKyBwIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdFx0XHRcdG1hcmdpbjoyMnB4IDAgMDtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToxNHB4O1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MTlweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnNpbmdsZS1wcm9kdWN0cy1jb250YWluZXJ7XG5cdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0cGFkZGluZzogMDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHQucHJvZHVjdHMtaW5uZXItY29udGFpbmVye1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJyl7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQuc2xpZGVyLXNob3cge1xuXHRcdFx0LnNsaWRlIHtcblx0XHRcdFx0aGVpZ2h0OjI2MHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5zbGlkZXItY29udHJvbCB7XG5cdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cblx0XHRcdC5zbGljay1saXN0IHtcblx0XHRcdFx0cGFkZGluZzowICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5zbGlkZSB7XG5cdFx0XHRcdGhlaWdodDo5MHB4O1xuXHRcdFx0XHR3aWR0aDpjYWxjKDMzLjMzJSAtIDEwcHgpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHR6LWluZGV4OjA7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQoMiksXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDoxNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdHotaW5kZXg6MTtcblx0XHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0XHRib3JkZXI6M3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0Y29udGVudDpcIiBcIjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXG5cdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y3Vyc29yOnBvaW50ZXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5zbGljay1jdXJyZW50OmJlZm9yZSB7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiRicmlnaHRfYmx1ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0fVxuXHR9XG59IiwiXG5oMS5wYWdlLXRpdGxlICsgLnByb2plY3Qtd2lkZ2V0IHtcblx0bWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDtcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0bWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi5wcm9qZWN0LXdpZGdldCB7XG5cdG1hcmdpbi10b3A6MCAhaW1wb3J0YW50O1xuXG5cdCYgKyAucGFnZW51bWJlci1jb250YWluZXIge1xuXHRcdG1hcmdpbi10b3A6NjVweDtcblx0fVxuXG5cdC5mbGV4LWxpc3Qge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG5cblx0XHRodG1sLmllMTAgJiB7XG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xuXG5cdFx0XHQmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDoxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjFweDtcbiAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xuXHRcdFx0fVxuXHRcdH1cblxuICAgICAgICBhIHtcbiAgICAgICAgXHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgXHR6LWluZGV4OjA7XG4gICAgICAgIFx0d2lkdGg6MzMuMzMlO1xuICAgICAgICBcdHBhZGRpbmc6MDtcblx0XHRcdGNvbG9yOiR3aGl0ZTtcblxuXHRcdFx0aHRtbC5pZTEwICYge1xuXHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRmbG9hdDpsZWZ0O1xuXG5cdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOjEyMDBweCkge1xuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKG4gKyA0KTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICAgICAgICAgICAgICB9IFxuXHQgICAgXHRcdH1cblx0XHRcdH1cblxuICAgIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6MTE5OXB4KSB7XG4gICAgICAgIFx0XHR3aWR0aDo1MCU7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQobiArIDMpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MXB4O1xuICAgICAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgXHRcdH1cblxuICAgIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NTcwcHgpIHtcbiAgICAgICAgXHRcdHdpZHRoOjEwMCU7XG4gICAgICAgIFx0XHRmbG9hdDpub25lICFpbXBvcnRhbnQ7XG4gICAgXHRcdH1cblxuXHRcdFx0LmltZyB7XG4gICAgICAgIFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgXHRcdHotaW5kZXg6MDtcbiAgICAgICAgXHRcdHdpZHRoOjEwMCU7XG4gICAgICAgIFx0XHRwYWRkaW5nLXRvcDoxMDAlO1xuXG4gICAgICAgIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtaW46MTI4MXB4KSB7XG4gICAgICAgIFx0XHRcdHBhZGRpbmctdG9wOjA7XG4gICAgICAgIFx0XHRcdGhlaWdodDo0MjdweDtcbiAgICAgICAgXHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnN0YXJ0LXRleHQsXG5cdFx0XHQuZW5kLXRleHQge1xuXHRcdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0ei1pbmRleDoxO1xuXHRcdFx0XHRoZWlnaHQ6MTAwJTtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0dG9wOjA7XG5cdFx0XHRcdGJvdHRvbTowO1xuXHRcdFx0XHRsZWZ0OjA7XG5cdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdEBpbmNsdWRlIGFuaW0oYWxsIDI1MG1zIGVhc2UtaW4tb3V0KTtcblxuXHRcdFx0XHQudGV4dC1pbm5lciB7XG5cdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0ei1pbmRleDoyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5zdGFydC10ZXh0IHtcblx0XHRcdFx0b3BhY2l0eToxO1xuXHRcdFx0XHRAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbChyZ2JhKCRkYXJrX2JsdWUsIDApLCByZ2JhKCRkYXJrX2JsdWUsIDAuOCksIDAlLCAxMDAlKTtcblxuXHRcdFx0XHQudGV4dC1pbm5lciB7XG5cdFx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdFx0cGFkZGluZzowIDMycHggMjNweDtcblxuXHRcdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZToyNXB4O1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS40O1xuXHRcdFx0XHRcdFx0Y29sb3I6JHdoaXRlO1xuXHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblxuXHRcdFx0ICAgIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NzY3cHgpIHtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOjIwcHg7XG5cdFx0XHQgICAgXHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmVuZC10ZXh0IHtcblx0XHRcdFx0b3BhY2l0eTowO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOnJnYmEoJGRhcmtfYmx1ZSwgMC44KTtcblxuXHRcdFx0XHQudGV4dC1pbm5lciB7XG5cdFx0XHRcdFx0dG9wOjUwJTtcblx0XHRcdFx0XHRsZWZ0OjUwJTtcblx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nOjAgNTBweDtcblxuXHRcdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojc2N3B4KSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjAgMjVweDtcblx0XHQgICAgXHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRmb250LXNpemU6NDBweDtcblx0XHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MTtcblxuXHRcdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojc2N3B4KSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MzBweDtcblx0XHQgICAgXHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5idWlsZGluZ190eXBlIHtcblx0XHRcdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0XHRcdFx0Zm9udC1zaXplOjI1cHg7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6MS4xO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MTNweDtcblxuXHRcdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojc2N3B4KSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MTlweDtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHQgICAgXHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5leGNlcnB0IHtcblx0XHRcdFx0XHRmb250LXNpemU6MjBweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDoyN3B4O1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MTlweDtcblxuXHRcdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojc2N3B4KSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MTVweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OjIwcHg7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjE0cHg7XG5cdFx0ICAgIFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpIHtcblx0XHRcdFx0XHRmb250LXNpemU6MThweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDoxO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MzZweDtcblxuXHRcdCAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojc2N3B4KSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6MTRweDtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MjdweDtcblx0XHQgICAgXHRcdH1cblx0XHRcdFx0fVx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQuc3RhcnQtdGV4dCB7XG5cdFx0XHRcdFx0b3BhY2l0eTowO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmVuZC10ZXh0IHtcblx0XHRcdFx0XHRvcGFjaXR5OjE7XG5cdFx0XHRcdH1cblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cblxuXHQmLS1ub3Jlc3VsdHMge1xuXHRcdC53aWRnZXQtY29udGFpbmVyICsgJiB7XG5cdFx0XHRtYXJnaW4tdG9wOiR3aWRnZXRNYXJnaW4gLSA4NnB4ICFpbXBvcnRhbnQ7XG5cdFx0ICAgIFxuXHRcdCAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHQgICAgICAgIG1hcmdpbi10b3A6JHdpZGdldE1vYmlsZU1hcmdpbiAhaW1wb3J0YW50O1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0LmlubmVyLWNvbnRhaW5lciB7XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdG1heC13aWR0aDo1ODJweDtcblx0XHRcdG1hcmdpbjowIGF1dG87XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdCYgKyBoNCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6MjJweCAwIDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdGg0IHtcblx0XHRcdGNvbG9yOiRicmlnaHRfYmx1ZTtcblx0XHRcdGZvbnQtc2l6ZTozMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6MS4zMztcblx0XHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblx0XHRcdGZvbnQtd2VpZ2h0OjcwMDtcblxuXHRcdFx0JiArIHAge1xuXHRcdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdHAge1xuXG5cdFx0fVxuXHRcdFxuXHRcdC5idXR0b24ge1xuXHRcdFx0cGFkZGluZzoxNHB4IDYwcHg7XG5cdFx0XHRtYXJnaW4tdG9wOjMwcHg7XG5cdFx0fVxuXHR9XG59IiwiYm9keS53Yi1zaGFkaW5nLWZvciB7XG5cdGhlYWRlcixcblx0LmhlYWRlcl9fYmcge1xuICAgIFx0cG9zaXRpb246YWJzb2x1dGU7XG4gICAgfVxuXG5cdCN3cmFwIHsgXG5cdFx0Ly9wYWRkaW5nLWJvdHRvbTo2MnB4O1xuXG5cdFx0Ly9AaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHQvL1x0cGFkZGluZy1ib3R0b206MDtcblx0XHQvL31cblxuXHRcdCYgPiBzZWN0aW9uIHtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0ei1pbmRleDowO1xuXHRcdFx0Ly9oZWlnaHQ6MTAwdmg7XG5cdFx0XHQvL21pbi1oZWlnaHQ6NzIwcHg7XG5cdFx0XHRtaW4taGVpZ2h0OjEwMHZoO1xuXG5cdFx0XHQmLm1haW4tYm9keSB7XG5cdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0aGVpZ2h0OjEwMHZoO1xuXHRcdFx0XHRtaW4taGVpZ2h0OmF1dG87XG5cblx0XHRcdCAgICAmOmFmdGVyIHtcblx0XHRcdCAgICAgICAgZGlzcGxheTpub25lO1xuXHRcdFx0ICAgIH1cblxuXHRcdFx0ICAgIGgxIHtcblx0XHRcdCAgICBcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0ICAgIFx0ei1pbmRleDoyO1xuXHRcdFx0ICAgIFx0d2lkdGg6MTAwJTtcblx0XHRcdCAgICBcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0ICAgIFx0Ym90dG9tOjA7XG5cdFx0XHQgICAgXHRsZWZ0OjA7XG5cdFx0XHQgICAgXHRyaWdodDowO1xuXHRcdFx0ICAgIFx0YmFja2dyb3VuZDokbGlnaHRfYmx1ZTtcblx0XHRcdCAgICBcdGNvbG9yOiRkYXJrX2JsdWU7XG5cdFx0XHQgICAgXHRmb250LXNpemU6NDBweDtcblx0XHRcdCAgICBcdHBhZGRpbmc6MjBweCAyNXB4ICg1MnB4ICsgNjJweCk7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHRcdCAgICBcdFx0cGFkZGluZzoyMHB4IDI1cHggMzVweDtcblx0XHRcdCAgICBcdFx0Zm9udC1zaXplOjMwcHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHQgICAgXHQmOmJlZm9yZSB7XG5cdFx0XHRcdCAgICAgICAgZGlzcGxheTpibG9jaztcblx0XHRcdFx0ICAgICAgICBjb250ZW50OlwiIFwiO1xuXHRcdFx0XHQgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHQgICAgICAgIHotaW5kZXg6Mjtcblx0XHRcdFx0ICAgICAgICB3aWR0aDoxMDAlO1xuXHRcdFx0XHQgICAgICAgIGhlaWdodDozM3B4O1xuXHRcdFx0XHQgICAgICAgIGxlZnQ6MDtcblx0XHRcdFx0ICAgICAgICByaWdodDowO1xuXHRcdFx0XHQgICAgICAgIHRvcDotMzNweDtcblx0XHRcdFx0ICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuXHRcdFx0XHQgICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG5cblx0XHRcdFx0ICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbS14cycpIHtcblx0XHRcdFx0ICAgICAgICAgICAgaGVpZ2h0OjIycHg7XG5cdFx0XHRcdCAgICAgICAgXHR0b3A6LTIycHg7XG5cdFx0XHRcdCAgICAgICAgfVxuXG5cdFx0XHRcdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdCAgICAgICAgICAgIGhlaWdodDoxMXB4O1xuXHRcdFx0XHQgICAgICAgIFx0dG9wOi0xMXB4O1xuXHRcdFx0XHQgICAgICAgIH1cblx0XHRcdFx0ICAgIH1cblx0XHRcdCAgICB9XG5cblx0XHRcdCAgICAuaW1nIHtcblx0XHRcdCAgICBcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0ICAgIFx0ei1pbmRleDoxO1xuXHRcdFx0ICAgIFx0d2lkdGg6MTAwJTtcblx0XHRcdCAgICBcdGhlaWdodDoxMDAlO1xuXHRcdFx0ICAgIFx0dG9wOjA7XG5cdFx0XHQgICAgXHRyaWdodDowO1xuXHRcdFx0ICAgIFx0Ym90dG9tOjA7XG5cdFx0XHQgICAgXHRsZWZ0OjA7XG5cblx0XHRcdCAgICAgICAgJjphZnRlciB7XG5cdFx0XHQgICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuXHRcdFx0ICAgICAgICAgICAgZGlzcGxheTpibG9jaztcblx0XHRcdCAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0ICAgICAgICAgICAgei1pbmRleDoxO1xuXHRcdFx0ICAgICAgICAgICAgd2lkdGg6MTAwJTtcblx0XHRcdCAgICAgICAgICAgIGhlaWdodDoxMDAlO1xuXHRcdFx0ICAgICAgICAgICAgdG9wOjA7XG5cdFx0XHQgICAgICAgICAgICByaWdodDowO1xuXHRcdFx0ICAgICAgICAgICAgbGVmdDowO1xuXHRcdFx0ICAgICAgICAgICAgYm90dG9tOjA7XG5cdFx0XHQgICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkZGFya19ibHVlLCB0cmFuc3BhcmVudCwgMCUsIDUyJSk7XG5cdFx0XHQgICAgICAgICAgICBvcGFjaXR5OjAuNztcblx0XHRcdCAgICAgICAgfVxuXHRcdFx0ICAgIH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxubmF2LnNoYWRpbmctbmF2IHtcblx0cG9zaXRpb246YWJzb2x1dGU7XG5cdGRpc3BsYXk6YmxvY2s7XG5cdHotaW5kZXg6Mztcblx0bGVmdDowO1xuXHRyaWdodDowO1xuXHR0b3A6Y2FsYygxMDB2aCAtIDYycHgpO1xuXHR3aWR0aDoxMDAlO1xuXHRoZWlnaHQ6NjJweDtcblx0YmFja2dyb3VuZDokZGFya19ibHVlO1xuXHRwYWRkaW5nOjA7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0ZGlzcGxheTpub25lO1xuXHR9XG5cblx0Ji5zdGlja3kge1xuXHRcdHBvc2l0aW9uOmZpeGVkO1xuXHRcdHRvcDowO1xuXHR9XG5cblx0dWwge1xuICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cblx0bGkge1xuXHRcdGhlaWdodDo2MnB4O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnfCc7XG5cdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogLTJweDtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNsYXRlKDAsLTUwJSk7XG5cdFx0fVxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdGZvbnQtc2l6ZToxNXB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6MjBweDtcblx0XHRcdHBhZGRpbmc6MjFweCAyM3B4O1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgnbWQnKSB7XG5cdFx0XHRcdHBhZGRpbmc6IDIxcHggMThweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKSB7XG5cdFx0XHRcdHBhZGRpbmc6IDIxcHggMTBweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0fVxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0Y29sb3I6ICRzb2NpYWxfbGlnaHRfYmx1ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmFwcC1jb250IHtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHotaW5kZXg6NTtcblx0cGFkZGluZzozMHB4O1xuXHRtaW4taGVpZ2h0OjEwMHZoO1xuXHR3aWR0aDpjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICBAaW5jbHVkZSBmbGV4Ym94O1xuXHRAaW5jbHVkZSBhbGlnbihjZW50ZXIpO1xuXHRAaW5jbHVkZSBqdXN0aWZ5KGZsZXgtc3RhcnQpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0cGFkZGluZzoxNXB4O1xuXHRcdHdpZHRoOjEwMCU7XG5cdH1cblxuXHRzZWN0aW9uLm9kZCAmIHtcblx0XHRAaW5jbHVkZSBqdXN0aWZ5KGZsZXgtZW5kKTtcblx0XHRtYXJnaW4tbGVmdDo4MHB4O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OjBweDtcblx0XHR9XG5cdH1cblxuXHQmX19pbm5lciB7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDo1O1xuXHRcdHBhZGRpbmctcmlnaHQ6MzdweDtcblx0XHRvdmVyZmxvdzpoaWRkZW47XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0cGFkZGluZzowICFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0c2VjdGlvbi5vZGQgJiB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OjA7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6MzdweDtcblx0XHR9XG5cdH1cblxuXHQmX19idXR0b24ge1xuXHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdHotaW5kZXg6NTtcblx0XHR0b3A6NDBweDtcblx0XHRyaWdodDowO1xuXHRcdHdpZHRoOjM3cHg7XG5cdFx0aGVpZ2h0OjQ4cHg7XG5cdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgNXB4IDVweCAwO1xuXHRcdGJvcmRlci1yYWRpdXM6MCA1cHggNXB4IDA7XG5cdFx0Y3Vyc29yOnBvaW50ZXI7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcRjA5NlwiO1xuXHRcdFx0Zm9udC1mYW1pbHk6XCJCbGFjayBUaWVcIjtcblx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6MTtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6Njtcblx0XHRcdHRvcDo1MCU7XG5cdFx0XHRsZWZ0OjUwJTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHRcdGN1cnNvcjpwb2ludGVyO1xuXHRcdFx0cG9pbnRlci1ldmVudHM6YWxsO1xuXHRcdFx0Zm9udC13ZWlnaHQ6NzAwO1xuXHRcdFx0Y29sb3I6JGRhcmtfYmx1ZTtcblx0XHR9XG5cblx0XHRzZWN0aW9uLm9kZCAmIHtcblx0XHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHggMCAwIDVweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6NXB4IDAgMCA1cHg7XG5cdFx0XHRyaWdodDphdXRvO1xuXHRcdFx0bGVmdDowO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDpcIlxcRjA5N1wiO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNlY3Rpb24uY2xvc2VkICY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcRjA5N1wiO1xuXHRcdH1cblxuXHRcdHNlY3Rpb24ub2RkLmNsb3NlZCAmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXEYwOTZcIjtcblx0XHR9XG5cdH1cblxuXHQmX19jb250ZW50IHtcblx0XHRiYWNrZ3JvdW5kOnJnYmEoJHdoaXRlLCAwLjg4KTtcblx0XHRwYWRkaW5nOjEwMHB4IDY4cHg7XG5cdFx0d2lkdGg6NTM1cHg7XG5cdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0ei1pbmRleDowO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czoxMHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6MTBweDtcblx0XHRvcGFjaXR5OjE7XG5cdFx0QGluY2x1ZGUgYW5pbSgyNTBtcyBvcGFjaXR5IGVhc2UtaW4tb3V0KTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRwYWRkaW5nOjUwcHggMjVweDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXG5cdFx0c2VjdGlvbi5jbG9zZWQgJiB7XG5cdFx0XHRvcGFjaXR5OjA7XG5cdFx0fVxuXG5cdFx0aDQge1xuXHRcdFx0Zm9udC1zaXplOjE2cHg7XG5cdFx0XHRmb250LXdlaWdodDo0MDA7XG5cdFx0XHRtYXJnaW46MDtcblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHRmb250LXNpemU6MzZweDtcblx0XHRcdGZvbnQtd2VpZ2h0OjQwMDtcblx0XHRcdG1hcmdpbjoxM3B4IDAgMDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0Zm9udC1zaXplOjI1cHg7XG5cdFx0XHR9XG5cblx0XHRcdCYgKyBwIHtcblx0XHRcdFx0bWFyZ2luOjIwcHggMCAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWFyZ2luOjA7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24tY29udCB7XG5cdCAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcblx0ICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG5cdCAgICAgICAgQGluY2x1ZGUgc3BhY2VCZXR3ZWVuO1xuXHQgICAgICAgIG1hcmdpbi10b3A6NDFweDtcblxuXHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdHdpZHRoOmNhbGMoNTAlIC0gNXB4KTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjA7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6MDtcblx0XHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OjMwMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0cGFkZGluZzoxNHB4IDEwcHg7XG5cblx0XHRcdFx0XHQmICsgLmJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1kb3dubG9hZCB7XG5cdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0YmFja2dyb3VuZDp0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlcjoycHggc29saWQgJGJyaWdodF9ibHVlO1xuXHRcdFx0Y29sb3I6JGJyaWdodF9ibHVlO1xuXHRcdFx0cGFkZGluZzoxM3B4IDA7XG5cdFx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0XHRcdGZvbnQtc2l6ZToyMHB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6MjBweDtcblx0XHRcdGZvbnQtd2VpZ2h0OjMwMDtcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0cGFkZGluZzoxM3B4IDEwcHg7XG5cdFx0XHR9XG5cblx0XHRcdGkge1xuXHRcdFx0XHRmb250LXdlaWdodDpub3JtYWw7XG5cdFx0XHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDoyMHB4O1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OjEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zaGFkaW5nLWZvci1zbGlkZXIge1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0ei1pbmRleDowO1xuXHRoZWlnaHQ6MTAwJTtcblx0d2lkdGg6MTAwJTtcblx0dG9wOi0xcHg7XG5cdHJpZ2h0OjA7XG5cdGJvdHRvbTotMXB4O1xuXHRsZWZ0OjA7XG5cblx0LnNsaWNrLWxpc3QsXG5cdC5zbGljay10cmFjayB7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0ei1pbmRleDoxO1xuXHRcdGhlaWdodDoxMDAlO1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0dG9wOjA7XG5cdFx0cmlnaHQ6MDtcblx0XHRib3R0b206MDtcblx0XHRsZWZ0OjA7XG5cdH1cblxuXHQuc2xpY2stZG90cyB7XG5cdFx0ei1pbmRleDo1O1xuXHRcdGJvdHRvbTphdXRvO1xuXHRcdHRvcDo1MCU7XG5cdFx0QGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsMCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdH1cblxuXHRcdHNlY3Rpb24uZXZlbiAmIHtcblx0XHRcdGxlZnQ6YXV0bztcblx0XHRcdHJpZ2h0OjQwcHg7XG5cdFx0fVxuXG5cdFx0c2VjdGlvbi5vZGQgJiB7XG5cdFx0XHRsZWZ0OjQwcHg7XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0bGluZS1oZWlnaHQ6MTZweDtcblx0XHRcdGZsb2F0Om5vbmU7XG5cblx0XHRcdCYgKyBsaSB7XG5cdFx0XHRcdG1hcmdpbjoxNnB4IDAgMCAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjE2cHg7XG5cdFx0XHR9XG5cdFx0fSBcblx0fVxufSIsImJvZHkuc2luZ2xlLXByb2plY3Qge1xuXHQubWFzdGhlYWQtc2xpZGVyOmFmdGVyIHtcblx0XHQvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0OyovXG5cdFx0YmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG5cdH1cblxuXHQubWFpbi1ib2R5IHtcblx0XHRwYWRkaW5nLXRvcDowO1xuXHR9XG5cblx0LnByb2plY3QtZGV0YWlscy1zZWN0aW9uIHtcblx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHR6LWluZGV4OjA7XG5cdFx0YmFja2dyb3VuZDokd2hpdGU7XG5cdFx0cGFkZGluZzoxMTVweCAwIDEyM3B4O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcblx0XHRcdHBhZGRpbmc6NTBweCAwIDY1cHg7XG5cdFx0fVxuXG5cdCAgICAmOmFmdGVyIHtcblx0ICAgICAgICBkaXNwbGF5OmJsb2NrO1xuXHQgICAgICAgIGNvbnRlbnQ6XCIgXCI7XG5cdCAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG5cdCAgICAgICAgei1pbmRleDoyO1xuXHQgICAgICAgIHdpZHRoOjEwMCU7XG5cdCAgICAgICAgaGVpZ2h0OjMzcHg7XG5cdCAgICAgICAgbGVmdDowO1xuXHQgICAgICAgIHJpZ2h0OjA7XHQgICAgICAgIFxuXHQgICAgICAgIGJvdHRvbTotMzNweDtcblx0ICAgICAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0OyovXG5cdCAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQ7XG5cdCAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtcblxuXHQgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuXHQgICAgICAgICAgICBoZWlnaHQ6MjJweDsgICAgICAgXG5cdCAgICAgICAgXHRib3R0b206LTIycHg7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdCAgICAgICAgICAgIGhlaWdodDoxMXB4OyAgICAgICBcblx0ICAgICAgICBcdGJvdHRvbTotMTFweDtcblx0ICAgICAgICB9XG5cdCAgICB9XG5cdH1cblxuXHRwLnByb2plY3Qtc3VidGl0bGUge1xuXHRcdGZvbnQtc2l6ZToxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OjEuMTtcblx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcblxuXHRcdCYgKyBoMSB7XG5cdFx0XHRmb250LXdlaWdodDozMDA7XG5cdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0bWFyZ2luOjE5cHggMCA0NHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0XHRtYXJnaW46OXB4IDAgMzBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZmxleC1jb250YWluZXIge1xuXHRcdC8vQGluY2x1ZGUgZmxleGJveDtcbiAgICAgICAgLy9AaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG4gICAgICAgIC8vQGluY2x1ZGUgc3BhY2VCZXR3ZWVuO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDowO1xuXG5cdFx0LnByb2plY3Qtc2xpZGVyIHtcblx0XHRcdHdpZHRoOjY0LjklO1xuXHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRoZWlnaHQ6MTAwJTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdGhlaWdodDphdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQvLy5zbGljay1saXN0LFxuXHRcdFx0Ly8uc2xpY2stdHJhY2ssXG5cdFx0XHQvKi5zbGlkZSB7XG5cdFx0XHRcdGhlaWdodDoxMDAlO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHRcdFx0aGVpZ2h0OjU1MHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRoZWlnaHQ6MzAwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH0qL1xuXG5cdFx0XHQuc2xpZGUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwic20teHNcIikge1xuXHRcdFx0XHRcdGhlaWdodDo1NTBweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG5cdFx0XHRcdFx0aGVpZ2h0OjMwMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5zbGljay1hcnJvdyB7XG5cdFx0ICAgICAgICB3aWR0aDoyNnB4O1xuXHRcdCAgICAgICAgaGVpZ2h0OjI2cHg7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0ICAgICAgICAgICAgZm9udC1zaXplOjI2cHg7XG5cdFx0ICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjZweDtcblx0XHRcdFx0XHRmb250LXdlaWdodDo3MDA7XG5cdFx0ICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuXHRcdCAgICAgICAgICAgIHRleHQtc2hhZG93OjAgMCAycHggIzAwMDtcblx0XHQgICAgICAgIH1cblx0XHQgICAgfVxuXG5cdFx0ICAgIC5zbGljay1wcmV2IHtcblx0XHQgICAgICAgIGxlZnQ6MjBweDtcblxuXHRcdCAgICAgICAgJjphZnRlciB7XG5cdFx0ICAgICAgICAgICAgY29udGVudDonXFxGMDk2Jztcblx0XHQgICAgICAgIH1cblx0XHQgICAgfVxuXG5cdFx0ICAgIC5zbGljay1uZXh0IHtcblx0XHQgICAgICAgIGxlZnQ6YXV0bztcblx0XHQgICAgICAgIHJpZ2h0OjIwcHg7XG5cblx0XHQgICAgICAgICY6YWZ0ZXIge1xuXHRcdCAgICAgICAgICAgIGNvbnRlbnQ6J1xcRjA5Nyc7XG5cdFx0ICAgICAgICB9XG5cdFx0ICAgIH1cdFxuXG5cdFx0ICAgICYgKyAuZGVzY3JpcHRpb24tY29udGFpbmVyIHtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjczJTtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdHotaW5kZXg6MDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwic20teHNcIikge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6NTBweDtcblx0XHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdH1cblx0XHRcdH1cdFx0XG5cdFx0fVxuXG5cdFx0LmRlc2NyaXB0aW9uLWNvbnRhaW5lciB7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdGNvbG9yOiRibGFjaztcblx0XHRcdFx0Zm9udC1zaXplOjE2cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OjEuMTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRcdFx0XHRmb250LXdlaWdodDo0MDA7XG5cblx0XHRcdFx0JiArIHAge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MTBweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDotM3B4O1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdGNvbG9yOiRkYXJrX2JsdWU7XG5cdFx0XHRcdGZvbnQtc2l6ZToyMnB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDoxLjY7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OjcwMDtcblxuXHRcdFx0XHQmICsgaDMge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6NDNweDtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjIzcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1jb250YWluZXIge1xuXHRcdEBpbmNsdWRlIGZsZXhib3g7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICAgICAgQGluY2x1ZGUgc3BhY2VCZXR3ZWVuO1xuXHRcdHdpZHRoOjY0LjklO1xuXHRcdG1hcmdpbi10b3A6MjFweDtcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJzbS14c1wiKSB7XG5cdFx0XHR3aWR0aDoxMDAlO1xuXHRcdH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgXHR3aWR0aDpjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICBcdGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgXHRwYWRkaW5nLWxlZnQ6MTBweDtcbiAgICAgICAgXHRwYWRkaW5nLXJpZ2h0OjEwcHg7XG4gICAgICAgIFx0Zm9udC1zaXplOjIwcHg7XG4gICAgICAgIFx0bGluZS1oZWlnaHQ6MjBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdH1cblxuICAgICAgICBcdCYtcHJvamVjdCB7XG4gICAgICAgIFx0XHRiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgICBcdFx0Ym9yZGVyOjJweCBzb2xpZCAkYnJpZ2h0X2JsdWU7XG4gICAgICAgIFx0XHRjb2xvcjokYnJpZ2h0X2JsdWU7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0XHRcdH1cbiAgICAgICAgXHR9XG4gICAgICAgIH1cblx0XHRcblx0fVxufSIsImJvZHkuYmxvZy1saXN0aW5nIHtcblxuXHQuYmxvZy13aWRnZXQgLmZsZXgtbGlzdCBhIHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdHotaW5kZXg6MDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6Mztcblx0XHRcdHRvcDowO1xuXHRcdFx0bGVmdDowO1xuXHRcdFx0YmFja2dyb3VuZDpyZWQ7XG5cdFx0XHRjb2xvcjokd2hpdGUgIWltcG9ydGFudDtcblx0XHRcdGhlaWdodDo3NXB4O1xuXHRcdFx0d2lkdGg6NzVweDtcblx0XHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czowIDAgMTAwJSAwO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czowIDAgMTAwJSAwO1xuXHRcdFx0Zm9udC1mYW1pbHk6XCJCbGFjayBUaWVcIjtcblx0XHRcdGNvbnRlbnQ6XCJcXEYwNERcIjtcblx0XHRcdGZvbnQtc2l6ZToyMnB4O1xuXHRcdFx0bGluZS1oZWlnaHQ6MTtcblx0XHRcdHBhZGRpbmc6MTlweCAwIDAgMTlweDtcblx0XHR9XG5cblx0XHQmLmNvbXBhbnkge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiRicmlnaHRfYmx1ZTtcblx0XHRcdFx0Y29udGVudDpcIlxcRjBENlwiO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYuaW5kdXN0cnkge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiRkYXJrX2JsdWU7XG5cdFx0XHRcdGNvbnRlbnQ6XCJcXEYwQ0VcIjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmhvdmVyIC5idXR0b24sXG5cdFx0JiAuYnV0dG9uOmhvdmVyIHtcblx0XHRcdGNvbG9yOiR3aGl0ZTtcblx0XHRcdGJhY2tncm91bmQ6JGJyaWdodF9ibHVlO1xuXHRcdH1cblxuXHR9XG59IiwiXG4uc2lnbnVwLWNvbnRhaW5lciAuY2xvc2UtbW9kYWwge1xuXHR0b3A6LTI2cHg7XG5cdHJpZ2h0Oi0yNnB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojk1MHB4KSB7XG4gICAgICAgIHRvcDotMTVweDtcbiAgICAgICAgcmlnaHQ6LTE1cHg7XG4gICAgfSBcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgIHRvcDotMTVweDtcbiAgICAgICAgcmlnaHQ6LTE1cHg7XG4gICAgfVxufVxuXG4kZG9jU3BhY2luZzogMjBweDtcbi5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IHtcblx0LndpZGdldC10aXRsZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTo1MHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0LmNvbnRhaW5lciB7XG5cdFx0bWF4LXdpZHRoOiAxNDAwcHg7XG5cdH1cblxuXHQubGlzdGluZy1maWx0ZXItd2lkZ2V0ICsgJixcblx0JiArIC5kb3dubG9hZC1jZW50ZXItd2lkZ2V0IHtcblx0XHRtYXJnaW4tdG9wOjkwcHggIWltcG9ydGFudDtcblx0ICAgIFxuXHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdCAgICAgICAgbWFyZ2luLXRvcDokd2lkZ2V0TW9iaWxlTWFyZ2luICFpbXBvcnRhbnQ7XG5cdCAgICB9XG5cdH1cblxuXHQuZmxleC1saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgICAgICBtYXJnaW46IC0kZG9jU3BhY2luZztcbiAgICAgICAgcGFkZGluZzogMCAkZG9jU3BhY2luZztcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGRvY1NwYWNpbmcqMn0pO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcblx0XHRcdHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjUyMHB4KSB7XG5cdFx0XHQgbWFyZ2luOiAtJGRvY1NwYWNpbmcvMjtcblx0XHRcdCB3aWR0aDogY2FsYygxMDAlICsgI3skZG9jU3BhY2luZ30pO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgIFx0d2lkdGg6Y2FsYygyMCUgLSAjeyRkb2NTcGFjaW5nKjJ9KTtcbiAgICAgICAgXHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgXHR6LWluZGV4OjA7XG4gICAgICAgIFx0YmFja2dyb3VuZDokd2hpdGU7XG4gICAgICAgIFx0Ym94LXNoYWRvdzowcHggMHB4IDEwcHggMHB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuICAgICAgICBcdG1hcmdpbjokZG9jU3BhY2luZztcblxuICAgICAgICBcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDoxMTk5cHgpIHtcblx0XHRcdFx0d2lkdGg6Y2FsYygyNSUgLSAjeyRkb2NTcGFjaW5nKjJ9KTtcbiAgICAgICAgXHR9XG4gICAgICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojk5OXB4KSB7XG5cdFx0XHRcdHdpZHRoOmNhbGMoMzMuMzMlIC0gI3skZG9jU3BhY2luZyoyfSk7XG4gICAgICAgIFx0fVxuICAgICAgICBcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo3NjdweCkge1xuXHRcdFx0XHR3aWR0aDpjYWxjKDUwJSAtICN7JGRvY1NwYWNpbmcqMn0pO1xuICAgICAgICBcdH1cbiAgICAgICAgXHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NTIwcHgpIHtcbiAgICAgICAgXHRcdG1hcmdpbjogJGRvY1NwYWNpbmcvMjtcblx0XHRcdFx0d2lkdGg6Y2FsYyg1MCUgLSAjeyRkb2NTcGFjaW5nfSk7XG4gICAgICAgIFx0fVxuXG5cdFx0XHQuaW1nLFxuXHRcdFx0Lm5vLWltZyB7XG4gICAgICAgIFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgXHRcdHotaW5kZXg6MDtcbiAgICAgICAgXHRcdHdpZHRoOmNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBcdFx0bWFyZ2luOjIwcHggMjBweCAzM3B4O1xuICAgICAgICBcdFx0cGFkZGluZy10b3A6NTUuNSU7XG4gICAgICAgIFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRsaWdodF9ibHVlO1xuICAgICAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjUyMHB4KSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgXHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Lm5vLWltZzphZnRlciB7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHR6LWluZGV4OjE7XG5cdFx0XHRcdHRvcDo1MCU7XG5cdFx0XHRcdGxlZnQ6NTAlO1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdGNvbnRlbnQ6XCJcXGU2YzdcIjtcblx0XHRcdFx0Zm9udC1mYW1pbHk6XCJMaW5lYXJpY29uc1wiO1xuXHRcdFx0XHRmb250LXN0eWxlOm5vcm1hbDtcblx0XHRcdFx0Zm9udC12YXJpYW50Om5vcm1hbDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6bm9ybWFsO1xuXHRcdFx0XHRsaW5lLWhlaWdodDoxO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTpub25lO1xuXHRcdFx0XHRjb2xvcjokZGFya19ibHVlO1xuXHRcdFx0XHRmb250LXNpemU6NjhweDtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjUyMHB4KSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiA0NnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50ZXh0IHtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIFx0XHR6LWluZGV4OjA7XG4gICAgICAgIFx0XHR3aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICAgICAgXHRcdG1hcmdpbjowIDIwcHggMzFweDtcbiAgICAgICAgXHRcdHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjUyMHB4KSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgXHRcdH1cblxuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0XHRcdFx0XHRmb250LXNpemU6MjJweDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDoxLjQ7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6NDAwO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1MjBweCkge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxN3B4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYgKyBwIHtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6N3B4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Y29sb3I6Izk2OTY5Njtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NTIwcHgpIHtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNXB4O1xuXHQgICAgICAgIFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cbiAgICAgICAgfVxuICAgIH1cblxuXHQvKiYgKyAuZG93bmxvYWQtY2VudGVyLXdpZGdldDpub3QoLmRvd25sb2FkLWNlbnRlci13aWRnZXQtLW5vcmVzdWx0cykge1xuXHRcdG1hcmdpbi10b3A6MHB4ICFpbXBvcnRhbnQ7XG5cblx0XHQuaW5uZXItY29udGFpbmVyIHtcblx0XHRcdG1hcmdpbi10b3A6JHdpZGdldE1hcmdpbiAtIDk2cHggIWltcG9ydGFudDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6JHdpZGdldE1vYmlsZU1hcmdpbiAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fSovXG5cblx0Ji0tbm9yZXN1bHRzIHtcblx0XHQvLy53aWRnZXQtY29udGFpbmVyICsgJiB7XG5cdFx0Ly9cdG1hcmdpbi10b3A6JHdpZGdldE1hcmdpbiAtIDg2cHggIWltcG9ydGFudDtcblx0XHQgICAgXG5cdFx0Ly8gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG5cdFx0Ly8gICAgICAgIG1hcmdpbi10b3A6JHdpZGdldE1vYmlsZU1hcmdpbiAhaW1wb3J0YW50O1xuXHRcdC8vICAgIH1cblx0XHQvL31cblxuXHRcdC5pbm5lci1jb250YWluZXIge1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRtYXgtd2lkdGg6NTgycHg7XG5cdFx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHQmICsgaDQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOjIycHggMCAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRoNCB7XG5cdFx0XHRjb2xvcjokYnJpZ2h0X2JsdWU7XG5cdFx0XHRmb250LXNpemU6MzBweDtcblx0XHRcdGxpbmUtaGVpZ2h0OjEuMzM7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cdFx0XHRmb250LXdlaWdodDo3MDA7XG5cblx0XHRcdCYgKyBwIHtcblx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRwIHtcblxuXHRcdH1cblx0XHRcblx0XHQuYnV0dG9uIHtcblx0XHRcdHBhZGRpbmc6MTRweCA2MHB4O1xuXHRcdFx0bWFyZ2luLXRvcDozMHB4O1xuXHRcdH1cblx0fVxuXG5cdCYtLWJyb2NodXJlcyB7XG5cdFx0LmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcZTZkNlwiO1xuXHRcdH1cblx0fVxuXG5cdCYtLWRhdGFzaGVldHMge1xuXHRcdC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXGU2ZDhcIjtcblx0XHR9XG5cdH1cblxuXHQmLS1pbnN0YWxsZHJhd2luZ3Mge1xuXHRcdC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXGU2MmRcIjtcblx0XHR9XG5cdH1cblxuXHQmLS1zcGVjcyB7XG5cdFx0LmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcZTZjYlwiO1xuXHRcdH1cblx0fVxuXG5cdCYtLWluc3RhbGxtYW51YWxzIHtcblx0XHQuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG5cdFx0XHRjb250ZW50OlwiXFxlNzE1XCI7XG5cdFx0fVxuXHR9XG5cblx0Ji0tbWFpbnRlbmFuY2Uge1xuXHRcdC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXGU3MThcIjtcblx0XHR9XG5cdH1cblxuXHQmLS10ZXJtcyB7XG5cdFx0LmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcZTZkY1wiO1xuXHRcdH1cblx0fVxuXG5cdCYtLXRlcm1zLWFuZC1jb25kaXRpb25zLW9mLXNhbGUge1xuXHRcdC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXGU2MTNcIjtcblx0XHR9XG5cdH1cdFxuXG5cdCYtLWRhdGFzaGVldCB7XG5cdFx0LmZsZXgtbGlzdCBhIC5uby1pbWc6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDpcIlxcZTZkOFwiO1xuXHRcdH1cblx0fVxuXG5cdCYtLXByb2R1Y3Qtb3ZlcnZpZXcge1xuXHRcdC5mbGV4LWxpc3QgYSAubm8taW1nOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcXGU2ZDRcIjtcblx0XHR9XG5cdH1cblx0XG5cdCYtLW9yZGVyLWZvcm1zIHtcblx0XHQuZmxleC1saXN0IGEgLm5vLWltZzphZnRlciB7XG5cdFx0XHRjb250ZW50OlwiXFxlNmQxXCI7XG5cdFx0fVxuXHR9XG5cbn1cblxuLnNpZ251cC1jb250YWluZXIge1xuXHR0ZXh0LWFsaWduOmxlZnQ7XG5cdHBvc2l0aW9uOmFic29sdXRlO1xuXHR6LWluZGV4OjEwO1xuXHRiYWNrZ3JvdW5kOiR3aGl0ZTtcblx0d2lkdGg6NzIwcHg7XG5cdHBhZGRpbmc6NzBweDtcblx0Ym9yZGVyLXRvcDo4cHggc29saWQgJGRhcmtfYmx1ZTtcblx0dG9wOjUwJTtcblx0bGVmdDo1MCU7XG5cdEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NzcwcHgpIHtcblx0XHR3aWR0aDpjYWxjKDEwMCUgLSA1MHB4KTtcblx0XHRwYWRkaW5nOjI1cHg7XG5cdFx0bWFyZ2luOjI1cHg7XG5cdFx0bGVmdDowO1xuXHRcdEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtNTAlKTtcblx0fVxuXG5cdGg0IHtcblx0XHR0ZXh0LXRyYW5zZm9ybTpub25lO1xuXHRcdGZvbnQtd2VpZ2h0OjcwMDtcblx0XHRmb250LXNpemU6MzVweDtcblx0XHRsaW5lLWhlaWdodDoxLjE7XG5cdFx0bWFyZ2luOjAgIWltcG9ydGFudDtcblx0fVxuXG5cdHAge1xuXHRcdG1hcmdpbjozMHB4IDAgNDJweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0Zm9ybSB7XG5cblx0fVxuXG5cdGlucHV0IHtcblxuXHR9XG5cblx0I2ZpZWxkTmFtZSB7XG5cblx0fVxuXG5cdCNmaWVsZEVtYWlsIHtcblxuXHR9XG5cdFxuXHQuYnV0dG9uLWNvbnRhaW5lciB7XG5cdFx0bWFyZ2luLXRvcDozMnB4O1xuXHR9XG5cblx0LmJ1dHRvbiB7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6Y2FsYyg1MCUgLSAxMXB4KTtcblx0XHRwYWRkaW5nLWxlZnQ6MDtcblx0XHRwYWRkaW5nLXJpZ2h0OjA7XG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXG5cdFx0JiArIC5idXR0b24ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6MTZweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcblx0XHRcdFx0bWFyZ2luOjE1cHggMCAwIDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji0tbm9zaWdudXAge1xuXHRcdFx0Ym9yZGVyOjNweCBzb2xpZCAkb2ZmX3doaXRlO1xuXHRcdFx0Y29sb3I6JG9mZl93aGl0ZTtcblx0XHRcdGJhY2tncm91bmQ6JHdoaXRlO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDokb2ZmX3doaXRlO1xuXHRcdFx0XHRjb2xvcjokd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLndpZGdldC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6MDtcblxuICAgIC53aWRnZXQtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICBmb250LXNpemU6NDBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgZm9udC1zaXplOjMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmICsgLndpZGdldC1jb250YWluZXIsXG4gICAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgJiB7XG5cdCAgICBtYXJnaW4tdG9wOiR3aWRnZXRNYXJnaW47XG5cdCAgICBcblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHQgICAgICAgIG1hcmdpbi10b3A6JHdpZGdldE1vYmlsZU1hcmdpbjtcblx0ICAgIH1cblx0fVxuICAgIC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbiArICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzNweDtcbiAgICB9XG59XG5cbi5wYWdlLXRpdGxlICsgLndpZGdldC1jb250YWluZXIsXG4ucGFnZS1zdWJ0aXRsZSArIC53aWRnZXQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOjYwcHggIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6MzBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICBib2R5LndiLWhvbWVwYWdlICYge1xuICAgICAgICBtYXJnaW4tdG9wOjYwcHggIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDozMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbn1cblxuLndpZGdldC1jb250YWluZXIgKyAucGFnZS10aXRsZSxcbi53aWRnZXQtY29udGFpbmVyICsgLnBhZ2Utc3VidGl0bGUsXG4ucGFnZS10aXRsZSArIC5saXN0aW5nLWZpbHRlci13aWRnZXQge1xuICAgIG1hcmdpbi10b3A6JHdpZGdldE1hcmdpbiAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICBtYXJnaW4tdG9wOiR3aWRnZXRNb2JpbGVNYXJnaW4gIWltcG9ydGFudDtcbiAgICB9XG59IiwiLmNhcmRzLXdpZGdldCB7XG4gICAgLmZsZXgtbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhib3g7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICAgICAgLy9AaW5jbHVkZSBzcGFjZUJldHdlZW4oKTtcblxuICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDpjYWxjKDMzLjMzJSAtIDQ2LjY3cHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzowcHggMHB4IDQ2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6MDtcbiAgICAgICAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuXG4gICAgICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgICAgIC8vZmxvYXQ6bGVmdDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOjk5MnB4KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NzBweDtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuIC0gMikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4rNCl7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6NzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjY1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQobis0KTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOjY3MXB4LCRtYXg6OTkxcHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDUwJSAtIDM1cHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjcwcHg7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzMpe1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjcwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaHRtbC5pZTEwICYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDo2NXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjY3MHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcblxuICAgICAgICAgICAgICAgICYgKyBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOjc3LjQlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDoyO1xuICAgICAgICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MzVweCAzOXB4IDM2cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjI1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDozO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgICAgICAgICAgICAgdG9wOi0xMnB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoxMnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ibG9nLXdpZGdldC1jdXJ2ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjVweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS40O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTpub25lOyAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MnB4IDAgMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JG9mZl9ibGFjaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoyNXB4OyBcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjMzcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAyMnB4IDAgMDtcblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MzNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuY29udGFjdC13aWRnZXQge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6NzcwcHg7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtY29udCB7IFxuICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTsgICAgICAgXG4gICAgICAgIHBhZGRpbmc6NjhweCA3MHB4O1xuICAgICAgICBib3JkZXItdG9wOjhweCBzb2xpZCAkZGFya19ibHVlO1xuICAgICAgICBib3gtc2hhZG93OjBweCAwcHggNDZweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgXG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OjBweCAwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgICAgICBcbiAgICAgICAgICAgIHBhZGRpbmc6MjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBoMyB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTpub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOjM1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDo0MHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MjVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDozMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgcCxcbiAgICAgICAgICAgICYgKyBmb3JtLFxuICAgICAgICAgICAgJiArIC5mb3JtLWNvbXBsZXRlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46MzFweCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmID4gcCArIGZvcm0sXG4gICAgICAgICYgPiBwICsgLmZvcm0tY29tcGxldGUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDo0MnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiAuZm9ybS1ncm91cCA+IGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MzBweDtcbiAgICAgICAgcGFkZGluZzoyNXB4IDAgMTZweDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTpub25lO1xuICAgICAgICBhcHBlYXJhbmNlOm5vbmU7XG4gICAgICAgIGNvbG9yOiRmb3JtX2dyZXk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6MTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MjVweDtcbiAgICAgICAgcGFkZGluZzoxMnB4IDExNXB4IDEzcHggMTZweDtcbiAgICAgICAgd2lkdGg6Y2FsYygxMDAlICsgNjBweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgIGJvcmRlcjowO1xuXG4gICAgICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO1xuXG4gICAgICAgICY6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuICAgICAgICAgICAgY29sb3I6IzAwNTRhMDtcbiAgICAgICAgfVxuXG4gICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOjAgMjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjVweDtcbiAgICAgICAgICAgIGNvbG9yOiRmb3JtX2dyZXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0LXdyYXAge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OidCbGFjayBUaWUnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICAgICAgICAgY29udGVudDonXFxGMDkxJztcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICByaWdodDoyM3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZpbGxlZCB7XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBjb2xvcjojMDA1NGEwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgLnNlbGVjdC13cmFwOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiMwMDU0YTA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0LWdyb3VwIC5yYWRpby1jaGVjay10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICB9XG5cbiAgICAuYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6NTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDozNXB4O1xuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLDApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDo1NXB4O1xuICAgICAgICBtYXJnaW4tdG9wOjA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjM3OHB4KSB7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwwKTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltKGFsbCAwLjFzIGVhc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNwaW5uZXIge1xuICAgICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3Qtd2lkZ2V0LXNlbmRpbmcge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zcGlubmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYWRpby1jaGVjay1saXN0IHtcbiAgICBtYXJnaW46MDtcbiAgICBwYWRkaW5nOjA7XG4gICAgbGlzdC1zdHlsZTpub25lO1xuICAgIEBpbmNsdWRlIGZsZXhib3g7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgIEBpbmNsdWRlIHNwYWNlQmV0d2VlbjtcblxuICAgIGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHJpZ2h0OmF1dG87XG4gICAgICAgIGJvdHRvbTphdXRvO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0obm9uZSk7XG4gICAgfVxufVxuXG4uY2hlY2tib3gtY29udCB7XG4gICAgbWFyZ2luOjZweCAyNXB4IDRweCAwO1xuICAgIHdpZHRoOmNhbGMoNTAlIC0gMjVweCk7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluOjc2OHB4KSB7XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDoyOHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6MjBweDtcbiAgICBtYXJnaW46MDtcbiAgICBwYWRkaW5nOjA7XG4gICAgb3BhY2l0eTowO1xuICAgIGRpc3BsYXk6bm9uZTtcblxuICAgICYgKyBsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZy1sZWZ0OjQwcHg7XG4gICAgICAgIGNvbG9yOiRmb3JtX2dyZXk7XG4gICAgICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDoyMHB4O1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgY29sb3I6JGZvcm1fZ3JleTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OidCbGFjayBUaWUnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICBsZWZ0OjBweDtcbiAgICAgICAgICAgIHRvcDowcHg7XG4gICAgICAgICAgICBvcGFjaXR5OjE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiBjaGVja2JveCBjaGVja2VkIGljb24gKi9cblxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICYgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcRjA4QlwiOyAgXG4gICAgfVxuXG4gICAgJjpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXEYwMTRcIjsgIFxuICAgIH1cbn1cbi8qIHJhZGlvIGNoZWNrZWQgaWNvbiAqL1xuXG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgJiArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxGMDhDXCI7ICBcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcRjBENVwiOyAgXG4gICAgfVxufVxuLyogcmFkaW8vY2hlY2tib3ggaG92ZXIgYW5kIHNlbGVjdGVkIHN0eWxlcyAqL1xuXG4uZm9ybS1jb21wbGV0ZSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgYm9yZGVyOjA7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYmFja2dyb3VuZDokd2hpdGU7XG4gICAgcG9pbnRlci1ldmVudHM6bm9uZTtcblxuICAgIC5jb250YWN0LXdpZGdldCxcbiAgICAuc3VjY2Vzcy1tZXNzYWdlIHtcbiAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjJzIGVhc2UpO1xuICAgIH1cblxuICAgIC5zdWNjZXNzLW1lc3NhZ2Uge1xuICAgICAgICBjb2xvcjogJGRhcmtfYmx1ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgLmNvbnRhY3Qtd2lkZ2V0IHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG5hc2lkZSAuZm9ybS1jb21wbGV0ZSAuc3VjY2Vzcy1tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG59IiwiLmRvYy1kb3duLXdpZGdldCB7XG4gICAgLmZsZXgtbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhib3g7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICAgICAgQGluY2x1ZGUgc3BhY2VCZXR3ZWVuO1xuXG4gICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHdpZHRoOmNhbGMoNTAlIC0gMzRweCk7XG4gICAgICAgICAgICBwYWRkaW5nOjM0cHggNTBweCAzMnB4IDEzNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6MHB4IDBweCA0NnB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyBcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG5cbiAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgICAgICAgICAgICAgLy9mbG9hdDpsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW46NzY4cHgpIHtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NjRweDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzMpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOmJvdGg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6MHB4IDBweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyBcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjIwcHggMzBweCAyMHB4IDg4cHg7XG5cbiAgICAgICAgICAgICAgICAmICsgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo2OHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOjM4cHg7XG4gICAgICAgICAgICAgICAgbGVmdDo0NHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRvcDoyNHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDo3NHB4O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDo1OHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjI1cyBlYXNlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRncmV5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS41MztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6JGdyZXk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTowLjc1O1xuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgIGNvbG9yOiRncmV5OyBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmZhcS13aWRnZXQge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6NzcwcHg7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbiB7XG4gICAgICAgIC5hY2NvcmRpb24tZ3JvdXAge1xuICAgICAgICAgICAgYm9yZGVyOjJweCBzb2xpZCAkYm9yZGVyX2dyZXk7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6JGRhcmtfYmx1ZTtcblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjI4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToyNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OidcXGYwMjEnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFjY29yZGlvbi1idG4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS40O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjIzcHggMTIwcHggMjZweCA1MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7XG4gICAgICAgICAgICAgICAgLWtodG1sLXVzZXItc2VsZWN0Om5vbmU7XG4gICAgICAgICAgICAgICAgLW1vei11c2VyLXNlbGVjdDpub25lO1xuICAgICAgICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDpub25lO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0Om5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjVweCA2NXB4IDI1cHggMjVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjUwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6J0JsYWNrIFRpZSc7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6J1xcZjAxYic7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6MnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgLmFjY29yZGlvbi1jb250ZW50LWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzo0MHB4IDUwcHggNDNweCA1MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzoyNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgLmFjY29yZGlvbi1ncm91cCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5nYWxsZXJ5LWltYWdlLXdpZGdldCB7XG4gICAgaDMge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOjQwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo5MnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6MzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206NDVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nYWxsZXJ5LWxpc3Qge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG4gICAgICAgIC8vQGluY2x1ZGUgc3BhY2VCZXR3ZWVuO1xuXG4gICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHdpZHRoOmNhbGMoMzMuMzMlIC0gNDdweCk7XG5cbiAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAvL2Zsb2F0OmxlZnQ7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW46NzY4cHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDo3MHB4O1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQobis0KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6NzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjY1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24gLSAyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQobis0KTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDUwJSAtIDM1cHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjcwcHg7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzMpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo3MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NjVweDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo1NTBweCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOmNhbGMoNTAlIC0gMTIuNXB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDoyNXB4O1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQobiszKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4gLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDo4Ny4zJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjM1cyBlYXNlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGRhcmtfYmx1ZSwgMC43NSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXFxGMDAyXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OlwiQmxhY2sgVGllXCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo1MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDo1MCU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjUsIDAuNSkgdHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKGxlZnQgdG9wKTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjM1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIgLmltZyB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuaW1hZ2UtdGV4dC13aWRnZXQge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6MDtcblxuICAgIC5pbWcge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDoxO1xuICAgICAgICBoZWlnaHQ6MDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6NTEuMzUlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbjoxMjgwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIGhlaWdodDo2NTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo0ODdweCkge1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgaGVpZ2h0OjI1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6XCIgXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6MzNweDtcbiAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuICAgICAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MTFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDowO1xuICAgICAgICBcdC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBcdGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3R0b206MDtcbiAgICAgICBcdFx0LypiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0OyovXG4gICAgICAgIFx0YmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjQ7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOjMwLjglO1xuICAgICAgICBtYXJnaW46MCAyNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbjoxMjgwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjM5NXB4O1xuICAgICAgICB9ICAgICAgICBcblxuICAgICAgICAuaW5uZXItdGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6NDtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ODYwcHg7XG4gICAgICAgICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgICAgICAgYmFja2dyb3VuZDokd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOjkxcHggMTA1cHggODJweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgICAgYm94LXNoYWRvdzowcHggMHB4IDQ2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7IFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjMwcHggMzVweDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OjBweCAwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6NDBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI4cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiArIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjUycHggIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo1MnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIubGF0ZXN0LXByb2plY3Qtd2lkZ2V0IHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB6LWluZGV4OjA7XG4gICAgbWF4LWhlaWdodDo2MDBweDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG5cbiAgICAudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIHRvcDowO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1ob3Jpem9udGFsKHJnYmEoJGRhcmtfYmx1ZSwwLjg1KSwgcmdiYSgkZGFya19ibHVlLDApLCAwJSwgMTAwJSk7XG4gICAgfVxuXG4gICAgLmlubmVyLXRleHQge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDoyO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwgLTUwJSkpO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MTElO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjExJTtcbiAgICAgICAgcGFkZGluZy10b3A6NHB4O1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6MDsgXG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOjQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxLjE7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjMwcHg7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgICAgXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6MjVweDsgXG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7IFxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS4zO1xuICAgICAgICAgICAgbWFyZ2luOjdweCAwIDlweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgfSAgICAgICAgIFxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICYtaWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjMxcHggMCA5N3B4IDNweDsgIFxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4Ojk5MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjoyNXB4IDAgNTVweCAzcHg7IFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjoyMHB4IDAgNTBweCAzcHg7XG4gICAgICAgICAgICAgICAgfSAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtd2hpdGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjFweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDoyNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjI1cHg7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5pbWcge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDowO1xuICAgICAgICBwYWRkaW5nLXRvcDo0Ni43JTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgbWluLWhlaWdodDo0NDVweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjMzcHg7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgcmlnaHQ6MDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbS14cycpIHtcbiAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MTFweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBib3R0b206MDtcbiAgICAgICBcdC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgIH1cbn1cbiIsIi5saXN0aW5nLWZpbHRlci13aWRnZXQge1xuICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgIHBhZGRpbmc6ODBweCAwO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgcGFkZGluZzo1MHB4IDA7XG4gICAgfVxuXG4gICAgLmxpc3RpbmctdGl0bGUge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDo1O1xuICAgICAgICB0b3A6LTEwN3B4O1xuICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsMCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgY29sb3I6JGJyaWdodF9ibHVlO1xuICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4xO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgIHRvcDotNzdweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6MTFweCAwIDEycHg7XG4gICAgICAgIHdpZHRoOjI1MHB4O1xuICAgICAgICBib3JkZXI6MnB4IHNvbGlkICNkZGRkZGQ7XG4gICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgICBjb2xvcjojNjY2NjY2O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo4OTBweCkge1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6MzAwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmICsgLmJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDoxNnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6ODkwcHgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46MjBweCBhdXRvIDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWNvbXBhbnk6bm90KC5jdXJyZW50KSB7XG4gICAgICAgICAgICBjb2xvcjokYnJpZ2h0X2JsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1pbmR1c3RyeTpub3QoLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrX2JsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiRvZmZfd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRvZmZfd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjojNjY2NjY2O1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6MThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0LXdyYXAtLWJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OjA7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDoyODBweDtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6NjUwcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTonQmxhY2sgVGllJztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbiAgICAgICAgICAgIGNvbnRlbnQ6J1xcRjA5MSc7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgIGNvbG9yOiRicmlnaHRfYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgICByaWdodDozMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4O1xuICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjE4cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo2NTBweCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjoyMHB4IDAgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgICAgICAgICAtbW96LWFwcGVhcmFuY2U6bm9uZTtcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6bm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiRicmlnaHRfYmx1ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6MTJweCBjYWxjKDI0cHggKyAxMDNweCkgMTJweCAyNHB4O1xuICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlICsgNjBweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgICAgICBib3JkZXI6MDtcblxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6bm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzplbGxpcHNpcztcblxuICAgICAgICAgICAgJjpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiMwMDU0YTA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowIDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjE1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjokZm9ybV9ncmV5O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgY29udGVudDpcIiBcIjtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjMzcHg7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgcmlnaHQ6MDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbS14cycpIHtcbiAgICAgICAgICAgIGhlaWdodDoyMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MTFweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBib3R0b206MDtcbiAgICAgICBcdC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy9ib3R0b20tY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgIH1cblxuICAgIC5zdGFuZGFyZC13aWRnZXQgKyAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDo4MHB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiR3aWRnZXRNb2JpbGVNYXJnaW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmICsgLmJsb2ctd2lkZ2V0IHtcbiAgICAgICAgbWFyZ2luLXRvcDo4MHB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxleC1saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcm9kdWN0IHtcbiAgICAgICAgLndpZGdldC1jb250YWluZXIgKyAmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MTI1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjcwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo5MzBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIC5zZWxlY3Qtd3JhcC0tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtYXg6OTMwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjIwcHggMCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tcHJvamVjdHMge1xuICAgICAgICAucGFnZS10aXRsZSArICYsXG4gICAgICAgIC5wYWdlLXN1YnRpdGxlICsgJixcbiAgICAgICAgLndpZGdldC1jb250YWluZXIgKyAmIHtcbiAgICAgICAgICAgbWFyZ2luLXRvcDoxMTRweCAhaW1wb3J0YW50O1xuICAgICAgICBcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6NTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcGFkZGluZy1ib3R0b206NDBweDsgXG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6OTEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0LXdyYXAtLWJ1dHRvbiB7XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpLFxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubG9nb3Mtd2lkZ2V0IHtcbiAgICAuZmxleC1saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleGJveDtcbiAgICAgICAgQGluY2x1ZGUgZmxleC13cmFwKHdyYXApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBodG1sLmllMTAgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6MTtcbiAgICAgICAgICAgIGJvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6MjBweDtcblxuICAgICAgICAgICAgaHRtbC5pZTEwICYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW46NzY4cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDMzLjMzJSAtIDQ2LjY3cHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjcwcHg7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbiAtIDIpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDo1MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NjVweDtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbiAtIDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzQpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOmJvdGg7XG4gICAgICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgICAgIHdpZHRoOmNhbGMoNTAlIC0gMjVweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6NTBweDtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG4rMykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaHRtbC5pZTEwICYge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuXG4gICAgICAgICAgICAgICAgICAgICYgKyBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWF4OjU1MHB4KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowcHg7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChuKzMpLFxuICAgICAgICAgICAgICAgICYgKyBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoyNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGh0bWwuaWUxMCAmIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcblxuICAgICAgICAgICAgICAgICAgICAmICsgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybiAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmltZy1jb250IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MTYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjEzM3B4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvbnRhaW47XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIHdpZHRoOjgwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46MCBhdXRvIDMzcHg7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgIC1tb3otZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAtbXMtZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAtby1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgIGZpbHRlcjpncmF5c2NhbGUoMTAwJSk7XG4gICAgICAgICAgICAgICAgZmlsdGVyOmdyYXk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgICAgICAgICAgY29sb3I6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhbmltKG9wYWNpdHkgLjI1cyBlYXNlKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjokZGFya19ibHVlO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLm1hcC13aWRnZXQge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHotaW5kZXg6MDtcblxuICAgICZfX3dyYXAge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDowO1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OjMzcHg7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICByaWdodDowO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCdzbS14cycpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MjJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgXHQvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgICAgXHRiYWNrZ3JvdW5kOnVybChcIi4uL2ltZy90b3AtY3VydmUtYmx1ZS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgXHRcdC8qYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUuc3ZnXCIpIG5vLXJlcGVhdDsqL1xuICAgICAgICBcdGJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFwIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgcGFkZGluZy10b3A6NTEuMzUlO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbjoxMjgwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIGhlaWdodDo2NTZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo0ODdweCkge1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgaGVpZ2h0OjM3NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5mb2JveCB7XG4gICAgICAgIG1hcmdpbi10b3A6NTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGJveC1zaGFkb3c6MHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTEpO1xuICAgICAgICB3aWR0aDozMjNweDtcbiAgICAgICAgLy9oZWlnaHQ6MjA3cHg7XG4gICAgICAgIHBhZGRpbmc6MjVweCAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcblxuICAgICAgICAmICoge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6J0xhdG8nLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTpub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOjIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDozNXB4O1xuXG4gICAgICAgICAgICAmICsgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDozcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MjJweDtcblxuICAgICAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50ZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjNweDsgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBjb2xvcjokZGFya19ibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ21kLXhzJykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnlDb2xvdXI7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nbS1zdHlsZSBpbWcge1xuICAgICAgICB3aWR0aDoxOHB4O1xuICAgICAgICBoZWlnaHQ6MThweDtcbiAgICAgICAgLy90b3A6MTRweDtcbiAgICAgICAgdG9wOjY5cHg7XG4gICAgICAgIHJpZ2h0OjEzcHg7XG4gICAgfVxuXG4gICAgLmdtbm9wcmludC5nbS1idW5kbGVkLWNvbnRyb2wge1xuICAgICAgICB0b3A6NTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6LTI3cHggIWltcG9ydGFudDtcbiAgICB9XG59IiwiLnBhZ2UtcmVsYXRpb25zaGlwLXdpZGdldCB7XG4gICAgLmZsZXgtbGlzdCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDowO1xuICAgICAgICAgICAgYm94LXNoYWRvdzowcHggMHB4IDQ2cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7IFxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OjBweCAwcHggMjBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDoxO1xuICAgICAgICAgICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOjU2LjYlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOjYwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDowO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDoyO1xuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjU2LjYlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjUwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OjM7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYmxvZy13aWRnZXQtY3VydmUucG5nXCIpIG5vLXJlcGVhdDsgXG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6LTEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmlubmVyLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzo5MXB4IDU1cHggMTAxcHggNDFweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6NDBweCAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OjM7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiIFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvcmVhZC1tb3JlLWN1cnZlLnBuZ1wiKSBuby1yZXBlYXQ7IFxuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0Oi0xOXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KFwieHNcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuNDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokb2ZmX2JsYWNrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjM1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtLXhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MTRweCA1MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MTRweCAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmICsgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5zaGFyZS13aWRnZXQge1xuXHRtYXJnaW4tdG9wOjMwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuICAgIH0gXG5cblx0LnN1Yi1uYXZfX3dyYXAgKyAubWFpbi1jb250ZW50ID4gJiB7XG4gICAgICAgIG1hcmdpbi10b3A6MCAhaW1wb3J0YW50O1xuICAgIH1cblxuXHQuY29udGFpbmVyIHtcblx0XHR0ZXh0LWFsaWduOmNlbnRlcjtcblx0fVxuXG5cdGg0IHtcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRmb250LXdlaWdodDo0MDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06bm9uZTtcblx0XHRmb250LXNpemU6MTRweDtcblx0XHRsaW5lLWhlaWdodDoxNnB4O1xuXHRcdHZlcnRpY2FsLWFsaWduOnRvcDtcblx0XHRjb2xvcjokZ3JleTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdFx0bWFyZ2luLWJvdHRvbToxMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5hZGR0aGlzX3Rvb2xib3gsXG5cdC5jdXN0b21faW1hZ2VzIHtcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdFx0aGVpZ2h0OjE2cHg7XG5cdH1cblxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgICAgIGNvbG9yOiRncmV5O1xuXHRcdGZvbnQtc2l6ZToxNnB4O1xuXHRcdGxpbmUtaGVpZ2h0OjE2cHggIWltcG9ydGFudDtcbiAgICBcdG1hcmdpbjowIDAgMCAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgXHRjdXJzb3I6cG9pbnRlciAhaW1wb3J0YW50O1xuXG4gICAgXHRpIHtcblx0XHRcdGxpbmUtaGVpZ2h0OjE2cHg7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgXHR9XG5cbiAgICBcdCY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuXHQgICAgXHRcdG1hcmdpbjowICFpbXBvcnRhbnQ7XG5cdCAgICBcdH1cbiAgICBcdH1cbiAgICB9XG59IiwiLnN0YW5kYXJkLXdpZGdldCB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG5cbiAgICAuc2luZ2xlLXByb2R1Y3QgJntcbiAgICAgICAgbWFyZ2luLXRvcDogJG1haW5XaWRnZXRQYWRkaW5nICogMS41O1xuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOjAgKCRndXR0ZXJXaWR0aCArIDcwcHgpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3NtLXhzJykge1xuICAgICAgICAgICAgcGFkZGluZzowIDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCd4cycpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6MCAkZ3V0dGVyV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgcGFkZGluZzowO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgei1pbmRleDoxO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6XCJCbGFjayBUaWVcIjtcbiAgICAgICAgICAgIGNvbnRlbnQ6J1xcRjA4QycgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDozMHB4O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246dG9wO1xuICAgICAgICB9XG5cbiAgICAgICAgb2wge1xuICAgICAgICAgICAgY291bnRlci1yZXNldDogbXktYmFkYXNzLWNvdW50ZXI7XG5cbiAgICAgICAgICAgIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDpjb3VudGVyKG15LWJhZGFzcy1jb3VudGVyKVwiLlwiO1xuICAgICAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBteS1iYWRhc3MtY291bnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gXG5cbiAgICAuc29jaWFsLW1lZGlhIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCA1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbn0iLCIudmlkZW8td2lkZ2V0IHtcbiAgICAudmlkZW8tY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgICAgbWF4LWhlaWdodDo2NTZweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcblxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6NTAlO1xuICAgICAgICAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6MjtcbiAgICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbShhbGwgLjM1cyBlYXNlKTtcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDo3NDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjIwcHggMjVweCAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOjUzNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoXCJ4c1wiKSB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDozNDVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyxcbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTpub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyNXB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxLjI7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4OyAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo0MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjIycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTozMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTVweDsgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo4MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjMwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInNtXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChcInhzXCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTozMHB4OyBcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDsgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDo1MS4zNSU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgIC1tb3otZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAtbXMtZmlsdGVyOmdyYXlzY2FsZSgxMDAlKTtcbiAgICAgICAgICAgICAgICAtby1maWx0ZXI6Z3JheXNjYWxlKDEwMCUpO1xuICAgICAgICAgICAgICAgIGZpbHRlcjpncmF5c2NhbGUoMTAwJSk7XG4gICAgICAgICAgICAgICAgZmlsdGVyOmdyYXk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW46MTI4MHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjY1NnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1heDo0ODdweCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoyNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLWZpbHRlciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGRhcmtfYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTowLjc1O1xuICAgICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjIsIDEuMikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6XCIgXCI7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDozM3B4O1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIHJpZ2h0OjA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20teHMnKSB7XG4gICAgICAgICAgICBoZWlnaHQ6MjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJykge1xuICAgICAgICAgICAgaGVpZ2h0OjExcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRvcDowO1xuICAgICAgICAvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL3RvcC1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvdG9wLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgXHQvKmJhY2tncm91bmQ6dXJsKFwiLi4vaW1nL2JvdHRvbS1jdXJ2ZS1ibHVlLnN2Z1wiKSBuby1yZXBlYXQ7Ki9cbiAgICAgICAgYmFja2dyb3VuZDp1cmwoXCIuLi9pbWcvYm90dG9tLWN1cnZlLWJsdWUucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCUgMTAwJTtcbiAgICB9XG59IiwiJGJ1dHRvblNwYWNpbmc6IDIwcHg7XG5cbi5idXR0b25zLXdpZGdldCArIC5idXR0b25zLXdpZGdldCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmJ1dHRvbi13cmFwIHtcbiAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgIEBpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5KGNlbnRlcik7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGJ1dHRvblNwYWNpbmd9KTtcbiAgICBtYXJnaW46IDAgKC0kYnV0dG9uU3BhY2luZy8yKSAoLSRidXR0b25TcGFjaW5nKTtcblxuICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBmbGV4Ym94O1xuICAgICAgICBAaW5jbHVkZSBhbGlnbihjZW50ZXIpO1xuICAgICAgICBtYXJnaW46IDAgKCRidXR0b25TcGFjaW5nLzIpICRidXR0b25TcGFjaW5nO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDQwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtICN7JGJ1dHRvblNwYWNpbmd9KTtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogJGRhcmtfYmx1ZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgnc20nKXtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgneHMnKXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRidXR0b25TcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gJjpob3ZlciB7XG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kOiAkYnJpZ2h0X2JsdWU7XG4gICAgICAgIC8vIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYnV0dG9uU3BhY2luZztcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJyl7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0T25QcmltYXJ5Q29sb3VyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJ3hzJyl7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJvZHkud2ItaG9tZXBhZ2UgJiB7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufSIsIkBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAgIC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OmV4YWN0O1xuICAgICAgICBwcmludC1jb2xvci1hZGp1c3Q6ZXhhY3Q7XG4gICAgfVxuXG4gICAgQHBhZ2UgeyBcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIHNpemU6YXV0bztcbiAgICB9XG5cbiAgICBib2R5IHsgXG4gICAgICAgIG1hcmdpbjoxOG1tO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX2JnLFxuICAgIGhlYWRlciAuaGVhZGVyX190b3AsXG4gICAgLmhlYWRlcl9fYm90dG9tX19wdWxscmlnaHQsXG4gICAgLm1hc3RoZWFkLXNsaWRlcixcbiAgICAuaG9tZS1zbGlkZXIsXG4gICAgLndpZGdldC1jb250YWluZXI6bm90KC5zdGFuZGFyZC13aWRnZXQpOm5vdCgucHJvZHVjdHMtdG9wLXdpZGdldCk6bm90KC5mYXEtd2lkZ2V0KSxcbiAgICAuZm9vdGVyLFxuICAgIC5tb2RhbCxcbiAgICAubW9iLW1lbnUtb3ZlcmxheSxcbiAgICAudW5kZXItc2xpZGVyLFxuICAgIGJvZHkud2ItaG9tZXBhZ2UgLm1haW4tYm9keSAuc3RhbmRhcmQtd2lkZ2V0IC5idXR0b24sXG4gICAgbmF2LnNoYWRpbmctbmF2LFxuICAgIGJvZHkud2Itc2hhZGluZy1mb3IgI3dyYXAgPiBzZWN0aW9uOm5vdCgubWFpbi1ib2R5KSxcbiAgICBib2R5LndiLXNoYWRpbmctZm9yICN3cmFwID4gc2VjdGlvbi5tYWluLWJvZHkgLmltZyxcbiAgICAucHJvamVjdC1zbGlkZXIsXG4gICAgYm9keS5zaW5nbGUtcHJvamVjdCAuYnV0dG9uLWNvbnRhaW5lcixcbiAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5wcm9qZWN0LWRldGFpbHMtc2VjdGlvbjphZnRlcixcbiAgICAucHJvZHVjdHMtdG9wLXdpZGdldCAucXVpY2tsaW5rcyxcbiAgICAucGFnZW51bWJlci1jb250YWluZXIsXG4gICAgLnN1Yi1uYXZfX3dyYXAge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIHZpc2liaWxpdHk6aGlkZGVuO1xuICAgICAgICBoZWlnaHQ6MDtcbiAgICAgICAgd2lkdGg6MDtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgIH1cblxuICAgIGh0bWwsXG4gICAgYm9keSxcbiAgICAjd3JhcCxcbiAgICBoZWFkZXIsXG4gICAgYm9keS53Yi1zaGFkaW5nLWZvciBoZWFkZXIsIGJvZHkud2Itc2hhZGluZy1mb3IgLmhlYWRlcl9fYmcge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDowO1xuICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjokYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhW2hyZWZdIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6bm9uZTtcbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIGNvbG9yOiRibGFjayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6bm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGhlYWRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjE1cHg7XG5cbiAgICAgICAgLmhlYWRlcl9fYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIHdpZHRoOjIxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6NDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luOjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDowO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICY6bm90KC5wcmludC1sb2dvKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYucHJpbnQtbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWN0aW9uLm1haW4tYm9keSB7XG4gICAgICAgIHBhZGRpbmc6MjVweCAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6JHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDphdXRvICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC53aWRnZXQtY29udGFpbmVyICsgLndpZGdldC1jb250YWluZXIsXG4gICAgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uICsgLndpZGdldC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOjUwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucGFnZS10aXRsZSArIC53aWRnZXQtY29udGFpbmVyLFxuICAgIC5wYWdlLXN1YnRpdGxlICsgLndpZGdldC1jb250YWluZXIsXG4gICAgLndpZGdldC1jb250YWluZXIgKyAucGFnZS10aXRsZSxcbiAgICAud2lkZ2V0LWNvbnRhaW5lciArIC5wYWdlLXN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDoyNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLndpZGdldC1jb250YWluZXIgLndpZGdldC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MzVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mYXEtd2lkZ2V0IHtcbiAgICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWdyb3VwIHtcbiAgICAgICAgICAgIGJvcmRlcjowcHg7XG5cbiAgICAgICAgICAgICYgKyAuYWNjb3JkaW9uLWdyb3VwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24tYnRuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OmF1dG8gIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tY29udGVudC1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzoxMHB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYm9keS53Yi1zaGFkaW5nLWZvciAjd3JhcCA+IHNlY3Rpb24ubWFpbi1ib2R5IGgxIHtcbiAgICAgICAgYmFja2dyb3VuZDpub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvamVjdC1kZXRhaWxzLXNlY3Rpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcblxuICAgICAgICAuZGVzY3JpcHRpb24tY29udGFpbmVyIHtcbiAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJvZHkuc2luZ2xlLXByb2plY3QgLnByb2plY3QtZGV0YWlscy1zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzowIDAgMjVweDtcbiAgICB9XG5cbiAgICBib2R5LnNpbmdsZS1wcm9qZWN0IC5mbGV4LWNvbnRhaW5lciAuZGVzY3JpcHRpb24tY29udGFpbmVyIHAge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuXG4gICAgLnByb2R1Y3RzLXRvcC13aWRnZXQgLm1haW4tZGVzY3JpcHRpb24ge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIGJvcmRlcjowcHg7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbn0iXX0= */
