@charset "UTF-8";
/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif; }

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

h2 {
  font-size: 1.5em;
  margin: 0.83em 0; }

h3 {
  font-size: 1.17em;
  margin: 1em 0; }

h4 {
  font-size: 1em;
  margin: 1.33em 0; }

h5 {
  font-size: 0.83em;
  margin: 1.67em 0; }

h6 {
  font-size: 0.67em;
  margin: 2.33em 0; }

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */
b,
strong {
  font-weight: bold; }

blockquote {
  margin: 1em 40px; }

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0; }

/**
 * Address styling not present in IE 6/7/8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 1em 0; }

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none; }

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 0; }

dd {
  margin: 0 0 0 0; }

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 0; }

/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */ }

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* 
 *  Core Owl Carousel CSS File
 *  v1.3.3
 */
/* clearfix */
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

/* display none until init */
.owl-carousel {
  display: none;
  position: relative;
  width: 100%;
  -ms-touch-action: pan-y; }

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-wrapper-outer {
  overflow: hidden;
  position: relative;
  width: 100%; }

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

.owl-carousel .owl-item {
  float: left; }

.owl-controls .owl-page,
.owl-controls .owl-buttons div {
  cursor: pointer; }

.owl-controls {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

/* mouse grab icon */
.grabbing {
  cursor: url(grabbing.png) 8 8, move; }

/* fix */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }

/*
*   Owl Carousel Owl Demo Theme 
* v1.3.3
*/
.owl-theme .owl-controls {
  margin-top: 10px;
  text-align: center; }

/* Styling Next and Prev buttons */
.owl-theme .owl-controls .owl-buttons div {
  color: #FFF;
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */
  margin: 5px;
  padding: 3px 10px;
  font-size: 12px;
  border-radius: 30px;
  background: #869791;
  filter: Alpha(Opacity=50);
  /*IE7 fix*/
  opacity: 0.5; }

/* Clickable class fix problem with hover on touch devices */
/* Use it for non-touch hover action */
.owl-theme .owl-controls.clickable .owl-buttons div:hover {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1;
  text-decoration: none; }

/* Styling Pagination*/
.owl-theme .owl-controls .owl-page {
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */ }

.owl-theme .owl-controls .owl-page span {
  display: block;
  width: 8px;
  height: 8px;
  margin: 5px 5px;
  filter: Alpha(Opacity=50);
  /*IE7 fix*/
  opacity: 0.5;
  border-radius: 20px;
  background: #444; }

.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1; }

/* If PaginationNumbers is true */
.owl-theme .owl-controls .owl-page span.owl-numbers {
  height: auto;
  width: auto;
  color: #FFF;
  padding: 2px 10px;
  font-size: 12px;
  border-radius: 30px; }

/* preloading images */
.owl-item.loading {
  min-height: 150px;
  background: url(AjaxLoader.gif) no-repeat center center; }

/* 
 *  Owl Carousel CSS3 Transitions 
 *  v1.3.2
 */
.owl-origin {
  -webkit-perspective: 1200px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
  -moz-perspective: 1200px;
  -moz-perspective-origin-x: 50%;
  -moz-perspective-origin-y: 50%;
  perspective: 1200px; }

/* fade */
.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut .7s both ease;
  animation: fadeOut .7s both ease; }

.owl-fade-in {
  -webkit-animation: fadeIn .7s both ease;
  animation: fadeIn .7s both ease; }

/* backSlide */
.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease; }

.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease; }

/* goDown */
.owl-goDown-out {
  -webkit-animation: scaleToFade .7s ease both;
  animation: scaleToFade .7s ease both; }

.owl-goDown-in {
  -webkit-animation: goDown .6s ease both;
  animation: goDown .6s ease both; }

/* scaleUp */
.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom .5s ease both;
  animation: scaleUpFrom .5s ease both; }

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo .5s ease both;
  animation: scaleUpTo .5s ease both; }

/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
  0% {
    opacity: 1; } }

@keyframes empty {
  0% {
    opacity: 1; } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes backSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%); }
  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%); } }

@keyframes backSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
            transform: translateZ(-500px); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
            transform: translateZ(-500px) translateX(-200%); }
  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
            transform: translateZ(-500px) translateX(-200%); } }

@-webkit-keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px); }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0); } }

@keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%);
            transform: translateZ(-500px) translateX(200%); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px);
            transform: translateZ(-500px); }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
            transform: translateZ(0) translateX(0); } }

@-webkit-keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8); } }

@keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
            transform: scale(0.8); } }

@-webkit-keyframes goDown {
  from {
    -webkit-transform: translateY(-100%); } }

@keyframes goDown {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); } }

@-webkit-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5); } }

@keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5); } }

@-webkit-keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5); } }

@keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5); } }

.container:after, footer .credits:after, footer .footer-links:after, .nav:after, .nav .mega_dropdown:after, .floated-labels:after, .breadcrumb:after, .section-heading:after, .msf_global ul:after, .impact .listing-block ul:after, .stats.inline-stats:after, .stats ul:after, .latest_feed:after, .latest_feed ul:after, .share_bar:after, footer .social ul:after, .listing-filters:after, .filters ul:after, .pos-statement:after, .callout:after, .wide-list ul:after, .sg-heading:after, .sg-row:after, .colours:after {
  content: "";
  display: table;
  clear: both;
  border-spacing: 0; }

.parent:before, .parent-mobile:before, .parent-tablet-portrait:before, .parent-tablet-wide:before, .parent-tablet-landscape:before, .parent-desktop:before, .parent-desktop-wide:before, .parent-desktop-wider:before, .parent:after, .parent-mobile:after, .parent-tablet-portrait:after, .parent-tablet-wide:after, .parent-tablet-landscape:after, .parent-desktop:after, .parent-desktop-wide:after, .parent-desktop-wider:after {
  content: "";
  display: table;
  border-spacing: 0; }

.parent:after, .parent-mobile:after, .parent-tablet-portrait:after, .parent-tablet-wide:after, .parent-tablet-landscape:after, .parent-desktop:after, .parent-desktop-wide:after, .parent-desktop-wider:after {
  clear: both; }

.parent, .parent-mobile, .parent-tablet-portrait, .parent-tablet-wide, .parent-tablet-landscape, .parent-desktop, .parent-desktop-wide, .parent-desktop-wider {
  zoom: 1; }

.push-0, .push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-mobile-0, .push-mobile-1, .push-mobile-2, .push-mobile-3, .push-mobile-4, .push-mobile-5, .push-mobile-6, .push-mobile-7, .push-mobile-8, .push-mobile-9, .push-mobile-10, .push-mobile-11, .push-mobile-12, .push-tablet-portrait-0, .push-tablet-portrait-1, .push-tablet-portrait-2, .push-tablet-portrait-3, .push-tablet-portrait-4, .push-tablet-portrait-5, .push-tablet-portrait-6, .push-tablet-portrait-7, .push-tablet-portrait-8, .push-tablet-portrait-9, .push-tablet-portrait-10, .push-tablet-portrait-11, .push-tablet-portrait-12, .push-tablet-wide-0, .push-tablet-wide-1, .push-tablet-wide-2, .push-tablet-wide-3, .push-tablet-wide-4, .push-tablet-wide-5, .push-tablet-wide-6, .push-tablet-wide-7, .push-tablet-wide-8, .push-tablet-wide-9, .push-tablet-wide-10, .push-tablet-wide-11, .push-tablet-wide-12, .push-tablet-landscape-0, .push-tablet-landscape-1, .push-tablet-landscape-2, .push-tablet-landscape-3, .push-tablet-landscape-4, .push-tablet-landscape-5, .push-tablet-landscape-6, .push-tablet-landscape-7, .push-tablet-landscape-8, .push-tablet-landscape-9, .push-tablet-landscape-10, .push-tablet-landscape-11, .push-tablet-landscape-12, .push-desktop-0, .push-desktop-1, .push-desktop-2, .push-desktop-3, .push-desktop-4, .push-desktop-5, .push-desktop-6, .push-desktop-7, .push-desktop-8, .push-desktop-9, .push-desktop-10, .push-desktop-11, .push-desktop-12, .push-desktop-wide-0, .push-desktop-wide-1, .push-desktop-wide-2, .push-desktop-wide-3, .push-desktop-wide-4, .push-desktop-wide-5, .push-desktop-wide-6, .push-desktop-wide-7, .push-desktop-wide-8, .push-desktop-wide-9, .push-desktop-wide-10, .push-desktop-wide-11, .push-desktop-wide-12, .push-desktop-wider-0, .push-desktop-wider-1, .push-desktop-wider-2, .push-desktop-wider-3, .push-desktop-wider-4, .push-desktop-wider-5, .push-desktop-wider-6, .push-desktop-wider-7, .push-desktop-wider-8, .push-desktop-wider-9, .push-desktop-wider-10, .push-desktop-wider-11, .push-desktop-wider-12, .pull-0, .pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-mobile-0, .pull-mobile-1, .pull-mobile-2, .pull-mobile-3, .pull-mobile-4, .pull-mobile-5, .pull-mobile-6, .pull-mobile-7, .pull-mobile-8, .pull-mobile-9, .pull-mobile-10, .pull-mobile-11, .pull-mobile-12, .pull-tablet-portrait-0, .pull-tablet-portrait-1, .pull-tablet-portrait-2, .pull-tablet-portrait-3, .pull-tablet-portrait-4, .pull-tablet-portrait-5, .pull-tablet-portrait-6, .pull-tablet-portrait-7, .pull-tablet-portrait-8, .pull-tablet-portrait-9, .pull-tablet-portrait-10, .pull-tablet-portrait-11, .pull-tablet-portrait-12, .pull-tablet-wide-0, .pull-tablet-wide-1, .pull-tablet-wide-2, .pull-tablet-wide-3, .pull-tablet-wide-4, .pull-tablet-wide-5, .pull-tablet-wide-6, .pull-tablet-wide-7, .pull-tablet-wide-8, .pull-tablet-wide-9, .pull-tablet-wide-10, .pull-tablet-wide-11, .pull-tablet-wide-12, .pull-tablet-landscape-0, .pull-tablet-landscape-1, .pull-tablet-landscape-2, .pull-tablet-landscape-3, .pull-tablet-landscape-4, .pull-tablet-landscape-5, .pull-tablet-landscape-6, .pull-tablet-landscape-7, .pull-tablet-landscape-8, .pull-tablet-landscape-9, .pull-tablet-landscape-10, .pull-tablet-landscape-11, .pull-tablet-landscape-12, .pull-desktop-0, .pull-desktop-1, .pull-desktop-2, .pull-desktop-3, .pull-desktop-4, .pull-desktop-5, .pull-desktop-6, .pull-desktop-7, .pull-desktop-8, .pull-desktop-9, .pull-desktop-10, .pull-desktop-11, .pull-desktop-12, .pull-desktop-wide-0, .pull-desktop-wide-1, .pull-desktop-wide-2, .pull-desktop-wide-3, .pull-desktop-wide-4, .pull-desktop-wide-5, .pull-desktop-wide-6, .pull-desktop-wide-7, .pull-desktop-wide-8, .pull-desktop-wide-9, .pull-desktop-wide-10, .pull-desktop-wide-11, .pull-desktop-wide-12, .pull-desktop-wider-0, .pull-desktop-wider-1, .pull-desktop-wider-2, .pull-desktop-wider-3, .pull-desktop-wider-4, .pull-desktop-wider-5, .pull-desktop-wider-6, .pull-desktop-wider-7, .pull-desktop-wider-8, .pull-desktop-wider-9, .pull-desktop-wider-10, .pull-desktop-wider-11, .pull-desktop-wider-12 {
  position: relative; }

.container, footer .credits, footer .footer-links, .nav, .nav .mega_dropdown, .floated-labels, .breadcrumb, .section-heading, .msf_global ul, .impact .listing-block ul, .stats.inline-stats, .stats ul, .latest_feed, .latest_feed ul, .share_bar, footer .social ul, .listing-filters, .filters ul, .pos-statement, .callout, .wide-list ul, .sg-heading, .sg-row, .colours {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.parent, .parent-mobile, .parent-tablet-portrait, .parent-tablet-wide, .parent-tablet-landscape, .parent-desktop, .parent-desktop-wide, .parent-desktop-wider {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.grid-0, .grid-1, .grid-2, .grid-3, .grid-4, .grid-5, .grid-6, .grid-7, .grid-8, .grid-9, .grid-10, .grid-11, .grid-12, .col-md-4, .col-md-6, .grid-mobile-0, .grid-mobile-1, .grid-mobile-2, .grid-mobile-3, .grid-mobile-4, .grid-mobile-5, .grid-mobile-6, .grid-mobile-7, .grid-mobile-8, .grid-mobile-9, .grid-mobile-10, .grid-mobile-11, .grid-mobile-12, .grid-tablet-portrait-0, .grid-tablet-portrait-1, .grid-tablet-portrait-2, .grid-tablet-portrait-3, .grid-tablet-portrait-4, .grid-tablet-portrait-5, .grid-tablet-portrait-6, .grid-tablet-portrait-7, .grid-tablet-portrait-8, .grid-tablet-portrait-9, .grid-tablet-portrait-10, .grid-tablet-portrait-11, .grid-tablet-portrait-12, .grid-tablet-wide-0, .grid-tablet-wide-1, .grid-tablet-wide-2, .grid-tablet-wide-3, .grid-tablet-wide-4, .grid-tablet-wide-5, .grid-tablet-wide-6, .grid-tablet-wide-7, .grid-tablet-wide-8, .grid-tablet-wide-9, .grid-tablet-wide-10, .grid-tablet-wide-11, .grid-tablet-wide-12, .grid-tablet-landscape-0, .grid-tablet-landscape-1, .grid-tablet-landscape-2, .grid-tablet-landscape-3, .grid-tablet-landscape-4, .grid-tablet-landscape-5, .grid-tablet-landscape-6, .grid-tablet-landscape-7, .grid-tablet-landscape-8, .grid-tablet-landscape-9, .grid-tablet-landscape-10, .grid-tablet-landscape-11, .grid-tablet-landscape-12, .grid-desktop-0, .grid-desktop-1, .col-md-1, .grid-desktop-2, .col-md-2, .grid-desktop-3, .col-md-3, .grid-desktop-4, .grid-desktop-5, .col-md-5, .grid-desktop-6, .grid-desktop-7, .col-md-7, .grid-desktop-8, .col-md-8, .grid-desktop-9, .col-md-9, .grid-desktop-10, .col-md-10, .grid-desktop-11, .col-md-11, .grid-desktop-12, .col-md-12, .grid-desktop-wide-0, .grid-desktop-wide-1, .grid-desktop-wide-2, .grid-desktop-wide-3, .grid-desktop-wide-4, .grid-desktop-wide-5, .grid-desktop-wide-6, .grid-desktop-wide-7, .grid-desktop-wide-8, .grid-desktop-wide-9, .grid-desktop-wide-10, .grid-desktop-wide-11, .grid-desktop-wide-12, .grid-desktop-wider-0, .grid-desktop-wider-1, .grid-desktop-wider-2, .grid-desktop-wider-3, .grid-desktop-wider-4, .grid-desktop-wider-5, .grid-desktop-wider-6, .grid-desktop-wider-7, .grid-desktop-wider-8, .grid-desktop-wider-9, .grid-desktop-wider-10, .grid-desktop-wider-11, .grid-desktop-wider-12 {
  display: inline-block;
  min-height: 1px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/**
 * Str replace
 *
 * @param {string}  $string    String that you want to replace
 * @param {string}  $substr    String that is to be replaced by `$newsubstr`
 * @param {string}  $newsubstr String that replaces `$substr`
 * @param {number*} $all       Flag for replaceing all (1+) or not (0)
 * @return {string}
 */
/**
 * Map set
 *
 * @param 	Map 	$map 		The map to use
 * @param 	String 	$key 		The key to update
 * @param 	Mixed 	$value 		The new value
 * @return 	Map 			The new map
 */
/**
 * Get the column width in percent for the global or a specific context
 *
 * @param 	int 		$columns 					The number of columns to calculate
 * @param 	int 		$context : $gridle-columns-count 	 	The context to use
 * @return 	percentage 							The width in percent
 */
/**
 *  Get a state map
 *
 * @param 	string 		$name 		The name of the state to get
 * @return 	map 				A state map object
 */
/**
 * Check if a state exist :
 *
 * @param 	string 		$name 		The name of the state to check
 * @return 	Boolean 			true is exist
 */
/**
 * Get the media queries variables :
 *
 * @param 	int 		$index 	 	The media query indes
 * @param 	String 		$var 		The media query variable name
 * @return 	String|int 			The variable value
 */
/**
 * Get a variable
 *
 * @param 	String 		$varName 				The variable name
 * @param  	String 		$stateMap-or-stateName 	 	The state name or a map state value
 * @return 	Mixed 							The finded value
 */
/**
 * Set a variable in a state
 * @param 	Mixed $stateName-or-stateIndex 	The state name of state index
 * @param  	String $var                    		Variable name to assign
 * @param  	Mixed $newValue          		The new value to assign
 * @return 	List                         			The states list (full)
 */
/**
 * Generate a column
 *
 * @param 	String 		$name 			The column name (often count)
 * @param 	int 		$columns 		The column count that the column will take
 * @param 	int 		$context 		The context on witch the with will be calculed
 * @param 	Boolean 	$generateClasses 	Set if the column has to be generated in css
 */
/**
 * Generate classname
 *
 * @param 	List 		$parrern 	The pattern to use to generate classname
 * @param 	String 		$state 		The state
 * @param 	int 		$count 		The column count
 */
/**
 * Get the media query for a particular state, or with, etc...
 *
 * @param 	Mixed 		$state-or-min-width 		The state name of the min with
 * @param 	Mixed 		$max-width 			The max width if first param is a min width
 * @return 	String 						The media query string without the @media
 */
/**
 * Get states count
 * 
 * @return 	int 	The number of states defined
 */
/**
 * Setup
 */
/**
 *  Register a clear each class
 */
/**
 * Register a special class
 */
/**
 * Register default states
 */
/**
 * Register default mobile first states :
 */
/**
 * Set the debug device (not used for now)
 * 
 * @param 	String 		$state 		The state to update
 * @para m 	String 		$device 	The device to use (iphone, etc...)
 */
/**
 * Parent clear each
 */
/**
 * Vertical align :
 */
/**
 * Show inline
 *
 * @param 	String 		$state 		The state name
 */
/**
 * Generate a custom class for all the states
 *
 * @param 	list 	$pattern 		The name pattern of the class
 * @param 	list 	$statesNames 		The states names to generate
 */
@media screen and (max-width: 400px) {
  @-ms-viewport {
    width: device-width; } }

#gridle-settings {
  content: '{ "version" : "1.3.40", "states" : { "retina":{ "query" : "(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx)", "classes" : false, "name" : "retina", "_gridle" : true }, "tv":{ "query" : "only tv", "classes" : false, "name" : "tv", "_gridle" : true }, "print":{ "query" : "only print", "classes" : false, "name" : "print", "_gridle" : true }, "portrait":{ "query" : "only screen and (orientation: portrait)", "classes" : false, "name" : "portrait", "_gridle" : true }, "landscape":{ "query" : "only screen and (orientation: landscape)", "classes" : false, "name" : "landscape", "_gridle" : true }, "default":{ "name" : "default", "min-width" : null, "max-width" : null, "query" : null, "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "mobile":{ "name" : "mobile", "min-width" : "414px", "max-width" : null, "query" : "screen and (min-width: 414px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "tablet-portrait":{ "name" : "tablet-portrait", "min-width" : "481px", "max-width" : null, "query" : "screen and (min-width: 481px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "tablet-wide":{ "name" : "tablet-wide", "min-width" : "587px", "max-width" : null, "query" : "screen and (min-width: 587px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "tablet-landscape":{ "name" : "tablet-landscape", "min-width" : "769px", "max-width" : null, "query" : "screen and (min-width: 769px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "desktop":{ "name" : "desktop", "min-width" : "1200px", "max-width" : null, "query" : "screen and (min-width: 1200px)", "classes" : true, "context" : "12", "gutter-width" : "60px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "desktop-wide":{ "name" : "desktop-wide", "min-width" : "1430px", "max-width" : null, "query" : "screen and (min-width: 1430px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }, "desktop-wider":{ "name" : "desktop-wider", "min-width" : "1600px", "max-width" : null, "query" : "screen and (min-width: 1600px)", "classes" : true, "context" : "12", "gutter-width" : "40px", "direction" : "ltr", "name-multiplicator" : "1", "debug" : false, "debug-show-class-names" : true, "ie7-support" : false, "html-states-classes" : false, "generate-push-classes" : true, "generate-pull-classes" : true, "generate-prefix-classes" : true, "generate-suffix-classes" : true, "generate-helpers-classes" : true, "_gridle" : true }} }'; }

.grid-0, .grid-1, .grid-2, .grid-3, .grid-4, .grid-5, .grid-6, .grid-7, .grid-8, .grid-9, .grid-10, .grid-11, .grid-12, .col-md-4, .col-md-6, .grid-mobile-0, .grid-mobile-1, .grid-mobile-2, .grid-mobile-3, .grid-mobile-4, .grid-mobile-5, .grid-mobile-6, .grid-mobile-7, .grid-mobile-8, .grid-mobile-9, .grid-mobile-10, .grid-mobile-11, .grid-mobile-12, .grid-tablet-portrait-0, .grid-tablet-portrait-1, .grid-tablet-portrait-2, .grid-tablet-portrait-3, .grid-tablet-portrait-4, .grid-tablet-portrait-5, .grid-tablet-portrait-6, .grid-tablet-portrait-7, .grid-tablet-portrait-8, .grid-tablet-portrait-9, .grid-tablet-portrait-10, .grid-tablet-portrait-11, .grid-tablet-portrait-12, .grid-tablet-wide-0, .grid-tablet-wide-1, .grid-tablet-wide-2, .grid-tablet-wide-3, .grid-tablet-wide-4, .grid-tablet-wide-5, .grid-tablet-wide-6, .grid-tablet-wide-7, .grid-tablet-wide-8, .grid-tablet-wide-9, .grid-tablet-wide-10, .grid-tablet-wide-11, .grid-tablet-wide-12, .grid-tablet-landscape-0, .grid-tablet-landscape-1, .grid-tablet-landscape-2, .grid-tablet-landscape-3, .grid-tablet-landscape-4, .grid-tablet-landscape-5, .grid-tablet-landscape-6, .grid-tablet-landscape-7, .grid-tablet-landscape-8, .grid-tablet-landscape-9, .grid-tablet-landscape-10, .grid-tablet-landscape-11, .grid-tablet-landscape-12, .grid-desktop-0, .grid-desktop-1, .col-md-1, .grid-desktop-2, .col-md-2, .grid-desktop-3, .col-md-3, .grid-desktop-4, .col-md-4, .grid-desktop-5, .col-md-5, .grid-desktop-6, .col-md-6, .grid-desktop-7, .col-md-7, .grid-desktop-8, .col-md-8, .grid-desktop-9, .col-md-9, .grid-desktop-10, .col-md-10, .grid-desktop-11, .col-md-11, .grid-desktop-12, .col-md-12, .grid-desktop-wide-0, .grid-desktop-wide-1, .grid-desktop-wide-2, .grid-desktop-wide-3, .grid-desktop-wide-4, .grid-desktop-wide-5, .grid-desktop-wide-6, .grid-desktop-wide-7, .grid-desktop-wide-8, .grid-desktop-wide-9, .grid-desktop-wide-10, .grid-desktop-wide-11, .grid-desktop-wide-12, .grid-desktop-wider-0, .grid-desktop-wider-1, .grid-desktop-wider-2, .grid-desktop-wider-3, .grid-desktop-wider-4, .grid-desktop-wider-5, .grid-desktop-wider-6, .grid-desktop-wider-7, .grid-desktop-wider-8, .grid-desktop-wider-9, .grid-desktop-wider-10, .grid-desktop-wider-11, .grid-desktop-wider-12 {
  float: left;
  direction: ltr;
  padding-left: 20px;
  padding-right: 20px; }
  @media screen and (min-width: 1200px) {
    .grid-0, .grid-1, .grid-2, .grid-3, .grid-4, .grid-5, .grid-6, .grid-7, .grid-8, .grid-9, .grid-10, .grid-11, .grid-12, .col-md-4, .col-md-6, .grid-mobile-0, .grid-mobile-1, .grid-mobile-2, .grid-mobile-3, .grid-mobile-4, .grid-mobile-5, .grid-mobile-6, .grid-mobile-7, .grid-mobile-8, .grid-mobile-9, .grid-mobile-10, .grid-mobile-11, .grid-mobile-12, .grid-tablet-portrait-0, .grid-tablet-portrait-1, .grid-tablet-portrait-2, .grid-tablet-portrait-3, .grid-tablet-portrait-4, .grid-tablet-portrait-5, .grid-tablet-portrait-6, .grid-tablet-portrait-7, .grid-tablet-portrait-8, .grid-tablet-portrait-9, .grid-tablet-portrait-10, .grid-tablet-portrait-11, .grid-tablet-portrait-12, .grid-tablet-wide-0, .grid-tablet-wide-1, .grid-tablet-wide-2, .grid-tablet-wide-3, .grid-tablet-wide-4, .grid-tablet-wide-5, .grid-tablet-wide-6, .grid-tablet-wide-7, .grid-tablet-wide-8, .grid-tablet-wide-9, .grid-tablet-wide-10, .grid-tablet-wide-11, .grid-tablet-wide-12, .grid-tablet-landscape-0, .grid-tablet-landscape-1, .grid-tablet-landscape-2, .grid-tablet-landscape-3, .grid-tablet-landscape-4, .grid-tablet-landscape-5, .grid-tablet-landscape-6, .grid-tablet-landscape-7, .grid-tablet-landscape-8, .grid-tablet-landscape-9, .grid-tablet-landscape-10, .grid-tablet-landscape-11, .grid-tablet-landscape-12, .grid-desktop-0, .grid-desktop-1, .col-md-1, .grid-desktop-2, .col-md-2, .grid-desktop-3, .col-md-3, .grid-desktop-4, .col-md-4, .grid-desktop-5, .col-md-5, .grid-desktop-6, .col-md-6, .grid-desktop-7, .col-md-7, .grid-desktop-8, .col-md-8, .grid-desktop-9, .col-md-9, .grid-desktop-10, .col-md-10, .grid-desktop-11, .col-md-11, .grid-desktop-12, .col-md-12, .grid-desktop-wide-0, .grid-desktop-wide-1, .grid-desktop-wide-2, .grid-desktop-wide-3, .grid-desktop-wide-4, .grid-desktop-wide-5, .grid-desktop-wide-6, .grid-desktop-wide-7, .grid-desktop-wide-8, .grid-desktop-wide-9, .grid-desktop-wide-10, .grid-desktop-wide-11, .grid-desktop-wide-12, .grid-desktop-wider-0, .grid-desktop-wider-1, .grid-desktop-wider-2, .grid-desktop-wider-3, .grid-desktop-wider-4, .grid-desktop-wider-5, .grid-desktop-wider-6, .grid-desktop-wider-7, .grid-desktop-wider-8, .grid-desktop-wider-9, .grid-desktop-wider-10, .grid-desktop-wider-11, .grid-desktop-wider-12 {
      padding-left: 30px;
      padding-right: 30px; } }

.grid-0 {
  width: 0%; }

.push-0 {
  left: 0%; }

.pull-0 {
  right: 0%; }

.prefix-0 {
  margin-left: 0%; }

.suffix-0 {
  margin-right: 0%; }

.grid-1 {
  width: 8.33333%; }

.push-1 {
  left: 8.33333%; }

.pull-1 {
  right: 8.33333%; }

.prefix-1 {
  margin-left: 8.33333%; }

.suffix-1 {
  margin-right: 8.33333%; }

.grid-2 {
  width: 16.66667%; }

.push-2 {
  left: 16.66667%; }

.pull-2 {
  right: 16.66667%; }

.prefix-2 {
  margin-left: 16.66667%; }

.suffix-2 {
  margin-right: 16.66667%; }

.grid-3 {
  width: 25%; }

.push-3 {
  left: 25%; }

.pull-3 {
  right: 25%; }

.prefix-3 {
  margin-left: 25%; }

.suffix-3 {
  margin-right: 25%; }

.grid-4 {
  width: 33.33333%; }

.push-4 {
  left: 33.33333%; }

.pull-4 {
  right: 33.33333%; }

.prefix-4 {
  margin-left: 33.33333%; }

.suffix-4 {
  margin-right: 33.33333%; }

.grid-5 {
  width: 41.66667%; }

.push-5 {
  left: 41.66667%; }

.pull-5 {
  right: 41.66667%; }

.prefix-5 {
  margin-left: 41.66667%; }

.suffix-5 {
  margin-right: 41.66667%; }

.grid-6 {
  width: 50%; }

.push-6 {
  left: 50%; }

.pull-6 {
  right: 50%; }

.prefix-6 {
  margin-left: 50%; }

.suffix-6 {
  margin-right: 50%; }

.grid-7 {
  width: 58.33333%; }

.push-7 {
  left: 58.33333%; }

.pull-7 {
  right: 58.33333%; }

.prefix-7 {
  margin-left: 58.33333%; }

.suffix-7 {
  margin-right: 58.33333%; }

.grid-8 {
  width: 66.66667%; }

.push-8 {
  left: 66.66667%; }

.pull-8 {
  right: 66.66667%; }

.prefix-8 {
  margin-left: 66.66667%; }

.suffix-8 {
  margin-right: 66.66667%; }

.grid-9 {
  width: 75%; }

.push-9 {
  left: 75%; }

.pull-9 {
  right: 75%; }

.prefix-9 {
  margin-left: 75%; }

.suffix-9 {
  margin-right: 75%; }

.grid-10 {
  width: 83.33333%; }

.push-10 {
  left: 83.33333%; }

.pull-10 {
  right: 83.33333%; }

.prefix-10 {
  margin-left: 83.33333%; }

.suffix-10 {
  margin-right: 83.33333%; }

.grid-11 {
  width: 91.66667%; }

.push-11 {
  left: 91.66667%; }

.pull-11 {
  right: 91.66667%; }

.prefix-11 {
  margin-left: 91.66667%; }

.suffix-11 {
  margin-right: 91.66667%; }

.grid-12, .col-md-4, .col-md-6 {
  width: 100%; }

.push-12 {
  left: 100%; }

.pull-12 {
  right: 100%; }

.prefix-12 {
  margin-left: 100%; }

.suffix-12 {
  margin-right: 100%; }

.float-left {
  float: left; }

.float-right {
  float: right; }

.clear {
  clear: both; }

.clear-left {
  clear: left; }

.clear-right {
  clear: right; }

.no-gutter,
.no-margin {
  padding-left: 0;
  padding-right: 0; }

.no-gutter-left,
.no-margin-left {
  padding-left: 0; }

.no-gutter-right,
.no-margin-right {
  padding-right: 0; }

.no-gutter-top,
.no-margin-top {
  padding-top: 0; }

.no-gutter-bottom,
.no-margin-bottom {
  padding-bottom: 0; }

.gutter,
.margins {
  padding-left: 20px;
  padding-right: 20px; }

.gutter-left,
.margin-left {
  padding-left: 20px; }

.gutter-right,
.margin-right {
  padding-right: 20px; }

.gutter-top,
.margin-top {
  padding-top: 20px; }

.gutter-bottom,
.margin-bottom {
  padding-bottom: 20px; }

.auto-height {
  height: inherit; }

.centered {
  display: block !important;
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  clear: both !important; }

.parent {
  padding-left: 0;
  padding-right: 0; }

.vertical-align-middle {
  font-size: 0;
  clear: both; }
  .vertical-align-middle > * {
    display: inline-block;
    float: none !important;
    vertical-align: middle;
    font-size: 1rem; }

.vertical-align-top {
  font-size: 0;
  clear: both; }
  .vertical-align-top > * {
    display: inline-block;
    float: none !important;
    vertical-align: top;
    font-size: 1rem; }

.vertical-align-bottom {
  font-size: 0;
  clear: both; }
  .vertical-align-bottom > * {
    display: inline-block;
    float: none !important;
    vertical-align: bottom;
    font-size: 1rem; }

/**
	 * Visible, hide, etc...
	 */
.hide {
  display: none; }

.not-visible {
  visibility: hidden; }

.show {
  display: block; }

.show-inline {
  display: inline-block; }

.visible {
  visibility: visible; }

/**
	 * Clear each class :
	 */
@media screen and (min-width: 414px) {
  .grid-mobile-0 {
    width: 0%; }
  .push-mobile-0 {
    left: 0%; }
  .pull-mobile-0 {
    right: 0%; }
  .prefix-mobile-0 {
    margin-left: 0%; }
  .suffix-mobile-0 {
    margin-right: 0%; }
  .grid-mobile-1 {
    width: 8.33333%; }
  .push-mobile-1 {
    left: 8.33333%; }
  .pull-mobile-1 {
    right: 8.33333%; }
  .prefix-mobile-1 {
    margin-left: 8.33333%; }
  .suffix-mobile-1 {
    margin-right: 8.33333%; }
  .grid-mobile-2 {
    width: 16.66667%; }
  .push-mobile-2 {
    left: 16.66667%; }
  .pull-mobile-2 {
    right: 16.66667%; }
  .prefix-mobile-2 {
    margin-left: 16.66667%; }
  .suffix-mobile-2 {
    margin-right: 16.66667%; }
  .grid-mobile-3 {
    width: 25%; }
  .push-mobile-3 {
    left: 25%; }
  .pull-mobile-3 {
    right: 25%; }
  .prefix-mobile-3 {
    margin-left: 25%; }
  .suffix-mobile-3 {
    margin-right: 25%; }
  .grid-mobile-4 {
    width: 33.33333%; }
  .push-mobile-4 {
    left: 33.33333%; }
  .pull-mobile-4 {
    right: 33.33333%; }
  .prefix-mobile-4 {
    margin-left: 33.33333%; }
  .suffix-mobile-4 {
    margin-right: 33.33333%; }
  .grid-mobile-5 {
    width: 41.66667%; }
  .push-mobile-5 {
    left: 41.66667%; }
  .pull-mobile-5 {
    right: 41.66667%; }
  .prefix-mobile-5 {
    margin-left: 41.66667%; }
  .suffix-mobile-5 {
    margin-right: 41.66667%; }
  .grid-mobile-6 {
    width: 50%; }
  .push-mobile-6 {
    left: 50%; }
  .pull-mobile-6 {
    right: 50%; }
  .prefix-mobile-6 {
    margin-left: 50%; }
  .suffix-mobile-6 {
    margin-right: 50%; }
  .grid-mobile-7 {
    width: 58.33333%; }
  .push-mobile-7 {
    left: 58.33333%; }
  .pull-mobile-7 {
    right: 58.33333%; }
  .prefix-mobile-7 {
    margin-left: 58.33333%; }
  .suffix-mobile-7 {
    margin-right: 58.33333%; }
  .grid-mobile-8 {
    width: 66.66667%; }
  .push-mobile-8 {
    left: 66.66667%; }
  .pull-mobile-8 {
    right: 66.66667%; }
  .prefix-mobile-8 {
    margin-left: 66.66667%; }
  .suffix-mobile-8 {
    margin-right: 66.66667%; }
  .grid-mobile-9 {
    width: 75%; }
  .push-mobile-9 {
    left: 75%; }
  .pull-mobile-9 {
    right: 75%; }
  .prefix-mobile-9 {
    margin-left: 75%; }
  .suffix-mobile-9 {
    margin-right: 75%; }
  .grid-mobile-10 {
    width: 83.33333%; }
  .push-mobile-10 {
    left: 83.33333%; }
  .pull-mobile-10 {
    right: 83.33333%; }
  .prefix-mobile-10 {
    margin-left: 83.33333%; }
  .suffix-mobile-10 {
    margin-right: 83.33333%; }
  .grid-mobile-11 {
    width: 91.66667%; }
  .push-mobile-11 {
    left: 91.66667%; }
  .pull-mobile-11 {
    right: 91.66667%; }
  .prefix-mobile-11 {
    margin-left: 91.66667%; }
  .suffix-mobile-11 {
    margin-right: 91.66667%; }
  .grid-mobile-12 {
    width: 100%; }
  .push-mobile-12 {
    left: 100%; }
  .pull-mobile-12 {
    right: 100%; }
  .prefix-mobile-12 {
    margin-left: 100%; }
  .suffix-mobile-12 {
    margin-right: 100%; }
  .float-mobile-left {
    float: left; }
  .float-mobile-right {
    float: right; }
  .clear-mobile {
    clear: both; }
  .clear-mobile-left {
    clear: left; }
  .clear-mobile-right {
    clear: right; }
  .no-gutter-mobile,
  .no-margin-mobile {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-mobile-left,
  .no-margin-mobile-left {
    padding-left: 0; }
  .no-gutter-mobile-right,
  .no-margin-mobile-right {
    padding-right: 0; }
  .no-gutter-mobile-top,
  .no-margin-mobile-top {
    padding-top: 0; }
  .no-gutter-mobile-bottom,
  .no-margin-mobile-bottom {
    padding-bottom: 0; }
  .gutter-mobile,
  .margins-mobile {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-mobile-left,
  .margin-mobile-left {
    padding-left: 20px; }
  .gutter-mobile-right,
  .margin-mobile-right {
    padding-right: 20px; }
  .gutter-mobile-top,
  .margin-mobile-top {
    padding-top: 20px; }
  .gutter-mobile-bottom,
  .margin-mobile-bottom {
    padding-bottom: 20px; }
  .auto-height-mobile {
    height: inherit; }
  .centered-mobile {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-mobile {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-mobile-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-mobile-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-mobile-top {
    font-size: 0;
    clear: both; }
    .vertical-align-mobile-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-mobile-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-mobile-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-mobile {
    display: none; }
  .not-visible-mobile {
    visibility: hidden; }
  .show-mobile {
    display: block; }
  .show-inline-mobile {
    display: inline-block; }
  .visible-mobile {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 481px) {
  .grid-tablet-portrait-0 {
    width: 0%; }
  .push-tablet-portrait-0 {
    left: 0%; }
  .pull-tablet-portrait-0 {
    right: 0%; }
  .prefix-tablet-portrait-0 {
    margin-left: 0%; }
  .suffix-tablet-portrait-0 {
    margin-right: 0%; }
  .grid-tablet-portrait-1 {
    width: 8.33333%; }
  .push-tablet-portrait-1 {
    left: 8.33333%; }
  .pull-tablet-portrait-1 {
    right: 8.33333%; }
  .prefix-tablet-portrait-1 {
    margin-left: 8.33333%; }
  .suffix-tablet-portrait-1 {
    margin-right: 8.33333%; }
  .grid-tablet-portrait-2 {
    width: 16.66667%; }
  .push-tablet-portrait-2 {
    left: 16.66667%; }
  .pull-tablet-portrait-2 {
    right: 16.66667%; }
  .prefix-tablet-portrait-2 {
    margin-left: 16.66667%; }
  .suffix-tablet-portrait-2 {
    margin-right: 16.66667%; }
  .grid-tablet-portrait-3 {
    width: 25%; }
  .push-tablet-portrait-3 {
    left: 25%; }
  .pull-tablet-portrait-3 {
    right: 25%; }
  .prefix-tablet-portrait-3 {
    margin-left: 25%; }
  .suffix-tablet-portrait-3 {
    margin-right: 25%; }
  .grid-tablet-portrait-4 {
    width: 33.33333%; }
  .push-tablet-portrait-4 {
    left: 33.33333%; }
  .pull-tablet-portrait-4 {
    right: 33.33333%; }
  .prefix-tablet-portrait-4 {
    margin-left: 33.33333%; }
  .suffix-tablet-portrait-4 {
    margin-right: 33.33333%; }
  .grid-tablet-portrait-5 {
    width: 41.66667%; }
  .push-tablet-portrait-5 {
    left: 41.66667%; }
  .pull-tablet-portrait-5 {
    right: 41.66667%; }
  .prefix-tablet-portrait-5 {
    margin-left: 41.66667%; }
  .suffix-tablet-portrait-5 {
    margin-right: 41.66667%; }
  .grid-tablet-portrait-6 {
    width: 50%; }
  .push-tablet-portrait-6 {
    left: 50%; }
  .pull-tablet-portrait-6 {
    right: 50%; }
  .prefix-tablet-portrait-6 {
    margin-left: 50%; }
  .suffix-tablet-portrait-6 {
    margin-right: 50%; }
  .grid-tablet-portrait-7 {
    width: 58.33333%; }
  .push-tablet-portrait-7 {
    left: 58.33333%; }
  .pull-tablet-portrait-7 {
    right: 58.33333%; }
  .prefix-tablet-portrait-7 {
    margin-left: 58.33333%; }
  .suffix-tablet-portrait-7 {
    margin-right: 58.33333%; }
  .grid-tablet-portrait-8 {
    width: 66.66667%; }
  .push-tablet-portrait-8 {
    left: 66.66667%; }
  .pull-tablet-portrait-8 {
    right: 66.66667%; }
  .prefix-tablet-portrait-8 {
    margin-left: 66.66667%; }
  .suffix-tablet-portrait-8 {
    margin-right: 66.66667%; }
  .grid-tablet-portrait-9 {
    width: 75%; }
  .push-tablet-portrait-9 {
    left: 75%; }
  .pull-tablet-portrait-9 {
    right: 75%; }
  .prefix-tablet-portrait-9 {
    margin-left: 75%; }
  .suffix-tablet-portrait-9 {
    margin-right: 75%; }
  .grid-tablet-portrait-10 {
    width: 83.33333%; }
  .push-tablet-portrait-10 {
    left: 83.33333%; }
  .pull-tablet-portrait-10 {
    right: 83.33333%; }
  .prefix-tablet-portrait-10 {
    margin-left: 83.33333%; }
  .suffix-tablet-portrait-10 {
    margin-right: 83.33333%; }
  .grid-tablet-portrait-11 {
    width: 91.66667%; }
  .push-tablet-portrait-11 {
    left: 91.66667%; }
  .pull-tablet-portrait-11 {
    right: 91.66667%; }
  .prefix-tablet-portrait-11 {
    margin-left: 91.66667%; }
  .suffix-tablet-portrait-11 {
    margin-right: 91.66667%; }
  .grid-tablet-portrait-12 {
    width: 100%; }
  .push-tablet-portrait-12 {
    left: 100%; }
  .pull-tablet-portrait-12 {
    right: 100%; }
  .prefix-tablet-portrait-12 {
    margin-left: 100%; }
  .suffix-tablet-portrait-12 {
    margin-right: 100%; }
  .float-tablet-portrait-left {
    float: left; }
  .float-tablet-portrait-right {
    float: right; }
  .clear-tablet-portrait {
    clear: both; }
  .clear-tablet-portrait-left {
    clear: left; }
  .clear-tablet-portrait-right {
    clear: right; }
  .no-gutter-tablet-portrait,
  .no-margin-tablet-portrait {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-tablet-portrait-left,
  .no-margin-tablet-portrait-left {
    padding-left: 0; }
  .no-gutter-tablet-portrait-right,
  .no-margin-tablet-portrait-right {
    padding-right: 0; }
  .no-gutter-tablet-portrait-top,
  .no-margin-tablet-portrait-top {
    padding-top: 0; }
  .no-gutter-tablet-portrait-bottom,
  .no-margin-tablet-portrait-bottom {
    padding-bottom: 0; }
  .gutter-tablet-portrait,
  .margins-tablet-portrait {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-tablet-portrait-left,
  .margin-tablet-portrait-left {
    padding-left: 20px; }
  .gutter-tablet-portrait-right,
  .margin-tablet-portrait-right {
    padding-right: 20px; }
  .gutter-tablet-portrait-top,
  .margin-tablet-portrait-top {
    padding-top: 20px; }
  .gutter-tablet-portrait-bottom,
  .margin-tablet-portrait-bottom {
    padding-bottom: 20px; }
  .auto-height-tablet-portrait {
    height: inherit; }
  .centered-tablet-portrait {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-tablet-portrait {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-tablet-portrait-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-portrait-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-tablet-portrait-top {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-portrait-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-tablet-portrait-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-portrait-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-tablet-portrait {
    display: none; }
  .not-visible-tablet-portrait {
    visibility: hidden; }
  .show-tablet-portrait {
    display: block; }
  .show-inline-tablet-portrait {
    display: inline-block; }
  .visible-tablet-portrait {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 587px) {
  .grid-tablet-wide-0 {
    width: 0%; }
  .push-tablet-wide-0 {
    left: 0%; }
  .pull-tablet-wide-0 {
    right: 0%; }
  .prefix-tablet-wide-0 {
    margin-left: 0%; }
  .suffix-tablet-wide-0 {
    margin-right: 0%; }
  .grid-tablet-wide-1 {
    width: 8.33333%; }
  .push-tablet-wide-1 {
    left: 8.33333%; }
  .pull-tablet-wide-1 {
    right: 8.33333%; }
  .prefix-tablet-wide-1 {
    margin-left: 8.33333%; }
  .suffix-tablet-wide-1 {
    margin-right: 8.33333%; }
  .grid-tablet-wide-2 {
    width: 16.66667%; }
  .push-tablet-wide-2 {
    left: 16.66667%; }
  .pull-tablet-wide-2 {
    right: 16.66667%; }
  .prefix-tablet-wide-2 {
    margin-left: 16.66667%; }
  .suffix-tablet-wide-2 {
    margin-right: 16.66667%; }
  .grid-tablet-wide-3 {
    width: 25%; }
  .push-tablet-wide-3 {
    left: 25%; }
  .pull-tablet-wide-3 {
    right: 25%; }
  .prefix-tablet-wide-3 {
    margin-left: 25%; }
  .suffix-tablet-wide-3 {
    margin-right: 25%; }
  .grid-tablet-wide-4 {
    width: 33.33333%; }
  .push-tablet-wide-4 {
    left: 33.33333%; }
  .pull-tablet-wide-4 {
    right: 33.33333%; }
  .prefix-tablet-wide-4 {
    margin-left: 33.33333%; }
  .suffix-tablet-wide-4 {
    margin-right: 33.33333%; }
  .grid-tablet-wide-5 {
    width: 41.66667%; }
  .push-tablet-wide-5 {
    left: 41.66667%; }
  .pull-tablet-wide-5 {
    right: 41.66667%; }
  .prefix-tablet-wide-5 {
    margin-left: 41.66667%; }
  .suffix-tablet-wide-5 {
    margin-right: 41.66667%; }
  .grid-tablet-wide-6 {
    width: 50%; }
  .push-tablet-wide-6 {
    left: 50%; }
  .pull-tablet-wide-6 {
    right: 50%; }
  .prefix-tablet-wide-6 {
    margin-left: 50%; }
  .suffix-tablet-wide-6 {
    margin-right: 50%; }
  .grid-tablet-wide-7 {
    width: 58.33333%; }
  .push-tablet-wide-7 {
    left: 58.33333%; }
  .pull-tablet-wide-7 {
    right: 58.33333%; }
  .prefix-tablet-wide-7 {
    margin-left: 58.33333%; }
  .suffix-tablet-wide-7 {
    margin-right: 58.33333%; }
  .grid-tablet-wide-8 {
    width: 66.66667%; }
  .push-tablet-wide-8 {
    left: 66.66667%; }
  .pull-tablet-wide-8 {
    right: 66.66667%; }
  .prefix-tablet-wide-8 {
    margin-left: 66.66667%; }
  .suffix-tablet-wide-8 {
    margin-right: 66.66667%; }
  .grid-tablet-wide-9 {
    width: 75%; }
  .push-tablet-wide-9 {
    left: 75%; }
  .pull-tablet-wide-9 {
    right: 75%; }
  .prefix-tablet-wide-9 {
    margin-left: 75%; }
  .suffix-tablet-wide-9 {
    margin-right: 75%; }
  .grid-tablet-wide-10 {
    width: 83.33333%; }
  .push-tablet-wide-10 {
    left: 83.33333%; }
  .pull-tablet-wide-10 {
    right: 83.33333%; }
  .prefix-tablet-wide-10 {
    margin-left: 83.33333%; }
  .suffix-tablet-wide-10 {
    margin-right: 83.33333%; }
  .grid-tablet-wide-11 {
    width: 91.66667%; }
  .push-tablet-wide-11 {
    left: 91.66667%; }
  .pull-tablet-wide-11 {
    right: 91.66667%; }
  .prefix-tablet-wide-11 {
    margin-left: 91.66667%; }
  .suffix-tablet-wide-11 {
    margin-right: 91.66667%; }
  .grid-tablet-wide-12 {
    width: 100%; }
  .push-tablet-wide-12 {
    left: 100%; }
  .pull-tablet-wide-12 {
    right: 100%; }
  .prefix-tablet-wide-12 {
    margin-left: 100%; }
  .suffix-tablet-wide-12 {
    margin-right: 100%; }
  .float-tablet-wide-left {
    float: left; }
  .float-tablet-wide-right {
    float: right; }
  .clear-tablet-wide {
    clear: both; }
  .clear-tablet-wide-left {
    clear: left; }
  .clear-tablet-wide-right {
    clear: right; }
  .no-gutter-tablet-wide,
  .no-margin-tablet-wide {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-tablet-wide-left,
  .no-margin-tablet-wide-left {
    padding-left: 0; }
  .no-gutter-tablet-wide-right,
  .no-margin-tablet-wide-right {
    padding-right: 0; }
  .no-gutter-tablet-wide-top,
  .no-margin-tablet-wide-top {
    padding-top: 0; }
  .no-gutter-tablet-wide-bottom,
  .no-margin-tablet-wide-bottom {
    padding-bottom: 0; }
  .gutter-tablet-wide,
  .margins-tablet-wide {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-tablet-wide-left,
  .margin-tablet-wide-left {
    padding-left: 20px; }
  .gutter-tablet-wide-right,
  .margin-tablet-wide-right {
    padding-right: 20px; }
  .gutter-tablet-wide-top,
  .margin-tablet-wide-top {
    padding-top: 20px; }
  .gutter-tablet-wide-bottom,
  .margin-tablet-wide-bottom {
    padding-bottom: 20px; }
  .auto-height-tablet-wide {
    height: inherit; }
  .centered-tablet-wide {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-tablet-wide {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-tablet-wide-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-wide-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-tablet-wide-top {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-wide-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-tablet-wide-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-wide-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-tablet-wide {
    display: none; }
  .not-visible-tablet-wide {
    visibility: hidden; }
  .show-tablet-wide {
    display: block; }
  .show-inline-tablet-wide {
    display: inline-block; }
  .visible-tablet-wide {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 769px) {
  .grid-tablet-landscape-0 {
    width: 0%; }
  .push-tablet-landscape-0 {
    left: 0%; }
  .pull-tablet-landscape-0 {
    right: 0%; }
  .prefix-tablet-landscape-0 {
    margin-left: 0%; }
  .suffix-tablet-landscape-0 {
    margin-right: 0%; }
  .grid-tablet-landscape-1 {
    width: 8.33333%; }
  .push-tablet-landscape-1 {
    left: 8.33333%; }
  .pull-tablet-landscape-1 {
    right: 8.33333%; }
  .prefix-tablet-landscape-1 {
    margin-left: 8.33333%; }
  .suffix-tablet-landscape-1 {
    margin-right: 8.33333%; }
  .grid-tablet-landscape-2 {
    width: 16.66667%; }
  .push-tablet-landscape-2 {
    left: 16.66667%; }
  .pull-tablet-landscape-2 {
    right: 16.66667%; }
  .prefix-tablet-landscape-2 {
    margin-left: 16.66667%; }
  .suffix-tablet-landscape-2 {
    margin-right: 16.66667%; }
  .grid-tablet-landscape-3 {
    width: 25%; }
  .push-tablet-landscape-3 {
    left: 25%; }
  .pull-tablet-landscape-3 {
    right: 25%; }
  .prefix-tablet-landscape-3 {
    margin-left: 25%; }
  .suffix-tablet-landscape-3 {
    margin-right: 25%; }
  .grid-tablet-landscape-4 {
    width: 33.33333%; }
  .push-tablet-landscape-4 {
    left: 33.33333%; }
  .pull-tablet-landscape-4 {
    right: 33.33333%; }
  .prefix-tablet-landscape-4 {
    margin-left: 33.33333%; }
  .suffix-tablet-landscape-4 {
    margin-right: 33.33333%; }
  .grid-tablet-landscape-5 {
    width: 41.66667%; }
  .push-tablet-landscape-5 {
    left: 41.66667%; }
  .pull-tablet-landscape-5 {
    right: 41.66667%; }
  .prefix-tablet-landscape-5 {
    margin-left: 41.66667%; }
  .suffix-tablet-landscape-5 {
    margin-right: 41.66667%; }
  .grid-tablet-landscape-6 {
    width: 50%; }
  .push-tablet-landscape-6 {
    left: 50%; }
  .pull-tablet-landscape-6 {
    right: 50%; }
  .prefix-tablet-landscape-6 {
    margin-left: 50%; }
  .suffix-tablet-landscape-6 {
    margin-right: 50%; }
  .grid-tablet-landscape-7 {
    width: 58.33333%; }
  .push-tablet-landscape-7 {
    left: 58.33333%; }
  .pull-tablet-landscape-7 {
    right: 58.33333%; }
  .prefix-tablet-landscape-7 {
    margin-left: 58.33333%; }
  .suffix-tablet-landscape-7 {
    margin-right: 58.33333%; }
  .grid-tablet-landscape-8 {
    width: 66.66667%; }
  .push-tablet-landscape-8 {
    left: 66.66667%; }
  .pull-tablet-landscape-8 {
    right: 66.66667%; }
  .prefix-tablet-landscape-8 {
    margin-left: 66.66667%; }
  .suffix-tablet-landscape-8 {
    margin-right: 66.66667%; }
  .grid-tablet-landscape-9 {
    width: 75%; }
  .push-tablet-landscape-9 {
    left: 75%; }
  .pull-tablet-landscape-9 {
    right: 75%; }
  .prefix-tablet-landscape-9 {
    margin-left: 75%; }
  .suffix-tablet-landscape-9 {
    margin-right: 75%; }
  .grid-tablet-landscape-10 {
    width: 83.33333%; }
  .push-tablet-landscape-10 {
    left: 83.33333%; }
  .pull-tablet-landscape-10 {
    right: 83.33333%; }
  .prefix-tablet-landscape-10 {
    margin-left: 83.33333%; }
  .suffix-tablet-landscape-10 {
    margin-right: 83.33333%; }
  .grid-tablet-landscape-11 {
    width: 91.66667%; }
  .push-tablet-landscape-11 {
    left: 91.66667%; }
  .pull-tablet-landscape-11 {
    right: 91.66667%; }
  .prefix-tablet-landscape-11 {
    margin-left: 91.66667%; }
  .suffix-tablet-landscape-11 {
    margin-right: 91.66667%; }
  .grid-tablet-landscape-12 {
    width: 100%; }
  .push-tablet-landscape-12 {
    left: 100%; }
  .pull-tablet-landscape-12 {
    right: 100%; }
  .prefix-tablet-landscape-12 {
    margin-left: 100%; }
  .suffix-tablet-landscape-12 {
    margin-right: 100%; }
  .float-tablet-landscape-left {
    float: left; }
  .float-tablet-landscape-right {
    float: right; }
  .clear-tablet-landscape {
    clear: both; }
  .clear-tablet-landscape-left {
    clear: left; }
  .clear-tablet-landscape-right {
    clear: right; }
  .no-gutter-tablet-landscape,
  .no-margin-tablet-landscape {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-tablet-landscape-left,
  .no-margin-tablet-landscape-left {
    padding-left: 0; }
  .no-gutter-tablet-landscape-right,
  .no-margin-tablet-landscape-right {
    padding-right: 0; }
  .no-gutter-tablet-landscape-top,
  .no-margin-tablet-landscape-top {
    padding-top: 0; }
  .no-gutter-tablet-landscape-bottom,
  .no-margin-tablet-landscape-bottom {
    padding-bottom: 0; }
  .gutter-tablet-landscape,
  .margins-tablet-landscape {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-tablet-landscape-left,
  .margin-tablet-landscape-left {
    padding-left: 20px; }
  .gutter-tablet-landscape-right,
  .margin-tablet-landscape-right {
    padding-right: 20px; }
  .gutter-tablet-landscape-top,
  .margin-tablet-landscape-top {
    padding-top: 20px; }
  .gutter-tablet-landscape-bottom,
  .margin-tablet-landscape-bottom {
    padding-bottom: 20px; }
  .auto-height-tablet-landscape {
    height: inherit; }
  .centered-tablet-landscape {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-tablet-landscape {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-tablet-landscape-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-landscape-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-tablet-landscape-top {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-landscape-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-tablet-landscape-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-tablet-landscape-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-tablet-landscape {
    display: none; }
  .not-visible-tablet-landscape {
    visibility: hidden; }
  .show-tablet-landscape {
    display: block; }
  .show-inline-tablet-landscape {
    display: inline-block; }
  .visible-tablet-landscape {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 1200px) {
  .grid-desktop-0 {
    width: 0%; }
  .push-desktop-0 {
    left: 0%; }
  .pull-desktop-0 {
    right: 0%; }
  .prefix-desktop-0 {
    margin-left: 0%; }
  .suffix-desktop-0 {
    margin-right: 0%; }
  .grid-desktop-1, .col-md-1 {
    width: 8.33333%; }
  .push-desktop-1 {
    left: 8.33333%; }
  .pull-desktop-1 {
    right: 8.33333%; }
  .prefix-desktop-1 {
    margin-left: 8.33333%; }
  .suffix-desktop-1 {
    margin-right: 8.33333%; }
  .grid-desktop-2, .col-md-2 {
    width: 16.66667%; }
  .push-desktop-2 {
    left: 16.66667%; }
  .pull-desktop-2 {
    right: 16.66667%; }
  .prefix-desktop-2 {
    margin-left: 16.66667%; }
  .suffix-desktop-2 {
    margin-right: 16.66667%; }
  .grid-desktop-3, .col-md-3 {
    width: 25%; }
  .push-desktop-3 {
    left: 25%; }
  .pull-desktop-3 {
    right: 25%; }
  .prefix-desktop-3 {
    margin-left: 25%; }
  .suffix-desktop-3 {
    margin-right: 25%; }
  .grid-desktop-4, .col-md-4 {
    width: 33.33333%; }
  .push-desktop-4 {
    left: 33.33333%; }
  .pull-desktop-4 {
    right: 33.33333%; }
  .prefix-desktop-4 {
    margin-left: 33.33333%; }
  .suffix-desktop-4 {
    margin-right: 33.33333%; }
  .grid-desktop-5, .col-md-5 {
    width: 41.66667%; }
  .push-desktop-5 {
    left: 41.66667%; }
  .pull-desktop-5 {
    right: 41.66667%; }
  .prefix-desktop-5 {
    margin-left: 41.66667%; }
  .suffix-desktop-5 {
    margin-right: 41.66667%; }
  .grid-desktop-6, .col-md-6 {
    width: 50%; }
  .push-desktop-6 {
    left: 50%; }
  .pull-desktop-6 {
    right: 50%; }
  .prefix-desktop-6 {
    margin-left: 50%; }
  .suffix-desktop-6 {
    margin-right: 50%; }
  .grid-desktop-7, .col-md-7 {
    width: 58.33333%; }
  .push-desktop-7 {
    left: 58.33333%; }
  .pull-desktop-7 {
    right: 58.33333%; }
  .prefix-desktop-7 {
    margin-left: 58.33333%; }
  .suffix-desktop-7 {
    margin-right: 58.33333%; }
  .grid-desktop-8, .col-md-8 {
    width: 66.66667%; }
  .push-desktop-8 {
    left: 66.66667%; }
  .pull-desktop-8 {
    right: 66.66667%; }
  .prefix-desktop-8 {
    margin-left: 66.66667%; }
  .suffix-desktop-8 {
    margin-right: 66.66667%; }
  .grid-desktop-9, .col-md-9 {
    width: 75%; }
  .push-desktop-9 {
    left: 75%; }
  .pull-desktop-9 {
    right: 75%; }
  .prefix-desktop-9 {
    margin-left: 75%; }
  .suffix-desktop-9 {
    margin-right: 75%; }
  .grid-desktop-10, .col-md-10 {
    width: 83.33333%; }
  .push-desktop-10 {
    left: 83.33333%; }
  .pull-desktop-10 {
    right: 83.33333%; }
  .prefix-desktop-10 {
    margin-left: 83.33333%; }
  .suffix-desktop-10 {
    margin-right: 83.33333%; }
  .grid-desktop-11, .col-md-11 {
    width: 91.66667%; }
  .push-desktop-11 {
    left: 91.66667%; }
  .pull-desktop-11 {
    right: 91.66667%; }
  .prefix-desktop-11 {
    margin-left: 91.66667%; }
  .suffix-desktop-11 {
    margin-right: 91.66667%; }
  .grid-desktop-12, .col-md-12 {
    width: 100%; }
  .push-desktop-12 {
    left: 100%; }
  .pull-desktop-12 {
    right: 100%; }
  .prefix-desktop-12 {
    margin-left: 100%; }
  .suffix-desktop-12 {
    margin-right: 100%; }
  .float-desktop-left {
    float: left; }
  .float-desktop-right {
    float: right; }
  .clear-desktop {
    clear: both; }
  .clear-desktop-left {
    clear: left; }
  .clear-desktop-right {
    clear: right; }
  .no-gutter-desktop,
  .no-margin-desktop {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-desktop-left,
  .no-margin-desktop-left {
    padding-left: 0; }
  .no-gutter-desktop-right,
  .no-margin-desktop-right {
    padding-right: 0; }
  .no-gutter-desktop-top,
  .no-margin-desktop-top {
    padding-top: 0; }
  .no-gutter-desktop-bottom,
  .no-margin-desktop-bottom {
    padding-bottom: 0; }
  .gutter-desktop,
  .margins-desktop {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-desktop-left,
  .margin-desktop-left {
    padding-left: 20px; }
  .gutter-desktop-right,
  .margin-desktop-right {
    padding-right: 20px; }
  .gutter-desktop-top,
  .margin-desktop-top {
    padding-top: 20px; }
  .gutter-desktop-bottom,
  .margin-desktop-bottom {
    padding-bottom: 20px; }
  .auto-height-desktop {
    height: inherit; }
  .centered-desktop {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-desktop {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-desktop-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-desktop-top {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-desktop-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-desktop {
    display: none; }
  .not-visible-desktop {
    visibility: hidden; }
  .show-desktop {
    display: block; }
  .show-inline-desktop {
    display: inline-block; }
  .visible-desktop {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 1430px) {
  .grid-desktop-wide-0 {
    width: 0%; }
  .push-desktop-wide-0 {
    left: 0%; }
  .pull-desktop-wide-0 {
    right: 0%; }
  .prefix-desktop-wide-0 {
    margin-left: 0%; }
  .suffix-desktop-wide-0 {
    margin-right: 0%; }
  .grid-desktop-wide-1 {
    width: 8.33333%; }
  .push-desktop-wide-1 {
    left: 8.33333%; }
  .pull-desktop-wide-1 {
    right: 8.33333%; }
  .prefix-desktop-wide-1 {
    margin-left: 8.33333%; }
  .suffix-desktop-wide-1 {
    margin-right: 8.33333%; }
  .grid-desktop-wide-2 {
    width: 16.66667%; }
  .push-desktop-wide-2 {
    left: 16.66667%; }
  .pull-desktop-wide-2 {
    right: 16.66667%; }
  .prefix-desktop-wide-2 {
    margin-left: 16.66667%; }
  .suffix-desktop-wide-2 {
    margin-right: 16.66667%; }
  .grid-desktop-wide-3 {
    width: 25%; }
  .push-desktop-wide-3 {
    left: 25%; }
  .pull-desktop-wide-3 {
    right: 25%; }
  .prefix-desktop-wide-3 {
    margin-left: 25%; }
  .suffix-desktop-wide-3 {
    margin-right: 25%; }
  .grid-desktop-wide-4 {
    width: 33.33333%; }
  .push-desktop-wide-4 {
    left: 33.33333%; }
  .pull-desktop-wide-4 {
    right: 33.33333%; }
  .prefix-desktop-wide-4 {
    margin-left: 33.33333%; }
  .suffix-desktop-wide-4 {
    margin-right: 33.33333%; }
  .grid-desktop-wide-5 {
    width: 41.66667%; }
  .push-desktop-wide-5 {
    left: 41.66667%; }
  .pull-desktop-wide-5 {
    right: 41.66667%; }
  .prefix-desktop-wide-5 {
    margin-left: 41.66667%; }
  .suffix-desktop-wide-5 {
    margin-right: 41.66667%; }
  .grid-desktop-wide-6 {
    width: 50%; }
  .push-desktop-wide-6 {
    left: 50%; }
  .pull-desktop-wide-6 {
    right: 50%; }
  .prefix-desktop-wide-6 {
    margin-left: 50%; }
  .suffix-desktop-wide-6 {
    margin-right: 50%; }
  .grid-desktop-wide-7 {
    width: 58.33333%; }
  .push-desktop-wide-7 {
    left: 58.33333%; }
  .pull-desktop-wide-7 {
    right: 58.33333%; }
  .prefix-desktop-wide-7 {
    margin-left: 58.33333%; }
  .suffix-desktop-wide-7 {
    margin-right: 58.33333%; }
  .grid-desktop-wide-8 {
    width: 66.66667%; }
  .push-desktop-wide-8 {
    left: 66.66667%; }
  .pull-desktop-wide-8 {
    right: 66.66667%; }
  .prefix-desktop-wide-8 {
    margin-left: 66.66667%; }
  .suffix-desktop-wide-8 {
    margin-right: 66.66667%; }
  .grid-desktop-wide-9 {
    width: 75%; }
  .push-desktop-wide-9 {
    left: 75%; }
  .pull-desktop-wide-9 {
    right: 75%; }
  .prefix-desktop-wide-9 {
    margin-left: 75%; }
  .suffix-desktop-wide-9 {
    margin-right: 75%; }
  .grid-desktop-wide-10 {
    width: 83.33333%; }
  .push-desktop-wide-10 {
    left: 83.33333%; }
  .pull-desktop-wide-10 {
    right: 83.33333%; }
  .prefix-desktop-wide-10 {
    margin-left: 83.33333%; }
  .suffix-desktop-wide-10 {
    margin-right: 83.33333%; }
  .grid-desktop-wide-11 {
    width: 91.66667%; }
  .push-desktop-wide-11 {
    left: 91.66667%; }
  .pull-desktop-wide-11 {
    right: 91.66667%; }
  .prefix-desktop-wide-11 {
    margin-left: 91.66667%; }
  .suffix-desktop-wide-11 {
    margin-right: 91.66667%; }
  .grid-desktop-wide-12 {
    width: 100%; }
  .push-desktop-wide-12 {
    left: 100%; }
  .pull-desktop-wide-12 {
    right: 100%; }
  .prefix-desktop-wide-12 {
    margin-left: 100%; }
  .suffix-desktop-wide-12 {
    margin-right: 100%; }
  .float-desktop-wide-left {
    float: left; }
  .float-desktop-wide-right {
    float: right; }
  .clear-desktop-wide {
    clear: both; }
  .clear-desktop-wide-left {
    clear: left; }
  .clear-desktop-wide-right {
    clear: right; }
  .no-gutter-desktop-wide,
  .no-margin-desktop-wide {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-desktop-wide-left,
  .no-margin-desktop-wide-left {
    padding-left: 0; }
  .no-gutter-desktop-wide-right,
  .no-margin-desktop-wide-right {
    padding-right: 0; }
  .no-gutter-desktop-wide-top,
  .no-margin-desktop-wide-top {
    padding-top: 0; }
  .no-gutter-desktop-wide-bottom,
  .no-margin-desktop-wide-bottom {
    padding-bottom: 0; }
  .gutter-desktop-wide,
  .margins-desktop-wide {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-desktop-wide-left,
  .margin-desktop-wide-left {
    padding-left: 20px; }
  .gutter-desktop-wide-right,
  .margin-desktop-wide-right {
    padding-right: 20px; }
  .gutter-desktop-wide-top,
  .margin-desktop-wide-top {
    padding-top: 20px; }
  .gutter-desktop-wide-bottom,
  .margin-desktop-wide-bottom {
    padding-bottom: 20px; }
  .auto-height-desktop-wide {
    height: inherit; }
  .centered-desktop-wide {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-desktop-wide {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-desktop-wide-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wide-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-desktop-wide-top {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wide-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-desktop-wide-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wide-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-desktop-wide {
    display: none; }
  .not-visible-desktop-wide {
    visibility: hidden; }
  .show-desktop-wide {
    display: block; }
  .show-inline-desktop-wide {
    display: inline-block; }
  .visible-desktop-wide {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

@media screen and (min-width: 1600px) {
  .grid-desktop-wider-0 {
    width: 0%; }
  .push-desktop-wider-0 {
    left: 0%; }
  .pull-desktop-wider-0 {
    right: 0%; }
  .prefix-desktop-wider-0 {
    margin-left: 0%; }
  .suffix-desktop-wider-0 {
    margin-right: 0%; }
  .grid-desktop-wider-1 {
    width: 8.33333%; }
  .push-desktop-wider-1 {
    left: 8.33333%; }
  .pull-desktop-wider-1 {
    right: 8.33333%; }
  .prefix-desktop-wider-1 {
    margin-left: 8.33333%; }
  .suffix-desktop-wider-1 {
    margin-right: 8.33333%; }
  .grid-desktop-wider-2 {
    width: 16.66667%; }
  .push-desktop-wider-2 {
    left: 16.66667%; }
  .pull-desktop-wider-2 {
    right: 16.66667%; }
  .prefix-desktop-wider-2 {
    margin-left: 16.66667%; }
  .suffix-desktop-wider-2 {
    margin-right: 16.66667%; }
  .grid-desktop-wider-3 {
    width: 25%; }
  .push-desktop-wider-3 {
    left: 25%; }
  .pull-desktop-wider-3 {
    right: 25%; }
  .prefix-desktop-wider-3 {
    margin-left: 25%; }
  .suffix-desktop-wider-3 {
    margin-right: 25%; }
  .grid-desktop-wider-4 {
    width: 33.33333%; }
  .push-desktop-wider-4 {
    left: 33.33333%; }
  .pull-desktop-wider-4 {
    right: 33.33333%; }
  .prefix-desktop-wider-4 {
    margin-left: 33.33333%; }
  .suffix-desktop-wider-4 {
    margin-right: 33.33333%; }
  .grid-desktop-wider-5 {
    width: 41.66667%; }
  .push-desktop-wider-5 {
    left: 41.66667%; }
  .pull-desktop-wider-5 {
    right: 41.66667%; }
  .prefix-desktop-wider-5 {
    margin-left: 41.66667%; }
  .suffix-desktop-wider-5 {
    margin-right: 41.66667%; }
  .grid-desktop-wider-6 {
    width: 50%; }
  .push-desktop-wider-6 {
    left: 50%; }
  .pull-desktop-wider-6 {
    right: 50%; }
  .prefix-desktop-wider-6 {
    margin-left: 50%; }
  .suffix-desktop-wider-6 {
    margin-right: 50%; }
  .grid-desktop-wider-7 {
    width: 58.33333%; }
  .push-desktop-wider-7 {
    left: 58.33333%; }
  .pull-desktop-wider-7 {
    right: 58.33333%; }
  .prefix-desktop-wider-7 {
    margin-left: 58.33333%; }
  .suffix-desktop-wider-7 {
    margin-right: 58.33333%; }
  .grid-desktop-wider-8 {
    width: 66.66667%; }
  .push-desktop-wider-8 {
    left: 66.66667%; }
  .pull-desktop-wider-8 {
    right: 66.66667%; }
  .prefix-desktop-wider-8 {
    margin-left: 66.66667%; }
  .suffix-desktop-wider-8 {
    margin-right: 66.66667%; }
  .grid-desktop-wider-9 {
    width: 75%; }
  .push-desktop-wider-9 {
    left: 75%; }
  .pull-desktop-wider-9 {
    right: 75%; }
  .prefix-desktop-wider-9 {
    margin-left: 75%; }
  .suffix-desktop-wider-9 {
    margin-right: 75%; }
  .grid-desktop-wider-10 {
    width: 83.33333%; }
  .push-desktop-wider-10 {
    left: 83.33333%; }
  .pull-desktop-wider-10 {
    right: 83.33333%; }
  .prefix-desktop-wider-10 {
    margin-left: 83.33333%; }
  .suffix-desktop-wider-10 {
    margin-right: 83.33333%; }
  .grid-desktop-wider-11 {
    width: 91.66667%; }
  .push-desktop-wider-11 {
    left: 91.66667%; }
  .pull-desktop-wider-11 {
    right: 91.66667%; }
  .prefix-desktop-wider-11 {
    margin-left: 91.66667%; }
  .suffix-desktop-wider-11 {
    margin-right: 91.66667%; }
  .grid-desktop-wider-12 {
    width: 100%; }
  .push-desktop-wider-12 {
    left: 100%; }
  .pull-desktop-wider-12 {
    right: 100%; }
  .prefix-desktop-wider-12 {
    margin-left: 100%; }
  .suffix-desktop-wider-12 {
    margin-right: 100%; }
  .float-desktop-wider-left {
    float: left; }
  .float-desktop-wider-right {
    float: right; }
  .clear-desktop-wider {
    clear: both; }
  .clear-desktop-wider-left {
    clear: left; }
  .clear-desktop-wider-right {
    clear: right; }
  .no-gutter-desktop-wider,
  .no-margin-desktop-wider {
    padding-left: 0;
    padding-right: 0; }
  .no-gutter-desktop-wider-left,
  .no-margin-desktop-wider-left {
    padding-left: 0; }
  .no-gutter-desktop-wider-right,
  .no-margin-desktop-wider-right {
    padding-right: 0; }
  .no-gutter-desktop-wider-top,
  .no-margin-desktop-wider-top {
    padding-top: 0; }
  .no-gutter-desktop-wider-bottom,
  .no-margin-desktop-wider-bottom {
    padding-bottom: 0; }
  .gutter-desktop-wider,
  .margins-desktop-wider {
    padding-left: 20px;
    padding-right: 20px; }
  .gutter-desktop-wider-left,
  .margin-desktop-wider-left {
    padding-left: 20px; }
  .gutter-desktop-wider-right,
  .margin-desktop-wider-right {
    padding-right: 20px; }
  .gutter-desktop-wider-top,
  .margin-desktop-wider-top {
    padding-top: 20px; }
  .gutter-desktop-wider-bottom,
  .margin-desktop-wider-bottom {
    padding-bottom: 20px; }
  .auto-height-desktop-wider {
    height: inherit; }
  .centered-desktop-wider {
    display: block !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    clear: both !important; }
  .parent-desktop-wider {
    padding-left: 0;
    padding-right: 0; }
  .vertical-align-desktop-wider-middle {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wider-middle > * {
      display: inline-block;
      float: none !important;
      vertical-align: middle;
      font-size: 1rem; }
  .vertical-align-desktop-wider-top {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wider-top > * {
      display: inline-block;
      float: none !important;
      vertical-align: top;
      font-size: 1rem; }
  .vertical-align-desktop-wider-bottom {
    font-size: 0;
    clear: both; }
    .vertical-align-desktop-wider-bottom > * {
      display: inline-block;
      float: none !important;
      vertical-align: bottom;
      font-size: 1rem; }
  /**
	 * Visible, hide, etc...
	 */
  .hide-desktop-wider {
    display: none; }
  .not-visible-desktop-wider {
    visibility: hidden; }
  .show-desktop-wider {
    display: block; }
  .show-inline-desktop-wider {
    display: inline-block; }
  .visible-desktop-wider {
    visibility: visible; }
  /**
	 * Clear each class :
	 */ }

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

::-moz-selection {
  background: #ee0000;
  /* WebKit/Blink Browsers */ }

::selection {
  background: #ee0000;
  /* WebKit/Blink Browsers */ }

::-moz-selection {
  background: #ee0000;
  /* Gecko Browsers */ }

:focus {
  outline: thin dotted; }

body {
  font-size: 16px;
  font-family: "PT Sans", sans-serif;
  font-weight: 400;
  color: #222;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: #fff; }
  @media screen and (min-width: 481px) {
    body {
      font-size: 17px; } }
  @media screen and (min-width: 1200px) {
    body {
      font-size: 19px; } }

p {
  margin: 0 0 30px;
  line-height: 1.5; }
  p.small-desc {
    font-size: 14px; }
  @media screen and (min-width: 1200px) {
    p {
      font-size: 20px; }
      p.small-desc {
        font-size: 16px; } }

.label {
  font-family: "PT Sans", sans-serif;
  text-transform: uppercase;
  margin: 0 0 5px;
  display: inline-block; }

h1, h2, h3, h4, .intro {
  color: #222; }

.intro {
  line-height: 1.5;
  letter-spacing: -0.015em;
  margin: 0 0 40px;
  font-size: 17px; }
  .template-listing .intro {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto; }
  @media screen and (min-width: 1200px) {
    .intro {
      font-size: 23px; } }

h1 {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  margin: 0 0 10px;
  font-family: "PT Sans", sans-serif;
  letter-spacing: -0.02em; }
  h1.lead-in-text {
    margin: 0 0 7px; }
  .template-article h1 {
    font-size: 30px; }
  h1 span {
    font-weight: 400;
    display: block; }
  .template-listing h1 {
    text-transform: uppercase;
    margin-top: 0; }
    .template-listing h1 span {
      display: inline;
      opacity: 0.9; }
  @media screen and (min-width: 481px) {
    h1 {
      font-size: 40px; }
      .template-article h1 {
        font-size: 40px; } }
  @media screen and (min-width: 1200px) {
    h1 {
      font-size: 45px;
      margin: 0 0 30px;
      line-height: 1.1; } }

h2 {
  font-size: 28px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.015em;
  margin: 20px 0 20px; }
  h2.lead-in-text {
    margin: 30px 0 7px; }
  @media screen and (min-width: 1200px) {
    h2 {
      font-size: 34px;
      margin: 40px 0 40px; }
      h2.lead-in-text {
        margin: 40px 0 7px; } }

h3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.015em;
  margin: 0 0 10px; }
  h3.lead-in-text {
    margin: 0 0 20px; }
  h3.feature-heading {
    margin: 0 0 5px; }
  @media screen and (min-width: 1200px) {
    h3 {
      font-size: 28px; } }

h4 {
  font-weight: 700;
  line-height: 1;
  margin: 0 0 10px;
  text-transform: uppercase;
  font-family: "PT Sans", sans-serif;
  font-size: 20px; }
  .factfile h4, .voices ul li h4, .cta_main h4, .voices-small h4, .map-wrapper h4, .modal h4 {
    font-weight: 400;
    font-size: 26px;
    margin: 0 0 15px; }
    .factfile h4 span, .voices ul li h4 span, .cta_main h4 span, .voices-small h4 span, .map-wrapper h4 span, .modal h4 span {
      font-weight: 700; }
  h4 span {
    font-weight: 400; }
  @media screen and (min-width: 1200px) {
    h4 {
      font-size: 20px; } }

blockquote {
  margin: 40px 0 40px;
  width: 95%; }
  blockquote p {
    margin: 0 0 10px;
    color: #fff;
    font-size: 20px;
    background: #231F20;
    display: inline;
    padding: 5px 0;
    letter-spacing: -0.02em;
    font-weight: 700;
    line-height: 1.7;
    -webkit-box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
            box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
    left: 10px;
    position: relative; }
  blockquote .meta {
    margin: 10px 0 0; }
  blockquote .btn_sm {
    margin: 10px 0 0;
    display: inline-block;
    font-weight: 400; }
  @media screen and (min-width: 1200px) {
    blockquote {
      margin: 60px 60px 60px;
      width: auto; }
      blockquote.right {
        float: right;
        width: 40%;
        margin: 0 -60px 60px 60px; }
      blockquote p {
        font-size: 24px; } }

.meta {
  font-family: "PT Sans", sans-serif;
  text-transform: uppercase;
  color: #444;
  font-size: 12px; }
  .meta span {
    display: inline-block; }
  .meta .primary-label {
    font-weight: 700;
    margin-right: 8px;
    position: relative; }
    .meta .primary-label.with_svg {
      padding-left: 20px; }
    .meta .primary-label svg {
      width: 14px;
      height: 14px;
      fill: #231F20;
      position: absolute;
      left: 0; }
  .meta .secondary-label {
    position: relative;
    margin-left: 0;
    margin-right: 10px; }
  .meta .tertiary-label {
    position: relative;
    margin-left: 15px;
    margin-right: 10px; }
    .meta .tertiary-label:before {
      position: absolute;
      content: '/';
      top: -2px;
      left: -15px;
      opacity: 0.5; }
    .meta .tertiary-label svg {
      width: 14px;
      height: 14px;
      fill: #444;
      position: relative;
      left: 0;
      top: 1px;
      margin-right: 5px; }
  @media screen and (min-width: 1200px) {
    .meta {
      font-size: 12px; } }

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

a:hover,
a:focus {
  color: #31a19a; }

ul {
  list-style-type: none; }

.normal-ul {
  margin: 20px 0 40px 20px; }
  .normal-ul li {
    margin: 0 0 20px;
    padding: 0 0 0 5px;
    position: relative; }
    .normal-ul li:before {
      content: '';
      position: absolute;
      width: 6px;
      height: 6px;
      background-color: #ee0000;
      top: 7px;
      left: -15px; }

.btn, .search-form #edit-submit {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  display: inline-block;
  border: none;
  font-family: "PT Sans", sans-serif;
  text-transform: uppercase;
  background-color: #ee0000;
  color: #fff;
  padding: 15px 20px;
  position: relative;
  height: 50px;
  font-size: 16px;
  font-weight: 700; }
  .btn.btn_sm, .search-form .btn_sm#edit-submit {
    height: 30px;
    padding: 6px 15px;
    font-size: 14px;
    font-weight: 400; }
  .btn.btn_alt, .search-form .btn_alt#edit-submit {
    background-color: #31a19a; }
    .btn.btn_alt:hover, .search-form .btn_alt#edit-submit:hover, .btn.btn_alt:focus, .search-form .btn_alt#edit-submit:focus {
      background-color: #1c736e; }
  .btn.btn_tickbox, .search-form .btn_tickbox#edit-submit {
    height: 40px;
    padding: 10px 20px 10px 45px; }
    .btn.btn_tickbox.btn_secondary.btn_sm, .search-form .btn_tickbox.btn_secondary.btn_sm#edit-submit {
      padding: 10px 20px 10px 45px; }
    .btn.btn_tickbox .tickbox, .search-form .btn_tickbox#edit-submit .tickbox {
      background-color: rgba(35, 31, 32, 0.2);
      height: 26px;
      width: 26px;
      position: absolute;
      top: 7px;
      left: 7px;
      -webkit-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.15);
              box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.15); }
      .btn.btn_tickbox .tickbox svg, .search-form .btn_tickbox#edit-submit .tickbox svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        position: absolute;
        top: 5px;
        left: 4px;
        width: 18px;
        height: 18px;
        fill: #fff;
        opacity: 0; }
    .btn.btn_tickbox.active, .search-form .btn_tickbox.active#edit-submit {
      background-color: #49a131;
      color: #fff; }
      .btn.btn_tickbox.active .tickbox svg, .search-form .btn_tickbox.active#edit-submit .tickbox svg {
        opacity: 1; }
  .btn.btn_secondary, .search-form .btn_secondary#edit-submit {
    background-color: transparent;
    color: #ee0000;
    padding-left: 50px; }
    .btn.btn_secondary svg, .search-form .btn_secondary#edit-submit svg {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      fill: #ee0000;
      width: 30px;
      height: 30px;
      position: absolute;
      top: 7px;
      margin-right: 3px;
      left: 7px; }
    .btn.btn_secondary:hover svg, .search-form .btn_secondary#edit-submit:hover svg, .btn.btn_secondary:focus svg, .search-form .btn_secondary#edit-submit:focus svg {
      fill: white; }
    .btn.btn_secondary.btn_sm, .search-form .btn_secondary.btn_sm#edit-submit {
      padding-left: 30px; }
      .btn.btn_secondary.btn_sm svg, .search-form .btn_secondary.btn_sm#edit-submit svg {
        width: 20px;
        height: 20px;
        top: 5px;
        left: 4px; }
  .btn:hover, .search-form #edit-submit:hover, .btn:focus, .search-form #edit-submit:focus {
    background-color: #31a19a;
    color: #fff;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }

input[type="text"] {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  height: 50px;
  padding: 0 15px;
  margin: 0 0 10px 0;
  background-color: white;
  border: none;
  display: inline-block;
  width: 100%;
  font-family: "PT Sans", sans-serif;
  -webkit-appearance: none;
  border-radius: 0; }
  input[type="text"]::-webkit-input-placeholder {
    opacity: 1; }
  input[type="text"]::-moz-placeholder {
    opacity: 1; }
  input[type="text"]:-ms-input-placeholder {
    opacity: 1; }
  input[type="text"]::placeholder {
    opacity: 1; }
  input[type="text"]:hover::-webkit-input-placeholder {
    color: #231F20;
    opacity: 0.5; }
  input[type="text"]:hover::-moz-placeholder {
    color: #231F20;
    opacity: 0.5; }
  input[type="text"]:hover:-ms-input-placeholder {
    color: #231F20;
    opacity: 0.5; }
  input[type="text"]:hover::placeholder {
    color: #231F20;
    opacity: 0.5; }
  input[type="text"]:focus {
    background-color: white; }

img {
  width: 100%;
  height: auto;
  display: block;
  color: #231F20; }

@media screen and (min-width: 1200px) {
  #os1 {
    position: relative; } }

.container {
  margin: 0 auto;
  position: relative; }
  @media screen and (min-width: 769px) {
    .container {
      padding: 0 20px; } }
  @media screen and (min-width: 1430px) {
    .container {
      padding: 0 60px; } }

.skiplinks {
  left: 50%;
  margin-left: -7em;
  position: absolute;
  width: 14em;
  z-index: 9999; }
  .skiplinks .skiplink {
    display: inline-block;
    background-color: #ee0000;
    color: #fff;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    padding: 0.25em 1em;
    text-align: center;
    width: 14em;
    text-transform: uppercase;
    font-weight: 700; }
    .skiplinks .skiplink:focus {
      -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
              box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      background-color: #31a19a;
      border-top: 0;
      padding: 0.25em 1em;
      text-decoration: none; }

.skipanchor {
  display: block;
  height: 50px;
  /*same height as header*/
  margin-top: -50px;
  /*same height as header*/
  visibility: hidden; }

.focusable {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
  word-wrap: normal; }
  .focusable:focus {
    clip: auto;
    height: auto;
    overflow: visible;
    position: static;
    width: auto; }

.main {
  padding: 0;
  overflow: hidden; }

header {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  height: 50px;
  position: absolute;
  background-color: white;
  width: 100%;
  z-index: 30;
  top: 0; }
  header.fixed {
    height: 50px;
    position: fixed;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(35, 31, 32, 0.1);
    top: 0; }
  @media screen and (min-width: 1200px) {
    header {
      height: 90px; } }

.sticky-btns {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: fixed;
  bottom: -40px;
  height: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 200; }
  @media screen and (min-width: 1200px) {
    .sticky-btns {
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0); } }
  .front .sticky-btns, .template-reqs .sticky-btns {
    display: none; }
  .sticky-btns.fixed {
    bottom: 0; }
  .sticky-btns a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    width: auto;
    height: 40px;
    line-height: 40px;
    padding: 0 15px;
    color: white;
    text-align: center;
    font-family: "PT Sans", sans-serif;
    text-transform: uppercase;
    float: left;
    font-weight: 700;
    font-size: 14px; }
    .sticky-btns a:hover, .sticky-btns a:focus {
      color: white;
      background-color: #231F20; }
  .sticky-btns .donate-btn {
    background-color: #ee0000;
    font-weight: 700; }
  .sticky-btns .share-btn {
    background-color: #31a19a; }
    .sticky-btns .share-btn .swap {
      display: none; }
    .sticky-btns .share-btn.active span {
      display: none; }
      .sticky-btns .share-btn.active span.swap {
        display: block; }
  @media screen and (min-width: 1200px) {
    .sticky-btns {
      bottom: -50px;
      height: 50px;
      left: 20px;
      width: auto; }
      .sticky-btns a {
        height: 50px;
        line-height: 50px;
        padding: 0 15px;
        font-size: 16px; } }

.menu-btn {
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  background-color: transparent;
  position: absolute;
  height: 50px;
  width: 50px;
  right: 0;
  top: 0;
  color: #231F20;
  font-family: "PT Sans", sans-serif;
  text-transform: uppercase;
  font-size: 11px;
  text-align: center;
  padding: 8px 0 0;
  display: block;
  z-index: 40; }
  .menu-btn .icon {
    position: relative;
    fill: #231F20;
    width: 18px;
    height: 18px;
    top: 2px; }
    .menu-btn .icon.close {
      display: none; }
  .menu-btn:hover, .menu-btn:focus {
    color: #231F20; }
  .menu-btn.active .icon {
    display: none; }
    .menu-btn.active .icon.close {
      display: inline; }
  .menu-btn .divider {
    position: absolute;
    height: 65%;
    width: 15px;
    top: 10px;
    left: -8px;
    opacity: 0.3;
    fill: #231F20; }
  @media screen and (min-width: 1200px) {
    .menu-btn {
      display: none; } }

.search-bar {
  position: absolute;
  width: 100%;
  background-color: rgba(35, 31, 32, 0.95);
  height: 50px;
  top: 0;
  left: 0;
  z-index: 50;
  display: none; }
  .search-bar .search-form {
    margin-top: 0; }
    .search-bar .search-form .input-label {
      display: none; }
  .search-bar input[type="text"] {
    height: 50px;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 20px;
    width: -webkit-calc(100% - 30px);
    width: calc(100% - 30px);
    margin-left: -20px;
    text-align: center;
    border: none;
    font-family: "PT Sans", sans-serif;
    padding: 0; }
  .search-bar .btn, .search-bar .search-form #edit-submit, .search-form .search-bar #edit-submit {
    position: absolute;
    top: 0;
    margin-left: -60px; }
  .search-bar input[type="submit"] {
    color: #fff; }
  .search-bar .close-panel {
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
    background-color: #444;
    top: 0;
    right: 0;
    height: 50px;
    width: 50px; }
    .search-bar .close-panel svg {
      left: 16px;
      top: 15px; }
  .search-bar.open {
    display: block; }
  @media screen and (min-width: 1200px) {
    .search-bar {
      height: 90px; }
      .search-bar input[type="text"] {
        width: 100%;
        height: 70px;
        margin-top: 10px;
        font-size: 30px;
        text-align: center; }
      .search-bar .btn, .search-bar .search-form #edit-submit, .search-form .search-bar #edit-submit {
        position: absolute;
        top: 20px;
        margin-left: -90px; }
      .search-bar .close-panel {
        top: 20px;
        right: 0; } }

.logo-container {
  float: left; }

.logo {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  display: block;
  width: 130px;
  height: 30px;
  margin: 5px 0 0;
  position: relative;
  float: left;
  z-index: 32;
  left: -10px; }
  .logo svg .line, .logo svg .word1, .logo svg .word2 {
    opacity: 1; }
  .logo svg .extrabit {
    fill: #ee0000;
    opacity: 0; }
  .logo svg .extrabit-cutoff {
    fill: #ee0000;
    opacity: 1; }
  .fixed .logo {
    width: 130px;
    height: 30px;
    margin: 5px 0 0; }
    .fixed .logo svg .line, .fixed .logo svg .word1, .fixed .logo svg .word2, .fixed .logo svg .extrabit-cutoff {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      opacity: 1; }
    .fixed .logo svg .extrabit {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      opacity: 0; }
  @media screen and (min-width: 1200px) {
    .logo {
      width: 160px;
      height: 40px;
      margin: 18px 0 0;
      left: -30px; }
      .logo svg .line, .logo svg .word1, .logo svg .word2, .logo svg .extrabit-cutoff {
        opacity: 1; }
      .logo svg .extrabit {
        opacity: 0; }
      .fixed .logo {
        width: 130px;
        height: 30px;
        margin: 5px 0 0; }
        .fixed .logo svg .line, .fixed .logo svg .word1, .fixed .logo svg .word2 {
          opacity: 1; } }
  @media (min-width: 1200px) and (max-width: 1235px) {
    .logo {
      width: 130px;
      height: 30px;
      margin: 5px 0 0;
      left: -40px;
      top: 25px; } }
  @media screen and (min-width: 1430px) {
    .logo {
      width: 210px;
      height: 70px;
      margin: 12px 0 0;
      left: 0; } }

@media screen and (min-width: 1430px) {
  .fixed .logo svg .word1, .fixed .logo svg .word2 {
    opacity: 1; } }

@media screen and (min-width: 1200px) {
  .fixed .logo svg .word1, .fixed .logo svg .word2 {
    opacity: 1; } }

footer {
  padding: 20px 0;
  text-align: center;
  background-size: cover;
  background-position: center;
  position: relative; }
  footer .img_mask {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    top: 0; }
  footer .copyright {
    font-size: 14px;
    margin: 0 0 5px;
    color: #444; }
    footer .copyright a {
      color: #444; }
    footer .copyright span {
      font-weight: 700; }
  footer .social li {
    margin: 0 5px !important; }
    @media screen and (min-width: 1200px) {
      footer .social li {
        margin: 0 !important; } }
  footer .sitebytbx {
    font-size: 14px;
    margin-top: 30px; }
    @media screen and (min-width: 1200px) {
      footer .sitebytbx {
        float: right;
        margin-top: -30px; } }
  footer .credits {
    margin: 0 0 30px; }
    footer .credits .branding {
      fill: #ee0000;
      width: 70px;
      height: 70px;
      display: none;
      margin-right: 20px;
      top: 0;
      position: relative;
      vertical-align: top; }
    footer .credits .text {
      text-align: center;
      display: inline-block;
      width: auto; }
      footer .credits .text .label {
        font-weight: 700;
        font-size: 22px;
        margin: 0 0 15px; }
        footer .credits .text .label a {
          -webkit-transition: all 0.2s ease 0s;
          -moz-transition: all 0.2s ease 0s;
          -ms-transition: all 0.2s ease 0s;
          -o-transition: all 0.2s ease 0s;
          color: #231F20;
          font-weight: 400;
          font-size: 16px; }
          footer .credits .text .label a svg {
            -webkit-transition: all 0.2s ease 0s;
            -moz-transition: all 0.2s ease 0s;
            -ms-transition: all 0.2s ease 0s;
            -o-transition: all 0.2s ease 0s;
            fill: #ee0000;
            width: 14px;
            height: 14px; }
            footer .credits .text .label a svg.map {
              fill: #231F20;
              width: 70px;
              height: 45px;
              position: relative;
              top: 15px;
              margin: 0 -10px 0 20px;
              opacity: 0.5;
              border-left: 1px dotted rgba(35, 31, 32, 0.2); }
          footer .credits .text .label a:hover svg, footer .credits .text .label a:focus svg {
            fill: #231F20; }
            footer .credits .text .label a:hover svg.map, footer .credits .text .label a:focus svg.map {
              opacity: 1; }
    @media screen and (min-width: 1200px) {
      footer .credits {
        margin: 0 0 0; }
        footer .credits .branding {
          display: inline-block; }
        footer .credits .text {
          text-align: left;
          display: inline-block;
          width: -webkit-calc(100% - 100px);
          width: calc(100% - 100px);
          padding-right: 40px; }
          footer .credits .text .label {
            margin: -25px 0 15px; } }
  footer .footer-links {
    font-size: 14px;
    margin: 0;
    margin-top: 25px; }
    footer .footer-links li {
      display: inline-block;
      margin-right: 15px; }
      footer .footer-links li a {
        color: #ee0000; }
        footer .footer-links li a:hover {
          color: #31a19a; }
  footer h1 {
    font-family: "PT Sans", sans-serif;
    opacity: 0.5;
    font-weight: 400; }
  @media screen and (min-width: 1200px) {
    footer {
      padding: 30px 0;
      text-align: left; } }

.mobile-nav {
  -webkit-transition: all 0.3s ease-in-out 0.1s;
  -moz-transition: all 0.3s ease-in-out 0.1s;
  -ms-transition: all 0.3s ease-in-out 0.1s;
  -o-transition: all 0.3s ease-in-out 0.1s;
  position: absolute;
  width: 100%;
  z-index: 29;
  background-color: #fff;
  top: -400px;
  padding: 0 20px 20px; }
  .mobile-nav a {
    border-top: 1px dotted rgba(35, 31, 32, 0.2);
    display: block;
    padding: 15px 0;
    text-transform: uppercase;
    font-weight: 700;
    font-family: "PT Sans", sans-serif;
    color: #231F20;
    font-size: 18px;
    text-align: center; }
    .mobile-nav a.donate {
      background-color: #ee0000;
      color: #fff; }
    .mobile-nav a.donate:hover, .mobile-nav a.donate:focus {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      background-color: #31a19a; }
  .mobile-nav li:last-child a {
    border-bottom: 1px dotted rgba(35, 31, 32, 0.2); }
  .mobile-nav.open {
    top: 50px;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
    display: block; }
    .template-no-image .mobile-nav.open {
      top: 49px; }
  @media screen and (min-width: 1200px) {
    .mobile-nav {
      display: none; } }

.keyboard .mobile-nav {
  display: none; }
  .keyboard .mobile-nav.open {
    display: block; }

.nav {
  position: absolute;
  width: 100%;
  padding-right: 55px; }
  .nav .dropdown_mask {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    position: absolute;
    z-index: 31;
    width: 100%;
    height: 50px;
    background-color: white;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.2); }
    .fixed .nav .dropdown_mask {
      border-bottom: 1px dotted rgba(35, 31, 32, 0.2); }
    .template-no-image .nav .dropdown_mask {
      border-bottom: 1px dotted rgba(35, 31, 32, 0.2); }
    .fixed .nav .dropdown_mask {
      height: 50px; }
  .nav ul.primary_nav {
    float: right; }
  .nav li {
    float: left;
    display: block; }
  .nav .primary_link {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    font-family: "PT Sans", sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    z-index: 32;
    position: relative;
    color: #231F20;
    display: none;
    height: 50px;
    line-height: 50px; }
    .nav .primary_link svg {
      fill: #ee0000;
      width: 10px;
      height: 10px; }
    .nav .primary_link.donate_link {
      margin-top: 0;
      height: 50px;
      font-size: 11px;
      text-align: center;
      line-height: 20px;
      position: relative;
      display: block;
      padding: 10px 10px 0 10px;
      font-weight: 400;
      color: #ee0000; }
      .nav .primary_link.donate_link .icon {
        position: relative;
        fill: #ee0000;
        width: 18px;
        height: 18px;
        top: 2px;
        display: block;
        margin: 0 auto;
        font-weight: bold;
        font-size: 200%; }
      .nav .primary_link.donate_link .divider {
        position: absolute;
        height: 65%;
        width: 15px;
        top: 10px;
        left: -8px;
        opacity: 0.3;
        fill: #231F20; }
      .nav .primary_link.donate_link span {
        display: none; }
    .nav .primary_link.global_link {
      font-weight: 400;
      font-size: 16px;
      line-height: 1;
      text-align: center;
      padding: 20px 10px 0; }
      .nav .primary_link.global_link svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        width: 10px;
        height: 10px;
        fill: #ee0000;
        position: relative;
        top: -3px;
        display: block;
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg);
        margin: 0 auto; }
    .nav .primary_link.search_link {
      display: block;
      width: 50px;
      -webkit-box-shadow: none;
              box-shadow: none;
      border: none;
      background: none; }
      .nav .primary_link.search_link svg {
        width: 20px;
        height: 20px;
        fill: #222;
        position: relative;
        top: 5px;
        left: 0; }
  .nav .mega_dropdown {
    display: none;
    position: relative;
    background-color: white;
    min-height: 200px; }
    .nav .mega_dropdown.donate_dropdown {
      min-height: auto;
      right: 20px; }
      .nav .mega_dropdown.donate_dropdown li a {
        padding: 10px 70px 10px 15px; }
    .nav .mega_dropdown h2 {
      font-size: 34px;
      margin-top: 5px; }
    .nav .mega_dropdown h4 {
      margin: 0 0 0; }
      .nav .mega_dropdown h4 a {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        color: #231F20;
        font-size: 18px;
        border-top: 1px dotted rgba(35, 31, 32, 0.2);
        padding: 15px 5px;
        text-transform: none;
        display: block; }
        .nav .mega_dropdown h4 a svg {
          fill: #ee0000;
          -webkit-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
                  transform: rotate(-90deg);
          width: 10px;
          height: 10px;
          top: 0;
          position: relative; }
        .nav .mega_dropdown h4 a:hover, .nav .mega_dropdown h4 a:focus {
          color: #fff;
          background-color: #231f20; }
    .nav .mega_dropdown .intro {
      font-size: 20px;
      margin: 0 0 25px; }
    .nav .mega_dropdown .meta {
      margin: 0 0 10px; }
    .nav .mega_dropdown .drop-cta {
      background-color: rgba(234, 236, 230, 0.95);
      position: absolute;
      width: 340px;
      top: 0;
      right: -340px;
      height: 100%;
      padding: 30px;
      border-top: 1px dotted rgba(35, 31, 32, 0.2); }
      .nav .mega_dropdown .drop-cta.flipped {
        right: auto;
        left: -340px; }
      .nav .mega_dropdown .drop-cta .text {
        position: absolute;
        bottom: 30px;
        width: -webkit-calc(100% - 60px);
        width: calc(100% - 60px); }
      .nav .mega_dropdown .drop-cta p {
        margin: 0 0 10px; }
    .nav .mega_dropdown ul {
      margin: 0;
      border-bottom: 1px dotted rgba(35, 31, 32, 0.1); }
    .nav .mega_dropdown li {
      float: none; }
      .nav .mega_dropdown li a {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        font-size: 16px;
        font-weight: 700;
        display: block;
        padding: 10px 75px 10px 25px;
        border-top: 1px dotted rgba(35, 31, 32, 0.2);
        color: #231F20; }
        .nav .mega_dropdown li a:hover, .nav .mega_dropdown li a:focus {
          background-color: #444;
          color: #fff; }
  @media screen and (min-width: 1200px) {
    .nav {
      display: block;
      font-size: 19px;
      padding-right: 0; }
      .nav .dropdown_mask {
        display: block;
        height: 90px; }
      .nav ul.primary_nav {
        margin-right: 0; }
      .nav .primary_link {
        height: 90px;
        line-height: 90px;
        font-size: 16px;
        display: block;
        padding: 0 12px; }
        .fixed .nav .primary_link {
          height: 50px;
          line-height: 50px;
          font-size: 16px;
          display: block; }
        .nav .primary_link:hover, .nav .primary_link:focus {
          color: #ee0000; }
        .nav .primary_link.donate_link {
          margin: 15px 20px;
          text-align: center;
          padding-left: 15px;
          padding-right: 15px;
          padding-top: 0;
          height: 60px;
          line-height: 60px;
          font-size: 18px;
          background-color: #ee0000;
          color: white;
          font-weight: 700; }
          .nav .primary_link.donate_link span {
            display: inline; }
          .nav .primary_link.donate_link .divider {
            display: none; }
          .nav .primary_link.donate_link .icon {
            display: none; }
          .fixed .nav .primary_link.donate_link {
            font-size: 16px;
            -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
                    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            margin-top: 0;
            height: 50px;
            line-height: 50px;
            padding-left: 22px;
            padding-right: 22px; }
          .nav .primary_link.donate_link:hover, .nav .primary_link.donate_link:focus {
            color: #fff;
            -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
                    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            background-color: #31a19a; }
        .nav .primary_link.search_link {
          width: auto; }
          .nav .primary_link.search_link svg {
            left: 0; }
          .nav .primary_link.search_link:hover svg, .nav .primary_link.search_link:focus svg {
            fill: #ee0000; }
        .nav .primary_link.global_link:hover svg, .nav .primary_link.global_link:focus svg {
          top: -8px; }
        .fixed .nav .primary_link.global_link {
          opacity: 0; }
      .nav .mega_dropdown {
        -webkit-transition: all 0.3s ease-in-out 0.1s;
        -moz-transition: all 0.3s ease-in-out 0.1s;
        -ms-transition: all 0.3s ease-in-out 0.1s;
        -o-transition: all 0.3s ease-in-out 0.1s;
        display: block;
        background-color: white;
        position: absolute;
        width: auto;
        top: -700px;
        z-index: 30; }
        .nav .mega_dropdown .container {
          -webkit-transition: all 0.4s ease-in-out 0.3s;
          -moz-transition: all 0.4s ease-in-out 0.3s;
          -ms-transition: all 0.4s ease-in-out 0.3s;
          -o-transition: all 0.4s ease-in-out 0.3s;
          opacity: 0; }
      .nav li:hover .primary_link, .nav li:focus .primary_link, .nav li[aria-expanded='true'] .primary_link {
        color: #ee0000; }
        .nav li:hover .primary_link.donate_link, .nav li:focus .primary_link.donate_link, .nav li[aria-expanded='true'] .primary_link.donate_link {
          color: #fff; }
      .nav li:hover .mega_dropdown, .nav li:focus .mega_dropdown, .nav li[aria-expanded='true'] .mega_dropdown {
        top: 90px;
        -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
                box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }
        .nav li:hover .mega_dropdown .container, .nav li:focus .mega_dropdown .container, .nav li[aria-expanded='true'] .mega_dropdown .container {
          opacity: 1; }
      .fixed .nav li:hover .mega_dropdown, .fixed .nav li:focus .mega_dropdown, .fixed .nav li[aria-expanded='true'] .mega_dropdown {
        top: 49px; }
      .template-no-image .nav li:hover .mega_dropdown, .template-no-image .nav li:focus .mega_dropdown {
        top: 89px; }
      .template-no-image .fixed .nav li:hover .mega_dropdown, .template-no-image .fixed .nav li:focus .mega_dropdown {
        top: 49px; } }
  @media screen and (min-width: 1430px) {
    .nav .primary_link {
      padding: 0 20px; } }

.floated-labels {
  list-style-type: none;
  font-family: "PT Sans", sans-serif;
  text-transform: uppercase;
  font-weight: 700; }
  .floated-labels li {
    margin: 0 0 10px; }
    .floated-labels li a {
      display: block; }
  .floated-labels.key_links {
    font-size: 22px;
    margin: 0 0 40px; }
    .floated-labels.key_links svg {
      height: 12px;
      width: 12px;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg); }
  @media screen and (min-width: 1200px) {
    .floated-labels {
      font-size: 19px; }
      .floated-labels li {
        float: left;
        width: 50%; } }

.news-feed-wrapper {
  background-color: #fff;
  position: relative; }
  .news-feed-wrapper:after {
    position: absolute;
    height: 100%;
    width: 2000px;
    right: -2000px;
    top: 0;
    content: '';
    background-color: #fff; }
  @media screen and (min-width: 1200px) {
    .news-feed-wrapper {
      margin-top: -140px;
      padding: 40px; } }

.news-feed a {
  color: #222;
  display: block;
  padding: 18px 0; }

.news-feed p {
  margin: 0 0 5px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2; }

@media screen and (min-width: 1200px) {
  .news-feed p {
    font-size: 17px; } }

.launch_panel {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #ee0000; }
  .launch_panel.simple {
    width: 35px;
    height: 35px !important;
    padding: 0; }
  .launch_panel svg {
    fill: #fff;
    width: 20px;
    height: 20px;
    right: 8px;
    top: 8px;
    position: absolute; }

.story-teaser .story-person {
  position: relative;
  width: 100px;
  float: left;
  margin: 10px 40px 0 0;
  -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
  display: none; }

.story-teaser blockquote {
  margin: 0 0 20px; }
  .story-teaser blockquote p {
    color: #fff;
    background: none;
    background-color: none; }

.story-teaser .story-link {
  font-weight: 700; }

@media screen and (min-width: 1200px) {
  .story-teaser .story-person {
    display: block; }
  .story-teaser blockquote {
    float: none;
    width: auto;
    margin: 0 0 20px; } }

.audio-player {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  background-color: rgba(0, 0, 0, 0.5);
  display: inline-block;
  padding: 0 6px 6px 8px;
  border-radius: 20px;
  margin-right: 15px; }
  .audio-player .meta {
    color: #31a19a;
    display: inline-block; }
    .audio-player .meta .primary-label {
      margin-right: 5px; }
  .audio-player svg {
    position: relative;
    width: 18px;
    height: 18px;
    top: 4px;
    fill: #31a19a; }
  .audio-player:hover, .audio-player:focus {
    background-color: #fff; }
  @media screen and (min-width: 1200px) {
    .audio-player {
      padding: 0 6px 6px 8px; } }

.breadcrumb {
  font-size: 14px;
  margin: 0 0 10px; }
  .breadcrumb li {
    display: none; }
    .breadcrumb li a {
      margin-right: 10px;
      color: #231F20; }
      .breadcrumb li a svg {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        width: 10px;
        height: 10px;
        fill: #231F20;
        opacity: 0.5;
        margin-left: 5px; }
    .breadcrumb li:last-child {
      display: inline-block; }
  .template-landing-page .breadcrumb li a, .template-index-page .breadcrumb li a, .template-countries .breadcrumb li a {
    color: #fff; }
    .template-landing-page .breadcrumb li a svg, .template-index-page .breadcrumb li a svg, .template-countries .breadcrumb li a svg {
      fill: #fff; }
  @media screen and (min-width: 1200px) {
    .breadcrumb {
      font-size: 16px; }
      .breadcrumb li {
        display: inline-block; } }

.template-landing-page .paging, .template-story .paging {
  margin-bottom: 0; }

.page_anchors {
  position: absolute;
  height: 50px;
  width: 100%;
  top: 50px;
  left: 0;
  z-index: 3;
  overflow: hidden;
  -webkit-box-shadow: 0px 3px 20px -4px rgba(0, 0, 0, 0);
          box-shadow: 0px 3px 20px -4px rgba(0, 0, 0, 0); }
  @media screen and (min-width: 1200px) {
    .page_anchors {
      top: 25px; } }
  .page_anchors .down-arrow {
    display: none; }
  .page_anchors .branding {
    width: 35px;
    height: 35px;
    position: absolute;
    left: 10px;
    top: 6px;
    fill: #ee0000;
    display: none; }
  .page_anchors .top_link {
    display: inline-block;
    position: absolute;
    vertical-align: top;
    color: white;
    font-weight: 700;
    margin-right: 10px;
    font-size: 18px;
    content: 'Yemen';
    -webkit-transform: translateX(-100px);
        -ms-transform: translateX(-100px);
            transform: translateX(-100px);
    opacity: 0;
    -webkit-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s; }
    .page_anchors .top_link svg {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      opacity: 0.7;
      margin-left: 10px;
      fill: white;
      width: 14px;
      height: 14px;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      position: relative;
      top: 2px; }
    .page_anchors .top_link:hover, .page_anchors .top_link:focus {
      color: #fff; }
      .page_anchors .top_link:hover svg, .page_anchors .top_link:focus svg {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg);
        fill: #fff;
        opacity: 1; }
  .page_anchors .show_anchors_link {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    vertical-align: top;
    font-weight: 700;
    font-size: 15px;
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 20px;
    text-transform: uppercase;
    color: #fff; }
    .page_anchors .show_anchors_link:focus {
      border: #fff thin dotted; }
    @media screen and (min-width: 769px) {
      .page_anchors .show_anchors_link {
        padding: 0 40px; } }
    .page_anchors .show_anchors_link svg {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      opacity: 0.7;
      margin-left: 5px;
      fill: #fff;
      width: 14px;
      height: 14px;
      -webkit-transform: rotate(0);
          -ms-transform: rotate(0);
              transform: rotate(0);
      position: relative;
      top: 2px; }
    .page_anchors .show_anchors_link.active svg {
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }
  .page_anchors .page_anchors_container[aria-expanded='true'] {
    display: block; }
  .page_anchors .page_anchors_container[aria-expanded='false'] {
    display: none; }
    @media screen and (min-width: 1200px) {
      .page_anchors .page_anchors_container[aria-expanded='false'] {
        display: block; } }
  @media screen and (min-width: 769px) {
    .page_anchors .floated-labels {
      display: inline-block; } }
  .page_anchors .floated-labels li {
    width: auto;
    margin: 0; }
  .page_anchors .floated-labels a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    color: #F96664;
    height: 60px;
    line-height: 60px;
    padding: 0;
    display: block;
    position: relative;
    border-top: 1px dotted rgba(255, 255, 255, 0.2);
    font-size: 18px; }
    .page_anchors .floated-labels a .divider {
      position: absolute;
      height: 65%;
      width: 15px;
      top: 12px;
      right: -8px;
      opacity: 0.3;
      fill: #fff;
      display: none; }
    .page_anchors .floated-labels a:hover, .page_anchors .floated-labels a:focus {
      color: #fff; }
    .page_anchors .floated-labels a.active {
      color: #fff; }
  .page_anchors.open {
    height: auto;
    background-color: rgba(35, 31, 32, 0.95); }
  .page_anchors.fixed {
    color: red;
    position: fixed;
    top: 0;
    bottom: auto;
    background-color: rgba(35, 31, 32, 0.95);
    height: 50px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    -webkit-box-shadow: 0px 3px 20px -4px rgba(0, 0, 0, 0.85);
            box-shadow: 0px 3px 20px -4px rgba(0, 0, 0, 0.85); }
    .page_anchors.fixed.open {
      height: auto; }
    .page_anchors.fixed a {
      height: 50px;
      line-height: 50px;
      font-size: 15px; }
      .page_anchors.fixed a .divider {
        top: 8px; }
    .page_anchors.fixed .branding {
      display: block; }
  @media screen and (min-width: 1200px) {
    .page_anchors {
      display: block;
      height: 90px; }
      .page_anchors .down-arrow {
        position: absolute;
        width: 30px;
        height: 30px;
        top: 15px;
        left: 30px;
        fill: #ee0000; }
      .page_anchors .show_anchors_link {
        display: none; }
      .page_anchors .floated-labels {
        margin-left: -20px; }
        .page_anchors .floated-labels a {
          padding: 0 20px;
          border-top: none; }
          .page_anchors .floated-labels a .divider {
            display: block; }
      .page_anchors.fixed .top_link {
        display: inline-block;
        position: relative;
        font-weight: 700;
        font-size: 18px;
        -webkit-transform: translateX(0px);
            -ms-transform: translateX(0px);
                transform: translateX(0px);
        opacity: 1; } }

.hero {
  -webkit-transition: background-size 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
  transition: background-size 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
  height: -webkit-calc(100vh - 90px);
  height: calc(100vh - 90px);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-color: #231F20;
  position: relative;
  padding: 0 0 0; }
  .hero .sub-nav-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
  .hero .intro {
    color: white; }
  .hero.hero-homepage h1 a {
    color: #fff; }
    .hero.hero-homepage h1 a svg {
      fill: #fff;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      width: 20px;
      height: 20px; }
      @media screen and (min-width: 1200px) {
        .hero.hero-homepage h1 a svg {
          width: 25px;
          height: 25px; } }
  .hero .main-page-title {
    width: 100%;
    position: absolute;
    bottom: 0;
    z-index: 2;
    padding: 20px 15px 50px 0; }
    .hero .main-page-title h1 {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      color: #fff;
      font-family: "PT Sans", sans-serif;
      margin-bottom: 5px;
      font-size: 32px;
      background-color: #ee0000;
      display: inline;
      padding: 3px 0;
      -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
              box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
      line-height: 1.5;
      left: 10px;
      position: relative;
      width: 95%; }
    .template-index-page .hero .main-page-title {
      padding: 0 0 20px; }
    .hero .main-page-title p {
      display: none; }
      .template-story .hero .main-page-title p {
        display: block; }
      .template-index-page .hero .main-page-title p {
        display: block; }
    .hero .main-page-title .intro {
      margin: 5px 0 20px; }
    .front .hero .main-page-title {
      padding: 20px 15px 40px 0; }
      .front .hero .main-page-title h1 {
        font-size: 22px;
        background-color: #ee0000;
        -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
                box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000; }
        .front .hero .main-page-title h1:hover, .front .hero .main-page-title h1:focus {
          background-color: #31a19a;
          -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
                  box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a; }
    .hero .main-page-title .meta {
      color: #fff; }
    .hero .main-page-title .audio-player .meta {
      color: #31a19a; }
  @media screen and (min-width: 481px) {
    .hero {
      padding: 380px 0 0; }
      .hero .main-page-title p {
        display: block; } }
  @media screen and (min-width: 769px) {
    .hero {
      padding: 480px 0 0; } }
  @media screen and (min-width: 1200px) {
    .hero {
      height: -webkit-calc(100vh - 90px);
      height: calc(100vh - 90px);
      padding: 0 0 0;
      background-size: cover;
      background-position: center;
      background-size: cover; }
      .template-index-page .hero {
        height: -webkit-calc(100vh - 220px);
        height: calc(100vh - 220px); }
      .hero .sub-nav-wrapper {
        position: absolute;
        top: 0;
        left: -20px;
        width: 100%; }
        .hero .sub-nav-wrapper .sub-nav {
          height: 45px;
          background-color: rgba(255, 255, 255, 0.7);
          padding: 15px 20px 15px; }
          .hero .sub-nav-wrapper .sub-nav .in-this-section-link {
            display: block;
            font-size: 16px; }
          .hero .sub-nav-wrapper .sub-nav.open {
            height: auto;
            background-color: rgba(255, 255, 255, 0.9); }
      .hero .main-page-title {
        width: 100%;
        position: absolute;
        bottom: 0;
        z-index: 2;
        padding: 0 0 80px;
        background-color: transparent; }
        .hero .main-page-title h1 {
          font-size: 55px; }
        .front .hero .main-page-title {
          padding: 0 0 30px; }
          .front .hero .main-page-title h1 {
            font-size: 40px;
            line-height: 1.35; }
        .template-index-page .hero .main-page-title {
          padding: 0 0 20px; }
        .template-story .hero .main-page-title p {
          font-size: 28px;
          line-height: 1.2em; }
        .template-story .hero .main-page-title h1 {
          margin-bottom: 0;
          font-size: 50px; } }
  @media screen and (min-width: 1600px) {
    .hero .main-page-title h1 {
      font-size: 50px; }
    .front .hero .main-page-title h1 {
      font-size: 50px; }
    .template-story .hero .main-page-title h1 {
      font-size: 50px; } }

.anchor-section {
  padding-top: 100px;
  margin-top: -100px; }

.section-heading {
  margin: 40px 0 40px; }
  .section-heading h2 {
    font-weight: 700;
    background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
    background-size: 100%;
    color: #fff;
    padding: 5px 0;
    display: inline;
    line-height: 1.6;
    -webkit-box-shadow: 10px 0 0 #222, -10px 0 0 #222;
            box-shadow: 10px 0 0 #222, -10px 0 0 #222;
    left: 10px;
    position: relative;
    text-transform: uppercase; }
    .section-heading h2 span {
      font-weight: 400;
      color: rgba(255, 255, 255, 0.8); }
  .section-heading p {
    margin: 10px 0 0; }
  @media screen and (min-width: 1200px) {
    .section-heading p {
      width: 75%;
      margin: 10px auto 0; } }

.factfile {
  position: relative; }
  @media screen and (min-width: 1200px) {
    .factfile {
      background: url("../img/tex-grey-top-left.png") no-repeat left top #f2f4f0;
      background-size: 100%;
      margin-top: -160px;
      z-index: 4; }
      .factfile:after {
        position: absolute;
        height: 100%;
        width: 2000px;
        right: -2000px;
        top: 0;
        content: '';
        background-color: white; } }

.map {
  position: relative;
  margin: 0 0 0; }

.data {
  padding: 20px 0 40px; }
  .data .stat {
    border-bottom: 1px dotted rgba(35, 31, 32, 0.2);
    padding: 3px 0;
    margin: 0;
    text-align: left; }
    .data .stat span {
      display: inline;
      color: #231F20; }
    .data .stat .number {
      font-size: 24px;
      margin-right: 5px; }
    .data .stat .word {
      font-size: 13px;
      float: right;
      position: relative;
      top: 4px;
      font-family: "PT Sans", sans-serif;
      text-transform: none; }
  @media screen and (min-width: 1200px) {
    .data .stat .number {
      font-size: 24px; }
    .data .stat .word {
      top: 8px;
      font-size: 15px; } }

.site {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: relative; }
  .site.inactive {
    margin-bottom: 0;
    opacity: 0.2; }

.msf_global {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
  background-size: 100%;
  color: #fff;
  position: relative;
  z-index: 400;
  text-align: center;
  height: 0;
  overflow: hidden;
  width: 100%; }
  .msf_global h2 {
    color: #fff; }
  .msf_global .intro {
    color: white; }
  .msf_global ul {
    margin: 0 0 20px; }
    .msf_global ul a {
      color: #31a19a;
      font-size: 14px;
      font-weight: 700;
      display: block;
      padding: 8px 0;
      border-top: 1px dotted rgba(255, 255, 255, 0.1); }
      .msf_global ul a:hover, .msf_global ul a:focus {
        color: white; }
  .msf_global.open {
    height: 100%;
    padding: 40px 0 40px;
    position: fixed;
    bottom: 0; }
  @media screen and (min-width: 1200px) {
    .msf_global ul {
      text-align: left; }
      .msf_global ul li {
        width: 25%;
        text-align: left;
        display: inline-block; }
      .msf_global ul a {
        font-size: 16px; } }

.close-panel {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: absolute;
  top: 0;
  right: 0;
  height: 45px;
  width: 45px;
  background-color: #444;
  display: block;
  z-index: 2;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none; }
  .close-panel svg {
    fill: #fff;
    width: 18px;
    height: 18px;
    position: absolute;
    top: 13px;
    left: 13px; }
  .close-panel:hover, .close-panel:focus {
    background-color: #31a19a; }

.features-wrapper {
  margin: 60px 0 0; }
  @media screen and (min-width: 1200px) {
    .features-wrapper {
      padding: 0 0 0 40px; } }

.feature {
  background-color: white;
  margin: 0 0 40px; }
  .feature .text_area {
    position: relative;
    margin-top: 1px;
    width: 95%; }
    .feature .text_area p {
      background-color: #231F20;
      display: inline;
      padding: 4px 0;
      -webkit-box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
              box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
      line-height: 1.7;
      color: #fff;
      font-size: 18px;
      text-transform: uppercase;
      left: 10px;
      position: relative; }
    .feature .text_area h3 a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      color: #fff;
      font-size: 22px;
      text-transform: uppercase;
      padding: 5px 0;
      -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
              box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
      line-height: 1.7;
      background-color: #31a19a;
      left: 10px;
      position: relative; }
      .feature .text_area h3 a svg {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        width: 15px;
        height: 15px;
        fill: #fff; }
      .feature .text_area h3 a:hover, .feature .text_area h3 a:focus {
        background-color: #ee0000;
        -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
                box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000; }
    .feature .text_area .small-desc {
      margin: 0; }
  .feature .launch_panel {
    width: 100%;
    padding-left: 20px;
    position: relative; }
    .feature .launch_panel svg {
      right: 10px;
      top: 13px; }
  @media screen and (min-width: 1200px) {
    .feature {
      margin: 0 0 60px; } }

.voices-small .voices-heading {
  position: absolute;
  width: 100%;
  z-index: 3;
  text-align: center;
  top: 30px; }

.voices-small .voice {
  background: url("../img/tex-white.jpg") no-repeat left top #fff;
  background-size: 100%;
  -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.04);
          box-shadow: 0 0 30px rgba(0, 0, 0, 0.04);
  padding: 80px 40px 60px 40px;
  position: relative;
  text-align: center;
  border-right: 1px dotted rgba(35, 31, 32, 0.1); }
  .voices-small .voice .profile_pic {
    width: 50%;
    position: relative;
    top: 0;
    left: 0;
    margin: 0 auto 15px; }
  .voices-small .voice .text_area {
    position: relative;
    z-index: 2; }
  .voices-small .voice h4 {
    margin: 0 0 25px; }
  .voices-small .voice h3 {
    margin: 0 0 5px; }
  .voices-small .voice .meta {
    margin: 0 0 20px; }
  .voices-small .voice p {
    font-size: 16px;
    margin-top: 20px;
    display: inline;
    padding: 3px;
    letter-spacing: -0.02em; }

.impact {
  padding: 0 0 120px;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
  background-size: cover;
  text-align: center;
  position: relative; }
  .impact .section-heading h2 {
    font-family: "PT Sans", sans-serif;
    text-transform: uppercase;
    font-size: 30px;
    font-weight: 400; }
  .impact .world {
    width: 100%;
    display: inline-block;
    margin: 0 auto;
    position: relative; }
    .impact .world svg {
      width: 100%;
      height: 600px;
      fill: #434a4a;
      opacity: 0.8; }
    .impact .world img {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      opacity: 1; }
    .impact .world .text-link {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      position: absolute;
      top: 20px;
      text-transform: uppercase;
      left: 0;
      width: 100%;
      text-align: center;
      opacity: 1; }
      .impact .world .text-link h4 {
        color: #fff;
        font-weight: 700;
        font-size: 22px;
        background-color: #ee0000;
        display: inline-block;
        padding: 8px 10px 6px 10px; }
        .impact .world .text-link h4 svg {
          -webkit-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
                  transform: rotate(-90deg);
          width: 16px;
          height: 16px;
          fill: #fff;
          opacity: 1; }
    @media screen and (min-width: 1200px) {
      .impact .world .text-link {
        opacity: 0;
        top: -webkit-calc(50% - 40px);
        top: calc(50% - 40px);
        bottom: auto; }
        .impact .world .text-link h4 {
          font-size: 30px;
          padding: 8px 10px 6px 10px; }
          .impact .world .text-link h4 svg {
            width: 20px;
            height: 20px; }
      .impact .world:hover img, .impact .world:focus img {
        opacity: 0.5; }
      .impact .world:hover .text-link, .impact .world:focus .text-link {
        opacity: 1;
        -webkit-transform: scale(1.1);
            -ms-transform: scale(1.1);
                transform: scale(1.1); } }
  .impact .small-desc {
    position: absolute;
    width: 100%;
    color: #fff;
    bottom: 0;
    opacity: 0.7; }
  .impact .stat {
    padding: 20px 0;
    text-align: left; }
  .impact .listing-block {
    float: left;
    width: 50%; }
    .impact .listing-block h4 {
      font-size: 22px; }
    .impact .listing-block ul a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      color: #231F20;
      display: block;
      padding: 2px;
      border-right: 5px solid transparent; }
      .impact .listing-block ul a:hover, .impact .listing-block ul a:focus {
        background-color: #fff; }
    .impact .listing-block .show-all {
      display: block;
      margin: 15px 0 0;
      font-size: 16px;
      color: #ee0000; }
  @media screen and (min-width: 1200px) {
    .impact .listing-block li {
      float: left;
      width: 50%;
      font-size: 16px; } }

.stats {
  background: url("../img/tex-grey-warm.jpg") no-repeat left top #eaece6;
  background-size: 100%;
  padding: 40px 0;
  overflow: hidden; }
  .stats.inline-stats {
    padding: 30px;
    margin: 15px 0 30px; }
  .stats.stats-big {
    background: none;
    padding: 0;
    text-align: center; }
  .stats li {
    position: relative; }
    .stats li .divider {
      display: none; }
  @media screen and (min-width: 1200px) {
    .stats li {
      float: left;
      width: 21.2%;
      margin-right: 5%;
      padding: 0 0 0 0; }
      .stats li:nth-child(4n+4) {
        margin-right: 0; }
      .stats li .divider {
        display: block;
        position: absolute;
        height: 80%;
        width: 60px;
        top: 10%;
        right: -50px;
        opacity: 0.1; }
    .stats.inline-stats {
      width: 130%;
      margin-left: -15%; }
      .front .stats.inline-stats {
        width: 100%;
        margin-left: 0; }
      .stats.inline-stats li {
        width: 33.3%;
        margin-right: 0; }
        .stats.inline-stats li:nth-child(4n+4) {
          margin-right: 0; }
        .stats.inline-stats li:nth-child(3n+3) {
          margin-right: 0; }
        .stats.inline-stats li .divider {
          right: -15%;
          -webkit-transform: rotate(-10deg);
              -ms-transform: rotate(-10deg);
                  transform: rotate(-10deg); } }
  .stats .center-button a.btn.btn_secondary, .stats .center-button .search-form a.btn_secondary#edit-submit, .search-form .stats .center-button a.btn_secondary#edit-submit {
    color: #d20000; }
    .stats .center-button a.btn.btn_secondary:hover, .stats .center-button .search-form a.btn_secondary#edit-submit:hover, .search-form .stats .center-button a.btn_secondary#edit-submit:hover, .stats .center-button a.btn.btn_secondary:focus, .stats .center-button .search-form a.btn_secondary#edit-submit:focus, .search-form .stats .center-button a.btn_secondary#edit-submit:focus {
      color: #fff; }

.stat {
  margin: 0 0 30px;
  text-align: center; }
  .stat span {
    font-family: "PT Sans", sans-serif;
    color: #31a19a; }
    .stat span.counter {
      display: inline-block; }
  .stat .number {
    font-size: 60px;
    font-weight: 700;
    margin: 0 0 0;
    font-family: "PT Sans", sans-serif;
    color: #22706b;
    display: inline-block; }
  .stat .word {
    font-size: 24px;
    margin: 0 0 10px;
    text-transform: uppercase;
    font-family: "PT Sans", sans-serif;
    color: #22706b;
    display: block; }
  .stat p {
    font-size: 16px;
    margin: 0; }
  .inline-stats .stat .number {
    font-size: 45px; }
  .stats-big .stat {
    text-align: center;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.2); }
    .stats-big .stat .divider {
      display: none; }
    .stats-big .stat .number {
      font-size: 60px;
      line-height: 1em;
      letter-spacing: -0.06em; }
      .stats-big .stat .number .secondary {
        font-weight: 400; }
    .stats-big .stat .word {
      font-size: 26px;
      margin: 0; }
    .stats-big .stat .desc {
      font-size: 17px;
      color: #fff; }
  @media screen and (min-width: 1200px) {
    .stats-big .stat {
      border-bottom: 1px dotted rgba(255, 255, 255, 0.2); } }

.tag {
  margin: 15px 0 0;
  font-size: 12px;
  color: #444;
  text-transform: uppercase;
  border: 1px dotted rgba(35, 31, 32, 0.2);
  display: inline-block;
  padding: 6px 10px;
  height: 28px;
  vertical-align: top;
  position: relative; }
  .tag.country-tag {
    padding-left: 20px; }
  .featured .tag {
    color: #fff;
    border: 1px dotted rgba(255, 255, 255, 0.2); }
    .featured .tag svg {
      fill: #fff; }
  .tag svg {
    fill: #444;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 3px;
    top: 5px; }
  .tag span {
    position: relative;
    top: -2px; }
  .tag:hover, .tag:focus {
    background-color: #444;
    color: #fff; }
    .tag:hover svg, .tag:focus svg {
      fill: #fff; }
  @media screen and (min-width: 1200px) {
    .tag {
      padding: 8px 10px; } }

.latest_feed .feed .latest_feature.video .text_area {
  padding-top: 0 !important; }

.latest_feed {
  padding: 20px 0 0;
  background: url("../img/tex-white.jpg") no-repeat left top #fff;
  background-size: 100%;
  position: relative; }
  .latest_feed.listing {
    margin-bottom: 40px; }
  .template-index-page .latest_feed {
    padding-top: 60px; }
    .template-index-page .latest_feed .section-heading {
      margin-top: 0; }
  .latest_feed .top-left-tex {
    display: none; }
  .latest_feed .section-heading {
    z-index: 2;
    position: relative;
    text-align: center; }
    .latest_feed .section-heading h2 {
      font-family: "PT Sans", sans-serif;
      text-transform: uppercase;
      left: 0; }
  .latest_feed .latest_feature {
    position: relative;
    padding: 0;
    margin: 0 0 30px;
    overflow: hidden; }
    @media screen and (min-width: 1200px) {
      .latest_feed .latest_feature {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s; } }
    @media screen and (min-width: 1430px) {
      .latest_feed .latest_feature {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s; } }
    @media screen and (min-width: 1200px) {
      .latest_feed .latest_feature.text {
        background: rgba(102, 102, 102, 0.1); } }
    .latest_feed .latest_feature a.main_img {
      display: block;
      overflow: hidden;
      position: relative; }
      .latest_feed .latest_feature a.main_img img {
        -webkit-transition: all 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
        transition: all 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87); }
    .latest_feed .latest_feature.video .text_area {
      padding-top: 15px; }
    .latest_feed .latest_feature .text .tag {
      color: #31a19a;
      border-color: #31a19a;
      border-style: dotted;
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
      .latest_feed .latest_feature .text .tag svg {
        fill: #31a19a;
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s; }
      .latest_feed .latest_feature .text .tag:hover, .latest_feed .latest_feature .text .tag:focus {
        background: #31a19a;
        color: white;
        border: 1px solid #31a19a; }
        .latest_feed .latest_feature .text .tag:hover svg, .latest_feed .latest_feature .text .tag:focus svg {
          fill: white; }
    .latest_feed .latest_feature .text .heading {
      padding-top: 0; }
      .latest_feed .latest_feature .text .heading svg {
        width: 20px;
        fill: white;
        display: inline;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg); }
    .latest_feed .latest_feature .text_area {
      position: relative; }
    .latest_feed .latest_feature .profile_thumb {
      width: 70px;
      float: left;
      -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
              box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
      display: none; }
    .latest_feed .latest_feature .btn_type {
      width: 50px;
      height: 50px;
      float: left;
      padding: 0;
      position: absolute;
      top: -50px;
      z-index: 2; }
      .latest_feed .latest_feature .btn_type svg {
        fill: #fff;
        width: 20px;
        height: 20px;
        top: 15px;
        left: 15px;
        position: relative; }
        @media screen and (min-width: 1200px) {
          .latest_feed .latest_feature .btn_type svg {
            -webkit-transition: all 0.2s ease 0s;
            -moz-transition: all 0.2s ease 0s;
            -ms-transition: all 0.2s ease 0s;
            -o-transition: all 0.2s ease 0s; } }
        @media screen and (min-width: 1430px) {
          .latest_feed .latest_feature .btn_type svg {
            -webkit-transition: all 0.2s ease 0s;
            -moz-transition: all 0.2s ease 0s;
            -ms-transition: all 0.2s ease 0s;
            -o-transition: all 0.2s ease 0s; } }
      .latest_feed .latest_feature .btn_type.news {
        background-color: #ee0000; }
        .latest_feed .latest_feature .btn_type.news svg {
          width: 26px;
          height: 26px;
          top: 12px;
          left: 12px; }
      .latest_feed .latest_feature .btn_type:hover, .latest_feed .latest_feature .btn_type:focus {
        -webkit-box-shadow: none;
                box-shadow: none;
        background-color: #ee0000; }
    .latest_feed .latest_feature .type {
      height: 50px;
      background-color: #ee0000;
      position: absolute;
      top: -50px;
      left: -50px;
      color: #fff;
      text-transform: uppercase;
      font-size: 14px;
      line-height: 50px;
      padding: 0 10px 0 0;
      width: auto;
      overflow: hidden;
      z-index: 1; }
      @media screen and (min-width: 1200px) {
        .latest_feed .latest_feature .type {
          -webkit-transition: all 0.2s ease 0s;
          -moz-transition: all 0.2s ease 0s;
          -ms-transition: all 0.2s ease 0s;
          -o-transition: all 0.2s ease 0s; } }
      @media screen and (min-width: 1430px) {
        .latest_feed .latest_feature .type {
          -webkit-transition: all 0.2s ease 0s;
          -moz-transition: all 0.2s ease 0s;
          -ms-transition: all 0.2s ease 0s;
          -o-transition: all 0.2s ease 0s; } }
      .latest_feed .latest_feature .type.active {
        left: 50px; }
    .latest_feed .latest_feature .text .content_type {
      display: inline-block;
      background-color: rgba(255, 255, 255, 0.7);
      height: 40px;
      padding: 12px 0 0 0; }
    .latest_feed .latest_feature .text h2 {
      margin: 0 0 10px;
      width: -webkit-calc(100% - 10px);
      width: calc(100% - 10px); }
      .latest_feed .latest_feature .text h2 a {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        background-color: #ee0000;
        display: inline;
        color: #fff;
        padding: 5px 0;
        -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
                box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
        line-height: 1.6;
        font-size: 22px;
        position: relative;
        left: 10px; }
    .latest_feed .latest_feature .text h3 {
      margin: 0 0 10px;
      padding: 20px 0 0;
      font-size: 22px; }
      .latest_feed .latest_feature .text h3 a {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        color: #231F20; }
        .latest_feed .latest_feature .text h3 a:hover, .latest_feed .latest_feature .text h3 a:focus {
          color: #ee0000; }
    .latest_feed .latest_feature .text p {
      font-size: 18px; }
    .latest_feed .latest_feature .text .meta {
      margin: 5px 0 0;
      padding: 0; }
    .latest_feed .latest_feature .text .feature_author {
      margin: 5px 0 0;
      padding: 0 20px 0; }
    .latest_feed .latest_feature.news .text {
      margin-left: 0; }
    .latest_feed .latest_feature.instagram {
      background: url("../img/tex-light-bottom.png") no-repeat left bottom #fff;
      background-size: 100%;
      -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
              box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }
      .latest_feed .latest_feature.instagram .main_img {
        border: 10px solid #fff; }
      .latest_feed .latest_feature.instagram .launch_panel {
        top: 10px;
        bottom: auto;
        right: 10px;
        left: auto; }
      .latest_feed .latest_feature.instagram .text_area {
        margin-top: -50px; }
      .latest_feed .latest_feature.instagram .profile_thumb {
        -webkit-box-shadow: none;
                box-shadow: none; }
      .latest_feed .latest_feature.instagram .text .feature_author {
        margin: 15px 0 0; }
        .latest_feed .latest_feature.instagram .text .feature_author .primary-label {
          text-transform: none;
          display: block;
          font-size: 18px;
          margin: 0 0 5px; }
    .latest_feed .latest_feature:hover h3 a, .latest_feed .latest_feature:focus h3 a {
      color: #ee0000; }
    .latest_feed .latest_feature:hover h2 a, .latest_feed .latest_feature:focus h2 a {
      background-color: #31a19a;
      -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
              box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a; }
    .latest_feed .latest_feature:hover .type, .latest_feed .latest_feature:focus .type {
      left: 50px; }
    .latest_feed .latest_feature:hover .type.active, .latest_feed .latest_feature:focus .type.active {
      left: 50px; }
  .latest_feed.listing .latest_feature .btn_type, .latest_feed.listing .latest_feature .type {
    top: auto;
    bottom: 0; }
  .latest_feed.listing .latest_feature.featured {
    background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
    background-size: 100%; }
    .latest_feed.listing .latest_feature.featured .text_area {
      padding: 0 20px; }
      .latest_feed.listing .latest_feature.featured .text_area .text {
        left: 80%;
        width: 30%; }
      .latest_feed.listing .latest_feature.featured .text_area h3 a, .latest_feed.listing .latest_feature.featured .text_area .meta {
        color: #fff; }
      .latest_feed.listing .latest_feature.featured .text_area h3 a:hover, .latest_feed.listing .latest_feature.featured .text_area:focus {
        color: #F96664; }
  @media screen and (min-width: 481px) {
    .latest_feed li {
      float: left;
      width: 45%;
      margin-right: 10%; }
      .latest_feed li:nth-child(2n+2) {
        margin-right: 0; }
    .latest_feed.listing li {
      float: none;
      width: 100%;
      margin: 0; }
      .latest_feed.listing li .main_img {
        float: left;
        width: 35%;
        margin-right: 7%; }
      .latest_feed.listing li .btn_type, .latest_feed.listing li .type {
        top: 0; }
      .latest_feed.listing li .text_area {
        float: left;
        width: 58%; }
      .latest_feed.listing li .text h3 {
        font-size: 28px; }
      .latest_feed.listing li .btn-type {
        top: 0; }
      .latest_feed.listing li .latest_feature.featured {
        padding: 0; }
        .latest_feed.listing li .latest_feature.featured .main_img {
          width: 60%;
          margin-right: 0; }
        .latest_feed.listing li .latest_feature.featured .text_area {
          width: 40%;
          padding: 30px 30px; }
          .latest_feed.listing li .latest_feature.featured .text_area h3 {
            font-size: 30px; } }
  @media screen and (min-width: 769px) {
    .latest_feed {
      padding: 40px 0 0 20px;
      margin-left: -20px; }
      .front .latest_feed {
        padding-top: 20px; }
      .latest_feed .top-left-tex {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: auto;
        opacity: 0.7; }
      .latest_feed li {
        float: left;
        width: 26.5%;
        margin-right: 10%; }
        .latest_feed li:nth-child(2n+2) {
          margin-right: 10%; }
        .latest_feed li:nth-child(3n+3) {
          margin-right: 0; }
      .latest_feed .latest_feature .profile_thumb {
        display: inline-block; } }
  @media screen and (min-width: 1200px) {
    .latest_feed .latest_feature .text h2 {
      margin: 1px 0 10px; }
      .latest_feed .latest_feature .text h2 a {
        font-size: 28px; }
    .latest_feed .latest_feature .type.active {
      left: -100px; } }

.intro-wrapper {
  padding: 20px 0;
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
  background-size: 100%; }
  @media screen and (min-width: 1200px) {
    .intro-wrapper {
      padding: 40px 0 20px; } }

.paging {
  margin: 10px 0 40px;
  text-transform: uppercase;
  font-size: 14px;
  text-align: center; }
  .paging svg {
    position: relative;
    top: -2px; }

.ctas {
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
  background-size: 100%;
  padding: 40px 0 0; }
  @media screen and (min-width: 1200px) {
    .ctas {
      padding: 40px 0; } }

.cta-simple {
  text-align: center;
  position: relative;
  margin: 40px 0 40px; }
  .cta-simple .divider {
    fill: #fff;
    opacity: 0.3;
    -webkit-transform: rotate(-104deg);
    -ms-transform: rotate(-106deg);
        transform: rotate(-106deg);
    width: 300px;
    height: 200px;
    position: absolute;
    top: -120px;
    left: 40%; }
  .cta-simple .intro {
    color: white;
    margin: 0 0 15px;
    font-weight: 700; }

.inline-cta {
  font-family: "PT Sans", sans-serif;
  font-weight: 700;
  margin: 0 0 0 15px;
  font-size: 20px;
  text-transform: uppercase; }
  .inline-cta svg {
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    width: 15px;
    height: 15px; }

.cta-small {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  margin: 0 auto 40px;
  position: relative;
  width: 95%;
  display: inline-block;
  left: 10px; }
  .cta-small .bottom-texture {
    display: none; }
  .cta-small.withvoices {
    z-index: 5;
    text-align: center; }
  .cta-small .divider {
    display: none; }
  .cta-small div {
    margin: 3px 0 0; }
  .cta-small p {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    font-size: 20px;
    margin: 0;
    line-height: 1.2;
    color: #fff;
    position: relative;
    z-index: 2;
    font-family: "PT Sans", sans-serif;
    background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
    background-size: 100%;
    text-transform: uppercase;
    display: inline;
    padding: 4px 0;
    -webkit-box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
            box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
    line-height: 1.65;
    font-weight: 400; }
  .cta-small h3 {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    margin: 0;
    position: relative;
    z-index: 2;
    color: #fff;
    background-color: #31a19a;
    display: inline;
    text-transform: uppercase;
    padding: 5px 0;
    -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
            box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
    line-height: 1.6; }
    .cta-small h3 svg {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      fill: #fff;
      width: 18px;
      height: 18px; }
  .cta-small.light p {
    background: #3a3a3a;
    -webkit-box-shadow: 10px 0 0 #3a3a3a,-10px 0 0 #3a3a3a;
            box-shadow: 10px 0 0 #3a3a3a,-10px 0 0 #3a3a3a; }
  .cta-small:hover, .cta-small:focus {
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.04);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.04); }
    .cta-small:hover h3, .cta-small:focus h3 {
      background-color: #ee0000;
      -webkit-box-shadow: 10px 0 0 #ee0000, -13px 0 0 #ee0000;
              box-shadow: 10px 0 0 #ee0000, -13px 0 0 #ee0000; }
  .cta-small .intro {
    margin: 0 0 10px;
    font-size: 26px;
    line-height: 1.3; }
  .cta-small .btn, .cta-small .search-form #edit-submit, .search-form .cta-small #edit-submit {
    position: relative;
    z-index: 2; }
  .cta-small .divider {
    position: absolute;
    height: 260px;
    width: 90px;
    top: -150px;
    left: -webkit-calc(50% - 45px);
    left: calc(50% - 45px);
    opacity: 0.1;
    fill: #231F20;
    opacity: 0.1;
    -webkit-transform: rotate(-105deg);
        -ms-transform: rotate(-105deg);
            transform: rotate(-105deg); }
    .cta-small .divider.bottom {
      bottom: -150px;
      top: auto;
      -webkit-transform: rotate(-108deg);
          -ms-transform: rotate(-108deg);
              transform: rotate(-108deg); }
  @media screen and (min-width: 1200px) {
    .cta-small {
      margin: 0 auto 40px; }
      .cta-small div {
        margin: 0 0 0; }
      .cta-small.right {
        float: right;
        margin: 0 -60px 60px 60px;
        width: 35%; }
      .cta-small.middle {
        width: auto;
        display: inline-block;
        margin: 0 auto;
        left: 0; } }

.bottom-texture {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1; }

.cta_main {
  text-align: center;
  display: block;
  position: relative;
  margin-bottom: 30px;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.2);
  padding: 0 0 30px; }
  .cta_main .divider {
    position: absolute;
    height: 100%;
    width: 60px;
    top: 0;
    right: -60px;
    opacity: 0.1;
    fill: #fff;
    opacity: 0.3;
    display: none; }
  .cta_main h4 {
    margin: 0 0 0;
    color: white;
    font-size: 20px; }
  .cta_main h2 {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    margin: 0;
    color: #ee0000;
    font-size: 34px;
    display: inline-block;
    padding: 5px 15px; }
    .cta_main h2 svg {
      fill: #fff;
      width: 20px;
      height: 20px;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      display: none; }
  .cta_main p {
    margin: 0 0 0;
    color: white;
    font-size: 16px;
    line-height: 1.3; }
  .cta_main:hover h2, .cta_main:focus h2 {
    color: white;
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05);
    background-color: #ee0000;
    padding: 5px 15px; }
  .cta_main:focus {
    outline-color: #ee0000; }
  @media screen and (min-width: 1200px) {
    .cta_main {
      margin-bottom: 0;
      padding: 0 20px 0 20px;
      border-bottom: none; }
      .cta_main .divider {
        display: block; }
      .cta_main h2 {
        font-size: 38px; } }

.share_bar {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  padding: 30px 0;
  text-align: center;
  bottom: -300px;
  border-top: 1px dotted rgba(35, 31, 32, 0.2);
  border-bottom: 1px dotted rgba(35, 31, 32, 0.2);
  -webkit-box-shadow: 0px 0px 26px -5px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 0px 26px -5px rgba(0, 0, 0, 0.25); }
  @media screen and (min-width: 1200px) {
    .share_bar {
      -webkit-box-shadow: 0px 0px 26px -5px rgba(0, 0, 0, 0);
              box-shadow: 0px 0px 26px -5px rgba(0, 0, 0, 0); } }
  .share_bar .container {
    padding: 0; }
  .share_bar.active {
    position: fixed;
    bottom: 0;
    z-index: 100;
    width: 100%;
    padding-bottom: 70px;
    margin: 0;
    background-color: white;
    border-top: 1px dotted rgba(35, 31, 32, 0.2);
    border-bottom: none; }
  .share_bar .share_intro svg {
    display: none; }
  .share_bar .share_intro h2 {
    margin: 0 0 30px;
    font-size: 20px;
    line-height: 1.3; }
    .share_bar .share_intro h2 span {
      font-weight: 400; }
  .share_bar .share_intro .intro {
    line-height: 1.4;
    color: white;
    opacity: 0.8; }
  .share_bar .share_options .label {
    font-size: 16px;
    font-weight: normal;
    position: relative;
    top: -9px; }
    @media screen and (min-width: 1200px) {
      .share_bar .share_options .label {
        top: 0; } }
  .share_bar .share_options .copy_link {
    position: relative;
    margin: 0; }
    .share_bar .share_options .copy_link input[type="text"] {
      font-weight: 700;
      background: url("../img/tex-grey-warm.jpg") no-repeat left top #eaece6;
      background-size: 100%; }
    .share_bar .share_options .copy_link .btn, .share_bar .share_options .copy_link .search-form #edit-submit, .search-form .share_bar .share_options .copy_link #edit-submit {
      position: absolute;
      right: 0;
      top: 0;
      right: 0;
      padding-left: 10px;
      padding-right: 10px; }
      .share_bar .share_options .copy_link .btn span, .share_bar .share_options .copy_link .search-form #edit-submit span, .search-form .share_bar .share_options .copy_link #edit-submit span {
        display: none; }
  @media screen and (min-width: 1200px) {
    .share_bar {
      text-align: left;
      margin: 0 80px; }
      .share_bar .share_intro {
        text-align: right;
        padding-right: 70px;
        position: relative; }
        .share_bar .share_intro svg {
          display: block;
          width: 40px;
          height: 40px;
          position: absolute;
          -webkit-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
                  transform: rotate(-90deg);
          right: 0;
          top: 40px;
          opacity: 0.3; }
        .share_bar .share_intro h2 {
          font-size: 30px;
          margin-top: 5px;
          line-height: 1.2;
          margin-bottom: 0; }
          .share_bar .share_intro h2 span {
            font-size: 24px; }
      .share_bar .share_options {
        padding-left: 30px; }
        .share_bar .share_options .copy_link .btn span, .share_bar .share_options .copy_link .search-form #edit-submit span, .search-form .share_bar .share_options .copy_link #edit-submit span {
          display: inline; } }

.social .label {
  display: inline;
  margin-right: 20px; }

.social ul {
  display: inline-block; }

.social li {
  display: inline-block;
  font-size: 14px;
  margin-right: 5px; }

.social a span {
  display: none; }

.social a svg {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  width: 40px;
  height: 40px;
  fill: #444;
  position: relative;
  top: 7px; }
  @media screen and (min-width: 1200px) {
    .social a svg {
      width: 30px;
      height: 30px; } }
  .social a svg.fb {
    fill: #3b5998; }
  .social a svg.tw {
    fill: #55acee; }
  .social a svg.li {
    fill: #007bb5; }
  .social a svg.go {
    fill: #dd4b39; }
  .social a svg.em {
    fill: #31a19a; }

.social a:hover, .social a:focus {
  color: #31a19a; }
  .social a:hover svg, .social a:focus svg {
    opacity: 1;
    fill: #231F20; }

footer .social {
  text-align: center;
  margin: 0 0 20px;
  padding: 30px 0 0;
  border-top: 1px dotted rgba(35, 31, 32, 0.1); }
  footer .social .label {
    display: block;
    margin-bottom: 15px;
    position: relative; }
    footer .social .label.hide {
      color: #fff; }
    footer .social .label:after {
      -webkit-transition: all 0.3s ease 0s;
      -moz-transition: all 0.3s ease 0s;
      -ms-transition: all 0.3s ease 0s;
      -o-transition: all 0.3s ease 0s;
      position: absolute;
      top: 0;
      left: 0;
      content: '';
      width: 100%;
      font-weight: 700;
      opacity: 0;
      color: #231F20;
      text-align: center; }
  footer .social ul {
    display: block; }
  footer .social li {
    display: block;
    margin: 0;
    display: inline-block; }
  footer .social a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    color: #222;
    display: block;
    padding: 15px 0 15px 35px;
    margin: 0 0 1px 0;
    position: relative;
    line-height: 1;
    font-family: "PT Sans", sans-serif; }
    footer .social a span {
      font-weight: 700;
      text-transform: uppercase;
      margin-right: 5px;
      display: block; }
    footer .social a svg {
      fill: #444;
      position: absolute;
      opacity: 1;
      top: 0;
      left: 0; }
    footer .social a:hover.bscms_social_networks_facebook svg, footer .social a:focus.bscms_social_networks_facebook svg {
      fill: #3b5998; }
    footer .social a:hover.bscms_social_networks_twitter svg, footer .social a:focus.bscms_social_networks_twitter svg {
      fill: #55acee; }
    footer .social a:hover.bscms_social_networks_instagram svg, footer .social a:focus.bscms_social_networks_instagram svg {
      fill: #e95950; }
    footer .social a:hover.bscms_social_networks_whatsapp svg, footer .social a:focus.bscms_social_networks_whatsapp svg {
      fill: #4dc247; }
    footer .social a:hover.pi svg, footer .social a:focus.pi svg {
      fill: #cb2027; }
    footer .social a:hover.bscms_social_networks_googleplus svg, footer .social a:focus.bscms_social_networks_googleplus svg {
      fill: #dd4b39; }
    footer .social a:hover.bscms_social_networks_tumblr svg, footer .social a:focus.bscms_social_networks_tumblr svg {
      fill: #32506d; }
    footer .social a:hover.bscms_social_networks_rss svg, footer .social a:focus.bscms_social_networks_rss svg {
      fill: #ff6600; }
  @media screen and (min-width: 1200px) {
    footer .social {
      text-align: left;
      border-left: 1px dotted rgba(35, 31, 32, 0.2);
      margin-left: -60px;
      padding-left: 60px;
      padding-top: 0;
      border-top: none; }
      footer .social .label:after {
        text-align: left; } }

.listing-filters {
  margin: 0 0 0;
  z-index: 10;
  position: relative;
  border-top: 1px dotted rgba(35, 31, 32, 0.2); }
  .listing-filters .filter {
    background-color: #f2f4f0;
    position: relative;
    margin: 0 0 0;
    border: 1px dotted rgba(35, 31, 32, 0.2);
    border-top: none;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.04);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.04); }
    .listing-filters .filter .filter-label {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      text-transform: uppercase;
      font-size: 16px;
      padding: 10px;
      position: relative; }
      .listing-filters .filter .filter-label svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        width: 10px;
        height: 10px;
        fill: #ee0000;
        position: absolute;
        right: 10px;
        top: 15px; }
      .listing-filters .filter .filter-label:hover, .listing-filters .filter .filter-label:focus {
        cursor: pointer;
        background-color: #231F20;
        color: #fff; }
        .listing-filters .filter .filter-label:hover svg, .listing-filters .filter .filter-label:focus svg {
          fill: #fff; }
      .listing-filters .filter .filter-label.active {
        background-color: #231F20;
        color: #fff; }
        .listing-filters .filter .filter-label.active svg {
          fill: #fff;
          -webkit-transform: rotate(180deg);
              -ms-transform: rotate(180deg);
                  transform: rotate(180deg); }
    .listing-filters .filter ul {
      position: absolute;
      background-color: #fff;
      left: -1px;
      width: -webkit-calc(100% + 2px);
      width: calc(100% + 2px);
      z-index: 11;
      border: 1px dotted rgba(35, 31, 32, 0.2);
      border-bottom: none;
      display: none;
      -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
              box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }
      .listing-filters .filter ul a {
        display: block;
        font-size: 14px;
        padding: 8px 10px;
        border-bottom: 1px dotted rgba(35, 31, 32, 0.2);
        color: #231F20; }
        .listing-filters .filter ul a:hover, .listing-filters .filter ul a:focus {
          background-color: #444;
          color: #fff; }
      .listing-filters .filter ul.active {
        display: block; }
  @media screen and (min-width: 1200px) {
    .listing-filters {
      border-top: none;
      border-left: 1px dotted rgba(35, 31, 32, 0.2); }
      .listing-filters .filter {
        border-left: none;
        border-top: 1px dotted rgba(35, 31, 32, 0.2);
        width: 26%;
        float: left; } }

.filters {
  margin: 0 0 15px;
  display: inline-block; }
  .filters ul li {
    display: inline-block; }
  .filters ul a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    display: block;
    font-family: "PT Sans", sans-serif;
    text-transform: uppercase;
    color: #444;
    font-weight: 400;
    padding: 8px 5px;
    margin: 0;
    border-bottom: 2px solid transparent; }
    .filters ul a.active {
      border-bottom: 2px solid #ee0000;
      font-weight: 700; }
  @media screen and (min-width: 1200px) {
    .filters ul a {
      padding: 8px 10px;
      margin: 0 5px; }
      .filters ul a:hover, .filters ul a:focus {
        border-bottom: 2px solid #ee0000;
        color: #ee0000; } }

.caption {
  position: absolute;
  bottom: 5px;
  right: 5px;
  z-index: 10;
  font-size: 10px;
  color: white;
  opacity: 0.6; }
  .title-banner .caption {
    bottom: auto;
    top: 5px; }
  @media screen and (min-width: 1200px) {
    .caption {
      bottom: 10px;
      right: 10px;
      font-size: 14px; } }
  .caption svg {
    display: none; }

.caption-main, .media-element-container.media-default .field-name-field-metadata-caption {
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
  background-size: 100%;
  padding: 15px 20px;
  font-size: 18px;
  font-weight: 700; }

.show_caption svg {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  width: 20px;
  height: 20px;
  fill: #fff;
  -webkit-filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
  position: relative;
  top: 6px;
  margin-right: 5px; }

.show_caption:hover svg, .show_caption:focus svg {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1); }

@media screen and (min-width: 1200px) {
  .show_caption svg {
    width: 24px;
    height: 24px; } }

.grad-mask {
  background: url("../img/grad-mask.png") no-repeat right bottom;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 50%;
  height: 250px; }
  .title-banner .grad-mask {
    display: block; }

.grad-mask-top {
  background: url("../img/grad-mask-top.png") no-repeat right top;
  background-size: 100%;
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 250px; }
  .title-banner .grad-mask-top {
    display: block; }

.grad-mask-big {
  background: url("../img/grad-mask-big.png") no-repeat bottom left;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 150%;
  height: 150%; }
  @media screen and (min-width: 769px) {
    .grad-mask-big {
      width: 100%;
      height: 100%; } }

.title-banner {
  background: url("../img/tex-grey-warm.jpg") no-repeat left top #eaece6;
  background-size: 100%;
  position: relative;
  overflow: hidden;
  position: absolute;
  z-index: 0;
  top: 50px;
  width: 100%;
  right: 0; }
  @media screen and (min-width: 1200px) {
    .title-banner {
      top: 90px;
      width: 75%; } }

.rich-text {
  padding: 15px 0 15px 0;
  position: relative;
  z-index: 2;
  background-color: white;
  margin-top: 220px;
  max-width: 860px; }
  .template-story .rich-text {
    margin-top: -50px;
    padding-top: 10px;
    max-width: none; }
  .template-standard .rich-text {
    margin-top: 90px;
    padding-top: 10px; }
  .template-no-image .rich-text {
    margin-top: 40px;
    background: none; }
    .template-no-image .rich-text:before {
      background: none; }
  .rich-text:before {
    position: absolute;
    height: 100%;
    width: 2000px;
    left: -2000px;
    top: 0;
    content: '';
    background-color: #fff; }
  @media screen and (min-width: 481px) {
    .rich-text {
      padding: 15px 20px 15px 0;
      margin-top: 320px; } }
  @media screen and (min-width: 769px) {
    .rich-text {
      padding: 30px 40px 30px 0;
      margin-top: 450px; } }
  @media screen and (min-width: 1200px) {
    .rich-text {
      margin-top: 75vh;
      padding: 40px 40px 40px 0; }
      .template-no-image .rich-text {
        margin-top: 65px; } }

.authorname {
  color: #ee0000; }

.meta-main {
  background-color: rgba(255, 255, 255, 0.9);
  display: inline-block;
  padding: 0 10px 10px 0;
  z-index: 5; }
  .meta-main .secondary-label a, .meta-main .tertiary-label a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .meta-main .secondary-label.link svg, .meta-main .tertiary-label.link svg {
    fill: #ee0000;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .meta-main .secondary-label.link:hover svg, .meta-main .secondary-label.link:focus svg, .meta-main .tertiary-label.link:hover svg, .meta-main .tertiary-label.link:focus svg {
    fill: #31a19a; }
  .template-no-image .meta-main {
    background: none; }
    .template-no-image .meta-main:before {
      background: none; }
  .meta-main.meta-main-blog {
    top: -45px;
    height: 45px; }
    .meta-main.meta-main-blog .feature_author .secondary-label, .meta-main.meta-main-blog .feature_author .tertiary-label {
      display: none; }
  .template-story .meta-main.meta-main-blog {
    position: absolute;
    padding-top: 5px; }
  .meta-main .story-person {
    position: absolute;
    width: 90px;
    left: -110px; }
  .meta-main:before {
    position: absolute;
    height: 100%;
    width: 2000px;
    left: -2000px;
    top: 0;
    content: '';
    background-color: rgba(255, 255, 255, 0.9); }
  @media screen and (min-width: 1200px) {
    .meta-main {
      top: -40px;
      height: 50px;
      padding: 10px 15px 10px 0;
      position: absolute; }
      .meta-main.meta-main-blog {
        top: -65px;
        height: 65px; }
        .meta-main.meta-main-blog .feature_author .secondary-label, .meta-main.meta-main-blog .feature_author .tertiary-label {
          display: inline; }
      .template-story .meta-main.meta-main-blog {
        padding-top: 10px; }
      .meta-main .meta {
        font-size: 17px; } }
  .meta-main.includes-button .btn, .meta-main.includes-button .search-form #edit-submit, .search-form .meta-main.includes-button #edit-submit {
    margin-top: 10px;
    height: 35px;
    line-height: 0.5; }
    @media screen and (min-width: 1200px) {
      .meta-main.includes-button .btn, .meta-main.includes-button .search-form #edit-submit, .search-form .meta-main.includes-button #edit-submit {
        margin-top: 0;
        position: absolute;
        right: -27%;
        top: 0;
        height: 40px;
        line-height: 0.8; } }

.img-inline {
  position: relative;
  margin: 0 0 40px; }
  @media screen and (min-width: 1200px) {
    .img-inline.img-right {
      float: right;
      width: 40%;
      margin: 0 -60px 60px 60px; } }

.sub-nav {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  margin: 0;
  height: 35px;
  overflow: hidden;
  padding: 12px 20px 12px;
  background-color: rgba(242, 244, 240, 0.7);
  position: absolute;
  width: 130px;
  left: 0;
  z-index: 3; }
  .sub-nav.open {
    background-color: #f2f4f0;
    height: auto;
    z-index: 15;
    width: 100%;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.4); }
  .sub-nav .in-this-section-link {
    font-size: 12px;
    margin: 0 0 20px;
    font-weight: 400; }
    .sub-nav .in-this-section-link a {
      color: #231F20; }
      .sub-nav .in-this-section-link a svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        width: 10px;
        height: 10px;
        fill: #ee0000; }
    .sub-nav .in-this-section-link.active svg {
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }
  .sub-nav h4 {
    margin: 0 0 15px;
    font-size: 16px; }
    .sub-nav h4 span {
      font-weight: 400;
      margin-right: 5px; }
    .sub-nav h4 a {
      color: #231F20;
      display: block; }
      .sub-nav h4 a:hover, .sub-nav h4 a:focus {
        color: #ee0000; }
  .sub-nav ul a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    display: block;
    border-top: 1px dotted rgba(35, 31, 32, 0.15);
    font-size: 15px;
    padding: 10px 0;
    color: #231F20;
    font-family: "PT Sans", sans-serif; }
    .sub-nav ul a.active-page {
      color: #ee0000; }
    .sub-nav ul a.active-section {
      font-weight: 700;
      color: #231F20; }
    .sub-nav ul a:hover, .sub-nav ul a:focus {
      color: #fff;
      background-color: #444;
      padding-left: 8px; }
      .sub-nav ul a:hover svg, .sub-nav ul a:focus svg {
        fill: #fff; }
  .sub-nav ul ul {
    font-weight: 400;
    margin: 0 0 15px; }
    .sub-nav ul ul a {
      border-top: none;
      font-size: 13px;
      color: #444;
      padding: 6px 10px;
      font-family: "PT Sans", sans-serif; }
      .sub-nav ul ul a svg {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        width: 6px;
        height: 6px;
        margin-right: 4px;
        position: relative;
        top: -2px; }
      .sub-nav ul ul a:hover, .sub-nav ul ul a:focus {
        padding: 6px 10px; }
    .sub-nav ul ul ul a {
      padding: 6px 25px; }
      .sub-nav ul ul ul a:hover, .sub-nav ul ul ul a:focus {
        padding: 6px 25px; }
  @media screen and (min-width: 769px) {
    .sub-nav {
      padding: 12px 40px 12px;
      width: auto; } }
  @media screen and (min-width: 1200px) {
    .sub-nav {
      height: auto;
      padding: 40px 0 0;
      margin-bottom: 60vh;
      position: relative;
      background-color: transparent;
      width: 100%; }
      .sub-nav.without-margin {
        margin-bottom: 0; }
      .sub-nav .in-this-section-link {
        display: none; }
      .sub-nav h4 {
        font-size: 18px; }
      .sub-nav ul a {
        font-size: 16px; }
      .sub-nav ul ul a {
        font-size: 15px; } }

.related-content {
  position: relative;
  z-index: 25; }
  .related-content h4 {
    margin: 0 0 30px; }
  @media screen and (min-width: 1200px) {
    .related-content.fixed {
      position: fixed;
      top: 0; } }

.related-feed {
  margin: 0 0 40px; }
  .related-content .related-feed {
    display: none; }
  .related-feed .latest_feature {
    margin: 0 0 30px; }
  .related-feed .main_img {
    width: 50%;
    display: block;
    margin: 0 0 15px;
    position: relative; }
  .related-feed .profile_thumb {
    display: none; }
  .related-feed .meta {
    margin: 0 0 5px; }
  .related-feed h3 {
    font-size: 18px;
    letter-spacing: 0;
    font-weight: 700;
    margin: 0 0 5px;
    line-height: 1.3; }
    .related-feed h3 a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      color: #231F20; }
      .related-feed h3 a svg {
        width: 12px;
        height: 12px;
        fill: #ee0000;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg); }
      .related-feed h3 a:hover, .related-feed h3 a:focus {
        color: #ee0000; }
  @media screen and (min-width: 1200px) {
    .related-content .related-feed {
      display: block; }
    .related-feed .text_area {
      width: 75%; } }

.tags {
  margin: 60px 0 60px; }
  .related-content .tags {
    display: none; }
  .tags h4 {
    margin: 0 0 20px; }
  .tags a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    display: block;
    border-top: 1px dotted rgba(35, 31, 32, 0.1);
    padding: 8px 0;
    font-weight: 700;
    font-size: 18px;
    position: relative; }
    .tags a svg {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      width: 10px;
      height: 10px;
      fill: #ee0000; }
    .tags a:hover, .tags a:focus {
      background-color: #ee0000;
      color: white;
      padding-left: 8px; }
      .tags a:hover svg, .tags a:focus svg {
        fill: #fff; }
  @media screen and (min-width: 1200px) {
    .related-content .tags {
      display: block; } }

.inline-img {
  margin: 0 0 40px;
  position: relative; }
  .inline-img .img-area {
    position: relative; }

.related-topics {
  padding: 40px 0 0; }
  .related-topics .section-heading {
    text-align: center;
    margin: 20px 0 40px; }
    .related-topics .section-heading h2 {
      font-family: "PT Sans", sans-serif;
      text-transform: uppercase;
      text-align: center;
      margin: 30px auto;
      left: 0; }
  .template-countries .related-topics {
    background: url("../img/tex-white.jpg") no-repeat left top #fff;
    background-size: 100%; }
    .template-countries .related-topics .related-topic {
      background: none;
      margin: 0 0 20px; }
  @media screen and (min-width: 1200px) {
    .template-countries .related-topics .related-topic {
      margin: 0 0 70px; }
    .template-countries .related-topics li {
      float: left;
      width: 28.6%;
      margin-right: 7%; }
      .template-countries .related-topics li:nth-child(3n+3) {
        margin-right: 0; } }

.related-topic {
  background: url("../img/tex-light-bottom.png") no-repeat left bottom #fff;
  background-size: 100%;
  margin: 0 0 30px;
  text-align: left; }
  .template-countries .related-topic {
    margin: 0; }
  .related-topic .img-wrapper {
    position: relative;
    display: block;
    overflow: hidden; }
    .related-topic .img-wrapper img {
      -webkit-transition: all 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
      transition: all 1300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
      -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
              transform: scale(1.1); }
    .related-topic .img-wrapper h3 {
      position: absolute;
      bottom: 0;
      left: 20px;
      width: 90%;
      font-family: "PT Sans", sans-serif;
      font-size: 20px;
      letter-spacing: -0.02em;
      color: #fff; }
      .related-topic .img-wrapper h3 span {
        font-weight: 400; }
      .related-topic .img-wrapper h3 svg {
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        fill: #fff;
        width: 18px;
        height: 18px; }
    .related-topic .img-wrapper:hover img, .related-topic .img-wrapper:focus img {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
  .related-topic .text-wrapper {
    background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
    background-size: 100%;
    padding: 15px 20px 20px; }
    .related-topic .text-wrapper p {
      font-size: 16px;
      margin: 0; }
  .related-topic .latest_feature {
    margin-top: 30px;
    margin-bottom: 20px;
    border-top: 1px dotted rgba(35, 31, 32, 0.1);
    padding-top: 20px; }
  .related-topic .content_type {
    display: none; }
  .related-topic .main_img {
    display: none; }
  @media screen and (min-width: 1200px) {
    .related-topic {
      margin: 0 20px 30px; }
      .related-topic .img-wrapper h3 {
        left: 20px;
        font-size: 26px; } }

.strong-label {
  background-color: #ee0000;
  display: inline-block;
  padding: 10px;
  color: #fff;
  font-weight: 400; }

.modal {
  position: absolute;
  z-index: -1;
  opacity: 0;
  background-color: rgba(35, 31, 32, 0.6);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }
  .modal.map {
    padding: 0;
    text-align: center; }
    .modal.map .modal-box {
      display: inline-block;
      padding: 0;
      margin: 0 auto;
      max-width: 900px;
      left: 50%;
      -webkit-transform: translateX(-50%) scale(0.1);
          -ms-transform: translateX(-50%) scale(0.1);
              transform: translateX(-50%) scale(0.1); }
      .modal.map .modal-box img {
        width: 100%; }
    .modal.map.open .modal-box {
      -webkit-transform: translateX(-50%) scale(1);
          -ms-transform: translateX(-50%) scale(1);
              transform: translateX(-50%) scale(1); }
  .modal .content {
    padding: 50px 60px 20px 60px; }
  .modal .modal-box {
    -webkit-transition: all 300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
    transition: all 300ms cubic-bezier(0.155, 0.575, 0.87, 0.87);
    background: url("../img/tex-white.jpg") no-repeat left top #fff;
    background-size: 100%;
    -webkit-box-shadow: 0 0 40px rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 40px rgba(0, 0, 0, 0.4);
    width: 80%;
    position: fixed;
    left: -webkit-calc(50% - 40%);
    left: calc(50% - 40%);
    top: 140px;
    -webkit-transform: scale(0.1);
        -ms-transform: scale(0.1);
            transform: scale(0.1); }
  .modal.open {
    z-index: 500;
    opacity: 1; }
    .modal.open .modal-box {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
  .modal .blog-site-link {
    text-align: center;
    background: #eaece6;
    padding: 20px; }
    .modal .blog-site-link h2 {
      font-weight: 100;
      display: inline;
      font-size: 25px;
      margin-right: 20px; }
  .modal .btn svg, .modal .search-form #edit-submit svg, .search-form .modal #edit-submit svg {
    position: relative;
    top: 2px;
    display: inline;
    width: 20px;
    fill: white;
    margin-left: 10px; }

.visit-blog {
  border-top: 1px dotted #eaece6;
  padding: 30px 0 0; }
  .visit-blog .btn svg, .visit-blog .search-form #edit-submit svg, .search-form .visit-blog #edit-submit svg {
    display: inline;
    margin-left: 10px;
    fill: white;
    width: 20px;
    position: relative;
    top: 2px; }

.profile-img-wrapper {
  width: 200px;
  float: left;
  top: -58px;
  margin-right: 50px;
  position: relative; }

.profile-text-wrapper {
  margin-left: 250px;
  z-index: 2;
  position: relative; }
  .profile-text-wrapper h2 {
    font-family: "PT Sans", sans-serif;
    margin: 0 0 10px; }
  .profile-text-wrapper .meta.profile-meta {
    font-size: 18px; }
  .profile-text-wrapper blockquote {
    margin: 30px 0 40px; }
  .profile-text-wrapper .related-feed .text_area {
    width: 100%; }
  .profile-text-wrapper .latest_feature {
    margin: 0;
    padding: 15px 0;
    border-top: 1px dotted rgba(35, 31, 32, 0.2); }
    .profile-text-wrapper .latest_feature .meta {
      margin: 0 0 5px; }

.voices-carousel-wide {
  z-index: 2; }
  .voices-carousel-wide .owl-controls .owl-page span {
    display: block;
    width: 8px;
    height: 8px;
    margin: 5px 5px;
    filter: Alpha(Opacity=50);
    opacity: 0.5;
    border-radius: 20px;
    background: #444; }

.voices-carousel-wide .owl-item {
  padding-top: 20px; }

.owl-theme .owl-controls .owl-buttons div {
  background: none;
  opacity: 1; }

.owl-theme .owl-controls {
  position: absolute;
  width: 100%;
  bottom: 0; }

/* Buttons */
.owl-prev, .owl-next {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: absolute;
  top: -350px; }
  .voices-carousel-wide .owl-prev, .voices-carousel-wide .owl-next {
    top: -250px; }
  .owl-prev:after, .owl-next:after {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    opacity: 0.5; }
  .owl-prev:hover:after, .owl-prev:focus:after, .owl-next:hover:after, .owl-next:focus:after {
    opacity: 1; }
  @media screen and (min-width: 1200px) {
    .owl-prev:after, .owl-next:after {
      width: 20px;
      height: 20px; }
    .voices-carousel-wide .owl-prev:after, .voices-carousel-wide .owl-next:after {
      width: 30px;
      height: 30px; } }

.owl-prev {
  left: 0; }
  .owl-prev:after {
    background: url("../img/arrow-left.svg") no-repeat; }
  .voices-carousel-wide .owl-prev {
    left: -10px; }
  @media screen and (min-width: 1200px) {
    .voices-carousel-wide .owl-prev {
      left: -60px; } }

.owl-next {
  right: 30px; }
  .owl-next:after {
    background: url("../img/arrow.svg") no-repeat; }
  .voices-carousel-wide .owl-next {
    right: 10px; }
  @media screen and (min-width: 1200px) {
    .voices-carousel-wide .owl-next {
      right: -30px; } }

.pos-statement {
  z-index: 20;
  padding: 40px 0 30px;
  text-align: center; }
  .pos-statement h2 {
    font-size: 30px;
    margin: 0 0 20px;
    font-family: "PT Sans", sans-serif;
    color: #231F20;
    background-color: #fff;
    display: inline;
    padding: 3px 0;
    line-height: 1.4;
    -webkit-box-shadow: 10px 0 0 #fff, -10px 0 0 #fff;
            box-shadow: 10px 0 0 #fff, -10px 0 0 #fff;
    position: relative; }
  .pos-statement p {
    margin: 10px 0 0;
    color: #fff; }
  @media screen and (min-width: 1200px) {
    .pos-statement {
      top: 0;
      padding: 70px 0 30px; }
      .pos-statement h2 {
        font-size: 44px; }
        .pos-statement h2 span {
          font-weight: 400;
          margin-top: 10px;
          font-size: 28px;
          line-height: 1.2; }
      .pos-statement p {
        font-size: 30px; } }

.listing-btns a {
  display: inline-block;
  width: 49%;
  padding: 10px; }

.world-map-wrapper {
  border-top: 1px dotted rgba(35, 31, 32, 0.2); }

#map {
  height: 280px;
  margin-bottom: 60px;
  background-color: #f2f4f0 !important; }
  #map svg {
    width: 20px;
    height: 20px; }
  @media screen and (min-width: 1200px) {
    #map {
      height: 650px; } }

.big-drops a {
  display: inline-block;
  background-color: white;
  width: 40%;
  margin-right: 5%;
  padding: 15px;
  color: #231F20;
  text-transform: uppercase; }

@media screen and (min-width: 1200px) {
  .inline-feature-right {
    float: right;
    margin: 0 -70px 60px 40px;
    width: 35%; }
    .template-article .inline-feature-right {
      margin: 0 -40px 60px 60px; } }

.callout {
  position: relative;
  padding: 200px 20px 20px;
  margin: 0 0 40px;
  background-size: cover;
  background-position: center;
  overflow: hidden; }
  .callout .grad-mask-big {
    width: 300%; }
  .callout.no-thumb .quote {
    padding-left: 0; }
  .callout a {
    color: white; }
  .callout .quote {
    position: relative;
    z-index: 2;
    min-height: 90px; }
    .callout .quote img {
      width: 70px;
      position: absolute;
      left: 0;
      top: 0;
      display: none;
      height: auto; }
  .callout p {
    color: white;
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 1.4em; }
  .callout .meta {
    color: white;
    font-size: 10px; }
  .callout .audio-player .meta {
    color: #31a19a; }
  @media screen and (min-width: 1200px) {
    .callout {
      padding: 400px 30px 20px; }
      .callout .grad-mask-big {
        width: 120%; }
      .callout .quote {
        padding-left: 90px; }
        .callout .quote img {
          display: block; }
      .callout p {
        font-size: 24px; }
      .callout .meta {
        font-size: 12px; }
      .inline-feature-right .callout {
        padding: 200px 20px 20px; }
        .inline-feature-right .callout .grad-mask-big {
          width: 200%; } }

.cta-panel {
  position: relative;
  -webkit-transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, transform 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  margin: 0 0 30px;
  padding: 350px 20px 40px;
  text-align: center;
  background-color: #31a19a;
  background-size: cover;
  background-position: center center; }
  .cta-panel .intro {
    color: #fff;
    font-weight: 700;
    font-size: 26px;
    line-height: 1.3;
    margin: 0 0 20px;
    letter-spacing: -0.03em; }
  .cta-panel .gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left bottom, left top, from(black), to(rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(bottom, black 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to top, black 0%, rgba(0, 0, 0, 0) 100%);
    mix-blend-mode: multiply; }
  .cta-panel .text {
    position: relative;
    z-index: 1; }
  .cta-panel .actions a {
    margin: 5px; }
  @media screen and (min-width: 1200px) {
    .cta-panel {
      padding: 340px 200px 220px; }
      .cta-panel.on-screen {
        -webkit-transform: translate3d(0, 0px, 0);
                transform: translate3d(0, 0px, 0);
        opacity: 1; }
      .cta-panel .intro {
        font-size: 40px;
        margin: 0 0 30px; }
      .cta-panel .actions a {
        font-size: 22px;
        margin: 0 10px;
        height: 58px; }
      .cta-panel .actions .btn:hover, .cta-panel .actions .search-form #edit-submit:hover, .search-form .cta-panel .actions #edit-submit:hover, .cta-panel .actions .btn:focus, .cta-panel .actions .search-form #edit-submit:focus, .search-form .cta-panel .actions #edit-submit:focus {
        background: #d50000; }
      .cta-panel .actions .btn_alt:hover, .cta-panel .actions .btn_alt:focus {
        background: #2b8d87; } }

.cta-panel2 {
  -webkit-transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, transform 500ms ease 0ms;
  transition: opacity 500ms ease 0ms, transform 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
  margin: 30px 0 50px;
  padding: 250px 40px 40px 0;
  background-color: #31a19a;
  background-size: cover;
  background-position: bottom center; }
  .cta-panel2 .intro {
    color: #fff;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.3;
    margin: 0 0 0;
    letter-spacing: -0.03em;
    display: inline;
    padding: 3px 0;
    -webkit-box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
            box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
    background-color: #231F20;
    line-height: 1.55;
    left: 10px;
    position: relative; }
  .cta-panel2 .actions a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    display: inline;
    padding: 4px 0;
    -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
            box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
    background-color: #ee0000;
    line-height: 1.7;
    height: auto;
    left: 10px;
    position: relative;
    font-size: 20px; }
    .cta-panel2 .actions a.btn_alt {
      -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
              box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
      background-color: #31a19a; }
    .cta-panel2 .actions a svg {
      fill: #fff;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      width: 16px;
      height: 16px; }
    .cta-panel2 .actions a:hover, .cta-panel2 .actions a:focus {
      background-color: #31a19a;
      -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
              box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a; }
  @media screen and (min-width: 1200px) {
    .cta-panel2 {
      padding: 300px 50% 70px 0;
      -webkit-transform: translate3d(0, 100px, 0);
              transform: translate3d(0, 100px, 0);
      opacity: 0; }
      .cta-panel2.on-screen {
        -webkit-transform: translate3d(0, 0px, 0);
                transform: translate3d(0, 0px, 0);
        opacity: 1; }
      .cta-panel2 .intro {
        font-size: 32px;
        margin: 0 0 0;
        line-height: 1.5;
        padding: 4px 0; }
      .cta-panel2 .actions a {
        font-size: 30px;
        line-height: 1.65;
        padding: 6px 0; }
        .cta-panel2 .actions a svg {
          width: 22px;
          height: 22px; } }

.stories-strip {
  padding: 0 0 40px; }
  .stories-strip .section-heading {
    text-align: center;
    margin-top: 0; }
    .stories-strip .section-heading h2 {
      left: 0; }
  .stories-strip h4 {
    margin: 0 0 30px; }
  .stories-strip p {
    font-size: 17px;
    margin: 10px 0 0; }
  .stories-strip.people li {
    text-align: center; }
    .stories-strip.people li .main_img {
      width: 40%;
      margin-left: auto;
      margin-right: auto; }
    .stories-strip.people li h3 {
      font-size: 24px; }
  @media screen and (min-width: 1200px) {
    .stories-strip li {
      float: left;
      width: 30%;
      margin-right: 5%; }
      .stories-strip li:nth-child(3n+3) {
        margin-right: 0; }
      .stories-strip li .main_img {
        float: left;
        width: 45%; }
      .stories-strip li .text_area {
        float: left;
        width: 55%;
        padding-left: 30px; }
    .stories-strip.people li {
      text-align: left; }
      .stories-strip.people li .main_img {
        float: left;
        width: 30%; }
      .stories-strip.people li .text_area {
        float: left;
        width: 70%;
        padding-left: 30px; } }

.listing-body {
  margin: 50px 0 0; }
  .template-countries .listing-body {
    text-align: center; }
  @media screen and (min-width: 1200px) {
    .listing-body {
      margin: 33px 0 0; } }

.roles {
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
  background-size: 100%;
  height: 250px; }
  .roles .section-heading {
    z-index: 2;
    position: relative;
    text-align: center; }
    .roles .section-heading h2 {
      font-family: "PT Sans", sans-serif;
      text-transform: uppercase;
      left: 0; }

.voices {
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
  background-size: 100%;
  position: relative;
  margin: 0;
  text-align: center;
  padding: 0 0 40px; }
  .voices .section-heading {
    z-index: 2;
    position: relative;
    text-align: center;
    margin-bottom: 30px; }
    .voices .section-heading h2 {
      font-family: "PT Sans", sans-serif;
      text-transform: uppercase;
      left: 0; }
  .voices .voice-wide {
    padding: 0;
    position: relative;
    margin-bottom: 50px;
    text-align: center; }
    .voices .voice-wide .profile_pic {
      width: 60%;
      position: relative;
      margin: 0 auto 4px; }
      .voices .voice-wide .profile_pic a:focus {
        outline: 2px dotted #231F20;
        display: block; }
    .voices .voice-wide p {
      font-size: 16px;
      margin: 10px 0 0; }
    .voices .voice-wide blockquote {
      margin: 30px 0; }
      .voices .voice-wide blockquote p {
        font-size: 18px;
        letter-spacing: 0em;
        padding: 2px; }
    .voices .voice-wide h3 {
      margin: 0 0 5px; }
      .voices .voice-wide h3 a {
        display: inline;
        background-color: #ee0000;
        color: white;
        padding: 3px 0;
        -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
                box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000; }
        .voices .voice-wide h3 a svg {
          -webkit-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
                  transform: rotate(-90deg);
          fill: #fff;
          width: 15px;
          height: 15px; }
        .voices .voice-wide h3 a:hover, .voices .voice-wide h3 a:focus {
          -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
                  box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
          background-color: #31a19a; }
    .voices .voice-wide h4 a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      font-weight: 700; }
      .voices .voice-wide h4 a svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        fill: #ee0000;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        width: 14px;
        height: 14px; }
      .voices .voice-wide h4 a:hover svg, .voices .voice-wide h4 a:focus svg {
        fill: #31a19a; }
  @media screen and (min-width: 769px) {
    .voices .voice-wide {
      padding: 0;
      margin: 0 20px 50px; }
      .voices .voice-wide .profile_pic {
        width: 70%; } }

.reqs {
  margin: 0 0 20px 10px; }
  .reqs li {
    -webkit-transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
    transition: opacity 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
    transition: opacity 500ms ease 0ms, transform 500ms ease 0ms;
    transition: opacity 500ms ease 0ms, transform 500ms ease 0ms, -webkit-transform 500ms ease 0ms;
    padding: 20px 20px 20px 30px;
    background: url("../img/tex-grey-warm-lt.png") no-repeat left top #f2f4f0;
    background-size: cover;
    margin: 0 0 0;
    position: relative;
    border-bottom: 20px solid #fff; }
    .reqs li .num {
      position: absolute;
      left: -18px;
      top: 15px;
      font-size: 16px;
      background-color: #fff;
      border: 1px solid #eaece6;
      border-radius: 50%;
      height: 35px;
      width: 35px;
      color: #444;
      text-align: center;
      padding-top: 5px; }
    .reqs li .btn_tickbox {
      margin: 0 10px 0 0; }
    .reqs li .followonlink {
      font-weight: 400; }
    .reqs li h3 {
      background-color: #231F20;
      color: #fff;
      text-transform: uppercase;
      display: inline;
      padding: 3px 0;
      -webkit-box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
              box-shadow: 10px 0 0 #231F20, -10px 0 0 #231F20;
      line-height: 1.65;
      left: 10px;
      position: relative;
      font-size: 18px; }
    .reqs li p {
      font-size: 16px;
      margin: 0 0 15px; }
    .reqs li.active {
      background: url("../img/tex-grey-warm.jpg") no-repeat left top #eaece6;
      background-size: cover; }
      .reqs li.active:before {
        height: 500px; }
      .reqs li.active .num {
        background-color: #49a131;
        color: #fff; }
  .reqs.reqs-extended li {
    margin: 0 0 0; }
    .reqs.reqs-extended li p {
      margin: 10px 0 15px;
      font-size: 16px; }
  @media screen and (min-width: 1200px) {
    .reqs {
      margin: 0 0 20px 0; }
      .reqs li {
        padding: 35px 30px 35px 40px;
        -webkit-transform: translate3d(0, 100px, 0);
                transform: translate3d(0, 100px, 0);
        opacity: 0; }
        .reqs li .num {
          padding-top: 7px;
          top: 35px; }
        .reqs li.on-screen {
          -webkit-transform: translate3d(0, 0px, 0);
                  transform: translate3d(0, 0px, 0);
          opacity: 1; }
        .reqs li p {
          font-size: 22px; }
        .reqs li h3 {
          font-size: 24px; }
      .reqs.reqs-extended li p {
        font-size: 18px; } }

.actions-bar {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: fixed;
  bottom: -90px;
  height: 180px;
  background-color: #231F20;
  padding: 20px 0;
  width: 100%;
  z-index: 10;
  color: #fff; }
  @media screen and (min-width: 769px) {
    .actions-bar {
      height: 90px; } }
  .actions-bar.not-fixed {
    position: relative;
    bottom: auto; }
  .actions-bar .next-step {
    background-color: rgba(68, 68, 68, 0.4);
    position: relative;
    display: block;
    text-align: center; }
    @media screen and (min-width: 769px) {
      .actions-bar .next-step {
        display: inline-block;
        text-align: inherit; } }
    .actions-bar .next-step .helptext {
      position: relative;
      color: #fff;
      width: 100%;
      left: 0;
      top: -10px;
      text-transform: none;
      font-weight: 400;
      display: none;
      height: 30px; }
    @media screen and (min-width: 769px) {
      .actions-bar .next-step .helptext,
      .actions-bar .next-step .french-helptext {
        position: absolute; }
      .actions-bar .next-step .helptext {
        top: 15px;
        width: 300px;
        left: 150px; }
      .actions-bar .next-step .french-helptext {
        width: 225px;
        left: 250px; } }
    .actions-bar .next-step svg {
      fill: #fff;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg);
      width: 12px;
      height: 12px; }
    .actions-bar .next-step.active {
      background-color: #49a131; }
      .actions-bar .next-step.active .helptext {
        display: none !important; }
    .actions-bar .next-step:hover .helptext,
    .actions-bar .next-step:hover .french-helptext, .actions-bar .next-step:focus .helptext,
    .actions-bar .next-step:focus .french-helptext {
      display: block; }
  .actions-bar .secondary-action {
    display: block;
    float: none;
    font-weight: 700;
    padding: 20px 0 0;
    text-align: center; }
    @media screen and (min-width: 769px) {
      .actions-bar .secondary-action {
        display: inline-block;
        float: right;
        text-align: inherit;
        padding: 0; } }
    .actions-bar .secondary-action a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      display: block;
      font-weight: 700; }
      .actions-bar .secondary-action a svg {
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s;
        -webkit-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
                transform: rotate(-90deg);
        width: 12px;
        height: 12px;
        fill: #ee0000; }
      .actions-bar .secondary-action a:hover svg, .actions-bar .secondary-action a:focus svg {
        fill: #31a19a; }
  .actions-bar.fixed {
    bottom: 0; }
  .actions-bar.not-fixed {
    position: relative;
    border: 0;
    margin: 0 0 0; }
  @media screen and (min-width: 1200px) {
    .actions-bar .secondary-action {
      display: inline-block;
      float: right;
      margin-top: 10px; }
      .actions-bar .secondary-action a {
        margin-left: 10px;
        display: inline; } }

.followonlink {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  font-weight: 700;
  margin: 15px 0 0;
  display: inline-block; }
  .followonlink.multiple {
    margin-right: 20px;
    margin-left: 20px; }
  .followonlink svg {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    width: 12px;
    height: 12px;
    fill: #ee0000; }
  .followonlink:hover svg, .followonlink:focus svg {
    fill: #31a19a; }

.videoWrapper, .oembed-provider-youtube {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  margin: 0 0 40px; }

.videoWrapper iframe, .oembed-provider-youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.apply-bar {
  height: 60px;
  background-color: #231F20;
  margin: 0 0 40px; }
  .apply-bar h2 {
    margin: 0;
    color: white;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 60px; }
    .apply-bar h2 span {
      font-weight: 400;
      opacity: 0.7; }
  @media screen and (min-width: 1200px) {
    .apply-bar {
      height: 80px; }
      .apply-bar h2 {
        line-height: 80px;
        font-size: 30px; } }

.wide-list {
  -webkit-transition: all 1s ease 0s;
  -moz-transition: all 1s ease 0s;
  -ms-transition: all 1s ease 0s;
  -o-transition: all 1s ease 0s;
  position: relative;
  overflow: hidden;
  padding-bottom: 150px;
  margin: 0 0 40px;
  max-height: 400px; }
  .wide-list .grad-mask-white {
    display: none; }
  .wide-list.active {
    max-height: 2000px;
    padding-bottom: 60px; }
    .wide-list.active .grad-mask-white {
      display: none; }
    .wide-list.active ul {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
  .wide-list .grad-mask-white {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(51%, white), to(white));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 51%, white 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 51%, white 100%);
    z-index: 2; }
  .wide-list .paging {
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index: 3; }
  .wide-list ul {
    margin: 0 0 20px; }
    .wide-list ul a {
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s;
      color: #fff;
      font-weight: 700;
      font-size: 17px;
      display: block;
      padding: 14px 0;
      border-top: 1px dotted rgba(255, 255, 255, 0.2);
      position: relative;
      text-align: center; }
      .wide-list ul a:hover, .wide-list ul a:focus {
        padding-left: 8px;
        background-color: rgba(0, 0, 0, 0.3); }
        .wide-list ul a:hover .info, .wide-list ul a:focus .info {
          color: #31a19a; }
      .wide-list ul a .info {
        font-weight: 400;
        color: #F96664;
        font-size: 15px; }
        .wide-list ul a .info span {
          opacity: 0.3;
          margin: 0 5px;
          color: #fff; }
  @media screen and (min-width: 481px) {
    .wide-list ul {
      -webkit-column-count: 2;
         -moz-column-count: 2;
              column-count: 2;
      -webkit-column-gap: 50px;
      -moz-column-gap: 50px;
      column-gap: 50px; }
      .wide-list ul a {
        text-align: left;
        font-size: 18px;
        page-break-inside: avoid;
             break-inside: avoid-column;
        -webkit-column-break-inside: avoid; } }
  @media screen and (min-width: 1200px) {
    .wide-list ul {
      -webkit-column-count: 3;
         -moz-column-count: 3;
              column-count: 3;
      -webkit-column-gap: 50px;
      -moz-column-gap: 50px;
      column-gap: 50px; }
      .wide-list ul a {
        text-align: left;
        font-size: 20px; } }
  @media screen and (min-width: 1430px) {
    .wide-list ul {
      -webkit-column-count: 4;
         -moz-column-count: 4;
              column-count: 4;
      -webkit-column-gap: 50px;
      -moz-column-gap: 50px;
      column-gap: 50px; }
      .wide-list ul a {
        text-align: left;
        font-size: 20px; } }

.world-map-interactive {
  width: auto;
  margin: 0 auto 0;
  position: relative;
  text-align: center; }
  .template-countries .world-map-interactive {
    display: none; }
  .world-map-interactive .filters {
    width: 40%; }
  .world-map-interactive img {
    width: auto;
    margin: 0 auto; }
  .world-map-interactive .popup {
    background-color: #fff;
    padding: 0 0 20px;
    position: absolute;
    width: 280px;
    top: 30px;
    right: 40px;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    text-align: left; }
    .world-map-interactive .popup img {
      width: 100%;
      margin: 0 0 0; }
    .world-map-interactive .popup h3 {
      font-size: 24px;
      margin: 0 0 5px;
      line-height: 1.5; }
      .world-map-interactive .popup h3 a {
        background-color: #ee0000;
        color: #fff;
        padding: 3px 15px; }
        .world-map-interactive .popup h3 a svg {
          fill: #fff;
          width: 14px;
          height: 14px;
          -webkit-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
                  transform: rotate(-90deg); }
        .world-map-interactive .popup h3 a:hover, .world-map-interactive .popup h3 a:focus {
          background-color: #31a19a; }
    .world-map-interactive .popup .topics {
      margin: 0 15px; }
    .world-map-interactive .popup p {
      margin: 0 15px;
      font-size: 16px; }
      .world-map-interactive .popup p.label {
        margin: 15px 15px 0 15px;
        font-weight: 700;
        font-size: 13px;
        display: block; }
      .world-map-interactive .popup p.topic {
        display: inline;
        margin: 0 5px 0 0;
        padding-right: 10px;
        border-right: 1px dotted rgba(35, 31, 32, 0.2); }
  @media screen and (min-width: 1200px) {
    .template-countries .world-map-interactive {
      display: block; } }

.countries-top {
  padding-top: 50px;
  background-size: cover;
  background-position: center top;
  position: relative; }
  .countries-top .grad-mask-white {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(35, 31, 32, 0)), color-stop(51%, #231f20), to(#231f20));
    background: -webkit-linear-gradient(top, rgba(35, 31, 32, 0) 0%, #231f20 51%, #231f20 100%);
    background: linear-gradient(to bottom, rgba(35, 31, 32, 0) 0%, #231f20 51%, #231f20 100%);
    z-index: 2; }
  .countries-top h1, .countries-top .intro {
    color: #fff; }

.countries-landing-page .hero {
  text-align: center;
  position: relative;
  background-size: cover;
  height: auto;
  padding: 160px 0 50px; }
  @media screen and (min-width: 1200px) {
    .countries-landing-page .hero {
      padding: 400px 0 60px;
      margin-bottom: 30px; } }
  .countries-landing-page .hero .container {
    position: relative;
    z-index: 1;
    padding: 0 15px; }
  .countries-landing-page .hero h1 {
    color: #fff;
    font-family: "PT Sans", sans-serif;
    margin-bottom: 5px;
    font-size: 32px;
    background-color: #ee0000;
    display: inline;
    padding: 3px 0;
    -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
            box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
    line-height: 1.5;
    left: 10px;
    position: relative;
    width: 95%; }
    @media screen and (min-width: 1200px) {
      .countries-landing-page .hero h1 {
        font-size: 55px; } }
    .countries-landing-page .hero h1 span {
      display: inline;
      font-weight: bold; }
  .countries-landing-page .hero .breadcrumb li, .countries-landing-page .hero .breadcrumb a {
    color: white; }
  .countries-landing-page .hero .breadcrumb svg {
    fill: white; }

.countries-landing-page .search {
  position: relative;
  max-width: 500px;
  margin: 20px auto 10px; }
  .countries-landing-page .search input {
    background: rgba(255, 255, 255, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.5); }
  .countries-landing-page .search ::-webkit-input-placeholder {
    color: white !important;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .countries-landing-page .search input[type="text"] {
    color: white; }
  .countries-landing-page .search:after {
    content: '';
    position: absolute;
    right: 20px;
    top: 15px;
    height: 20px;
    width: 20px;
    background-image: url("../img/glass-icon-white.png");
    background-size: 20px;
    opacity: 1;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .countries-landing-page .search .hidden, .countries-landing-page .search .not-here {
    position: absolute;
    left: 0;
    top: 49px;
    width: 100%;
    text-align: left;
    overflow: hidden;
    height: 0;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .countries-landing-page .search .hidden li, .countries-landing-page .search .not-here li {
      padding-left: 15px;
      color: #ee0000;
      display: block;
      background: white;
      font-size: 16px;
      padding-bottom: 5px;
      border-left: 1px solid #222;
      border-right: 1px solid #222;
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
      .countries-landing-page .search .hidden li:first-of-type, .countries-landing-page .search .not-here li:first-of-type {
        padding-top: 10px; }
      .countries-landing-page .search .hidden li:last-of-type, .countries-landing-page .search .not-here li:last-of-type {
        padding-bottom: 10px;
        border-bottom: 1px solid #222; }
      .countries-landing-page .search .hidden li:hover, .countries-landing-page .search .not-here li:hover, .countries-landing-page .search .hidden li:focus, .countries-landing-page .search .not-here li:focus {
        cursor: pointer;
        padding-left: 20px; }
      .countries-landing-page .search .hidden li.bottom-none, .countries-landing-page .search .not-here li.bottom-none {
        padding-bottom: 0; }
      .countries-landing-page .search .hidden li.yemen-item, .countries-landing-page .search .not-here li.yemen-item {
        padding-top: 5px; }
    .countries-landing-page .search .hidden.active, .countries-landing-page .search .active.not-here {
      height: 100px;
      overflow: scroll; }
  .countries-landing-page .search .not-here {
    height: auto; }
    .countries-landing-page .search .not-here li:first-of-type {
      color: #222; }
    .countries-landing-page .search .not-here.hide {
      height: 0; }

.countries-landing-page .anchor {
  color: #F96664;
  font-size: 18px;
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s; }
  .countries-landing-page .anchor .svg {
    margin-left: 5px;
    display: inline; }
  .countries-landing-page .anchor svg {
    width: 14px;
    fill: #F96664;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .countries-landing-page .anchor:hover, .countries-landing-page .anchor:focus {
    color: #ee0000; }
    .countries-landing-page .anchor:hover svg, .countries-landing-page .anchor:focus svg {
      fill: #ee0000; }

.countries-landing-page .section-heading {
  text-align: center; }

.countries-landing-page .overview {
  position: relative;
  padding: 30px 0 10px;
  margin: 60px 0 30px;
  text-align: center;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222; }
  @media screen and (min-width: 1200px) {
    .countries-landing-page .overview {
      padding: 40px 0 70px; } }
  .countries-landing-page .overview:after {
    content: '';
    display: none;
    position: absolute;
    background: rgba(255, 255, 255, 0.05);
    pointer-events: none; }
    @media screen and (min-width: 1200px) {
      .countries-landing-page .overview:after {
        display: block;
        height: 100%;
        width: 50%;
        left: auto;
        bottom: auto;
        top: 0;
        right: 0; } }
  .countries-landing-page .overview .container {
    max-width: 1400px; }
  .countries-landing-page .overview .section-heading {
    text-align: left; }
  .countries-landing-page .overview h2 {
    color: #222;
    text-transform: uppercase;
    font-weight: 600;
    background: white;
    display: inline-block;
    padding: 5px 0;
    -webkit-box-shadow: 10px 0 0 white, -10px 0 0 white;
            box-shadow: 10px 0 0 white, -10px 0 0 white;
    margin: 0 0 50px; }
    .countries-landing-page .overview h2 span {
      font-weight: 100; }

.new-voices {
  text-align: left;
  margin-bottom: 60px; }
  @media screen and (min-width: 481px) {
    .new-voices {
      margin-bottom: 0; } }
  .new-voices .profile_pic {
    width: 45%;
    margin-bottom: 20px; }
    @media screen and (min-width: 481px) {
      .new-voices .profile_pic {
        float: left;
        width: 25%; } }
  .new-voices .text_area {
    margin-bottom: 20px; }
    @media screen and (min-width: 481px) {
      .new-voices .text_area {
        float: left;
        width: 70%;
        margin-left: 5%; } }
  .new-voices h3, .new-voices p {
    color: white; }
  .new-voices p {
    font-size: 16px;
    text-indent: -5px;
    margin-bottom: 10px; }
    @media screen and (min-width: 481px) {
      .new-voices p {
        font-size: 18px;
        margin-bottom: 30px; } }
  .new-voices svg {
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    fill: #F96664;
    width: 13px;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .new-voices .meta {
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 12px;
    margin-bottom: 10px;
    text-indent: 0; }
    @media screen and (min-width: 481px) {
      .new-voices .meta {
        margin-bottom: 25px; } }
    .new-voices .meta span {
      position: relative;
      border-left: 10px;
      margin-left: 10px; }
      .new-voices .meta span:after {
        content: '';
        position: absolute;
        left: -7px;
        top: 5px;
        width: 1px;
        height: 8px;
        background: rgba(255, 255, 255, 0.5); }
  .new-voices a {
    color: #F96664;
    margin-right: 10px;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .new-voices a:hover, .new-voices a:focus {
      color: #ee0000; }
      .new-voices a:hover svg, .new-voices a:focus svg {
        fill: #ee0000; }

.rwd-table {
  min-width: 100%;
  overflow: hidden;
  margin-bottom: 40px; }
  @media screen and (min-width: 1200px) {
    .rwd-table {
      max-width: 700px;
      margin: 20px 0 0; } }
  .rwd-table a {
    color: white;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .rwd-table a:hover, .rwd-table a:focus {
      border-color: white; }
  @media screen and (min-width: 1200px) {
    .rwd-table tr td:first-of-type {
      color: #31a19a;
      font-weight: bold;
      font-size: 25px; }
      .rwd-table tr td:first-of-type span {
        font-weight: 100;
        font-size: 20px; } }
  .rwd-table th {
    display: none;
    text-transform: uppercase;
    color: white; }
  .rwd-table td {
    display: block;
    margin: 0;
    color: white; }
    @media screen and (min-width: 1200px) {
      .rwd-table td {
        margin: .5em 1em; } }
    .rwd-table td:first-child {
      padding-top: .5em; }
    @media screen and (min-width: 1200px) {
      .rwd-table td:last-child {
        padding-bottom: .5em; } }
    .rwd-table td:before {
      content: attr(data-th) ": ";
      font-weight: bold;
      width: 100px;
      display: inline-block; }
      @media screen and (min-width: 1200px) {
        .rwd-table td:before {
          display: none; } }
  .rwd-table th, .rwd-table td {
    text-align: left; }
    @media screen and (min-width: 1200px) {
      .rwd-table th, .rwd-table td {
        display: table-cell;
        padding: 3px 25px; }
        .rwd-table th:first-child, .rwd-table td:first-child {
          padding-left: 0; }
        .rwd-table th:last-child, .rwd-table td:last-child {
          padding-right: 0; } }

.columns {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px 40px; }
  @media screen and (min-width: 1200px) {
    .columns {
      -webkit-column-count: 4;
         -moz-column-count: 4;
              column-count: 4;
      width: 100%;
      left: 70px;
      padding-bottom: 100px; } }

.all-countries {
  position: relative;
  text-align: center; }
  @media screen and (min-width: 1200px) {
    .all-countries {
      text-align: left; } }
  .all-countries .section-heading {
    text-align: center;
    margin: 40px 0 30px; }
    @media screen and (min-width: 1200px) {
      .all-countries .section-heading {
        text-align: center;
        margin: 40px 0 60px; } }
  .all-countries:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url("../img/map-j.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.05; }
    @media screen and (min-width: 1200px) {
      .all-countries:before {
        background-size: contain; } }

.regions {
  border-bottom: 1px dotted rgba(0, 0, 0, 0.2); }
  @media screen and (min-width: 1200px) {
    .regions {
      margin-bottom: 30px;
      border-bottom: none;
      padding-bottom: 0; } }
  .regions h3 {
    position: relative;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
    color: #31a19a;
    display: inline-block;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    padding-top: 15px; }
    @media screen and (min-width: 1200px) {
      .regions h3 {
        display: block; } }
    .regions h3:after {
      content: '';
      position: absolute;
      right: -30px;
      top: 13px;
      height: 20px;
      width: 20px;
      background: url("../img/plus-icon.png") no-repeat;
      background-size: 20px;
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
      @media screen and (min-width: 1200px) {
        .regions h3:after {
          display: none; } }
    .regions h3.twist:after {
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg); }
  .regions h4 {
    font-size: 16px;
    font-weight: 600;
    text-transform: none;
    margin-bottom: 2px;
    letter-spacing: 0.5px;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .regions .meta {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 300;
    opacity: 0.5;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .regions .meta span {
      position: relative;
      padding-left: 15px;
      margin-right: 15px; }
      .regions .meta span:after {
        content: '';
        position: absolute;
        left: 5px;
        top: 4px;
        width: 1px;
        height: 10px;
        background: rgba(34, 34, 34, 0.7); }
  .regions ul {
    height: 0;
    overflow: hidden; }
    @media screen and (min-width: 1200px) {
      .regions ul {
        height: auto;
        overflow: visible; }
        .regions ul:after {
          content: "";
          display: table;
          clear: both; } }
    .regions ul li {
      margin-bottom: 10px; }
      .regions ul li:hover, .regions ul li:focus {
        cursor: pointer; }
        .regions ul li:hover h4, .regions ul li:focus h4 {
          opacity: 1;
          color: #ee0000; }
        .regions ul li:hover .meta, .regions ul li:focus .meta {
          opacity: 0.75; }
    .regions ul.active {
      height: auto; }

.issues-landing-page .hero {
  height: -webkit-calc(100vh - 200px);
  height: calc(100vh - 200px); }
  .issues-landing-page .hero .main-page-title {
    padding: 0 0 20px; }
  .issues-landing-page .hero .breadcrumb li, .issues-landing-page .hero .breadcrumb a {
    color: white; }
  .issues-landing-page .hero .breadcrumb svg {
    fill: white; }
  .issues-landing-page .hero .container {
    text-align: center; }
  @media screen and (min-width: 1200px) {
    .issues-landing-page .hero .grid-12.grid-desktop-7, .issues-landing-page .hero .grid-desktop-7.col-md-4, .issues-landing-page .hero .col-md-4.col-md-7, .issues-landing-page .hero .grid-desktop-7.col-md-6, .issues-landing-page .hero .col-md-6.col-md-7, .issues-landing-page .hero .grid-12.col-md-7 {
      text-align: center;
      float: none; } }

.issues-landing-page .overview {
  position: relative;
  padding: 30px 0 10px;
  margin: 60px 0 30px;
  text-align: center;
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top; }
  @media screen and (min-width: 1200px) {
    .issues-landing-page .overview {
      padding: 40px 0 70px;
      margin-bottom: 0; } }
  .issues-landing-page .overview:after {
    content: '';
    display: none;
    position: absolute;
    background: rgba(255, 255, 255, 0.5);
    pointer-events: none; }
    @media screen and (min-width: 1200px) {
      .issues-landing-page .overview:after {
        display: block;
        height: 100%;
        width: 50%;
        left: auto;
        bottom: auto;
        top: 0;
        right: 0; } }
  .issues-landing-page .overview .container {
    position: relative;
    max-width: 1400px;
    z-index: 1; }
  .issues-landing-page .overview .section-heading {
    text-align: left; }
  .issues-landing-page .overview h2 {
    position: relative;
    z-index: 1;
    color: white;
    text-transform: uppercase;
    font-weight: 600;
    background: #222;
    display: inline-block;
    padding: 5px 0;
    -webkit-box-shadow: 10px 0 0 #222, -10px 0 0 #222;
            box-shadow: 10px 0 0 #222, -10px 0 0 #222;
    margin: 0 0 50px; }
    .issues-landing-page .overview h2 span {
      font-weight: 100; }
  .issues-landing-page .overview h3 {
    color: #222; }
  .issues-landing-page .overview .meta {
    color: #222; }
  .issues-landing-page .overview p {
    color: #222; }

.issues-landing-page .regions {
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  border-bottom: none; }
  @media screen and (min-width: 1200px) {
    .issues-landing-page .regions {
      text-align: left;
      margin-bottom: 10px; } }
  .issues-landing-page .regions ul {
    height: auto; }
  .issues-landing-page .regions li {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px dotted rgba(0, 0, 0, 0.2); }
    @media screen and (min-width: 1200px) {
      .issues-landing-page .regions li {
        margin-bottom: 30px;
        border-bottom: none;
        padding-bottom: 0; } }
    .issues-landing-page .regions li:hover svg, .issues-landing-page .regions li:focus svg {
      fill: #ee0000; }
  @media screen and (min-width: 1200px) {
    .issues-landing-page .regions h4 {
      font-size: 18px; } }
  .issues-landing-page .regions h4 svg {
    position: relative;
    top: -2px;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    fill: #222;
    width: 10px;
    display: inline;
    margin-left: 5px;
    -webkit-transition: fill 0.25s ease 0s;
    transition: fill 0.25s ease 0s; }
  .issues-landing-page .regions .meta {
    opacity: 0.8;
    font-size: 15px; }
    .issues-landing-page .regions .meta span:after {
      background: rgba(255, 255, 255, 0.7); }

.issues-landing-page .all-countries {
  max-width: 600px;
  margin: 0 auto;
  padding: 25px 0; }
  .issues-landing-page .all-countries:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 1200px) {
    .issues-landing-page .all-countries {
      padding: 5px 0;
      max-width: 85%;
      margin: 40px auto 0; } }
  .issues-landing-page .all-countries .row:after {
    content: "";
    display: table;
    clear: both; }

.issues-landing-page .section-heading {
  text-align: center;
  margin-top: 0; }

.crisis-responses {
  position: relative;
  padding: 0px 0 10px;
  margin: -20px 0 0;
  text-align: center; }
  @media screen and (min-width: 1200px) {
    .crisis-responses {
      background: url("../img/7.jpg") no-repeat left center;
      background-size: cover;
      padding: 30px 0 50px;
      margin-top: 0; } }
  .crisis-responses .container {
    position: relative;
    z-index: 1;
    text-align: center; }
  @media screen and (min-width: 1200px) {
    .crisis-responses:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(34, 34, 34, 0.7); } }
  .crisis-responses h2 {
    font-weight: 700;
    background: white;
    background-size: 100%;
    color: #222;
    padding: 5px 0;
    display: inline-block;
    line-height: 1.1;
    -webkit-box-shadow: 10px 0 0 white, -10px 0 0 white;
            box-shadow: 10px 0 0 white, -10px 0 0 white;
    left: 10px;
    position: relative;
    text-transform: uppercase;
    margin-bottom: 60px; }
    .crisis-responses h2 span {
      font-weight: 400;
      color: #222; }
  .crisis-responses .grid-12.grid-desktop-4, .crisis-responses .col-md-4, .crisis-responses .grid-desktop-4.col-md-6, .crisis-responses .col-md-6.col-md-4 {
    display: block; }
    @media screen and (min-width: 1200px) {
      .crisis-responses .grid-12.grid-desktop-4, .crisis-responses .col-md-4, .crisis-responses .grid-desktop-4.col-md-6, .crisis-responses .col-md-6.col-md-4 {
        display: none; } }

.tabs {
  display: none;
  text-align: center; }
  @media screen and (min-width: 1200px) {
    .tabs {
      display: block;
      max-width: 80%;
      margin: 0 auto; }
      .tabs:after {
        content: "";
        display: table;
        clear: both; } }
  .tabs li {
    display: inline-block;
    font-weight: 600;
    position: relative; }
    @media screen and (min-width: 1200px) {
      .tabs li {
        width: 24.5%; } }
    .tabs li h3 {
      color: white;
      display: inline-block;
      font-weight: 300;
      text-transform: uppercase;
      font-size: 19px;
      letter-spacing: 0.5px;
      padding: 8px 10px;
      border-bottom: 2px solid transparent;
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
    .tabs li:hover, .tabs li:focus {
      cursor: pointer; }
      .tabs li:hover h3, .tabs li:focus h3 {
        border-bottom: 2px solid #ee0000; }
    .tabs li.active h3 {
      font-weight: 600;
      border-bottom: 2px solid #ee0000; }

.tabs-content {
  display: none; }
  @media screen and (min-width: 1200px) {
    .tabs-content {
      position: relative;
      display: block;
      margin: 0 auto;
      text-align: left;
      max-width: 80%;
      height: 300px; }
      .tabs-content:after {
        content: "";
        display: table;
        clear: both; } }
  .tabs-content h3 {
    color: white;
    padding-left: 20px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 19px; }
  .tabs-content ul {
    padding: 30px;
    background: rgba(34, 34, 34, 0.75); }
    .tabs-content ul:after {
      content: "";
      display: table;
      clear: both; }
  .tabs-content li.tab-one, .tabs-content li.tab-two {
    position: absolute;
    top: 30px;
    left: 30px;
    opacity: 0; }
    .tabs-content li.tab-one.active, .tabs-content li.tab-two.active {
      opacity: 1;
      z-index: 10; }
  .tabs-content h4 {
    color: white;
    font-weight: 300;
    font-size: 16px; }
  .tabs-content p {
    color: white;
    font-size: 16px;
    margin-bottom: 0; }
  .tabs-content ul:after {
    content: "";
    display: table;
    clear: both; }
  .tabs-content ul li {
    margin-bottom: 20px; }
    @media screen and (min-width: 1200px) {
      .tabs-content ul li {
        padding: 0 20px;
        width: 45%;
        float: left;
        margin-bottom: 0; } }
    @media screen and (min-width: 1200px) {
      .tabs-content ul li:first-of-type {
        width: 55%;
        padding-right: 40px; } }
  .tabs-content .countries span {
    position: relative;
    color: white;
    font-size: 16px;
    margin-right: 20px;
    border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .tabs-content .countries span:after {
      content: '';
      position: absolute;
      right: -10px;
      top: 4px;
      height: 10px;
      width: 1px;
      background: rgba(255, 255, 255, 0.5); }
    .tabs-content .countries span:last-of-type:after {
      display: none; }
    .tabs-content .countries span:hover, .tabs-content .countries span:focus {
      cursor: pointer;
      border-bottom: 1px dotted white; }
  .tabs-content .facts {
    width: 100%; }
    .tabs-content .facts li {
      position: relative;
      width: 100%;
      float: none;
      font-size: 16px;
      color: white;
      padding: 0 0 0 12px;
      margin-bottom: 5px; }
      .tabs-content .facts li:first-of-type {
        width: 100%;
        padding: 0 0 0 12px; }
      .tabs-content .facts li:after {
        content: '';
        position: absolute;
        left: 0;
        top: 7px;
        width: 3px;
        height: 3px;
        border-radius: 50%;
        border: 1px solid white; }
  .tabs-content .from-field .profile:after {
    content: "";
    display: table;
    clear: both; }
  .tabs-content .from-field .profile .profile-pic {
    display: none;
    float: left;
    width: 75px; }
  .tabs-content .from-field .profile .text {
    float: left;
    margin-left: 0; }
  .tabs-content .from-field .profile h3, .tabs-content .from-field .profile .meta {
    color: white; }
  .tabs-content .from-field .profile h3 {
    font-size: 16px;
    margin: 0 0 0; }
  .tabs-content .from-field .profile .meta {
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 12px;
    margin-bottom: 10px;
    text-indent: 0; }
    @media screen and (min-width: 481px) {
      .tabs-content .from-field .profile .meta {
        margin-bottom: 10px; } }
    .tabs-content .from-field .profile .meta span {
      position: relative;
      border-left: 10px;
      margin-left: 10px; }
      .tabs-content .from-field .profile .meta span:after {
        content: '';
        position: absolute;
        left: -7px;
        top: 5px;
        width: 1px;
        height: 8px;
        background: rgba(255, 255, 255, 0.5); }
  .tabs-content .from-field .profile .text_area {
    width: 100%;
    display: block; }
    .tabs-content .from-field .profile .text_area p {
      margin: 0; }
  .tabs-content a.page {
    display: inline-block;
    font-size: 16px;
    padding: 0;
    margin-top: 20px;
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    padding: 5px 10px;
    background: #ee0000;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .tabs-content a.page:hover, .tabs-content a.page:focus {
      background: #31a19a; }
      .tabs-content a.page:hover svg, .tabs-content a.page:focus svg {
        fill: #ee0000; }

@media screen and (min-width: 1200px) {
  .listing-page .hero {
    padding: 350px 0 60px; } }

.listing-page h1 {
  margin-bottom: 0;
  text-transform: none; }

.listing-page .latest_feed.side-by-side {
  padding-top: 0; }
  .listing-page .latest_feed.side-by-side ul {
    padding: 15px;
    max-width: 1400px;
    margin: 0 auto; }
    @media screen and (min-width: 1200px) {
      .listing-page .latest_feed.side-by-side ul {
        padding: 0; } }
  @media screen and (min-width: 1200px) {
    .listing-page .latest_feed.side-by-side li {
      width: 47.5%;
      float: left; } }
  @media screen and (min-width: 1200px) {
    .listing-page .latest_feed.side-by-side li:nth-child(2n+2) {
      margin-right: 0;
      margin-left: 5%; } }
  @media screen and (min-width: 1200px) {
    .listing-page .latest_feed.side-by-side li .text h3 {
      font-size: 22px; } }
  @media screen and (min-width: 1200px) {
    .listing-page .latest_feed.side-by-side .latest_feature {
      background: rgba(234, 236, 230, 0.5); } }
  .listing-page .latest_feed.side-by-side .latest_feature .text_area {
    padding-top: 10px; }
    @media screen and (min-width: 1200px) {
      .listing-page .latest_feed.side-by-side .latest_feature .text_area {
        padding: 20px;
        padding-left: 0; } }
  @media screen and (min-width: 1200px) {
    .listing-page .latest_feed.side-by-side img {
      object-fit: cover;
      height: 200px; } }

.filter-drop-down {
  position: relative;
  max-width: 900px;
  margin: 30px auto 0; }
  .filter-drop-down:after {
    content: "";
    display: table;
    clear: both; }
  .filter-drop-down li {
    padding: 15px 25px 13px;
    list-style: none;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-bottom: none;
    background: rgba(34, 34, 34, 0.25);
    text-align: left;
    text-transform: uppercase;
    font-size: 16px;
    color: white;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    @media screen and (min-width: 1200px) {
      .filter-drop-down li {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
        width: 25%;
        float: left; } }
    .filter-drop-down li:last-of-type {
      border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
      @media screen and (min-width: 1200px) {
        .filter-drop-down li:last-of-type {
          border-right: 1px solid rgba(255, 255, 255, 0.2); } }
    .filter-drop-down li:after {
      background: rgba(255, 255, 255, 0.2); }
    .filter-drop-down li:hover, .filter-drop-down li:focus {
      cursor: pointer;
      background: rgba(34, 34, 34, 0.75); }
    .filter-drop-down li.active {
      background: rgba(34, 34, 34, 0.75); }
      .filter-drop-down li.active svg {
        -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
                transform: rotate(180deg); }
  .filter-drop-down svg {
    position: relative;
    top: 2px;
    fill: #222;
    width: 15px;
    float: right;
    fill: white;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }

.filter-drop-down-open {
  max-width: 900px;
  margin: 0 auto;
  text-align: left;
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.45s ease 0s;
  transition: height 0.45s ease 0s;
  background: rgba(34, 34, 34, 0.9); }
  .filter-drop-down-open ul {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-top: 0;
    padding: 25px;
    margin-bottom: 0; }
    @media screen and (min-width: 1200px) {
      .filter-drop-down-open ul {
        -webkit-column-count: 4;
           -moz-column-count: 4;
                column-count: 4; } }
    .filter-drop-down-open ul li {
      border: none;
      background: transparent;
      width: 100%;
      float: none;
      color: white;
      font-size: 15px;
      font-weight: 300;
      text-transform: none;
      margin-bottom: 5px;
      letter-spacing: 0.5px;
      opacity: 0.75;
      -webkit-transition: all 0.2s ease 0s;
      -moz-transition: all 0.2s ease 0s;
      -ms-transition: all 0.2s ease 0s;
      -o-transition: all 0.2s ease 0s; }
      .filter-drop-down-open ul li:hover, .filter-drop-down-open ul li:focus {
        cursor: pointer;
        color: #ee0000;
        padding-left: 5px; }
      .filter-drop-down-open ul li.heading {
        position: relative;
        text-transform: uppercase;
        font-size: 17px;
        font-weight: 600;
        letter-spacing: 0.5px;
        margin: 20px 0 0;
        color: #31a19a; }
        .filter-drop-down-open ul li.heading:first-of-type {
          margin-top: 0; }
        .filter-drop-down-open ul li.heading:hover, .filter-drop-down-open ul li.heading:focus {
          cursor: auto;
          color: #31a19a;
          padding-left: 0; }
      .filter-drop-down-open ul li.active {
        display: inline-block;
        background: #ee0000;
        color: white;
        padding: 3px 10px;
        width: auto; }
        .filter-drop-down-open ul li.active svg {
          width: 10px;
          fill: white; }
        .filter-drop-down-open ul li.active:hover, .filter-drop-down-open ul li.active:focus {
          cursor: pointer;
          padding: 3px 10px;
          background: #ee0000; }
  .filter-drop-down-open.active {
    height: auto; }
    @media screen and (min-width: 1200px) {
      .filter-drop-down-open.active {
        height: auto; } }

.filter-chosen {
  display: inline-block; }
  .filter-chosen li {
    display: inline-block;
    margin: 30px 5px 5px 0;
    background: #31a19a;
    color: white;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 10px; }
    .filter-chosen li svg {
      width: 10px;
      fill: white; }
    .filter-chosen li:hover, .filter-chosen li:focus {
      cursor: pointer;
      background: #ee0000; }

.directions {
  overflow: hidden;
  position: relative;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222; }
  .directions:after {
    content: "";
    display: table;
    clear: both; }
  .directions #map {
    height: 200px;
    margin-bottom: 0; }
    .directions #map img {
      height: 100%; }
    @media screen and (min-width: 1200px) {
      .directions #map {
        width: 50%;
        float: left;
        height: 250px; } }
  .directions .text {
    padding: 30px; }
    @media screen and (min-width: 1200px) {
      .directions .text {
        float: left;
        width: 50%; } }
  .directions .btn, .directions .search-form #edit-submit, .search-form .directions #edit-submit {
    margin-top: 20px;
    padding: 5px 20px;
    font-size: 14px; }
  .directions h4 {
    text-transform: none;
    color: white; }
  .directions p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.7); }

.center-button {
  text-align: center; }
  .center-button:after {
    content: "";
    display: table;
    clear: both; }

.story-hub .page_anchors, .take-action .page_anchors, .frontline .page_anchors {
  border-top: 1px solid rgba(255, 255, 255, 0.1); }
  .story-hub .page_anchors.move-up, .take-action .page_anchors.move-up, .frontline .page_anchors.move-up {
    -webkit-transform: translateY(-90px);
        -ms-transform: translateY(-90px);
            transform: translateY(-90px); }
  .story-hub .page_anchors.fixed, .take-action .page_anchors.fixed, .frontline .page_anchors.fixed {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }

.story-hub .hero, .take-action .hero, .frontline .hero {
  position: relative;
  background-image: url("../img/cta-panel3.jpg");
  background-size: cover;
  height: -webkit-calc(100vh - 150px);
  height: calc(100vh - 150px); }
  .story-hub .hero .container, .take-action .hero .container, .frontline .hero .container {
    position: relative;
    z-index: 1; }
  .story-hub .hero .main-page-title, .take-action .hero .main-page-title, .frontline .hero .main-page-title {
    padding: 0 0 20px; }
  .story-hub .hero h1, .take-action .hero h1, .frontline .hero h1 {
    color: #222;
    font-family: "PT Sans", sans-serif;
    margin-bottom: 5px;
    font-size: 32px;
    background-color: white;
    display: inline;
    padding: 3px 0;
    -webkit-box-shadow: 10px 0 0 white, -10px 0 0 white;
            box-shadow: 10px 0 0 white, -10px 0 0 white;
    line-height: 1.5;
    left: 10px;
    position: relative;
    width: 95%;
    text-transform: uppercase; }
    @media screen and (min-width: 1200px) {
      .story-hub .hero h1, .take-action .hero h1, .frontline .hero h1 {
        font-size: 55px; } }
  .story-hub .hero .featured-article, .take-action .hero .featured-article, .frontline .hero .featured-article {
    margin-bottom: 40px;
    margin-top: 2px;
    position: relative;
    left: 10px; }
    .story-hub .hero .featured-article a, .take-action .hero .featured-article a, .frontline .hero .featured-article a {
      color: white; }
  .story-hub .hero .featured, .take-action .hero .featured, .frontline .hero .featured {
    position: relative;
    color: white;
    text-align: left;
    margin-bottom: 20px;
    color: white;
    font-family: "PT Sans", sans-serif;
    font-size: 32px;
    background-color: #ee0000;
    display: inline;
    padding: 3px 0;
    -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
            box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
    -webkit-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s;
    /*&:after {
                content: 'featured';
                position: absolute;
                left: 0;
                top: -20px;
                text-transform: uppercase;
                color: white;
                font-size: 12px;
                letter-spacing: 1px;
                font-weight: 100;
            }*/ }
    .story-hub .hero .featured svg, .take-action .hero .featured svg, .frontline .hero .featured svg {
      position: relative;
      top: -2px;
      display: inline;
      margin-left: 10px;
      fill: white;
      width: 20px;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg); }
    .story-hub .hero .featured:hover, .take-action .hero .featured:hover, .frontline .hero .featured:hover, .story-hub .hero .featured:focus, .take-action .hero .featured:focus, .frontline .hero .featured:focus {
      cursor: pointer;
      background-color: #31a19a;
      -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
              box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a; }
  .story-hub .hero.with-anchors .main-page-title, .take-action .hero.with-anchors .main-page-title, .frontline .hero.with-anchors .main-page-title {
    padding-bottom: 80px; }
  .story-hub .hero .breadcrumb li, .take-action .hero .breadcrumb li, .frontline .hero .breadcrumb li, .story-hub .hero .breadcrumb a, .take-action .hero .breadcrumb a, .frontline .hero .breadcrumb a {
    color: white; }
  .story-hub .hero .breadcrumb svg, .take-action .hero .breadcrumb svg, .frontline .hero .breadcrumb svg {
    fill: white; }
  .story-hub .hero:after, .take-action .hero:after, .frontline .hero:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: rgba(34, 34, 34, 0.1);
    mix-blend-mode: multiply; }
  .story-hub .hero .anchor, .take-action .hero .anchor, .frontline .hero .anchor {
    text-align: left;
    position: absolute;
    display: inline-block;
    bottom: 20px;
    left: 0;
    top: auto;
    width: auto;
    z-index: 100;
    height: 60px;
    padding: 0 0 0 60px; }
    .story-hub .hero .anchor li, .take-action .hero .anchor li, .frontline .hero .anchor li {
      color: #F96664;
      height: 60px;
      line-height: 60px;
      padding: 0;
      display: block;
      position: relative;
      border-top: 1px dotted rgba(255, 255, 255, 0.2);
      font-size: 18px;
      display: inline-block; }
      @media screen and (min-width: 1200px) {
        .story-hub .hero .anchor li, .take-action .hero .anchor li, .frontline .hero .anchor li {
          padding: 0 20px;
          border-top: none; } }
      .story-hub .hero .anchor li:first-of-type, .take-action .hero .anchor li:first-of-type, .frontline .hero .anchor li:first-of-type {
        padding-left: 0; }
      .story-hub .hero .anchor li svg, .take-action .hero .anchor li svg, .frontline .hero .anchor li svg {
        position: absolute;
        height: 65%;
        width: 15px;
        top: 12px;
        right: -8px;
        opacity: 0.3;
        fill: #fff; }
      .story-hub .hero .anchor li a, .take-action .hero .anchor li a, .frontline .hero .anchor li a {
        color: #F96664;
        text-transform: uppercase;
        font-weight: 600;
        -webkit-transition: all 0.2s ease 0s;
        -moz-transition: all 0.2s ease 0s;
        -ms-transition: all 0.2s ease 0s;
        -o-transition: all 0.2s ease 0s; }
        .story-hub .hero .anchor li a:hover, .take-action .hero .anchor li a:hover, .frontline .hero .anchor li a:hover, .story-hub .hero .anchor li a:focus, .take-action .hero .anchor li a:focus, .frontline .hero .anchor li a:focus {
          color: #ee0000; }
    .story-hub .hero .anchor.fixed, .take-action .hero .anchor.fixed, .frontline .hero .anchor.fixed {
      position: fixed;
      top: 50px;
      width: 100%; }

.story-hub .section-heading, .take-action .section-heading, .frontline .section-heading {
  text-align: center; }

.story-hub h2, .take-action h2, .frontline h2 {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 28px; }
  @media screen and (min-width: 1200px) {
    .story-hub h2, .take-action h2, .frontline h2 {
      font-size: 34px; } }

.story-hub .overview, .take-action .overview, .frontline .overview {
  position: relative;
  padding: 30px 0 10px;
  margin: 60px 0 30px;
  text-align: center;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222; }
  @media screen and (min-width: 1200px) {
    .story-hub .overview, .take-action .overview, .frontline .overview {
      padding: 70px 0 70px; } }
  .story-hub .overview h2, .take-action .overview h2, .frontline .overview h2 {
    color: #222;
    text-transform: uppercase;
    font-weight: 100;
    background: white;
    display: inline-block;
    padding: 5px 0;
    -webkit-box-shadow: 10px 0 0 white, -10px 0 0 white;
            box-shadow: 10px 0 0 white, -10px 0 0 white;
    margin: 0 0 50px; }
    .story-hub .overview h2 span, .take-action .overview h2 span, .frontline .overview h2 span {
      font-weight: 600; }

.story-hub .btn.sml-btn, .take-action .btn.sml-btn, .frontline .btn.sml-btn, .story-hub .search-form .sml-btn#edit-submit, .search-form .story-hub .sml-btn#edit-submit, .take-action .search-form .sml-btn#edit-submit, .search-form .take-action .sml-btn#edit-submit, .frontline .search-form .sml-btn#edit-submit, .search-form .frontline .sml-btn#edit-submit {
  height: 42px;
  padding: 5px 15px; }

.story-hub .flex, .take-action .flex, .frontline .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  clear: both; }

.story-hub .background-lt, .take-action .background-lt, .frontline .background-lt {
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #222;
  background-size: cover;
  padding: 50px 0 60px;
  margin: 70px 0 0; }
  .story-hub .background-lt:after, .take-action .background-lt:after, .frontline .background-lt:after {
    content: "";
    display: table;
    clear: both; }
  .story-hub .background-lt .latest_feed, .take-action .background-lt .latest_feed, .frontline .background-lt .latest_feed {
    background: none; }

.take-action .cta-panel {
  margin-top: 50px; }

.take-action .hero {
  text-align: left;
  background-image: url("../img/med.jpg"); }
  .take-action .hero .intro {
    text-align: left;
    margin: 0 auto 30px;
    top: 0;
    max-width: 100%; }
  .take-action .hero:after {
    display: none; }
  .take-action .hero h1 {
    text-transform: none;
    color: white;
    background: #ee0000;
    -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
            box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000; }

.take-action .row:after {
  content: "";
  display: table;
  clear: both; }

@media screen and (min-width: 1200px) {
  .take-action .dark-background {
    margin-bottom: 60px; } }

.take-action .dark-background .btn, .take-action .dark-background .search-form #edit-submit, .search-form .take-action .dark-background #edit-submit {
  line-height: 2; }

.take-action .dark-background .btn-center {
  margin-top: 30px; }

.take-action .dark-background .btn-secondary {
  position: relative;
  top: 1px;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: 1px solid #ee0000; }
  .take-action .dark-background .btn-secondary:hover, .take-action .dark-background .btn-secondary:focus {
    border-color: #31a19a; }

.take-action .statistics {
  text-align: center; }
  .take-action .statistics img {
    display: block;
    width: 20%;
    margin: 0 auto 20px; }
  .take-action .statistics .stat {
    padding: 20px 0; }
  .take-action .statistics .btn, .take-action .statistics .search-form #edit-submit, .search-form .take-action .statistics #edit-submit {
    border: none;
    font-size: 22px;
    line-height: 1.2; }
    @media screen and (min-width: 1200px) {
      .take-action .statistics .btn, .take-action .statistics .search-form #edit-submit, .search-form .take-action .statistics #edit-submit {
        font-size: 28px; } }
    .take-action .statistics .btn svg, .take-action .statistics .search-form #edit-submit svg, .search-form .take-action .statistics #edit-submit svg {
      position: relative;
      top: -2px;
      fill: white;
      width: 20px;
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg); }
  .take-action .statistics .btn-secondary {
    border: 1px solid #31a19a;
    background: #31a19a;
    margin-right: 20px; }
  .take-action .statistics .new-voices .text_area h3, .take-action .statistics .new-voices .text_area .meta, .take-action .statistics .new-voices .text_area p {
    color: white; }

.take-action .intro {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 30px;
  position: relative;
  top: -10px; }

.take-action a {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s; }

.take-action .donation .clear {
  display: block; }

.take-action .donation a {
  clear: all;
  display: inline-block;
  font-size: 17px;
  color: white;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.5); }

.take-action .donation .btn, .take-action .donation .search-form #edit-submit, .search-form .take-action .donation #edit-submit {
  background: rgba(255, 255, 255, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.25);
  margin-bottom: 20px; }
  .take-action .donation .btn:hover, .take-action .donation .search-form #edit-submit:hover, .search-form .take-action .donation #edit-submit:hover, .take-action .donation .btn:focus, .take-action .donation .search-form #edit-submit:focus, .search-form .take-action .donation #edit-submit:focus {
    background: #31a19a;
    border-color: #31a19a; }

.take-action .overview .latest_feed {
  text-align: left;
  background: none; }
  .take-action .overview .latest_feed .text a {
    color: white; }
  .take-action .overview .latest_feed .text .meta {
    color: rgba(255, 255, 255, 0.7); }

.take-action .center-voice {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 15px; }
  .take-action .center-voice:after {
    content: "";
    display: table;
    clear: both; }
  .take-action .center-voice .new-voices:after {
    content: "";
    display: table;
    clear: both; }
  .take-action .center-voice .new-voices img {
    left: 0;
    right: 0;
    object-fit: cover;
    height: 220px;
    width: 100%;
    margin: 0; }
  .take-action .center-voice .new-voices h3 {
    color: #222; }
  .take-action .center-voice .new-voices .meta {
    color: rgba(34, 34, 34, 0.7); }
    .take-action .center-voice .new-voices .meta span:after {
      background: rgba(34, 34, 34, 0.2); }
  .take-action .center-voice .new-voices p {
    color: #222; }

.take-action .related-topics.dark {
  margin-top: 0;
  padding-top: 100px; }

.take-action .other-ways {
  text-align: center; }
  .take-action .other-ways h2 {
    font-size: 29px; }

.horizontal-listing:after {
  content: "";
  display: table;
  clear: both; }

.horizontal-listing img {
  float: left;
  width: 30%;
  object-fit: cover;
  height: 100px; }

.horizontal-listing .text {
  text-align: left;
  float: left;
  width: 60%;
  padding-left: 5%; }

.horizontal-listing h3 {
  color: white;
  font-size: 25px;
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s; }

.horizontal-listing p {
  color: white;
  font-size: 17px;
  margin-bottom: 0; }

.horizontal-listing svg {
  position: relative;
  top: -1px;
  width: 15px;
  fill: white;
  margin-left: 5px;
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s; }

.horizontal-listing li {
  margin-bottom: 30px; }
  .horizontal-listing li:after {
    content: "";
    display: table;
    clear: both; }
  .horizontal-listing li:last-of-type {
    margin-bottom: 0; }
  .horizontal-listing li:hover, .horizontal-listing li:focus {
    cursor: pointer; }
    .horizontal-listing li:hover h3, .horizontal-listing li:focus h3 {
      color: #ee0000; }
    .horizontal-listing li:hover svg, .horizontal-listing li:focus svg {
      fill: #ee0000; }

.background-feature {
  position: relative;
  background-image: url("../img/feature-hero.jpg");
  background-size: cover;
  background-position: center;
  padding: 150px 0;
  margin-top: 40px; }
  @media screen and (min-width: 1200px) {
    .background-feature {
      padding: 250px 0;
      margin-top: 70px; } }
  .background-feature:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: rgba(34, 34, 34, 0.6);
    mix-blend-mode: multiply; }
  .background-feature .container {
    position: relative;
    z-index: 1;
    max-width: 700px;
    text-align: center; }
  .background-feature h3 {
    color: white;
    font-size: 25px;
    margin-bottom: 30px; }
    @media screen and (min-width: 1200px) {
      .background-feature h3 {
        font-size: 40px; } }

.icon-text-container {
  padding: 20px 0 20px; }
  .icon-text-container:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 1200px) {
    .icon-text-container {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }

.icon-text {
  text-align: center;
  padding: 20px 30px;
  border: 1px solid transparent;
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s; }
  .icon-text svg {
    display: inline-block;
    max-width: 100px;
    fill: #ee0000;
    margin-bottom: 30px; }
  .icon-text p {
    max-width: 350px;
    font-size: 17px;
    margin: 0 auto; }
  .icon-text:hover, .icon-text:focus {
    border: 1px solid #ee0000;
    cursor: pointer; }

.small-link {
  margin: 30px 0 0; }
  .small-link a {
    color: #F96664; }
    .small-link a:hover, .small-link a:focus {
      color: #ee0000; }
      .small-link a:hover svg, .small-link a:focus svg {
        fill: #ee0000; }
  .small-link svg {
    position: relative;
    top: -2px;
    width: 10px;
    display: inline;
    margin-left: 5px;
    fill: #F96664;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s; }

.dark-background {
  padding: 30px 0 10px;
  margin: 0;
  text-align: center;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222;
  background-size: 100%; }
  @media screen and (min-width: 1200px) {
    .dark-background {
      padding: 70px 0 70px;
      margin-bottom: 30px; } }
  .dark-background .lead-in-text {
    -webkit-box-shadow: 10px 0 0 white, -10px 0 0 white;
            box-shadow: 10px 0 0 white, -10px 0 0 white;
    background: white;
    color: #222;
    padding-top: 5px;
    padding-bottom: 5px; }
    .dark-background .lead-in-text span {
      color: #222; }
  .dark-background .container {
    max-width: 1100px; }
  .dark-background p {
    color: white;
    text-align: left;
    max-width: 500px; }
  .dark-background h4 {
    color: white;
    text-align: left; }

.light-background {
  padding: 30px 0 10px;
  margin: 0;
  text-align: center;
  background: url("../img/tex-dark-full.jpg") no-repeat left top #222; }
  @media screen and (min-width: 1200px) {
    .light-background {
      padding: 70px 0 70px;
      margin-bottom: 30px; } }
  .light-background .latest_feed {
    background: none;
    text-align: left; }
    .light-background .latest_feed h2 {
      text-align: left; }

.light-background {
  background: url("../img/tex-grey-warm-lt.png") no-repeat left top #222;
  background-size: cover;
  padding: 50px 0 60px;
  margin: 70px 0 30px; }
  .light-background:after {
    content: "";
    display: table;
    clear: both; }

.frontline .hero {
  background-position: top;
  padding: 70px 0 50px;
  margin-bottom: 0; }
  @media screen and (min-width: 1200px) {
    .frontline .hero {
      padding: 150px 0 130px; } }

.frontline .dark-background h2 {
  display: inline-block;
  padding: 3px 0;
  margin: 0 0 30px; }

.frontline .dark-background .row:after {
  content: "";
  display: table;
  clear: both; }

.frontline .all-countries .regions {
  margin-bottom: 0; }
  .frontline .all-countries .regions h4 {
    font-size: 19px;
    color: white; }
  .frontline .all-countries .regions .meta {
    text-align: left;
    color: white;
    font-size: 15px; }
  .frontline .all-countries .regions ul {
    height: auto; }
  .frontline .all-countries .regions li {
    margin-bottom: 30px; }
    @media screen and (min-width: 1200px) {
      .frontline .all-countries .regions li:last-of-type {
        margin-bottom: 0; } }
    .frontline .all-countries .regions li:hover, .frontline .all-countries .regions li:focus {
      cursor: pointer; }
      .frontline .all-countries .regions li:hover h4, .frontline .all-countries .regions li:focus h4 {
        color: #ee0000; }

.frontline .light-background {
  margin-bottom: 0; }
  @media screen and (min-width: 1200px) {
    .frontline .light-background {
      padding-bottom: 80px; } }

.frontline .background-feature {
  margin-top: 0; }

.frontline .countries-section {
  position: relative;
  padding-bottom: 70px; }
  .frontline .countries-section:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../img/map-j.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.05; }
  .frontline .countries-section .section-heading {
    margin-bottom: 30px; }
  .frontline .countries-section p {
    max-width: 800px;
    padding: 0 15px;
    margin: 0 auto 30px; }

.msf-breadth {
  position: relative;
  padding: 140px 0; }
  .msf-breadth:after {
    content: '';
    position: absolute;
    top: 100px;
    left: 0;
    height: 100%;
    width: 100%;
    background-image: url("../img/map-j-white.png");
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.1; }
  .msf-breadth .block {
    display: block; }
  .msf-breadth .btn svg, .msf-breadth .search-form #edit-submit svg, .search-form .msf-breadth #edit-submit svg {
    position: relative;
    top: 0;
    display: inline;
    fill: white;
    width: 15px;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    margin-left: 10px; }
  .msf-breadth h1 {
    color: white;
    display: inline-block;
    margin-bottom: 100px; }
    .msf-breadth h1 span {
      display: inline; }
  .msf-breadth .breadcrumb a {
    color: white; }
    .msf-breadth .breadcrumb a svg {
      fill: white; }
  .msf-breadth .container {
    position: relative;
    z-index: 10;
    max-width: 1400px; }
    .msf-breadth .container:after {
      content: "";
      display: table;
      clear: both; }
  .msf-breadth .lead-in-text {
    margin-bottom: 10px; }
  .msf-breadth .intro {
    text-align: center;
    max-width: 100%;
    margin-bottom: 100px; }
  .msf-breadth .link .divider {
    display: none; }
    @media screen and (min-width: 1200px) {
      .msf-breadth .link .divider {
        display: block;
        position: absolute;
        right: 0;
        top: -10px;
        fill: rgba(255, 255, 255, 0.25);
        width: 50px; } }
  .msf-breadth .link li {
    position: relative;
    margin-bottom: 30px; }
    @media screen and (min-width: 1200px) {
      .msf-breadth .link li {
        margin-bottom: 0;
        float: left;
        width: 50%;
        text-align: center; } }
  .msf-breadth .link p {
    text-align: center;
    margin: 0 auto 30px; }
    .msf-breadth .link p span {
      font-weight: 600; }

.msf-values .hero {
  text-align: left;
  background-image: url("../img/med2.jpg");
  background-position: top;
  margin-bottom: 0; }
  @media screen and (min-width: 1200px) {
    .msf-values .hero {
      margin-bottom: 50px; } }
  .msf-values .hero .intro {
    max-width: 700px;
    margin: 5px 0 20px;
    text-align: left; }
  .msf-values .hero .breadcrumb a {
    color: white; }
  .msf-values .hero .breadcrumb svg {
    fill: white; }
  .msf-values .hero .main-page-title {
    padding-bottom: 20px; }

.msf-values .text-top {
  padding: 60px 0;
  text-align: center; }
  .msf-values .text-top h1 {
    color: white;
    background: #222;
    padding: 5px 15px;
    display: inline-block;
    font-weight: 300; }
    .msf-values .text-top h1 span {
      display: inline;
      font-weight: 600; }
  .msf-values .text-top .intro {
    max-width: 700px;
    margin: 0 auto;
    text-align: center; }

.msf-values .values-background {
  background: url("../img/tex-white.jpg") left top/100% no-repeat white; }

.msf-values .values {
  max-width: 900px;
  margin: 0 auto 20px; }
  @media screen and (min-width: 769px) {
    .msf-values .values {
      margin: 0 auto 50px; } }
  .msf-values .values .btn svg, .msf-values .values .search-form #edit-submit svg, .search-form .msf-values .values #edit-submit svg {
    width: 10px;
    fill: white;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    padding: 0;
    display: inline;
    float: right;
    margin-left: 10px;
    position: relative;
    top: 4px; }
  .msf-values .values li {
    position: relative;
    padding-bottom: 120px; }
    .msf-values .values li:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 769px) {
      .msf-values .values li {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; } }
    .msf-values .values li svg, .msf-values .values li img {
      padding: 50px;
      fill: #31a19a; }
      @media screen and (min-width: 769px) {
        .msf-values .values li svg, .msf-values .values li img {
          float: left;
          width: 40%;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center; } }
    .msf-values .values li img {
      padding: 20px; }
      @media screen and (min-width: 769px) {
        .msf-values .values li img {
          position: absolute;
          left: -20%;
          width: 50%;
          display: block;
          object-fit: cover;
          height: 300px; } }
    .msf-values .values li .text {
      padding: 0 20px; }
      @media screen and (min-width: 769px) {
        .msf-values .values li .text {
          float: left;
          width: 70%; } }
    .msf-values .values li h2 {
      margin-bottom: 20px;
      background: #222;
      padding: 5px 10px;
      color: white;
      display: inline-block;
      font-size: 26px;
      text-transform: uppercase;
      font-weight: 300; }
      .msf-values .values li h2 span {
        font-weight: 600; }
    .msf-values .values li p {
      margin-bottom: 20px; }
    @media screen and (min-width: 769px) {
      .msf-values .values li:nth-child(2n+2) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; }
        .msf-values .values li:nth-child(2n+2) img {
          right: -20%;
          left: auto; } }
    @media screen and (min-width: 769px) {
      .msf-values .values li.search-result {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -webkit-flex-direction: row-reverse !important;
            -ms-flex-direction: row-reverse !important;
                flex-direction: row-reverse !important; }
        .msf-values .values li.search-result img {
          right: auto;
          left: -20%; } }

@media screen and (min-width: 769px) {
  .events-page .rich-text {
    margin-top: 60vh; } }

.front .msf-breadth {
  text-align: center; }
  @media screen and (min-width: 481px) {
    .front .msf-breadth {
      padding: 50px 0 35px; } }
  @media screen and (min-width: 1200px) {
    .front .msf-breadth {
      padding: 50px 0 70px; } }
  @media screen and (min-width: 414px) {
    .front .msf-breadth {
      padding: 20px 0 0px; } }
  .front .msf-breadth:after {
    background-position: top; }
  .front .msf-breadth .lead-in-text {
    display: inline-block; }
    @media screen and (min-width: 769px) {
      .front .msf-breadth .lead-in-text {
        font-size: 40px; } }
  .front .msf-breadth .intro {
    margin-bottom: 50px; }
  .front .msf-breadth .link {
    margin-bottom: 70px; }
    .front .msf-breadth .link li {
      margin: 0 auto;
      float: none; }
  .front .msf-breadth .stat {
    padding-bottom: 20px; }
    .front .msf-breadth .stat p {
      text-align: center; }

.arrow-scroll {
  position: absolute;
  z-index: 1;
  left: 50%;
  bottom: -15px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 60px;
  height: 40px; }
  .arrow-scroll svg {
    position: absolute;
    left: 25%;
    top: 20%;
    -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
            transform: translateY(-50%) translateX(-50%);
    width: 20px;
    fill: white;
    -webkit-animation: down-fade 1.5s infinite;
            animation: down-fade 1.5s infinite;
    -webkit-animation-timing-function: cubic-bezier(0.625, 0.075, 0.11, 1.165);
            animation-timing-function: cubic-bezier(0.625, 0.075, 0.11, 1.165); }

@-webkit-keyframes down-fade {
  0% {
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 0; } }

@keyframes down-fade {
  0% {
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    opacity: 0; } }

.center-front {
  text-align: center; }
  .center-front .lead-in-text {
    z-index: 1; }

.latest_feed .feed .latest_feature.video .text_area {
  padding-top: 10px; }

#user-login {
  display: block;
  float: left;
  margin-top: 10%; }
  #user-login input {
    border: 1px solid #000000; }

.pointer {
  cursor: pointer; }

.krumo-footnote img {
  width: auto; }

.media-element-container {
  margin-bottom: 30px; }
  .media-element-container .file-image img {
    max-width: 100%;
    height: auto !important; }

.title-banner .field-type-image img {
  height: auto; }

#page-anchors li:last-child svg {
  display: none !important; }

.ctas div:nth-child(3) .divider {
  display: none; }

.region-under-content-level-2,
.region-under-content-level-1 {
  display: block;
  clear: both; }

.content .btn, .content .search-form #edit-submit, .search-form .content #edit-submit {
  height: auto; }

.content .copy_link .btn, .content .copy_link .search-form #edit-submit, .search-form .content .copy_link #edit-submit {
  height: 50px; }

p:empty {
  display: none; }

.embeddedContent {
  margin-bottom: 30px; }
  .embeddedContent iframe {
    display: table-cell !important; }

.media-element.file-wysiwyg-full-width {
  height: auto !important;
  max-width: 100%; }

@media screen and (min-width: 414px) {
  #sharebar .direct_link {
    margin-bottom: 15px; } }

@media screen and (min-width: 414px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns .share-btn {
    display: none; } }

@media screen and (min-width: 481px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns .share-btn {
    display: block; } }

@media screen and (min-width: 769px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns .share-btn {
    display: block; } }

@media screen and (min-width: 1200px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns .share-btn {
    display: block; } }

@media screen and (min-width: 1430px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns .share-btn {
    display: block; } }

@media screen and (min-width: 414px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns.fixed .share-btn {
    min-width: 190px;
    font-size: 13px;
    display: none; } }

@media screen and (min-width: 481px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns.fixed .share-btn {
    display: block; } }

@media screen and (min-width: 769px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns.fixed .share-btn {
    display: block; } }

@media screen and (min-width: 1200px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns.fixed .share-btn {
    display: block; } }

@media screen and (min-width: 1430px) {
  #block-bscms-common-blocks-bscms-cb-mainmenu .sticky-btns.fixed .share-btn {
    display: block; } }

.field-name-body {
  margin-top: 40px; }
  .field-name-body ul li {
    list-style: initial;
    padding-left: 5px;
    text-indent: 0px;
    margin-bottom: 5px;
    margin-left: 40px; }
  .field-name-body img {
    max-width: 100%;
    height: auto !important; }

#block-bscms-content-type-article-bscms-content-type-article {
  position: unset; }

ul {
  margin-bottom: 20px; }
  ul.tabs.primary {
    width: 100%;
    position: relative;
    clear: both;
    display: block;
    float: none;
    padding: 0px 0px 100px; }
  ul.tabs.primary li:not(.active) a {
    color: #231F20; }

.navbar-administration .msf_global.open {
  top: 38px; }

.navbar-administration.navbar-tray-open .msf_global.open {
  top: 78px; }

.node-type-page.template-no-image .site #block-system-main,
.node-type-article.template-no-image .site #block-system-main {
  padding: 50px 0 0; }
  @media screen and (min-width: 481px) {
    .node-type-page.template-no-image .site #block-system-main,
    .node-type-article.template-no-image .site #block-system-main {
      padding: 50px; } }
  @media screen and (min-width: 1200px) {
    .node-type-page.template-no-image .site #block-system-main,
    .node-type-article.template-no-image .site #block-system-main {
      padding: 90px 0 0; } }
  @media screen and (min-width: 1430px) {
    .node-type-page.template-no-image .site #block-system-main,
    .node-type-article.template-no-image .site #block-system-main {
      padding: 90px 0 0; } }

.template-index-page.template-no-image.template-listing .site #block-system-main .content .container {
  clear: both; }

.template-no-image .site #block-system-main .content .container {
  display: block; }

.image-center {
  margin: 0 auto; }

.image-full-width {
  width: 100% !important;
  height: auto !important; }

.cke_editable ul li {
  padding-left: 40px;
  text-indent: -15px;
  list-style: inside; }

.cke_editable .image-center {
  margin: 0 auto; }

.cke_editable .image-full-width {
  width: 100% !important;
  height: auto !important; }

.stats ul li {
  list-style: none;
  padding-left: 0;
  text-indent: 0;
  margin-left: 0; }

.margin-top-30 {
  margin-top: 30px; }

.search-form {
  margin-top: 5em; }
  .search-form input#edit-keys {
    border: 1px solid; }

.search-result {
  display: block;
  float: left; }
  .search-result svg {
    width: 10px;
    fill: white;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    padding: 0;
    display: inline;
    float: right;
    margin-left: 10px;
    position: relative;
    top: 4px; }
  .search-result h2 {
    margin-bottom: 20px; }
  .search-result img {
    display: none; }
    @media screen and (min-width: 1200px) {
      .search-result img {
        display: block; } }
    @media screen and (min-width: 1430px) {
      .search-result img {
        display: block; } }
  @media screen and (min-width: 1200px) {
    .search-result {
      display: block; }
      .search-result h2 {
        margin-top: 0;
        padding-bottom: 20px;
        margin-bottom: 20px; } }
  @media screen and (min-width: 1430px) {
    .search-result {
      display: block; }
      .search-result h2 {
        margin-top: 0;
        padding-bottom: 20px;
        margin-bottom: 20px; } }

.crisis-responses .countries-list a {
  color: white; }

.pager li {
  display: inline-block !important; }

.region-bigphoto {
  padding: 50px 0 0;
  height: -webkit-calc(65vh);
  height: calc(65vh); }
  @media screen and (min-width: 769px) {
    .region-bigphoto {
      height: -webkit-calc(90vh);
      height: calc(90vh); } }
  .region-bigphoto .hero {
    height: -webkit-calc(65vh);
    height: calc(65vh); }
    @media screen and (min-width: 769px) {
      .region-bigphoto .hero {
        height: -webkit-calc(90vh);
        height: calc(90vh); } }

.countries-landing-page .region-bigphoto {
  height: auto; }

.countries-landing-page .hero {
  background-size: cover;
  height: auto !important; }
  .countries-landing-page .hero .container {
    top: -10vh; }

.section-heading.center {
  text-align: center; }

#block-bscms-content-type-index-bscms-ct-index-all-roles .voices {
  float: left; }

#block-bscms-content-type-index-bscms-ct-index-all-roles .breadcrumb li a {
  color: #231F20 !important; }

.anchorrole {
  clear: both;
  float: left;
  display: block !important; }

#block-bscms-content-type-index-bscms-ct-index-all-roles {
  display: block;
  float: left;
  z-index: 9; }

[v-cloak] {
  display: none; }

.template-reqs .region-content {
  padding: 90px 0 0; }

.field-name-field-nmetadata-caption {
  display: none; }

.media-image-wrapper br {
  display: none; }

.media-image-wrapper .field-name-field-metadata-copyright {
  font-size: 12px; }

#page-menu {
  margin-top: 50px; }
  @media screen and (min-width: 1430px) {
    #page-menu {
      margin-top: 90px; } }
  @media screen and (min-width: 1430px) {
    #page-menu {
      margin-top: 90px; } }

.scrolled {
  overflow: scroll;
  height: 45vh;
  -ms-overflow-style: none;
  overflow: -moz-scrollbars-none; }

.scrolled::-webkit-scrollbar {
  display: none; }

.countries-landing-page #searchcountries .hidden.active, .countries-landing-page #searchcountries .search .active.not-here, .countries-landing-page .search #searchcountries .active.not-here {
  -ms-overflow-style: none;
  overflow: -moz-scrollbars-none; }

.countries-landing-page #searchcountries .hidden.active::-webkit-scrollbar, .countries-landing-page #searchcountries .search .active.not-here::-webkit-scrollbar, .countries-landing-page .search #searchcountries .active.not-here::-webkit-scrollbar {
  display: none; }

.countries-landing-page #searchcountries a {
  display: block; }

#facts-node ul {
  overflow: hidden; }

#facts-node .paging a {
  cursor: pointer; }

#query {
  clear: both;
  margin: 20px auto;
  display: block;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background: rgba(34, 34, 34, 0.25);
  height: 40px;
  padding: 0;
  text-align: center;
  width: 50%;
  font-size: 20px;
  color: white; }
  @media screen and (min-width: 1430px) {
    #query {
      width: 30%; } }
  @media screen and (min-width: 1200px) {
    #query {
      width: 30%; } }

.resultsfound {
  color: white; }

.page-vuesearch .hero {
  background: url("../img/listing.jpg");
  background-size: cover; }

.page-vuesearch .paging {
  cursor: pointer; }

#main-header ul.primary_nav {
  margin-bottom: 0; }

/** Fix menu getting into blogpost image **/
.is-blogpost .story-person {
  display: none; }

@media screen and (min-width: 1200px) {
  .is-blogpost .meta-main-blog {
    left: 90px; }
  .is-blogpost .story-person {
    display: block; } }

@media screen and (min-width: 1200px) {
  .is-blogpost .meta-main-blog {
    left: 90px; }
  .is-blogpost .story-person {
    display: block; } }

/** Image copyright **/
.media-element-container.media-default {
  position: relative; }
  .media-element-container.media-default br {
    display: none; }
  .media-element-container.media-default .field-name-field-metadata-mediatype,
  .media-element-container.media-default .field-name-field-metadata-caption,
  .media-element-container.media-default .field-name-field-metadata-artist,
  .media-element-container.media-default .field-name-field-metadata-artistshortid,
  .media-element-container.media-default .field-name-field-metadata-maxwidth,
  .media-element-container.media-default .field-name-field-metadata-maxheight,
  .media-element-container.media-default .field-name-field-metadata-ost,
  .media-element-container.media-default .field-name-field-metadata-width,
  .media-element-container.media-default .field-name-field-metadata-height,
  .media-element-container.media-default .field-name-field-metadata-title,
  .media-element-container.media-default .field-name-field-metadata-systemidentifier,
  .media-element-container.media-default .field-name-field-metadata-mediadate,
  .media-element-container.media-default .field-name-field-metadata-country {
    display: none; }
  .media-element-container.media-default .field-name-field-metadata-copyright {
    position: relative;
    bottom: 35px;
    color: white;
    right: 0;
    font-size: 1rem;
    text-align: right;
    padding-right: 10px; }
    .media-element-container.media-default .field-name-field-metadata-copyright .field-items {
      display: inline-block; }
  .media-element-container.media-default .field-name-field-metadata-caption {
    position: relative;
    top: -30px; }

/*** Fix hero line-height **/
.hero h2 {
  line-height: 2.8rem; }

/** Node unpublished **/
.node-unpublished .rich-text {
  background-color: #fff4f4; }
  .node-unpublished .rich-text:before {
    background-color: #fff4f4; }

/** Home stats **/
#ctahome .inline-stats.stats-big li {
  width: 100%;
  height: auto; }
  @media screen and (min-width: 1200px) {
    #ctahome .inline-stats.stats-big li {
      width: 33.33%; } }
  @media screen and (min-width: 1430px) {
    #ctahome .inline-stats.stats-big li {
      width: 33.33%; } }

/** Sliding popup for eu cookie */
#sliding-popup .popup-content #popup-text p {
  font-size: 1.1rem !important; }

#sliding-popup .popup-content button {
  font-size: 0.8rem !important; }

#block-locale-language {
  clear: both; }

.hidden-label {
  display: none; }

.page-node-2526 .view-node-content-events-index {
  padding-left: 30px;
  padding-right: 30px; }
  .page-node-2526 .view-node-content-events-index .views-view-grid {
    width: 100%; }
  .page-node-2526 .view-node-content-events-index .views-field-title .field-content a {
    background-color: #ee0000;
    display: inline;
    color: #fff;
    padding: 5px 0;
    -webkit-box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
            box-shadow: 10px 0 0 #ee0000, -10px 0 0 #ee0000;
    line-height: 1.6;
    position: relative;
    left: 10px;
    font-size: 28px;
    font-weight: 700; }
  .page-node-2526 .view-node-content-events-index .views-field-title .field-content svg {
    width: 20px;
    fill: white;
    display: inline;
    margin-left: 5px;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg); }
  .page-node-2526 .view-node-content-events-index .views-field-title .field-content a:hover {
    background-color: #31a19a;
    -webkit-box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a;
            box-shadow: 10px 0 0 #31a19a, -10px 0 0 #31a19a; }
  .page-node-2526 .view-node-content-events-index .views-field.body .field-content p {
    font-size: 18px;
    font-weight: 500; }
  .page-node-2526 .view-node-content-events-index img {
    width: 100%;
    height: auto; }
  .page-node-2526 .view-node-content-events-index td {
    vertical-align: top;
    width: 20em;
    padding-left: 1em;
    padding-right: 1em; }
  @media (max-width: 1023px) {
    .page-node-2526 .view-node-content-events-index tr, .page-node-2526 .view-node-content-events-index td {
      display: block; } }

.page-node-2521 .content, .page-node-2566 .content, .page-node-5006 .content, .page-node-5011 .content {
  background-color: #ffffff; }
  .page-node-2521 .content .field-name-field-image .field-item, .page-node-2566 .content .field-name-field-image .field-item, .page-node-5006 .content .field-name-field-image .field-item, .page-node-5011 .content .field-name-field-image .field-item {
    overflow: hidden;
    background-color: white;
    max-height: 300px; }
    @media (min-width: 700px) {
      .page-node-2521 .content .field-name-field-image .field-item, .page-node-2566 .content .field-name-field-image .field-item, .page-node-5006 .content .field-name-field-image .field-item, .page-node-5011 .content .field-name-field-image .field-item {
        max-height: 400px; } }
    @media (min-width: 1023px) {
      .page-node-2521 .content .field-name-field-image .field-item, .page-node-2566 .content .field-name-field-image .field-item, .page-node-5006 .content .field-name-field-image .field-item, .page-node-5011 .content .field-name-field-image .field-item {
        max-height: 500px; } }
    @media (min-width: 4000px) {
      .page-node-2521 .content .field-name-field-image .field-item, .page-node-2566 .content .field-name-field-image .field-item, .page-node-5006 .content .field-name-field-image .field-item, .page-node-5011 .content .field-name-field-image .field-item {
        max-height: 1100px; } }

.page-node-2521 .view-index-related-stories, .page-node-2566 .view-index-related-stories, .page-node-5006 .view-index-related-stories, .page-node-5011 .view-index-related-stories {
  padding: 0 20px 0 20px; }
  .page-node-2521 .view-index-related-stories .views-row-odd, .page-node-2566 .view-index-related-stories .views-row-odd, .page-node-5006 .view-index-related-stories .views-row-odd, .page-node-5011 .view-index-related-stories .views-row-odd {
    width: 47.5%;
    float: left;
    background: rgba(234, 236, 230, 0.5);
    margin-bottom: 30px; }
    @media (max-width: 1024px) {
      .page-node-2521 .view-index-related-stories .views-row-odd, .page-node-2566 .view-index-related-stories .views-row-odd, .page-node-5006 .view-index-related-stories .views-row-odd, .page-node-5011 .view-index-related-stories .views-row-odd {
        background-color: white; } }
  .page-node-2521 .view-index-related-stories .views-row-even, .page-node-2566 .view-index-related-stories .views-row-even, .page-node-5006 .view-index-related-stories .views-row-even, .page-node-5011 .view-index-related-stories .views-row-even {
    width: 47.5%;
    float: right;
    margin-right: 0;
    margin-left: 5%;
    background: rgba(234, 236, 230, 0.5);
    margin-bottom: 30px; }
    @media (max-width: 1024px) {
      .page-node-2521 .view-index-related-stories .views-row-even, .page-node-2566 .view-index-related-stories .views-row-even, .page-node-5006 .view-index-related-stories .views-row-even, .page-node-5011 .view-index-related-stories .views-row-even {
        background-color: white; } }
  .page-node-2521 .view-index-related-stories .view-stories-left-wrap, .page-node-2566 .view-index-related-stories .view-stories-left-wrap, .page-node-5006 .view-index-related-stories .view-stories-left-wrap, .page-node-5011 .view-index-related-stories .view-stories-left-wrap {
    float: none;
    margin-right: 4%;
    overflow: hidden;
    max-width: 100%;
    width: 100%;
    position: relative; }
    @media (min-width: 479px) {
      .page-node-2521 .view-index-related-stories .view-stories-left-wrap, .page-node-2566 .view-index-related-stories .view-stories-left-wrap, .page-node-5006 .view-index-related-stories .view-stories-left-wrap, .page-node-5011 .view-index-related-stories .view-stories-left-wrap {
        float: left;
        margin-right: 4%;
        overflow: hidden;
        max-width: 52%;
        width: auto;
        position: relative; } }
  .page-node-2521 .view-index-related-stories .view-stories-right-wrap, .page-node-2566 .view-index-related-stories .view-stories-right-wrap, .page-node-5006 .view-index-related-stories .view-stories-right-wrap, .page-node-5011 .view-index-related-stories .view-stories-right-wrap {
    overflow: hidden; }
  .page-node-2521 .view-index-related-stories .views-field-title, .page-node-2566 .view-index-related-stories .views-field-title, .page-node-5006 .view-index-related-stories .views-field-title, .page-node-5011 .view-index-related-stories .views-field-title {
    padding-top: 10px; }
    .page-node-2521 .view-index-related-stories .views-field-title .field-content a, .page-node-2566 .view-index-related-stories .views-field-title .field-content a, .page-node-5006 .view-index-related-stories .views-field-title .field-content a, .page-node-5011 .view-index-related-stories .views-field-title .field-content a {
      color: #231F20;
      font-weight: 700; }
  .page-node-2521 .view-index-related-stories .views-field-created .field-content, .page-node-2566 .view-index-related-stories .views-field-created .field-content, .page-node-5006 .view-index-related-stories .views-field-created .field-content, .page-node-5011 .view-index-related-stories .views-field-created .field-content {
    margin-right: 10px;
    font-size: 12px; }
  .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content,
  .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content,
  .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content,
  .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content,
  .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content {
    padding: 20px;
    padding-top: 9px;
    padding-left: 25px;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    margin: 15px 0 0;
    font-size: 12px;
    text-transform: uppercase;
    border: 1px dotted #31a19a;
    display: inline-block;
    height: 28px;
    position: relative; }
  .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content, .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content, .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content, .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content {
    height: auto;
    padding-bottom: 9px;
    color: #31a19a; }
  .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content {
    height: auto;
    padding-bottom: 9px;
    color: #31a19a; }
  .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content svg, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content svg, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content svg, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content svg {
    width: 16px;
    height: 16px;
    position: absolute;
    left: 3px;
    top: 7px;
    fill: #31a19a;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content a,
  .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content a, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content a,
  .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content a, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content a,
  .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content a, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content a,
  .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content a {
    color: #31a19a; }
  .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content:hover,
  .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content:hover, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content:hover,
  .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content:hover, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content:hover,
  .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content:hover, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content:hover,
  .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content:hover {
    background: #31a19a;
    color: white;
    border: 1px solid #31a19a; }
    .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content:hover a,
    .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content:hover a, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content:hover a,
    .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content:hover a, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content:hover a,
    .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content:hover a, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content:hover a,
    .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content:hover a {
      color: white; }
    .page-node-2521 .view-index-related-stories .views-field-field-contry-region .field-content:hover svg,
    .page-node-2521 .view-index-related-stories .views-field-field-issues .field-content:hover svg, .page-node-2566 .view-index-related-stories .views-field-field-contry-region .field-content:hover svg,
    .page-node-2566 .view-index-related-stories .views-field-field-issues .field-content:hover svg, .page-node-5006 .view-index-related-stories .views-field-field-contry-region .field-content:hover svg,
    .page-node-5006 .view-index-related-stories .views-field-field-issues .field-content:hover svg, .page-node-5011 .view-index-related-stories .views-field-field-contry-region .field-content:hover svg,
    .page-node-5011 .view-index-related-stories .views-field-field-issues .field-content:hover svg {
      fill: white; }
  .page-node-2521 .view-index-related-stories .stories-image svg, .page-node-2566 .view-index-related-stories .stories-image svg, .page-node-5006 .view-index-related-stories .stories-image svg, .page-node-5011 .view-index-related-stories .stories-image svg {
    fill: #fff;
    width: 20px;
    height: 20px;
    position: relative;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .page-node-2521 .view-index-related-stories .stories-image .svg-wrap, .page-node-2566 .view-index-related-stories .stories-image .svg-wrap, .page-node-5006 .view-index-related-stories .stories-image .svg-wrap, .page-node-5011 .view-index-related-stories .stories-image .svg-wrap {
    display: inline-block;
    border: none;
    font-family: "PT Sans",sans-serif;
    text-transform: uppercase;
    background-color: #ee0000;
    color: #fff;
    padding: 15px 20px;
    position: absolute;
    height: 50px;
    font-size: 16px;
    font-weight: 700;
    bottom: 0; }
  .page-node-2521 .view-index-related-stories .stories-image .svg-wrap .type, .page-node-2566 .view-index-related-stories .stories-image .svg-wrap .type, .page-node-5006 .view-index-related-stories .stories-image .svg-wrap .type, .page-node-5011 .view-index-related-stories .stories-image .svg-wrap .type {
    height: 50px;
    background-color: #ee0000;
    position: absolute;
    top: 0;
    left: -50px;
    color: #fff;
    text-transform: uppercase;
    font-size: 14px;
    line-height: 50px;
    padding: 0 10px 0 0;
    width: auto;
    z-index: 1;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  @media (max-width: 479px) {
    .page-node-2521 .view-index-related-stories .stories-image img, .page-node-2566 .view-index-related-stories .stories-image img, .page-node-5006 .view-index-related-stories .stories-image img, .page-node-5011 .view-index-related-stories .stories-image img {
      width: 100%;
      height: auto; } }
  @media (min-width: 480px) {
    .page-node-2521 .view-index-related-stories .stories-image img, .page-node-2566 .view-index-related-stories .stories-image img, .page-node-5006 .view-index-related-stories .stories-image img, .page-node-5011 .view-index-related-stories .stories-image img {
      width: auto; } }
  @media (max-width: 1023px) {
    .page-node-2521 .view-index-related-stories .views-row-odd, .page-node-2521 .view-index-related-stories .views-row-even, .page-node-2566 .view-index-related-stories .views-row-odd, .page-node-2566 .view-index-related-stories .views-row-even, .page-node-5006 .view-index-related-stories .views-row-odd, .page-node-5006 .view-index-related-stories .views-row-even, .page-node-5011 .view-index-related-stories .views-row-odd, .page-node-5011 .view-index-related-stories .views-row-even {
      width: 100%; } }
  .page-node-2521 .view-index-related-stories .views-row-odd:hover .svg-wrap .type,
  .page-node-2521 .view-index-related-stories .views-row-even:hover .svg-wrap .type, .page-node-2566 .view-index-related-stories .views-row-odd:hover .svg-wrap .type,
  .page-node-2566 .view-index-related-stories .views-row-even:hover .svg-wrap .type, .page-node-5006 .view-index-related-stories .views-row-odd:hover .svg-wrap .type,
  .page-node-5006 .view-index-related-stories .views-row-even:hover .svg-wrap .type, .page-node-5011 .view-index-related-stories .views-row-odd:hover .svg-wrap .type,
  .page-node-5011 .view-index-related-stories .views-row-even:hover .svg-wrap .type {
    left: 50px; }
  .page-node-2521 .view-index-related-stories .views-row-odd:hover .views-field-title a,
  .page-node-2521 .view-index-related-stories .views-row-even:hover .views-field-title a, .page-node-2566 .view-index-related-stories .views-row-odd:hover .views-field-title a,
  .page-node-2566 .view-index-related-stories .views-row-even:hover .views-field-title a, .page-node-5006 .view-index-related-stories .views-row-odd:hover .views-field-title a,
  .page-node-5006 .view-index-related-stories .views-row-even:hover .views-field-title a, .page-node-5011 .view-index-related-stories .views-row-odd:hover .views-field-title a,
  .page-node-5011 .view-index-related-stories .views-row-even:hover .views-field-title a {
    color: #ee0000; }

.language-toggle .language-switcher-locale-url,
.m-language-toggle .language-switcher-locale-url {
  margin: 0; }

.language-toggle li,
.m-language-toggle li {
  display: inline-block;
  vertical-align: top; }
  .language-toggle li:nth-of-type(1):after,
  .m-language-toggle li:nth-of-type(1):after {
    content: ' \002f ';
    display: inline-block;
    padding: 0 15px 0 20px;
    border: 0; }
  .language-toggle li a,
  .m-language-toggle li a {
    display: inline-block;
    border-bottom: none !important;
    font-weight: 300; }
    .language-toggle li a:hover, .language-toggle li a:focus,
    .m-language-toggle li a:hover,
    .m-language-toggle li a:focus {
      text-decoration: underline; }
  .language-toggle li.active a,
  .m-language-toggle li.active a {
    font-weight: 700;
    text-decoration: underline; }

.m-language-toggle {
  text-align: center;
  border-bottom: 1px dotted rgba(35, 31, 32, 0.2); }

@media (max-width: 1199px) {
  .language-toggle {
    display: none !important; } }

@media (min-width: 1023px) {
  .language-toggle {
    margin-right: 20px; }
    .language-toggle li:nth-of-type(1):after {
      position: relative;
      z-index: 32;
      padding: 3px; }
    .language-toggle a {
      height: 90px;
      line-height: 90px;
      font-size: 16px;
      display: block;
      padding: 0;
      z-index: 32;
      position: relative;
      color: #000; }
      .language-toggle a:hover, .language-toggle a:focus {
        color: #000; } }

.fixed-scroll {
  margin-top: -20px; }

.social .label {
  font-size: 16px;
  font-weight: 700; }

.fb {
  color: #3b5998; }

.tw {
  color: #55acee; }

.li {
  color: #007bb5; }

.go {
  color: #dd4b39; }

.em {
  color: #31a19a; }

.tu {
  color: #32506d; }

.sn {
  color: #ff6600; }

.inst {
  color: #e95950; }

.node-type-webform .webform-client-form {
  margin-top: 60px; }

.node-type-webform .node-webform .webform-progressbar-outer span:nth-child(2) {
  display: none; }

.node-type-webform .node-webform .webform-component-markup {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media screen and (min-width: 1200px) {
    .node-type-webform .node-webform .webform-component-markup {
      padding: 0 90px; } }
  .node-type-webform .node-webform .webform-component-markup .media-element {
    height: auto;
    width: 100% !important; }
  .node-type-webform .node-webform .webform-component-markup p, .node-type-webform .node-webform .webform-component-markup h2, .node-type-webform .node-webform .webform-component-markup h4, .node-type-webform .node-webform .webform-component-markup h3, .node-type-webform .node-webform .webform-component-markup ul {
    padding: 20px;
    max-width: 96%;
    margin: 0 auto; }
    @media screen and (min-width: 481px) {
      .node-type-webform .node-webform .webform-component-markup p, .node-type-webform .node-webform .webform-component-markup h2, .node-type-webform .node-webform .webform-component-markup h4, .node-type-webform .node-webform .webform-component-markup h3, .node-type-webform .node-webform .webform-component-markup ul {
        max-width: 100%; } }
    @media screen and (min-width: 1430px) {
      .node-type-webform .node-webform .webform-component-markup p, .node-type-webform .node-webform .webform-component-markup h2, .node-type-webform .node-webform .webform-component-markup h4, .node-type-webform .node-webform .webform-component-markup h3, .node-type-webform .node-webform .webform-component-markup ul {
        max-width: 1295px; } }
  .node-type-webform .node-webform .webform-component-markup iframe {
    width: 100%; }
    @media screen and (min-width: 481px) {
      .node-type-webform .node-webform .webform-component-markup iframe {
        min-height: 450px; } }
    @media screen and (min-width: 769px) {
      .node-type-webform .node-webform .webform-component-markup iframe {
        min-width: 560px; } }
    @media screen and (min-width: 1200px) {
      .node-type-webform .node-webform .webform-component-markup iframe {
        min-height: 625px; } }

.node-type-webform .node-webform .webform-progressbar {
  margin-top: 97px;
  margin-bottom: 120px; }

.node-type-webform .node-webform .webform-component-radios, .node-type-webform .node-webform .webform-component-textfield, .node-type-webform .node-webform .webform-component-email, .node-type-webform .node-webform .webform-component-select, .node-type-webform .node-webform .form-actions,
.node-type-webform .node-webform .webform-component-checkboxes, .node-type-webform .node-webform .webform-component-fieldset, .node-type-webform .node-webform .webform-component-date, .node-type-webform .node-webform .webform-component-time, .node-type-webform .node-webform .webform-component-textarea {
  padding: 20px; }
  @media screen and (min-width: 769px) {
    .node-type-webform .node-webform .webform-component-radios, .node-type-webform .node-webform .webform-component-textfield, .node-type-webform .node-webform .webform-component-email, .node-type-webform .node-webform .webform-component-select, .node-type-webform .node-webform .form-actions,
    .node-type-webform .node-webform .webform-component-checkboxes, .node-type-webform .node-webform .webform-component-fieldset, .node-type-webform .node-webform .webform-component-date, .node-type-webform .node-webform .webform-component-time, .node-type-webform .node-webform .webform-component-textarea {
      max-width: 50%;
      margin: 0 auto;
      background-color: #F4F3F2; } }
  .node-type-webform .node-webform .webform-component-radios .form-text, .node-type-webform .node-webform .webform-component-radios .form-select, .node-type-webform .node-webform .webform-component-radios .webform-submit, .node-type-webform .node-webform .webform-component-textfield .form-text, .node-type-webform .node-webform .webform-component-textfield .form-select, .node-type-webform .node-webform .webform-component-textfield .webform-submit, .node-type-webform .node-webform .webform-component-email .form-text, .node-type-webform .node-webform .webform-component-email .form-select, .node-type-webform .node-webform .webform-component-email .webform-submit, .node-type-webform .node-webform .webform-component-select .form-text, .node-type-webform .node-webform .webform-component-select .form-select, .node-type-webform .node-webform .webform-component-select .webform-submit, .node-type-webform .node-webform .form-actions .form-text, .node-type-webform .node-webform .form-actions .form-select, .node-type-webform .node-webform .form-actions .webform-submit,
  .node-type-webform .node-webform .webform-component-checkboxes .form-text,
  .node-type-webform .node-webform .webform-component-checkboxes .form-select,
  .node-type-webform .node-webform .webform-component-checkboxes .webform-submit, .node-type-webform .node-webform .webform-component-fieldset .form-text, .node-type-webform .node-webform .webform-component-fieldset .form-select, .node-type-webform .node-webform .webform-component-fieldset .webform-submit, .node-type-webform .node-webform .webform-component-date .form-text, .node-type-webform .node-webform .webform-component-date .form-select, .node-type-webform .node-webform .webform-component-date .webform-submit, .node-type-webform .node-webform .webform-component-time .form-text, .node-type-webform .node-webform .webform-component-time .form-select, .node-type-webform .node-webform .webform-component-time .webform-submit, .node-type-webform .node-webform .webform-component-textarea .form-text, .node-type-webform .node-webform .webform-component-textarea .form-select, .node-type-webform .node-webform .webform-component-textarea .webform-submit {
    border: 3px solid #e2e2e2;
    height: 40px;
    width: 100%; }
  .node-type-webform .node-webform .webform-component-radios .form-checkbox, .node-type-webform .node-webform .webform-component-textfield .form-checkbox, .node-type-webform .node-webform .webform-component-email .form-checkbox, .node-type-webform .node-webform .webform-component-select .form-checkbox, .node-type-webform .node-webform .form-actions .form-checkbox,
  .node-type-webform .node-webform .webform-component-checkboxes .form-checkbox, .node-type-webform .node-webform .webform-component-fieldset .form-checkbox, .node-type-webform .node-webform .webform-component-date .form-checkbox, .node-type-webform .node-webform .webform-component-time .form-checkbox, .node-type-webform .node-webform .webform-component-textarea .form-checkbox {
    height: 45px;
    width: inherit; }
  .node-type-webform .node-webform .webform-component-radios .form-select, .node-type-webform .node-webform .webform-component-textfield .form-select, .node-type-webform .node-webform .webform-component-email .form-select, .node-type-webform .node-webform .webform-component-select .form-select, .node-type-webform .node-webform .form-actions .form-select,
  .node-type-webform .node-webform .webform-component-checkboxes .form-select, .node-type-webform .node-webform .webform-component-fieldset .form-select, .node-type-webform .node-webform .webform-component-date .form-select, .node-type-webform .node-webform .webform-component-time .form-select, .node-type-webform .node-webform .webform-component-textarea .form-select {
    height: auto; }
  .node-type-webform .node-webform .webform-component-radios .form-radio, .node-type-webform .node-webform .webform-component-textfield .form-radio, .node-type-webform .node-webform .webform-component-email .form-radio, .node-type-webform .node-webform .webform-component-select .form-radio, .node-type-webform .node-webform .form-actions .form-radio,
  .node-type-webform .node-webform .webform-component-checkboxes .form-radio, .node-type-webform .node-webform .webform-component-fieldset .form-radio, .node-type-webform .node-webform .webform-component-date .form-radio, .node-type-webform .node-webform .webform-component-time .form-radio, .node-type-webform .node-webform .webform-component-textarea .form-radio {
    width: inherit; }
  .node-type-webform .node-webform .webform-component-radios .webform-calendar, .node-type-webform .node-webform .webform-component-textfield .webform-calendar, .node-type-webform .node-webform .webform-component-email .webform-calendar, .node-type-webform .node-webform .webform-component-select .webform-calendar, .node-type-webform .node-webform .form-actions .webform-calendar,
  .node-type-webform .node-webform .webform-component-checkboxes .webform-calendar, .node-type-webform .node-webform .webform-component-fieldset .webform-calendar, .node-type-webform .node-webform .webform-component-date .webform-calendar, .node-type-webform .node-webform .webform-component-time .webform-calendar, .node-type-webform .node-webform .webform-component-textarea .webform-calendar {
    width: inherit;
    text-align: right; }
  .node-type-webform .node-webform .webform-component-radios .webform-submit, .node-type-webform .node-webform .webform-component-radios .form-submit, .node-type-webform .node-webform .webform-component-textfield .webform-submit, .node-type-webform .node-webform .webform-component-textfield .form-submit, .node-type-webform .node-webform .webform-component-email .webform-submit, .node-type-webform .node-webform .webform-component-email .form-submit, .node-type-webform .node-webform .webform-component-select .webform-submit, .node-type-webform .node-webform .webform-component-select .form-submit, .node-type-webform .node-webform .form-actions .webform-submit, .node-type-webform .node-webform .form-actions .form-submit,
  .node-type-webform .node-webform .webform-component-checkboxes .webform-submit,
  .node-type-webform .node-webform .webform-component-checkboxes .form-submit, .node-type-webform .node-webform .webform-component-fieldset .webform-submit, .node-type-webform .node-webform .webform-component-fieldset .form-submit, .node-type-webform .node-webform .webform-component-date .webform-submit, .node-type-webform .node-webform .webform-component-date .form-submit, .node-type-webform .node-webform .webform-component-time .webform-submit, .node-type-webform .node-webform .webform-component-time .form-submit, .node-type-webform .node-webform .webform-component-textarea .webform-submit, .node-type-webform .node-webform .webform-component-textarea .form-submit {
    border: 1px solid #e2e2e2;
    background-color: #c9241e;
    color: white;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
    .node-type-webform .node-webform .webform-component-radios .webform-submit:hover, .node-type-webform .node-webform .webform-component-radios .form-submit:hover, .node-type-webform .node-webform .webform-component-textfield .webform-submit:hover, .node-type-webform .node-webform .webform-component-textfield .form-submit:hover, .node-type-webform .node-webform .webform-component-email .webform-submit:hover, .node-type-webform .node-webform .webform-component-email .form-submit:hover, .node-type-webform .node-webform .webform-component-select .webform-submit:hover, .node-type-webform .node-webform .webform-component-select .form-submit:hover, .node-type-webform .node-webform .form-actions .webform-submit:hover, .node-type-webform .node-webform .form-actions .form-submit:hover,
    .node-type-webform .node-webform .webform-component-checkboxes .webform-submit:hover,
    .node-type-webform .node-webform .webform-component-checkboxes .form-submit:hover, .node-type-webform .node-webform .webform-component-fieldset .webform-submit:hover, .node-type-webform .node-webform .webform-component-fieldset .form-submit:hover, .node-type-webform .node-webform .webform-component-date .webform-submit:hover, .node-type-webform .node-webform .webform-component-date .form-submit:hover, .node-type-webform .node-webform .webform-component-time .webform-submit:hover, .node-type-webform .node-webform .webform-component-time .form-submit:hover, .node-type-webform .node-webform .webform-component-textarea .webform-submit:hover, .node-type-webform .node-webform .webform-component-textarea .form-submit:hover {
      background-color: #31a19a; }

.node-type-webform .node-webform .fieldset-wrapper .webform-component-radios, .node-type-webform .node-webform .fieldset-wrapper .webform-component-textfield, .node-type-webform .node-webform .fieldset-wrapper .webform-component-email, .node-type-webform .node-webform .fieldset-wrapper .webform-component-select, .node-type-webform .node-webform .fieldset-wrapper .form-actions,
.node-type-webform .node-webform .fieldset-wrapper .webform-component-checkboxes, .node-type-webform .node-webform .fieldset-wrapper .webform-component-fieldset, .node-type-webform .node-webform .fieldset-wrapper .webform-component-date, .node-type-webform .node-webform .fieldset-wrapper .webform-component-time, .node-type-webform .node-webform .fieldset-wrapper .webform-component-textarea {
  max-width: 100%; }

.node-type-webform .form-textarea {
  border: 1px solid #9e9e9e; }

.node-type-webform #node-4575 .content {
  padding-top: 70px; }

#crmWebToEntityForm {
  clear: both;
  width: 100% !important; }
  @media screen and (min-width: 481px) {
    #crmWebToEntityForm {
      width: 100% !important; } }
  #crmWebToEntityForm form table {
    background-color: #eaece6 !important;
    width: 105% !important; }
    #crmWebToEntityForm form table tbody tr {
      max-width: 30rem !important; }
      #crmWebToEntityForm form table tbody tr td {
        padding-left: 15px;
        display: block; }
        @media screen and (min-width: 414px) {
          #crmWebToEntityForm form table tbody tr td {
            display: table-cell; } }
        #crmWebToEntityForm form table tbody tr td input, #crmWebToEntityForm form table tbody tr td select {
          width: 16rem !important;
          clear: both;
          border: 2px black; }
          @media screen and (min-width: 414px) {
            #crmWebToEntityForm form table tbody tr td input, #crmWebToEntityForm form table tbody tr td select {
              width: 14rem !important; } }
          @media screen and (min-width: 481px) {
            #crmWebToEntityForm form table tbody tr td input, #crmWebToEntityForm form table tbody tr td select {
              width: 19rem !important; } }
          @media screen and (min-width: 587px) {
            #crmWebToEntityForm form table tbody tr td input, #crmWebToEntityForm form table tbody tr td select {
              width: 24rem !important; } }
          @media screen and (min-width: 1200px) {
            #crmWebToEntityForm form table tbody tr td input, #crmWebToEntityForm form table tbody tr td select {
              width: 36rem !important; } }
        #crmWebToEntityForm form table tbody tr td select {
          height: 3rem; }
        #crmWebToEntityForm form table tbody tr td select[multiple="multiple"] {
          height: 6rem; }
        #crmWebToEntityForm form table tbody tr td input[type=submit], #crmWebToEntityForm form table tbody tr td input[type=reset] {
          clear: both;
          margin: 15px 20px;
          text-align: center;
          padding-top: 0;
          background-color: #ee0000;
          color: white !important;
          font-weight: 700;
          font-size: 16px;
          -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
                  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
          margin-top: 0;
          height: 50px;
          line-height: 50px;
          padding-left: 22px;
          padding-right: 22px;
          width: 14rem !important; }
          #crmWebToEntityForm form table tbody tr td input[type=submit]:hover, #crmWebToEntityForm form table tbody tr td input[type=reset]:hover {
            background-color: #31a19a; }
          @media screen and (min-width: 414px) {
            #crmWebToEntityForm form table tbody tr td input[type=submit], #crmWebToEntityForm form table tbody tr td input[type=reset] {
              width: 14rem !important; } }
          @media screen and (min-width: 481px) {
            #crmWebToEntityForm form table tbody tr td input[type=submit], #crmWebToEntityForm form table tbody tr td input[type=reset] {
              width: 12rem !important; } }
          @media screen and (min-width: 587px) {
            #crmWebToEntityForm form table tbody tr td input[type=submit], #crmWebToEntityForm form table tbody tr td input[type=reset] {
              width: 16rem !important; } }
          @media screen and (min-width: 1200px) {
            #crmWebToEntityForm form table tbody tr td input[type=submit], #crmWebToEntityForm form table tbody tr td input[type=reset] {
              width: 20rem !important; } }

@media screen and (min-width: 1200px) {
  .main.sg {
    margin-right: 90px; } }

.sg-heading {
  display: inline-block;
  font-weight: 400;
  margin: 40px 0;
  font-family: "PT Sans", sans-serif;
  opacity: 0.8;
  font-size: 16px;
  position: relative; }
  .sg-heading:before {
    content: '';
    position: absolute;
    width: 60px;
    height: 1px;
    background-color: transparent;
    border-top: 1px solid rgba(35, 31, 32, 0.4);
    top: 7px;
    left: -70px; }

.sg-row {
  margin: 0 0 20px 0;
  padding: 40px 0 0; }

.sg-menu-btn {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  text-align: center;
  background-color: #ee0000;
  padding: 20px;
  color: white; }
  .sg-menu-btn h4 {
    color: white; }
  .sg-menu-btn:hover {
    cursor: pointer; }
  .sg-menu-btn h4 {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    margin: 0;
    font-weight: 500; }
  .sg-menu-btn.open {
    background-color: transparent;
    color: white; }
    .sg-menu-btn.open:hover {
      color: #ee0000; }

.sg-hamburger {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  display: inline-block;
  height: 40px;
  width: 40px;
  position: relative; }
  .sg-hamburger:after, .sg-hamburger:before, .sg-hamburger span {
    content: '';
    position: absolute;
    width: 70%;
    height: 3px;
    background: white;
    top: 11px;
    left: 15%;
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s; }
  .sg-hamburger:after {
    top: 27px; }
  .sg-hamburger span {
    min-height: 3px;
    top: 19px;
    opacity: 1; }
  .sg-hamburger.active:before {
    -webkit-transform: rotate(45deg) translate3d(5px, 5px, 0);
            transform: rotate(45deg) translate3d(5px, 5px, 0); }
  .sg-hamburger.active:after {
    -webkit-transform: rotate(-45deg) translate3d(7px, -6px, 0);
            transform: rotate(-45deg) translate3d(7px, -6px, 0); }
  .sg-hamburger.active span {
    opacity: 0; }
  .sg-hamburger.active:after, .sg-hamburger.active:before, .sg-hamburger.active span {
    background: white; }

.sg-menu {
  -webkit-transition: all 0.2s ease 0s;
  -moz-transition: all 0.2s ease 0s;
  -ms-transition: all 0.2s ease 0s;
  -o-transition: all 0.2s ease 0s;
  position: fixed;
  right: -300px;
  width: 300px;
  background-color: #231F20;
  font-size: 0.9em;
  z-index: 999;
  top: 0;
  height: 100%;
  overflow: scroll;
  padding: 40px 0 40px 0; }
  .sg-menu a {
    -webkit-transition: all 0.2s ease 0s;
    -moz-transition: all 0.2s ease 0s;
    -ms-transition: all 0.2s ease 0s;
    -o-transition: all 0.2s ease 0s;
    display: block;
    color: white;
    padding: 7px 20px;
    border-left: 4px solid #231F20;
    font-weight: 500; }
    .sg-menu a:hover {
      border-left: 4px solid #ee0000;
      color: #ee0000;
      background-color: rgba(0, 0, 0, 0.5); }
  .sg-menu.open {
    right: 0; }

.colour {
  padding: 40px 20px;
  color: white;
  margin: 0 15px 15px 0;
  width: 43%;
  float: left; }
  @media screen and (min-width: 1200px) {
    .colour {
      width: 18%;
      float: left; } }

.colour-red {
  background: #ee0000; }

.colour-red_lt {
  background: #F96664; }

.colour-black {
  background: #231F20; }

.colour-teal {
  background: #31a19a; }

.colour-grey {
  background: #eaece6; }

.colour-grey_dk {
  background: #222; }

.colour-grey_dk-mid {
  background: #333; }

.colour-grey_mid {
  background: #444; }

.colour-grey_lt {
  background: #666; }

.img-formats div {
  margin: 0 0 30px; }

.img-formats img {
  margin: 10px 0 0; }

.img-formats span {
  font-size: 1.3em;
  display: inline-block;
  line-height: 1.3; }

.notstarted {
  opacity: 0.5;
  cursor: default; }

.bscms_social_networks_facebook {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_google_plus {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_instagram {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_linkedin {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_pinterest {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_rss {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_snapchat {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_tumblr {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_twitter {
  display: inline-block;
  text-indent: -9999px; }

.bscms_social_networks_whatsapp {
  display: inline-block;
  text-indent: -9999px; }

.popup-messages.modal {
  opacity: unset !important;
  height: auto; }
  .popup-messages.modal .container {
    padding: 0; }
  .popup-messages.modal .close-modal {
    border: 2px solid white;
    border-radius: 50%; }
  .popup-messages.modal p {
    color: black; }
    .popup-messages.modal p:hover {
      color: red; }

.jquery-modal {
  position: absolute !important;
  z-index: 9 !important; }

#block-bscms-frontpage-bscms-popup, #block-views-frontpage-blocks-block-popup {
  display: none; }

.video-js {
  width: 100% !important;
  height: 100%;
  overflow-y: hidden; }

.background-video-wrapper {
  display: none; }
  @media screen and (min-width: 481px) {
    .background-video-wrapper {
      display: block;
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%; } }
  .background-video-wrapper .video-link {
    overflow: auto;
    position: absolute;
    width: 100%;
    height: 100%; }

.background-video-wrapper.has-no-video {
  display: none; }

.vjs-tech {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  height: auto; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwidmVuZG9yL19ub3JtYWxpemUuc2NzcyIsInZlbmRvci9fb3dsLmNhcm91c2VsLnNjc3MiLCJ2ZW5kb3IvX293bC50aGVtZS5zY3NzIiwidmVuZG9yL19vd2wudHJhbnNpdGlvbnMuc2NzcyIsInZlbmRvci9ncmlkbGUvX3NpbGVudC1jbGFzc2VzLnNjc3MiLCJ2ZW5kb3IvZ3JpZGxlL19mdW5jdGlvbnMuc2NzcyIsInZlbmRvci9ncmlkbGUvX3NldHRpbmdzLW1peGlucy5zY3NzIiwidmVuZG9yL2dyaWRsZS9fbWl4aW5zLnNjc3MiLCJ2ZW5kb3IvZ3JpZGxlL19nZW5lcmF0ZS1taXhpbnMuc2NzcyIsInZlbmRvci9ncmlkbGUvX2NvbW1vbi1taXhpbnMuc2NzcyIsIl9iYXNlLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJfbWl4aW5zLnNjc3MiLCJfY29tcG9uZW50cy5zY3NzIiwiX3dlYmZvcm1zLnNjc3MiLCJfc3R5bGVndWlkZS5zY3NzIiwic3ByaXRlLnNjc3MiLCJwb3B1cC1tb2RhbC5zY3NzIiwiX3ZpZGVvLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDRWpCLDREQUE0RDtBQUU1RDs7Z0ZBRWdGO0FBRWhGOztHQUVHO0FBRUg7Ozs7Ozs7Ozs7OztFQVlJLGVBQWMsRUFDakI7O0FBRUQ7O0dBRUc7QUFFSDs7O0VBR0ksc0JBQXFCO0dBQ3JCLGdCQUFnQjtHQUNoQixRQUFRLEVBQ1g7O0FBRUQ7OztHQUdHO0FBRUg7RUFDSSxjQUFhO0VBQ2IsVUFBUyxFQUNaOztBQUVEOzs7R0FHRztBRFJIO0VDV0ksY0FBYSxFQUNoQjs7QUFFRDs7Z0ZBRWdGO0FBRWhGOzs7OztHQUtHO0FBRUg7RUFDSSxnQkFBZTtFQUFFLE9BQU87RUFDeEIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7RUFBRSxPQUFPLEVBQzFDOztBQUVEOzs7R0FHRztBQUVIOzs7OztFQUtJLHdCQUF1QixFQUMxQjs7QUFFRDs7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dEJEO0VEL1ZMLFdBSDRDLEVDb1d0Qzs7QUFHRDtFRDFSTCxVQUZvRSxFQzhSOUQ7O0FBR0Q7RUQ1T0wsV0FGb0UsRUNnUDlEOztBQUdEO0VENUxHLGlCQUo0RCxFQ2tNOUQ7O0FBR0Q7RUQ1SUcsa0JBSjRELEVDa0o5RDs7QUF0QkQ7RUQvVkwsaUJBSDRDLEVDb1d0Qzs7QUFHRDtFRDFSTCxnQkFGb0UsRUM4UjlEOztBQUdEO0VENU9MLGlCQUZvRSxFQ2dQOUQ7O0FBR0Q7RUQ1TEcsdUJBSjRELEVDa005RDs7QUFHRDtFRDVJRyx3QkFKNEQsRUNrSjlEOztBQXRCRDtFRC9WTCxpQkFINEMsRUNvV3RDOztBQUdEO0VEMVJMLGdCQUZvRSxFQzhSOUQ7O0FBR0Q7RUQ1T0wsaUJBRm9FLEVDZ1A5RDs7QUFHRDtFRDVMRyx1QkFKNEQsRUNrTTlEOztBQUdEO0VENUlHLHdCQUo0RCxFQ2tKOUQ7O0FBdEJEO0VEL1ZMLFdBSDRDLEVDb1d0Qzs7QUFHRDtFRDFSTCxVQUZvRSxFQzhSOUQ7O0FBR0Q7RUQ1T0wsV0FGb0UsRUNnUDlEOztBQUdEO0VENUxHLGlCQUo0RCxFQ2tNOUQ7O0FBR0Q7RUQ1SUcsa0JBSjRELEVDa0o5RDs7QUF0QkQ7RUQvVkwsaUJBSDRDLEVDb1d0Qzs7QUFHRDtFRDFSTCxnQkFGb0UsRUM4UjlEOztBQUdEO0VENU9MLGlCQUZvRSxFQ2dQOUQ7O0FBR0Q7RUQ1TEcsdUJBSjRELEVDa005RDs7QUFHRDtFRDVJRyx3QkFKNEQsRUNrSjlEOztBQXRCRDtFRC9WTCxpQkFINEMsRUNvV3RDOztBQUdEO0VEMVJMLGdCQUZvRSxFQzhSOUQ7O0FBR0Q7RUQ1T0wsaUJBRm9FLEVDZ1A5RDs7QUFHRDtFRDVMRyx1QkFKNEQsRUNrTTlEOztBQUdEO0VENUlHLHdCQUo0RCxFQ2tKOUQ7O0FBdEJEO0VEL1ZMLFdBSDRDLEVDb1d0Qzs7QUFHRDtFRDFSTCxVQUZvRSxFQzhSOUQ7O0FBR0Q7RUQ1T0wsV0FGb0UsRUNnUDlEOztBQUdEO0VENUxHLGlCQUo0RCxFQ2tNOUQ7O0FBR0Q7RUQ1SUcsa0JBSjRELEVD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QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdE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RDtJRDVMRyxpQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsa0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxXQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxVQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxXQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxpQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsa0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxXQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxVQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxXQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxpQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsa0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxpQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZ0JBRm9FLEVDOFI5RDtFQUdEO0lENU9MLGlCQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyx1QkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsd0JBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxZQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxXQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxZQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxrQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsbUJBSjRELEVDa0o5RDtFQXZpQkw7SUR3cUJELFlBQU0sRUN0cUJKO0VBQ0Q7SURxcUJELGFBQU0sRUNucUJKO0VBSUQ7SURzckJELFlBQU0sRUNwckJKO0VBQ0Q7SURtckJELFlBQU0sRUNqckJKO0VBQ0Q7SURnckJELGFBQU0sRUM5cUJKO0VBSUQ7O0lEd3NCQSxnQkFBeUI7SUFBekIsaUJBQXlCLEVDcnNCeEI7RUFDRDs7SURvc0JBLGdCQUF5QixFQ2pzQnhCO0VBQ0Q7O0lEZ3NCQSxpQkFBeUIsRUM3ckJ4QjtFQUNEOztJRDRyQkEsZUFBeUIsRUN6ckJ4QjtFQUNEOztJRHdyQkEsa0JBQXlCLEVDcnJCeEI7RUFJRDs7SURtdEJBLG1CQUF5QztJQUF6QyxvQkFBeUMsRUNodEJ4QztFQUNEOztJRCtzQkEsbUJBQXlDLEVDNXNCeEM7RUFDRDs7SUQyc0JBLG9CQUF5QyxFQ3hzQnhDO0VBQ0Q7O0lEdXNCQSxrQkFBeUMsRUNwc0J4QztFQUNEOztJRG1zQkEscUJBQXlDLEVDaHNCeEM7RUFJRDtJQUNDLGdCQUFjLEVBQ2Q7RUFJRDtJRGliRCwwQkFBd0I7SUFDeEIsdUJBQXFCO0lBQ3JCLDZCQUEyQjtJQUMzQiw4QkFBNEI7SUFDNUIsdUJBQXFCLEVDbmJuQjtFQUlEO0lEOG9CQSxnQkFBeUI7SUFBekIsaUJBQXlCLEVDNW9CeEI7RUFJRDtJRG9kRCxhQUFXO0lBQ1gsWUFBVSxFQ25kUjtJRHFkRjtNQUNDLHNCQUFvQjtNQUNwQix1QkFBcUI7TUFDckIsdUJBUmM7TUFTZCxnQkFBYyxFQUNkO0VDemRBO0lEaWRELGFBQVc7SUFDWCxZQUFVLEVDaGRSO0lEa2RGO01BQ0Msc0JBQW9CO01BQ3BCLHVCQUFxQjtNQUNyQixvQkN0ZG9DO01EdWRwQyxnQkFBYyxFQUNkO0VDdGRBO0lEOGNELGFBQVc7SUFDWCxZQUFVLEVDN2NSO0lEK2NGO01BQ0Msc0JBQW9CO01BQ3BCLHVCQUFxQjtNQUNyQix1QkNuZHVDO01Eb2R2QyxnQkFBYyxFQUNkO0VDamREOztJQUVHO0VBRUY7SURnZUQsY0FBWSxFQzlkVjtFQUlEO0lENmVELG1CQUFpQixFQzNlZjtFQUlEO0lEMGZELGVBQWEsRUN4Zlg7RUFDRDtJRDZnQkQsc0JBQW9CLEVDM2dCbEI7RUFJRDtJRDBoQkQsb0JBQWtCLEVDeGhCaEI7RUFHRjs7SUFFRyxFQUFBOztBRC9EQTtFQ2dkRTtJRC9WTCxVQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxTQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxVQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxnQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsaUJBSjRELEVDa0o5RDtFQXRCRDtJRC9WTCxnQkFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsZUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsZ0JBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHNCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx1QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFdBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFVBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFdBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGlCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxrQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFdBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFVBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFdBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGlCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxrQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFdBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFVBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFdBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGlCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxrQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlE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RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tK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RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBL0c2MUM7SUR0UW4yQyxXQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxVQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxXQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxpQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsa0JBSjRELEVDa0o5RDtFQS9HODJDO0lEdFFwM0MsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUEvRyszQztJRHRRcjRDLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBL0dnNUM7SUR0UXQ1QyxXQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxVQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxXQUZvRSxFQ2dQOUQ7RUFHRDtJRDVMRyxpQkFKNEQsRUNrTTlEO0VBR0Q7SUQ1SUcsa0JBSjRELEVDa0o5RDtFQS9HaTZDO0lEdFF2NkMsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUEvR203QztJRHRRejdDLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBL0dxOEM7SUR0UTM4QyxZQUg0QyxFQ29X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Z1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFdBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFVBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFdBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGlCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxrQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFdBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFVBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFdBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGlCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxrQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGlCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxnQkFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsaUJBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLHVCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyx3QkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLFlBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFdBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFlBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGtCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxtQkFKNEQsRUNrSjlEO0VBdmlCTDtJRHdxQkQsWUFBTSxFQ3RxQko7RUFDRDtJRHFxQkQsYUFBTSxFQ25xQko7RUFJRDtJRHNyQkQsWUFBTSxFQ3ByQko7RUFDRDtJRG1yQkQsWUFBTSxFQ2pyQko7RUFDRDtJRGdyQkQsYUFBTSxFQzlxQko7RUFJRDs7SUR3c0JBLGdCQUF5QjtJQUF6QixpQkFBeUIsRUNyc0J4QjtFQUNEOztJRG9zQkEsZ0JBQXlCLEVDanNCeEI7RUFDRDs7SURnc0JBLGlCQUF5QixFQzdyQnhCO0VBQ0Q7O0lENHJCQSxlQUF5QixFQ3pyQnhCO0VBQ0Q7O0lEd3JCQSxrQkFBeUIsRUNyckJ4QjtFQUlEOztJRG10QkEsbUJBQXlDO0lBQXpDLG9CQUF5QyxFQ2h0QnhDO0VBQ0Q7O0lEK3NCQSxtQkFBeUMsRUM1c0J4QztFQUNEOztJRDJzQkEsb0JBQXlDLEVDeHNCeEM7RUFDRDs7SUR1c0JBLGtCQUF5QyxFQ3BzQnhDO0VBQ0Q7O0lEbXNCQSxxQkFBeUMsRUNoc0J4QztFQUlEO0lBQ0MsZ0JBQWMsRUFDZDtFQUlEO0lEaWJELDBCQUF3QjtJQUN4Qix1QkFBcUI7SUFDckIsNkJBQTJCO0lBQzNCLDhCQUE0QjtJQUM1Qix1QkFBcUIsRUNuYm5CO0VBSUQ7SUQ4b0JBLGdCQUF5QjtJQUF6QixpQkFBeUIsRUM1b0J4QjtFQUlEO0lEb2RELGFBQVc7SUFDWCxZQUFVLEVDbmRSO0lEcWRGO01BQ0Msc0JBQW9CO01BQ3BCLHVCQUFxQjtNQUNyQix1QkFSYztNQVNkLGdCQUFjLEVBQ2Q7RUN6ZEE7SURpZEQsYUFBVztJQUNYLFlBQVUsRUNoZFI7SURrZEY7TUFDQyxzQkFBb0I7TUFDcEIsdUJBQXFCO01BQ3JCLG9CQ3Rkb0M7TUR1ZHBDLGdCQUFjLEVBQ2Q7RUN0ZEE7SUQ4Y0QsYUFBVztJQUNYLFlBQVUsRUM3Y1I7SUQrY0Y7TUFDQyxzQkFBb0I7TUFDcEIsdUJBQXFCO01BQ3JCLHVCQ25kdUM7TURvZHZDLGdCQUFjLEVBQ2Q7RUNqZEQ7O0lBRUc7RUFFRjtJRGdlRCxjQUFZLEVDOWRWO0VBSUQ7SUQ2ZUQsbUJBQWlCLEVDM2VmO0VBSUQ7SUQwZkQsZUFBYSxFQ3hmWDtFQUNEO0lENmdCRCxzQkFBb0IsRUMzZ0JsQjtFQUlEO0lEMGhCRCxvQkFBa0IsRUN4aEJoQjtFQUdGOztJQUVHLEVBQUE7O0FEL0RBO0VDZ2RFO0lEL1ZMLFVBSDRDLEVDb1d0QztFQUdEO0lEMVJMLFNBRm9FLEVDOFI5RDtFQUdEO0lENU9MLFVBRm9FLEVDZ1A5RDtFQUdEO0lENUxHLGdCQUo0RCxFQ2tNOUQ7RUFHRDtJRDVJRyxpQkFKNEQsRUNrSjlEO0VBdEJEO0lEL1ZMLGdCQUg0QyxFQ29XdEM7RUFHRDtJRDFSTCxlQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxnQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsc0JBSjRELEVDa005RDtFQUdEO0lENUlHLHVCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsV0FINEMsRUNvV3RDO0VBR0Q7SUQxUkwsVUFGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsV0FGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsaUJBSjRELEVDa005RDtFQUdEO0lENUlHLGtCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsaUJBSDRDLEVDb1d0QztFQUdEO0lEMVJMLGdCQUZvRSxFQzhSOUQ7RUFHRDtJRDVPTCxpQkFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsdUJBSjRELEVDa005RDtFQUdEO0lENUlHLHdCQUo0RCxFQ2tKOUQ7RUF0QkQ7SUQvVkwsWUFINEMsRUNvV3RDO0VBR0Q7SUQxUkwsV0FGb0UsRUM4UjlEO0VBR0Q7SUQ1T0wsWUFGb0UsRUNnUDlEO0VBR0Q7SUQ1TEcsa0JBSjRELEVDa005RDtFQUdEO0lENUlHLG1CQUo0RCxFQ2tKOUQ7RUF2aUJMO0lEd3FCRCxZQUFNLEVDdHFCSjtFQUNEO0lEcXFCRCxhQUFNLEVD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T0ksd0JBQXVCO0lBQ3ZCLG1CQUFrQixFQUNuQjtFQVRIO0lBV0ksYUFBWSxFQUliO0lBZkg7TUFhTSxXQUFVLEVBQ1g7O0FBR0w7RUFDRSw4QkFBNkI7RUFDN0Isc0JBQXFCLEVBQ3RCOztBQUNEO0VBQ0UsY0FBYSxFQUNkOztBQ3ZCRDtFQUNFLHVCQUFzQjtFQUN0QixhQUFZO0VBQ1osbUJBQWtCLEVBQ25COztBQUNEO0VBQ0UsY0FBYSxFQWVkO0VYeUdHO0lXekhKO01BR0ksZUFBYztNQUNkLG1CQUFrQjtNQUNsQixPQUFNO01BQ04sWUFBVztNQUNYLGFBQVksRUFTZixFQUFBO0VBaEJEO0lBVUksZUFBYztJQUNkLG1CQUFrQjtJQUNsQixZQUFXO0lBQ1gsYUFBWSxFQUNiOztBQUdIO0VBQ0UsY0FBYSxFQUNkOztBQUNEO0VBRUUsOEJBQXFCO01BQXJCLDBCQUFxQjtVQUFyQixzQkFBcUI7RUFDckIsYUFBWSxFQUNiIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohIG5vcm1hbGl6ZS5jc3MgdjEuMS4zIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7IH1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBGaXJlZm94IDMsIGFuZCBTYWZhcmkgNC5cbiAqIEtub3duIGlzc3VlOiBubyBJRSA2IHN1cHBvcnQuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXG4gKiAgICBgZW1gIHVuaXRzLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGRyZXNzIGBmb250LWZhbWlseWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIGB0ZXh0YXJlYWAgYW5kIG90aGVyIGZvcm1cbiAqIGVsZW1lbnRzLlxuICovXG5odG1sLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyB9XG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW5zIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNi83LlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBgb3V0bGluZWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIENocm9tZSBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiB0aGluIGRvdHRlZDsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUeXBvZ3JhcGh5XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIGZvbnQgc2l6ZXMgYW5kIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cbiAqIEFkZHJlc3MgZm9udCBzaXplcyB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWAgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsXG4gKiBhbmQgQ2hyb21lLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbWFyZ2luOiAwLjgzZW0gMDsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xN2VtO1xuICBtYXJnaW46IDFlbSAwOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMS4zM2VtIDA7IH1cblxuaDUge1xuICBmb250LXNpemU6IDAuODNlbTtcbiAgbWFyZ2luOiAxLjY3ZW0gMDsgfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMC42N2VtO1xuICBtYXJnaW46IDIuMzNlbSAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCAzKywgU2FmYXJpIDQvNSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqIEtub3duIGlzc3VlOiBubyBJRSA2Lzcgbm9ybWFsaXphdGlvbi5cbiAqL1xuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDYvNy84LzkuXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LlxuICovXG5wLFxucHJlIHtcbiAgbWFyZ2luOiAxZW0gMDsgfVxuXG4vKipcbiAqIENvcnJlY3QgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFIDYsIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgc2VyaWY7XG4gIF9mb250LWZhbWlseTogJ2NvdXJpZXIgbmV3JywgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgcHJlLWZvcm1hdHRlZCB0ZXh0IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIENTUyBxdW90ZXMgbm90IHN1cHBvcnRlZCBpbiBJRSA2LzcuXG4gKi9cbnEge1xuICBxdW90ZXM6IG5vbmU7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBxdW90ZXNgIHByb3BlcnR5IG5vdCBzdXBwb3J0ZWQgaW4gU2FmYXJpIDQuXG4gKi9cbnE6YmVmb3JlLFxucTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBjb250ZW50OiBub25lOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBMaXN0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gKi9cbmRsLFxubWVudSxcbm9sLFxudWwge1xuICBtYXJnaW46IDA7IH1cblxuZGQge1xuICBtYXJnaW46IDAgMCAwIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gKi9cbm1lbnUsXG5vbCxcbnVsIHtcbiAgcGFkZGluZzogMCAwIDAgMDsgfVxuXG4vKipcbiAqIENvcnJlY3QgbGlzdCBpbWFnZXMgaGFuZGxlZCBpbmNvcnJlY3RseSBpbiBJRSA3LlxuICovXG5uYXYgdWwsXG5uYXYgb2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaXN0LXN0eWxlLWltYWdlOiBub25lOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbiAqIDIuIEltcHJvdmUgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRSA3LlxuICovXG5pbWcge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgOS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGaWd1cmVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA2LzcvOC85LCBTYWZhcmkgNSwgYW5kIE9wZXJhIDExLlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5mb3JtIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA2LzcvOC85LlxuICogMi4gQ29ycmVjdCB0ZXh0IG5vdCB3cmFwcGluZyBpbiBGaXJlZm94IDMuXG4gKiAzLiBDb3JyZWN0IGFsaWdubWVudCBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMiAqL1xuICAqbWFyZ2luLWxlZnQ6IC03cHg7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgZm9udCBzaXplIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcsIEZpcmVmb3ggMyssIFNhZmFyaSA1LFxuICogICAgYW5kIENocm9tZS5cbiAqIDMuIEltcHJvdmUgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDMgKi9cbiAgKnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCAzKyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBDaHJvbWUsIFNhZmFyaSA1KywgYW5kIElFIDYrLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94IDQrIGFuZCBPcGVyYS5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlIGlubmVyIHNwYWNpbmcgaW4gSUUgNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4gKiAgICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi9cbiAgKm92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiA0ICovIH1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGNvbnRlbnQtYm94IGluIElFIDgvOS5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkuXG4gKiAzLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgNy5cbiAqICAgIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xuICAqaGVpZ2h0OiAxM3B4O1xuICAvKiAzICovXG4gICp3aWR0aDogMTNweDtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIDUgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIDUgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqIG9uIE9TIFguXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDMrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA2LzcvOC85LlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAvKiAyICovIH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbi8qIFxuICogIENvcmUgT3dsIENhcm91c2VsIENTUyBGaWxlXG4gKiAgdjEuMy4zXG4gKi9cbi8qIGNsZWFyZml4ICovXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDsgfVxuXG4vKiBkaXNwbGF5IG5vbmUgdW50aWwgaW5pdCAqL1xuLm93bC1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15OyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLW91dGVyLmF1dG9IZWlnaHQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLm93bC1jb250cm9scyAub3dsLXBhZ2UsXG4ub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXYge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm93bC1jb250cm9scyB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbi8qIG1vdXNlIGdyYWIgaWNvbiAqL1xuLmdyYWJiaW5nIHtcbiAgY3Vyc29yOiB1cmwoZ3JhYmJpbmcucG5nKSA4IDgsIG1vdmU7IH1cblxuLyogZml4ICovXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcixcbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLypcbiogICBPd2wgQ2Fyb3VzZWwgT3dsIERlbW8gVGhlbWUgXG4qIHYxLjMuM1xuKi9cbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBTdHlsaW5nIE5leHQgYW5kIFByZXYgYnV0dG9ucyAqL1xuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXYge1xuICBjb2xvcjogI0ZGRjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lO1xuICAvKklFNyBsaWZlLXNhdmVyICovXG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiAzcHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYmFja2dyb3VuZDogIzg2OTc5MTtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTUwKTtcbiAgLypJRTcgZml4Ki9cbiAgb3BhY2l0eTogMC41OyB9XG5cbi8qIENsaWNrYWJsZSBjbGFzcyBmaXggcHJvYmxlbSB3aXRoIGhvdmVyIG9uIHRvdWNoIGRldmljZXMgKi9cbi8qIFVzZSBpdCBmb3Igbm9uLXRvdWNoIGhvdmVyIGFjdGlvbiAqL1xuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzLmNsaWNrYWJsZSAub3dsLWJ1dHRvbnMgZGl2OmhvdmVyIHtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTEwMCk7XG4gIC8qSUU3IGZpeCovXG4gIG9wYWNpdHk6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKiBTdHlsaW5nIFBhZ2luYXRpb24qL1xuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgLypJRTcgbGlmZS1zYXZlciAqLyB9XG5cbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyAub3dsLXBhZ2Ugc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiA1cHggNXB4O1xuICBmaWx0ZXI6IEFscGhhKE9wYWNpdHk9NTApO1xuICAvKklFNyBmaXgqL1xuICBvcGFjaXR5OiAwLjU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjNDQ0OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyAub3dsLXBhZ2UuYWN0aXZlIHNwYW4sXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMuY2xpY2thYmxlIC5vd2wtcGFnZTpob3ZlciBzcGFuIHtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTEwMCk7XG4gIC8qSUU3IGZpeCovXG4gIG9wYWNpdHk6IDE7IH1cblxuLyogSWYgUGFnaW5hdGlvbk51bWJlcnMgaXMgdHJ1ZSAqL1xuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSBzcGFuLm93bC1udW1iZXJzIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDJweCAxMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMzBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4OyB9XG5cbi8qIHByZWxvYWRpbmcgaW1hZ2VzICovXG4ub3dsLWl0ZW0ubG9hZGluZyB7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoQWpheExvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyOyB9XG5cbi8qIFxuICogIE93bCBDYXJvdXNlbCBDU1MzIFRyYW5zaXRpb25zIFxuICogIHYxLjMuMlxuICovXG4ub3dsLW9yaWdpbiB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teDogNTAlO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15OiA1MCU7XG4gIC1tb3otcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW4teDogNTAlO1xuICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbi15OiA1MCU7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7IH1cblxuLyogZmFkZSAqL1xuLm93bC1mYWRlLW91dCB7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xuICAtbW96LWFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xuICBhbmltYXRpb246IGZhZGVPdXQgLjdzIGJvdGggZWFzZTsgfVxuXG4ub3dsLWZhZGUtaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluIC43cyBib3RoIGVhc2U7XG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTsgfVxuXG4vKiBiYWNrU2xpZGUgKi9cbi5vd2wtYmFja1NsaWRlLW91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xuICAtbW96LWFuaW1hdGlvbjogYmFja1NsaWRlT3V0IDFzIGJvdGggZWFzZTtcbiAgYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlOyB9XG5cbi5vd2wtYmFja1NsaWRlLWluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJhY2tTbGlkZUluIDFzIGJvdGggZWFzZTtcbiAgLW1vei1hbmltYXRpb246IGJhY2tTbGlkZUluIDFzIGJvdGggZWFzZTtcbiAgYW5pbWF0aW9uOiBiYWNrU2xpZGVJbiAxcyBib3RoIGVhc2U7IH1cblxuLyogZ29Eb3duICovXG4ub3dsLWdvRG93bi1vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDtcbiAgLW1vei1hbmltYXRpb246IHNjYWxlVG9GYWRlIC43cyBlYXNlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDsgfVxuXG4ub3dsLWdvRG93bi1pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBnb0Rvd24gLjZzIGVhc2UgYm90aDtcbiAgLW1vei1hbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xuICBhbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoOyB9XG5cbi8qIHNjYWxlVXAgKi9cbi5vd2wtZmFkZVVwLWluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNjYWxlVXBGcm9tIC41cyBlYXNlIGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xuICBhbmltYXRpb246IHNjYWxlVXBGcm9tIC41cyBlYXNlIGJvdGg7IH1cblxuLm93bC1mYWRlVXAtb3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNjYWxlVXBUbyAuNXMgZWFzZSBib3RoO1xuICAtbW96LWFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7IH1cblxuLyogS2V5ZnJhbWVzICovXG4vKmVtcHR5Ki9cbkAtd2Via2l0LWtleWZyYW1lcyBlbXB0eSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIGVtcHR5IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5Aa2V5ZnJhbWVzIGVtcHR5IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkAtbW96LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrU2xpZGVPdXQge1xuICAyNSUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcbiAgMjUlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XG4gIDc1JSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9IH1cblxuQGtleWZyYW1lcyBiYWNrU2xpZGVPdXQge1xuICAyNSUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XG4gIDc1JSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja1NsaWRlSW4ge1xuICAwJSwgMjUlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoMjAwJSk7IH1cbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgwKTsgfSB9XG5cbkAtbW96LWtleWZyYW1lcyBiYWNrU2xpZGVJbiB7XG4gIDAlLCAyNSUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgyMDAlKTsgfVxuICA3NSUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKDApOyB9IH1cblxuQGtleWZyYW1lcyBiYWNrU2xpZGVJbiB7XG4gIDAlLCAyNSUge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoMjAwJSk7IH1cbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKDApOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgc2NhbGVUb0ZhZGUge1xuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMC44KTsgfSB9XG5cbkBrZXlmcmFtZXMgc2NhbGVUb0ZhZGUge1xuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ29Eb3duIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIGdvRG93biB7XG4gIGZyb20ge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfSB9XG5cbkBrZXlmcmFtZXMgZ29Eb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZVVwRnJvbSB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgc2NhbGVVcEZyb20ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9IH1cblxuQGtleWZyYW1lcyBzY2FsZVVwRnJvbSB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVXBUbyB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVXBUbyB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9IH1cblxuQGtleWZyYW1lcyBzY2FsZVVwVG8ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH0gfVxuXG4uY29udGFpbmVyOmFmdGVyLCBmb290ZXIgLmNyZWRpdHM6YWZ0ZXIsIGZvb3RlciAuZm9vdGVyLWxpbmtzOmFmdGVyLCAubmF2OmFmdGVyLCAubmF2IC5tZWdhX2Ryb3Bkb3duOmFmdGVyLCAuZmxvYXRlZC1sYWJlbHM6YWZ0ZXIsIC5icmVhZGNydW1iOmFmdGVyLCAuc2VjdGlvbi1oZWFkaW5nOmFmdGVyLCAubXNmX2dsb2JhbCB1bDphZnRlciwgLmltcGFjdCAubGlzdGluZy1ibG9jayB1bDphZnRlciwgLnN0YXRzLmlubGluZS1zdGF0czphZnRlciwgLnN0YXRzIHVsOmFmdGVyLCAubGF0ZXN0X2ZlZWQ6YWZ0ZXIsIC5sYXRlc3RfZmVlZCB1bDphZnRlciwgLnNoYXJlX2JhcjphZnRlciwgZm9vdGVyIC5zb2NpYWwgdWw6YWZ0ZXIsIC5saXN0aW5nLWZpbHRlcnM6YWZ0ZXIsIC5maWx0ZXJzIHVsOmFmdGVyLCAucG9zLXN0YXRlbWVudDphZnRlciwgLmNhbGxvdXQ6YWZ0ZXIsIC53aWRlLWxpc3QgdWw6YWZ0ZXIsIC5zZy1oZWFkaW5nOmFmdGVyLCAuc2ctcm93OmFmdGVyLCAuY29sb3VyczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxuLnBhcmVudDpiZWZvcmUsIC5wYXJlbnQtbW9iaWxlOmJlZm9yZSwgLnBhcmVudC10YWJsZXQtcG9ydHJhaXQ6YmVmb3JlLCAucGFyZW50LXRhYmxldC13aWRlOmJlZm9yZSwgLnBhcmVudC10YWJsZXQtbGFuZHNjYXBlOmJlZm9yZSwgLnBhcmVudC1kZXNrdG9wOmJlZm9yZSwgLnBhcmVudC1kZXNrdG9wLXdpZGU6YmVmb3JlLCAucGFyZW50LWRlc2t0b3Atd2lkZXI6YmVmb3JlLCAucGFyZW50OmFmdGVyLCAucGFyZW50LW1vYmlsZTphZnRlciwgLnBhcmVudC10YWJsZXQtcG9ydHJhaXQ6YWZ0ZXIsIC5wYXJlbnQtdGFibGV0LXdpZGU6YWZ0ZXIsIC5wYXJlbnQtdGFibGV0LWxhbmRzY2FwZTphZnRlciwgLnBhcmVudC1kZXNrdG9wOmFmdGVyLCAucGFyZW50LWRlc2t0b3Atd2lkZTphZnRlciwgLnBhcmVudC1kZXNrdG9wLXdpZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbi5wYXJlbnQ6YWZ0ZXIsIC5wYXJlbnQtbW9iaWxlOmFmdGVyLCAucGFyZW50LXRhYmxldC1wb3J0cmFpdDphZnRlciwgLnBhcmVudC10YWJsZXQtd2lkZTphZnRlciwgLnBhcmVudC10YWJsZXQtbGFuZHNjYXBlOmFmdGVyLCAucGFyZW50LWRlc2t0b3A6YWZ0ZXIsIC5wYXJlbnQtZGVza3RvcC13aWRlOmFmdGVyLCAucGFyZW50LWRlc2t0b3Atd2lkZXI6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4ucGFyZW50LCAucGFyZW50LW1vYmlsZSwgLnBhcmVudC10YWJsZXQtcG9ydHJhaXQsIC5wYXJlbnQtdGFibGV0LXdpZGUsIC5wYXJlbnQtdGFibGV0LWxhbmRzY2FwZSwgLnBhcmVudC1kZXNrdG9wLCAucGFyZW50LWRlc2t0b3Atd2lkZSwgLnBhcmVudC1kZXNrdG9wLXdpZGVyIHtcbiAgem9vbTogMTsgfVxuXG4ucHVzaC0wLCAucHVzaC0xLCAucHVzaC0yLCAucHVzaC0zLCAucHVzaC00LCAucHVzaC01LCAucHVzaC02LCAucHVzaC03LCAucHVzaC04LCAucHVzaC05LCAucHVzaC0xMCwgLnB1c2gtMTEsIC5wdXNoLTEyLCAucHVzaC1tb2JpbGUtMCwgLnB1c2gtbW9iaWxlLTEsIC5wdXNoLW1vYmlsZS0yLCAucHVzaC1tb2JpbGUtMywgLnB1c2gtbW9iaWxlLTQsIC5wdXNoLW1vYmlsZS01LCAucHVzaC1tb2JpbGUtNiwgLnB1c2gtbW9iaWxlLTcsIC5wdXNoLW1vYmlsZS04LCAucHVzaC1tb2JpbGUtOSwgLnB1c2gtbW9iaWxlLTEwLCAucHVzaC1tb2JpbGUtMTEsIC5wdXNoLW1vYmlsZS0xMiwgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTAsIC5wdXNoLXRhYmxldC1wb3J0cmFpdC0xLCAucHVzaC10YWJsZXQtcG9ydHJhaXQtMiwgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTMsIC5wdXNoLXRhYmxldC1wb3J0cmFpdC00LCAucHVzaC10YWJsZXQtcG9ydHJhaXQtNSwgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTYsIC5wdXNoLXRhYmxldC1wb3J0cmFpdC03LCAucHVzaC10YWJsZXQtcG9ydHJhaXQtOCwgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTksIC5wdXNoLXRhYmxldC1wb3J0cmFpdC0xMCwgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTExLCAucHVzaC10YWJsZXQtcG9ydHJhaXQtMTIsIC5wdXNoLXRhYmxldC13aWRlLTAsIC5wdXNoLXRhYmxldC13aWRlLTEsIC5wdXNoLXRhYmxldC13aWRlLTIsIC5wdXNoLXRhYmxldC13aWRlLTMsIC5wdXNoLXRhYmxldC13aWRlLTQsIC5wdXNoLXRhYmxldC13aWRlLTUsIC5wdXNoLXRhYmxldC13aWRlLTYsIC5wdXNoLXRhYmxldC13aWRlLTcsIC5wdXNoLXRhYmxldC13aWRlLTgsIC5wdXNoLXRhYmxldC13aWRlLTksIC5wdXNoLXRhYmxldC13aWRlLTEwLCAucHVzaC10YWJsZXQtd2lkZS0xMSwgLnB1c2gtdGFibGV0LXdpZGUtMTIsIC5wdXNoLXRhYmxldC1sYW5kc2NhcGUtMCwgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xLCAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTIsIC5wdXNoLXRhYmxldC1sYW5kc2NhcGUtMywgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS00LCAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTUsIC5wdXNoLXRhYmxldC1sYW5kc2NhcGUtNiwgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS03LCAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTgsIC5wdXNoLXRhYmxldC1sYW5kc2NhcGUtOSwgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xMCwgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xMSwgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xMiwgLnB1c2gtZGVza3RvcC0wLCAucHVzaC1kZXNrdG9wLTEsIC5wdXNoLWRlc2t0b3AtMiwgLnB1c2gtZGVza3RvcC0zLCAucHVzaC1kZXNrdG9wLTQsIC5wdXNoLWRlc2t0b3AtNSwgLnB1c2gtZGVza3RvcC02LCAucHVzaC1kZXNrdG9wLTcsIC5wdXNoLWRlc2t0b3AtOCwgLnB1c2gtZGVza3RvcC05LCAucHVzaC1kZXNrdG9wLTEwLCAucHVzaC1kZXNrdG9wLTExLCAucHVzaC1kZXNrdG9wLTEyLCAucHVzaC1kZXNrdG9wLXdpZGUtMCwgLnB1c2gtZGVza3RvcC13aWRlLTEsIC5wdXNoLWRlc2t0b3Atd2lkZS0yLCAucHVzaC1kZXNrdG9wLXdpZGUtMywgLnB1c2gtZGVza3RvcC13aWRlLTQsIC5wdXNoLWRlc2t0b3Atd2lkZS01LCAucHVzaC1kZXNrdG9wLXdpZGUtNiwgLnB1c2gtZGVza3RvcC13aWRlLTcsIC5wdXNoLWRlc2t0b3Atd2lkZS04LCAucHVzaC1kZXNrdG9wLXdpZGUtOSwgLnB1c2gtZGVza3RvcC13aWRlLTEwLCAucHVzaC1kZXNrdG9wLXdpZGUtMTEsIC5wdXNoLWRlc2t0b3Atd2lkZS0xMiwgLnB1c2gtZGVza3RvcC13aWRlci0wLCAucHVzaC1kZXNrdG9wLXdpZGVyLTEsIC5wdXNoLWRlc2t0b3Atd2lkZXItMiwgLnB1c2gtZGVza3RvcC13aWRlci0zLCAucHVzaC1kZXNrdG9wLXdpZGVyLTQsIC5wdXNoLWRlc2t0b3Atd2lkZXItNSwgLnB1c2gtZGVza3RvcC13aWRlci02LCAucHVzaC1kZXNrdG9wLXdpZGVyLTcsIC5wdXNoLWRlc2t0b3Atd2lkZXItOCwgLnB1c2gtZGVza3RvcC13aWRlci05LCAucHVzaC1kZXNrdG9wLXdpZGVyLTEwLCAucHVzaC1kZXNrdG9wLXdpZGVyLTExLCAucHVzaC1kZXNrdG9wLXdpZGVyLTEyLCAucHVsbC0wLCAucHVsbC0xLCAucHVsbC0yLCAucHVsbC0zLCAucHVsbC00LCAucHVsbC01LCAucHVsbC02LCAucHVsbC03LCAucHVsbC04LCAucHVsbC05LCAucHVsbC0xMCwgLnB1bGwtMTEsIC5wdWxsLTEyLCAucHVsbC1tb2JpbGUtMCwgLnB1bGwtbW9iaWxlLTEsIC5wdWxsLW1vYmlsZS0yLCAucHVsbC1tb2JpbGUtMywgLnB1bGwtbW9iaWxlLTQsIC5wdWxsLW1vYmlsZS01LCAucHVsbC1tb2JpbGUtNiwgLnB1bGwtbW9iaWxlLTcsIC5wdWxsLW1vYmlsZS04LCAucHVsbC1tb2JpbGUtOSwgLnB1bGwtbW9iaWxlLTEwLCAucHVsbC1tb2JpbGUtMTEsIC5wdWxsLW1vYmlsZS0xMiwgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTAsIC5wdWxsLXRhYmxldC1wb3J0cmFpdC0xLCAucHVsbC10YWJsZXQtcG9ydHJhaXQtMiwgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTMsIC5wdWxsLXRhYmxldC1wb3J0cmFpdC00LCAucHVsbC10YWJsZXQtcG9ydHJhaXQtNSwgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTYsIC5wdWxsLXRhYmxldC1wb3J0cmFpdC03LCAucHVsbC10YWJsZXQtcG9ydHJhaXQtOCwgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTksIC5wdWxsLXRhYmxldC1wb3J0cmFpdC0xMCwgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTExLCAucHVsbC10YWJsZXQtcG9ydHJhaXQtMTIsIC5wdWxsLXRhYmxldC13aWRlLTAsIC5wdWxsLXRhYmxldC13aWRlLTEsIC5wdWxsLXRhYmxldC13aWRlLTIsIC5wdWxsLXRhYmxldC13aWRlLTMsIC5wdWxsLXRhYmxldC13aWRlLTQsIC5wdWxsLXRhYmxldC13aWRlLTUsIC5wdWxsLXRhYmxldC13aWRlLTYsIC5wdWxsLXRhYmxldC13aWRlLTcsIC5wdWxsLXRhYmxldC13aWRlLTgsIC5wdWxsLXRhYmxldC13aWRlLTksIC5wdWxsLXRhYmxldC13aWRlLTEwLCAucHVsbC10YWJsZXQtd2lkZS0xMSwgLnB1bGwtdGFibGV0LXdpZGUtMTIsIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtMCwgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS0xLCAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTIsIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtMywgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS00LCAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTUsIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtNiwgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS03LCAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTgsIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtOSwgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS0xMCwgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS0xMSwgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS0xMiwgLnB1bGwtZGVza3RvcC0wLCAucHVsbC1kZXNrdG9wLTEsIC5wdWxsLWRlc2t0b3AtMiwgLnB1bGwtZGVza3RvcC0zLCAucHVsbC1kZXNrdG9wLTQsIC5wdWxsLWRlc2t0b3AtNSwgLnB1bGwtZGVza3RvcC02LCAucHVsbC1kZXNrdG9wLTcsIC5wdWxsLWRlc2t0b3AtOCwgLnB1bGwtZGVza3RvcC05LCAucHVsbC1kZXNrdG9wLTEwLCAucHVsbC1kZXNrdG9wLTExLCAucHVsbC1kZXNrdG9wLTEyLCAucHVsbC1kZXNrdG9wLXdpZGUtMCwgLnB1bGwtZGVza3RvcC13aWRlLTEsIC5wdWxsLWRlc2t0b3Atd2lkZS0yLCAucHVsbC1kZXNrdG9wLXdpZGUtMywgLnB1bGwtZGVza3RvcC13aWRlLTQsIC5wdWxsLWRlc2t0b3Atd2lkZS01LCAucHVsbC1kZXNrdG9wLXdpZGUtNiwgLnB1bGwtZGVza3RvcC13aWRlLTcsIC5wdWxsLWRlc2t0b3Atd2lkZS04LCAucHVsbC1kZXNrdG9wLXdpZGUtOSwgLnB1bGwtZGVza3RvcC13aWRlLTEwLCAucHVsbC1kZXNrdG9wLXdpZGUtMTEsIC5wdWxsLWRlc2t0b3Atd2lkZS0xMiwgLnB1bGwtZGVza3RvcC13aWRlci0wLCAucHVsbC1kZXNrdG9wLXdpZGVyLTEsIC5wdWxsLWRlc2t0b3Atd2lkZXItMiwgLnB1bGwtZGVza3RvcC13aWRlci0zLCAucHVsbC1kZXNrdG9wLXdpZGVyLTQsIC5wdWxsLWRlc2t0b3Atd2lkZXItNSwgLnB1bGwtZGVza3RvcC13aWRlci02LCAucHVsbC1kZXNrdG9wLXdpZGVyLTcsIC5wdWxsLWRlc2t0b3Atd2lkZXItOCwgLnB1bGwtZGVza3RvcC13aWRlci05LCAucHVsbC1kZXNrdG9wLXdpZGVyLTEwLCAucHVsbC1kZXNrdG9wLXdpZGVyLTExLCAucHVsbC1kZXNrdG9wLXdpZGVyLTEyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jb250YWluZXIsIGZvb3RlciAuY3JlZGl0cywgZm9vdGVyIC5mb290ZXItbGlua3MsIC5uYXYsIC5uYXYgLm1lZ2FfZHJvcGRvd24sIC5mbG9hdGVkLWxhYmVscywgLmJyZWFkY3J1bWIsIC5zZWN0aW9uLWhlYWRpbmcsIC5tc2ZfZ2xvYmFsIHVsLCAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIHVsLCAuc3RhdHMuaW5saW5lLXN0YXRzLCAuc3RhdHMgdWwsIC5sYXRlc3RfZmVlZCwgLmxhdGVzdF9mZWVkIHVsLCAuc2hhcmVfYmFyLCBmb290ZXIgLnNvY2lhbCB1bCwgLmxpc3RpbmctZmlsdGVycywgLmZpbHRlcnMgdWwsIC5wb3Mtc3RhdGVtZW50LCAuY2FsbG91dCwgLndpZGUtbGlzdCB1bCwgLnNnLWhlYWRpbmcsIC5zZy1yb3csIC5jb2xvdXJzIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLnBhcmVudCwgLnBhcmVudC1tb2JpbGUsIC5wYXJlbnQtdGFibGV0LXBvcnRyYWl0LCAucGFyZW50LXRhYmxldC13aWRlLCAucGFyZW50LXRhYmxldC1sYW5kc2NhcGUsIC5wYXJlbnQtZGVza3RvcCwgLnBhcmVudC1kZXNrdG9wLXdpZGUsIC5wYXJlbnQtZGVza3RvcC13aWRlciB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5ncmlkLTAsIC5ncmlkLTEsIC5ncmlkLTIsIC5ncmlkLTMsIC5ncmlkLTQsIC5ncmlkLTUsIC5ncmlkLTYsIC5ncmlkLTcsIC5ncmlkLTgsIC5ncmlkLTksIC5ncmlkLTEwLCAuZ3JpZC0xMSwgLmdyaWQtMTIsIC5jb2wtbWQtNCwgLmNvbC1tZC02LCAuZ3JpZC1tb2JpbGUtMCwgLmdyaWQtbW9iaWxlLTEsIC5ncmlkLW1vYmlsZS0yLCAuZ3JpZC1tb2JpbGUtMywgLmdyaWQtbW9iaWxlLTQsIC5ncmlkLW1vYmlsZS01LCAuZ3JpZC1tb2JpbGUtNiwgLmdyaWQtbW9iaWxlLTcsIC5ncmlkLW1vYmlsZS04LCAuZ3JpZC1tb2JpbGUtOSwgLmdyaWQtbW9iaWxlLTEwLCAuZ3JpZC1tb2JpbGUtMTEsIC5ncmlkLW1vYmlsZS0xMiwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTAsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMiwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTMsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC00LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtNSwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTYsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC03LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtOCwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTksIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMCwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTExLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMTIsIC5ncmlkLXRhYmxldC13aWRlLTAsIC5ncmlkLXRhYmxldC13aWRlLTEsIC5ncmlkLXRhYmxldC13aWRlLTIsIC5ncmlkLXRhYmxldC13aWRlLTMsIC5ncmlkLXRhYmxldC13aWRlLTQsIC5ncmlkLXRhYmxldC13aWRlLTUsIC5ncmlkLXRhYmxldC13aWRlLTYsIC5ncmlkLXRhYmxldC13aWRlLTcsIC5ncmlkLXRhYmxldC13aWRlLTgsIC5ncmlkLXRhYmxldC13aWRlLTksIC5ncmlkLXRhYmxldC13aWRlLTEwLCAuZ3JpZC10YWJsZXQtd2lkZS0xMSwgLmdyaWQtdGFibGV0LXdpZGUtMTIsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMCwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xLCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTIsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMywgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS00LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTUsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNiwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS03LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTgsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtOSwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMCwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMSwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMiwgLmdyaWQtZGVza3RvcC0wLCAuZ3JpZC1kZXNrdG9wLTEsIC5jb2wtbWQtMSwgLmdyaWQtZGVza3RvcC0yLCAuY29sLW1kLTIsIC5ncmlkLWRlc2t0b3AtMywgLmNvbC1tZC0zLCAuZ3JpZC1kZXNrdG9wLTQsIC5ncmlkLWRlc2t0b3AtNSwgLmNvbC1tZC01LCAuZ3JpZC1kZXNrdG9wLTYsIC5ncmlkLWRlc2t0b3AtNywgLmNvbC1tZC03LCAuZ3JpZC1kZXNrdG9wLTgsIC5jb2wtbWQtOCwgLmdyaWQtZGVza3RvcC05LCAuY29sLW1kLTksIC5ncmlkLWRlc2t0b3AtMTAsIC5jb2wtbWQtMTAsIC5ncmlkLWRlc2t0b3AtMTEsIC5jb2wtbWQtMTEsIC5ncmlkLWRlc2t0b3AtMTIsIC5jb2wtbWQtMTIsIC5ncmlkLWRlc2t0b3Atd2lkZS0wLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMSwgLmdyaWQtZGVza3RvcC13aWRlLTIsIC5ncmlkLWRlc2t0b3Atd2lkZS0zLCAuZ3JpZC1kZXNrdG9wLXdpZGUtNCwgLmdyaWQtZGVza3RvcC13aWRlLTUsIC5ncmlkLWRlc2t0b3Atd2lkZS02LCAuZ3JpZC1kZXNrdG9wLXdpZGUtNywgLmdyaWQtZGVza3RvcC13aWRlLTgsIC5ncmlkLWRlc2t0b3Atd2lkZS05LCAuZ3JpZC1kZXNrdG9wLXdpZGUtMTAsIC5ncmlkLWRlc2t0b3Atd2lkZS0xMSwgLmdyaWQtZGVza3RvcC13aWRlLTEyLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTAsIC5ncmlkLWRlc2t0b3Atd2lkZXItMSwgLmdyaWQtZGVza3RvcC13aWRlci0yLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTMsIC5ncmlkLWRlc2t0b3Atd2lkZXItNCwgLmdyaWQtZGVza3RvcC13aWRlci01LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTYsIC5ncmlkLWRlc2t0b3Atd2lkZXItNywgLmdyaWQtZGVza3RvcC13aWRlci04LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTksIC5ncmlkLWRlc2t0b3Atd2lkZXItMTAsIC5ncmlkLWRlc2t0b3Atd2lkZXItMTEsIC5ncmlkLWRlc2t0b3Atd2lkZXItMTIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLyoqXG4gKiBTdHIgcmVwbGFjZVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSAgJHN0cmluZyAgICBTdHJpbmcgdGhhdCB5b3Ugd2FudCB0byByZXBsYWNlXG4gKiBAcGFyYW0ge3N0cmluZ30gICRzdWJzdHIgICAgU3RyaW5nIHRoYXQgaXMgdG8gYmUgcmVwbGFjZWQgYnkgYCRuZXdzdWJzdHJgXG4gKiBAcGFyYW0ge3N0cmluZ30gICRuZXdzdWJzdHIgU3RyaW5nIHRoYXQgcmVwbGFjZXMgYCRzdWJzdHJgXG4gKiBAcGFyYW0ge251bWJlcip9ICRhbGwgICAgICAgRmxhZyBmb3IgcmVwbGFjZWluZyBhbGwgKDErKSBvciBub3QgKDApXG4gKiBAcmV0dXJuIHtzdHJpbmd9XG4gKi9cbi8qKlxuICogTWFwIHNldFxuICpcbiAqIEBwYXJhbSBcdE1hcCBcdCRtYXAgXHRcdFRoZSBtYXAgdG8gdXNlXG4gKiBAcGFyYW0gXHRTdHJpbmcgXHQka2V5IFx0XHRUaGUga2V5IHRvIHVwZGF0ZVxuICogQHBhcmFtIFx0TWl4ZWQgXHQkdmFsdWUgXHRcdFRoZSBuZXcgdmFsdWVcbiAqIEByZXR1cm4gXHRNYXAgXHRcdFx0VGhlIG5ldyBtYXBcbiAqL1xuLyoqXG4gKiBHZXQgdGhlIGNvbHVtbiB3aWR0aCBpbiBwZXJjZW50IGZvciB0aGUgZ2xvYmFsIG9yIGEgc3BlY2lmaWMgY29udGV4dFxuICpcbiAqIEBwYXJhbSBcdGludCBcdFx0JGNvbHVtbnMgXHRcdFx0XHRcdFRoZSBudW1iZXIgb2YgY29sdW1ucyB0byBjYWxjdWxhdGVcbiAqIEBwYXJhbSBcdGludCBcdFx0JGNvbnRleHQgOiAkZ3JpZGxlLWNvbHVtbnMtY291bnQgXHQgXHRUaGUgY29udGV4dCB0byB1c2VcbiAqIEByZXR1cm4gXHRwZXJjZW50YWdlIFx0XHRcdFx0XHRcdFx0VGhlIHdpZHRoIGluIHBlcmNlbnRcbiAqL1xuLyoqXG4gKiAgR2V0IGEgc3RhdGUgbWFwXG4gKlxuICogQHBhcmFtIFx0c3RyaW5nIFx0XHQkbmFtZSBcdFx0VGhlIG5hbWUgb2YgdGhlIHN0YXRlIHRvIGdldFxuICogQHJldHVybiBcdG1hcCBcdFx0XHRcdEEgc3RhdGUgbWFwIG9iamVjdFxuICovXG4vKipcbiAqIENoZWNrIGlmIGEgc3RhdGUgZXhpc3QgOlxuICpcbiAqIEBwYXJhbSBcdHN0cmluZyBcdFx0JG5hbWUgXHRcdFRoZSBuYW1lIG9mIHRoZSBzdGF0ZSB0byBjaGVja1xuICogQHJldHVybiBcdEJvb2xlYW4gXHRcdFx0dHJ1ZSBpcyBleGlzdFxuICovXG4vKipcbiAqIEdldCB0aGUgbWVkaWEgcXVlcmllcyB2YXJpYWJsZXMgOlxuICpcbiAqIEBwYXJhbSBcdGludCBcdFx0JGluZGV4IFx0IFx0VGhlIG1lZGlhIHF1ZXJ5IGluZGVzXG4gKiBAcGFyYW0gXHRTdHJpbmcgXHRcdCR2YXIgXHRcdFRoZSBtZWRpYSBxdWVyeSB2YXJpYWJsZSBuYW1lXG4gKiBAcmV0dXJuIFx0U3RyaW5nfGludCBcdFx0XHRUaGUgdmFyaWFibGUgdmFsdWVcbiAqL1xuLyoqXG4gKiBHZXQgYSB2YXJpYWJsZVxuICpcbiAqIEBwYXJhbSBcdFN0cmluZyBcdFx0JHZhck5hbWUgXHRcdFx0XHRUaGUgdmFyaWFibGUgbmFtZVxuICogQHBhcmFtICBcdFN0cmluZyBcdFx0JHN0YXRlTWFwLW9yLXN0YXRlTmFtZSBcdCBcdFRoZSBzdGF0ZSBuYW1lIG9yIGEgbWFwIHN0YXRlIHZhbHVlXG4gKiBAcmV0dXJuIFx0TWl4ZWQgXHRcdFx0XHRcdFx0XHRUaGUgZmluZGVkIHZhbHVlXG4gKi9cbi8qKlxuICogU2V0IGEgdmFyaWFibGUgaW4gYSBzdGF0ZVxuICogQHBhcmFtIFx0TWl4ZWQgJHN0YXRlTmFtZS1vci1zdGF0ZUluZGV4IFx0VGhlIHN0YXRlIG5hbWUgb2Ygc3RhdGUgaW5kZXhcbiAqIEBwYXJhbSAgXHRTdHJpbmcgJHZhciAgICAgICAgICAgICAgICAgICAgXHRcdFZhcmlhYmxlIG5hbWUgdG8gYXNzaWduXG4gKiBAcGFyYW0gIFx0TWl4ZWQgJG5ld1ZhbHVlICAgICAgICAgIFx0XHRUaGUgbmV3IHZhbHVlIHRvIGFzc2lnblxuICogQHJldHVybiBcdExpc3QgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdFx0VGhlIHN0YXRlcyBsaXN0IChmdWxsKVxuICovXG4vKipcbiAqIEdlbmVyYXRlIGEgY29sdW1uXG4gKlxuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkbmFtZSBcdFx0XHRUaGUgY29sdW1uIG5hbWUgKG9mdGVuIGNvdW50KVxuICogQHBhcmFtIFx0aW50IFx0XHQkY29sdW1ucyBcdFx0VGhlIGNvbHVtbiBjb3VudCB0aGF0IHRoZSBjb2x1bW4gd2lsbCB0YWtlXG4gKiBAcGFyYW0gXHRpbnQgXHRcdCRjb250ZXh0IFx0XHRUaGUgY29udGV4dCBvbiB3aXRjaCB0aGUgd2l0aCB3aWxsIGJlIGNhbGN1bGVkXG4gKiBAcGFyYW0gXHRCb29sZWFuIFx0JGdlbmVyYXRlQ2xhc3NlcyBcdFNldCBpZiB0aGUgY29sdW1uIGhhcyB0byBiZSBnZW5lcmF0ZWQgaW4gY3NzXG4gKi9cbi8qKlxuICogR2VuZXJhdGUgY2xhc3NuYW1lXG4gKlxuICogQHBhcmFtIFx0TGlzdCBcdFx0JHBhcnJlcm4gXHRUaGUgcGF0dGVybiB0byB1c2UgdG8gZ2VuZXJhdGUgY2xhc3NuYW1lXG4gKiBAcGFyYW0gXHRTdHJpbmcgXHRcdCRzdGF0ZSBcdFx0VGhlIHN0YXRlXG4gKiBAcGFyYW0gXHRpbnQgXHRcdCRjb3VudCBcdFx0VGhlIGNvbHVtbiBjb3VudFxuICovXG4vKipcbiAqIEdldCB0aGUgbWVkaWEgcXVlcnkgZm9yIGEgcGFydGljdWxhciBzdGF0ZSwgb3Igd2l0aCwgZXRjLi4uXG4gKlxuICogQHBhcmFtIFx0TWl4ZWQgXHRcdCRzdGF0ZS1vci1taW4td2lkdGggXHRcdFRoZSBzdGF0ZSBuYW1lIG9mIHRoZSBtaW4gd2l0aFxuICogQHBhcmFtIFx0TWl4ZWQgXHRcdCRtYXgtd2lkdGggXHRcdFx0VGhlIG1heCB3aWR0aCBpZiBmaXJzdCBwYXJhbSBpcyBhIG1pbiB3aWR0aFxuICogQHJldHVybiBcdFN0cmluZyBcdFx0XHRcdFx0XHRUaGUgbWVkaWEgcXVlcnkgc3RyaW5nIHdpdGhvdXQgdGhlIEBtZWRpYVxuICovXG4vKipcbiAqIEdldCBzdGF0ZXMgY291bnRcbiAqIFxuICogQHJldHVybiBcdGludCBcdFRoZSBudW1iZXIgb2Ygc3RhdGVzIGRlZmluZWRcbiAqL1xuLyoqXG4gKiBTZXR1cFxuICovXG4vKipcbiAqICBSZWdpc3RlciBhIGNsZWFyIGVhY2ggY2xhc3NcbiAqL1xuLyoqXG4gKiBSZWdpc3RlciBhIHNwZWNpYWwgY2xhc3NcbiAqL1xuLyoqXG4gKiBSZWdpc3RlciBkZWZhdWx0IHN0YXRlc1xuICovXG4vKipcbiAqIFJlZ2lzdGVyIGRlZmF1bHQgbW9iaWxlIGZpcnN0IHN0YXRlcyA6XG4gKi9cbi8qKlxuICogU2V0IHRoZSBkZWJ1ZyBkZXZpY2UgKG5vdCB1c2VkIGZvciBub3cpXG4gKiBcbiAqIEBwYXJhbSBcdFN0cmluZyBcdFx0JHN0YXRlIFx0XHRUaGUgc3RhdGUgdG8gdXBkYXRlXG4gKiBAcGFyYSBtIFx0U3RyaW5nIFx0XHQkZGV2aWNlIFx0VGhlIGRldmljZSB0byB1c2UgKGlwaG9uZSwgZXRjLi4uKVxuICovXG4vKipcbiAqIFBhcmVudCBjbGVhciBlYWNoXG4gKi9cbi8qKlxuICogVmVydGljYWwgYWxpZ24gOlxuICovXG4vKipcbiAqIFNob3cgaW5saW5lXG4gKlxuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkc3RhdGUgXHRcdFRoZSBzdGF0ZSBuYW1lXG4gKi9cbi8qKlxuICogR2VuZXJhdGUgYSBjdXN0b20gY2xhc3MgZm9yIGFsbCB0aGUgc3RhdGVzXG4gKlxuICogQHBhcmFtIFx0bGlzdCBcdCRwYXR0ZXJuIFx0XHRUaGUgbmFtZSBwYXR0ZXJuIG9mIHRoZSBjbGFzc1xuICogQHBhcmFtIFx0bGlzdCBcdCRzdGF0ZXNOYW1lcyBcdFx0VGhlIHN0YXRlcyBuYW1lcyB0byBnZW5lcmF0ZVxuICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICBALW1zLXZpZXdwb3J0IHtcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9IH1cblxuI2dyaWRsZS1zZXR0aW5ncyB7XG4gIGNvbnRlbnQ6ICd7IFwidmVyc2lvblwiIDogXCIxLjMuNDBcIiwgXCJzdGF0ZXNcIiA6IHsgXCJyZXRpbmFcIjp7IFwicXVlcnlcIiA6IFwiKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweClcIiwgXCJjbGFzc2VzXCIgOiBmYWxzZSwgXCJuYW1lXCIgOiBcInJldGluYVwiLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJ0dlwiOnsgXCJxdWVyeVwiIDogXCJvbmx5IHR2XCIsIFwiY2xhc3Nlc1wiIDogZmFsc2UsIFwibmFtZVwiIDogXCJ0dlwiLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJwcmludFwiOnsgXCJxdWVyeVwiIDogXCJvbmx5IHByaW50XCIsIFwiY2xhc3Nlc1wiIDogZmFsc2UsIFwibmFtZVwiIDogXCJwcmludFwiLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJwb3J0cmFpdFwiOnsgXCJxdWVyeVwiIDogXCJvbmx5IHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdClcIiwgXCJjbGFzc2VzXCIgOiBmYWxzZSwgXCJuYW1lXCIgOiBcInBvcnRyYWl0XCIsIFwiX2dyaWRsZVwiIDogdHJ1ZSB9LCBcImxhbmRzY2FwZVwiOnsgXCJxdWVyeVwiIDogXCJvbmx5IHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpXCIsIFwiY2xhc3Nlc1wiIDogZmFsc2UsIFwibmFtZVwiIDogXCJsYW5kc2NhcGVcIiwgXCJfZ3JpZGxlXCIgOiB0cnVlIH0sIFwiZGVmYXVsdFwiOnsgXCJuYW1lXCIgOiBcImRlZmF1bHRcIiwgXCJtaW4td2lkdGhcIiA6IG51bGwsIFwibWF4LXdpZHRoXCIgOiBudWxsLCBcInF1ZXJ5XCIgOiBudWxsLCBcImNsYXNzZXNcIiA6IHRydWUsIFwiY29udGV4dFwiIDogXCIxMlwiLCBcImd1dHRlci13aWR0aFwiIDogXCI0MHB4XCIsIFwiZGlyZWN0aW9uXCIgOiBcImx0clwiLCBcIm5hbWUtbXVsdGlwbGljYXRvclwiIDogXCIxXCIsIFwiZGVidWdcIiA6IGZhbHNlLCBcImRlYnVnLXNob3ctY2xhc3MtbmFtZXNcIiA6IHRydWUsIFwiaWU3LXN1cHBvcnRcIiA6IGZhbHNlLCBcImh0bWwtc3RhdGVzLWNsYXNzZXNcIiA6IGZhbHNlLCBcImdlbmVyYXRlLXB1c2gtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1wdWxsLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHJlZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtaGVscGVycy1jbGFzc2VzXCIgOiB0cnVlLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJtb2JpbGVcIjp7IFwibmFtZVwiIDogXCJtb2JpbGVcIiwgXCJtaW4td2lkdGhcIiA6IFwiNDE0cHhcIiwgXCJtYXgtd2lkdGhcIiA6IG51bGwsIFwicXVlcnlcIiA6IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweClcIiwgXCJjbGFzc2VzXCIgOiB0cnVlLCBcImNvbnRleHRcIiA6IFwiMTJcIiwgXCJndXR0ZXItd2lkdGhcIiA6IFwiNDBweFwiLCBcImRpcmVjdGlvblwiIDogXCJsdHJcIiwgXCJuYW1lLW11bHRpcGxpY2F0b3JcIiA6IFwiMVwiLCBcImRlYnVnXCIgOiBmYWxzZSwgXCJkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzXCIgOiB0cnVlLCBcImllNy1zdXBwb3J0XCIgOiBmYWxzZSwgXCJodG1sLXN0YXRlcy1jbGFzc2VzXCIgOiBmYWxzZSwgXCJnZW5lcmF0ZS1wdXNoLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHVsbC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXByZWZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXN1ZmZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLWhlbHBlcnMtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJfZ3JpZGxlXCIgOiB0cnVlIH0sIFwidGFibGV0LXBvcnRyYWl0XCI6eyBcIm5hbWVcIiA6IFwidGFibGV0LXBvcnRyYWl0XCIsIFwibWluLXdpZHRoXCIgOiBcIjQ4MXB4XCIsIFwibWF4LXdpZHRoXCIgOiBudWxsLCBcInF1ZXJ5XCIgOiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpXCIsIFwiY2xhc3Nlc1wiIDogdHJ1ZSwgXCJjb250ZXh0XCIgOiBcIjEyXCIsIFwiZ3V0dGVyLXdpZHRoXCIgOiBcIjQwcHhcIiwgXCJkaXJlY3Rpb25cIiA6IFwibHRyXCIsIFwibmFtZS1tdWx0aXBsaWNhdG9yXCIgOiBcIjFcIiwgXCJkZWJ1Z1wiIDogZmFsc2UsIFwiZGVidWctc2hvdy1jbGFzcy1uYW1lc1wiIDogdHJ1ZSwgXCJpZTctc3VwcG9ydFwiIDogZmFsc2UsIFwiaHRtbC1zdGF0ZXMtY2xhc3Nlc1wiIDogZmFsc2UsIFwiZ2VuZXJhdGUtcHVzaC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXB1bGwtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1wcmVmaXgtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1zdWZmaXgtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1oZWxwZXJzLWNsYXNzZXNcIiA6IHRydWUsIFwiX2dyaWRsZVwiIDogdHJ1ZSB9LCBcInRhYmxldC13aWRlXCI6eyBcIm5hbWVcIiA6IFwidGFibGV0LXdpZGVcIiwgXCJtaW4td2lkdGhcIiA6IFwiNTg3cHhcIiwgXCJtYXgtd2lkdGhcIiA6IG51bGwsIFwicXVlcnlcIiA6IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiA1ODdweClcIiwgXCJjbGFzc2VzXCIgOiB0cnVlLCBcImNvbnRleHRcIiA6IFwiMTJcIiwgXCJndXR0ZXItd2lkdGhcIiA6IFwiNDBweFwiLCBcImRpcmVjdGlvblwiIDogXCJsdHJcIiwgXCJuYW1lLW11bHRpcGxpY2F0b3JcIiA6IFwiMVwiLCBcImRlYnVnXCIgOiBmYWxzZSwgXCJkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzXCIgOiB0cnVlLCBcImllNy1zdXBwb3J0XCIgOiBmYWxzZSwgXCJodG1sLXN0YXRlcy1jbGFzc2VzXCIgOiBmYWxzZSwgXCJnZW5lcmF0ZS1wdXNoLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHVsbC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXByZWZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXN1ZmZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLWhlbHBlcnMtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJfZ3JpZGxlXCIgOiB0cnVlIH0sIFwidGFibGV0LWxhbmRzY2FwZVwiOnsgXCJuYW1lXCIgOiBcInRhYmxldC1sYW5kc2NhcGVcIiwgXCJtaW4td2lkdGhcIiA6IFwiNzY5cHhcIiwgXCJtYXgtd2lkdGhcIiA6IG51bGwsIFwicXVlcnlcIiA6IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweClcIiwgXCJjbGFzc2VzXCIgOiB0cnVlLCBcImNvbnRleHRcIiA6IFwiMTJcIiwgXCJndXR0ZXItd2lkdGhcIiA6IFwiNDBweFwiLCBcImRpcmVjdGlvblwiIDogXCJsdHJcIiwgXCJuYW1lLW11bHRpcGxpY2F0b3JcIiA6IFwiMVwiLCBcImRlYnVnXCIgOiBmYWxzZSwgXCJkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzXCIgOiB0cnVlLCBcImllNy1zdXBwb3J0XCIgOiBmYWxzZSwgXCJodG1sLXN0YXRlcy1jbGFzc2VzXCIgOiBmYWxzZSwgXCJnZW5lcmF0ZS1wdXNoLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHVsbC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXByZWZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXN1ZmZpeC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLWhlbHBlcnMtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJfZ3JpZGxlXCIgOiB0cnVlIH0sIFwiZGVza3RvcFwiOnsgXCJuYW1lXCIgOiBcImRlc2t0b3BcIiwgXCJtaW4td2lkdGhcIiA6IFwiMTAyNXB4XCIsIFwibWF4LXdpZHRoXCIgOiBudWxsLCBcInF1ZXJ5XCIgOiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KVwiLCBcImNsYXNzZXNcIiA6IHRydWUsIFwiY29udGV4dFwiIDogXCIxMlwiLCBcImd1dHRlci13aWR0aFwiIDogXCI2MHB4XCIsIFwiZGlyZWN0aW9uXCIgOiBcImx0clwiLCBcIm5hbWUtbXVsdGlwbGljYXRvclwiIDogXCIxXCIsIFwiZGVidWdcIiA6IGZhbHNlLCBcImRlYnVnLXNob3ctY2xhc3MtbmFtZXNcIiA6IHRydWUsIFwiaWU3LXN1cHBvcnRcIiA6IGZhbHNlLCBcImh0bWwtc3RhdGVzLWNsYXNzZXNcIiA6IGZhbHNlLCBcImdlbmVyYXRlLXB1c2gtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1wdWxsLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHJlZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtaGVscGVycy1jbGFzc2VzXCIgOiB0cnVlLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJkZXNrdG9wLXdpZGVcIjp7IFwibmFtZVwiIDogXCJkZXNrdG9wLXdpZGVcIiwgXCJtaW4td2lkdGhcIiA6IFwiMTMwMHB4XCIsIFwibWF4LXdpZHRoXCIgOiBudWxsLCBcInF1ZXJ5XCIgOiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KVwiLCBcImNsYXNzZXNcIiA6IHRydWUsIFwiY29udGV4dFwiIDogXCIxMlwiLCBcImd1dHRlci13aWR0aFwiIDogXCI0MHB4XCIsIFwiZGlyZWN0aW9uXCIgOiBcImx0clwiLCBcIm5hbWUtbXVsdGlwbGljYXRvclwiIDogXCIxXCIsIFwiZGVidWdcIiA6IGZhbHNlLCBcImRlYnVnLXNob3ctY2xhc3MtbmFtZXNcIiA6IHRydWUsIFwiaWU3LXN1cHBvcnRcIiA6IGZhbHNlLCBcImh0bWwtc3RhdGVzLWNsYXNzZXNcIiA6IGZhbHNlLCBcImdlbmVyYXRlLXB1c2gtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1wdWxsLWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtcHJlZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXNcIiA6IHRydWUsIFwiZ2VuZXJhdGUtaGVscGVycy1jbGFzc2VzXCIgOiB0cnVlLCBcIl9ncmlkbGVcIiA6IHRydWUgfSwgXCJkZXNrdG9wLXdpZGVyXCI6eyBcIm5hbWVcIiA6IFwiZGVza3RvcC13aWRlclwiLCBcIm1pbi13aWR0aFwiIDogXCIxNjAwcHhcIiwgXCJtYXgtd2lkdGhcIiA6IG51bGwsIFwicXVlcnlcIiA6IFwic2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpXCIsIFwiY2xhc3Nlc1wiIDogdHJ1ZSwgXCJjb250ZXh0XCIgOiBcIjEyXCIsIFwiZ3V0dGVyLXdpZHRoXCIgOiBcIjQwcHhcIiwgXCJkaXJlY3Rpb25cIiA6IFwibHRyXCIsIFwibmFtZS1tdWx0aXBsaWNhdG9yXCIgOiBcIjFcIiwgXCJkZWJ1Z1wiIDogZmFsc2UsIFwiZGVidWctc2hvdy1jbGFzcy1uYW1lc1wiIDogdHJ1ZSwgXCJpZTctc3VwcG9ydFwiIDogZmFsc2UsIFwiaHRtbC1zdGF0ZXMtY2xhc3Nlc1wiIDogZmFsc2UsIFwiZ2VuZXJhdGUtcHVzaC1jbGFzc2VzXCIgOiB0cnVlLCBcImdlbmVyYXRlLXB1bGwtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1wcmVmaXgtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1zdWZmaXgtY2xhc3Nlc1wiIDogdHJ1ZSwgXCJnZW5lcmF0ZS1oZWxwZXJzLWNsYXNzZXNcIiA6IHRydWUsIFwiX2dyaWRsZVwiIDogdHJ1ZSB9fSB9JzsgfVxuXG4uZ3JpZC0wLCAuZ3JpZC0xLCAuZ3JpZC0yLCAuZ3JpZC0zLCAuZ3JpZC00LCAuZ3JpZC01LCAuZ3JpZC02LCAuZ3JpZC03LCAuZ3JpZC04LCAuZ3JpZC05LCAuZ3JpZC0xMCwgLmdyaWQtMTEsIC5ncmlkLTEyLCAuY29sLW1kLTQsIC5jb2wtbWQtNiwgLmdyaWQtbW9iaWxlLTAsIC5ncmlkLW1vYmlsZS0xLCAuZ3JpZC1tb2JpbGUtMiwgLmdyaWQtbW9iaWxlLTMsIC5ncmlkLW1vYmlsZS00LCAuZ3JpZC1tb2JpbGUtNSwgLmdyaWQtbW9iaWxlLTYsIC5ncmlkLW1vYmlsZS03LCAuZ3JpZC1tb2JpbGUtOCwgLmdyaWQtbW9iaWxlLTksIC5ncmlkLW1vYmlsZS0xMCwgLmdyaWQtbW9iaWxlLTExLCAuZ3JpZC1tb2JpbGUtMTIsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0wLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMSwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTIsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0zLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtNCwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTUsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC02LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtNywgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTgsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC05LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMTAsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMSwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTEyLCAuZ3JpZC10YWJsZXQtd2lkZS0wLCAuZ3JpZC10YWJsZXQtd2lkZS0xLCAuZ3JpZC10YWJsZXQtd2lkZS0yLCAuZ3JpZC10YWJsZXQtd2lkZS0zLCAuZ3JpZC10YWJsZXQtd2lkZS00LCAuZ3JpZC10YWJsZXQtd2lkZS01LCAuZ3JpZC10YWJsZXQtd2lkZS02LCAuZ3JpZC10YWJsZXQtd2lkZS03LCAuZ3JpZC10YWJsZXQtd2lkZS04LCAuZ3JpZC10YWJsZXQtd2lkZS05LCAuZ3JpZC10YWJsZXQtd2lkZS0xMCwgLmdyaWQtdGFibGV0LXdpZGUtMTEsIC5ncmlkLXRhYmxldC13aWRlLTEyLCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTAsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMSwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0yLCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTMsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNCwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS01LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTYsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNywgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS04LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTksIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMTAsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMTEsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMTIsIC5ncmlkLWRlc2t0b3AtMCwgLmdyaWQtZGVza3RvcC0xLCAuY29sLW1kLTEsIC5ncmlkLWRlc2t0b3AtMiwgLmNvbC1tZC0yLCAuZ3JpZC1kZXNrdG9wLTMsIC5jb2wtbWQtMywgLmdyaWQtZGVza3RvcC00LCAuY29sLW1kLTQsIC5ncmlkLWRlc2t0b3AtNSwgLmNvbC1tZC01LCAuZ3JpZC1kZXNrdG9wLTYsIC5jb2wtbWQtNiwgLmdyaWQtZGVza3RvcC03LCAuY29sLW1kLTcsIC5ncmlkLWRlc2t0b3AtOCwgLmNvbC1tZC04LCAuZ3JpZC1kZXNrdG9wLTksIC5jb2wtbWQtOSwgLmdyaWQtZGVza3RvcC0xMCwgLmNvbC1tZC0xMCwgLmdyaWQtZGVza3RvcC0xMSwgLmNvbC1tZC0xMSwgLmdyaWQtZGVza3RvcC0xMiwgLmNvbC1tZC0xMiwgLmdyaWQtZGVza3RvcC13aWRlLTAsIC5ncmlkLWRlc2t0b3Atd2lkZS0xLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMiwgLmdyaWQtZGVza3RvcC13aWRlLTMsIC5ncmlkLWRlc2t0b3Atd2lkZS00LCAuZ3JpZC1kZXNrdG9wLXdpZGUtNSwgLmdyaWQtZGVza3RvcC13aWRlLTYsIC5ncmlkLWRlc2t0b3Atd2lkZS03LCAuZ3JpZC1kZXNrdG9wLXdpZGUtOCwgLmdyaWQtZGVza3RvcC13aWRlLTksIC5ncmlkLWRlc2t0b3Atd2lkZS0xMCwgLmdyaWQtZGVza3RvcC13aWRlLTExLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMTIsIC5ncmlkLWRlc2t0b3Atd2lkZXItMCwgLmdyaWQtZGVza3RvcC13aWRlci0xLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTIsIC5ncmlkLWRlc2t0b3Atd2lkZXItMywgLmdyaWQtZGVza3RvcC13aWRlci00LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTUsIC5ncmlkLWRlc2t0b3Atd2lkZXItNiwgLmdyaWQtZGVza3RvcC13aWRlci03LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTgsIC5ncmlkLWRlc2t0b3Atd2lkZXItOSwgLmdyaWQtZGVza3RvcC13aWRlci0xMCwgLmdyaWQtZGVza3RvcC13aWRlci0xMSwgLmdyaWQtZGVza3RvcC13aWRlci0xMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXJlY3Rpb246IGx0cjtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5ncmlkLTAsIC5ncmlkLTEsIC5ncmlkLTIsIC5ncmlkLTMsIC5ncmlkLTQsIC5ncmlkLTUsIC5ncmlkLTYsIC5ncmlkLTcsIC5ncmlkLTgsIC5ncmlkLTksIC5ncmlkLTEwLCAuZ3JpZC0xMSwgLmdyaWQtMTIsIC5jb2wtbWQtNCwgLmNvbC1tZC02LCAuZ3JpZC1tb2JpbGUtMCwgLmdyaWQtbW9iaWxlLTEsIC5ncmlkLW1vYmlsZS0yLCAuZ3JpZC1tb2JpbGUtMywgLmdyaWQtbW9iaWxlLTQsIC5ncmlkLW1vYmlsZS01LCAuZ3JpZC1tb2JpbGUtNiwgLmdyaWQtbW9iaWxlLTcsIC5ncmlkLW1vYmlsZS04LCAuZ3JpZC1tb2JpbGUtOSwgLmdyaWQtbW9iaWxlLTEwLCAuZ3JpZC1tb2JpbGUtMTEsIC5ncmlkLW1vYmlsZS0xMiwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTAsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMiwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTMsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC00LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtNSwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTYsIC5ncmlkLXRhYmxldC1wb3J0cmFpdC03LCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtOCwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTksIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMCwgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTExLCAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMTIsIC5ncmlkLXRhYmxldC13aWRlLTAsIC5ncmlkLXRhYmxldC13aWRlLTEsIC5ncmlkLXRhYmxldC13aWRlLTIsIC5ncmlkLXRhYmxldC13aWRlLTMsIC5ncmlkLXRhYmxldC13aWRlLTQsIC5ncmlkLXRhYmxldC13aWRlLTUsIC5ncmlkLXRhYmxldC13aWRlLTYsIC5ncmlkLXRhYmxldC13aWRlLTcsIC5ncmlkLXRhYmxldC13aWRlLTgsIC5ncmlkLXRhYmxldC13aWRlLTksIC5ncmlkLXRhYmxldC13aWRlLTEwLCAuZ3JpZC10YWJsZXQtd2lkZS0xMSwgLmdyaWQtdGFibGV0LXdpZGUtMTIsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMCwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xLCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTIsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMywgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS00LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTUsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNiwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS03LCAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTgsIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtOSwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMCwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMSwgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMiwgLmdyaWQtZGVza3RvcC0wLCAuZ3JpZC1kZXNrdG9wLTEsIC5jb2wtbWQtMSwgLmdyaWQtZGVza3RvcC0yLCAuY29sLW1kLTIsIC5ncmlkLWRlc2t0b3AtMywgLmNvbC1tZC0zLCAuZ3JpZC1kZXNrdG9wLTQsIC5jb2wtbWQtNCwgLmdyaWQtZGVza3RvcC01LCAuY29sLW1kLTUsIC5ncmlkLWRlc2t0b3AtNiwgLmNvbC1tZC02LCAuZ3JpZC1kZXNrdG9wLTcsIC5jb2wtbWQtNywgLmdyaWQtZGVza3RvcC04LCAuY29sLW1kLTgsIC5ncmlkLWRlc2t0b3AtOSwgLmNvbC1tZC05LCAuZ3JpZC1kZXNrdG9wLTEwLCAuY29sLW1kLTEwLCAuZ3JpZC1kZXNrdG9wLTExLCAuY29sLW1kLTExLCAuZ3JpZC1kZXNrdG9wLTEyLCAuY29sLW1kLTEyLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMCwgLmdyaWQtZGVza3RvcC13aWRlLTEsIC5ncmlkLWRlc2t0b3Atd2lkZS0yLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMywgLmdyaWQtZGVza3RvcC13aWRlLTQsIC5ncmlkLWRlc2t0b3Atd2lkZS01LCAuZ3JpZC1kZXNrdG9wLXdpZGUtNiwgLmdyaWQtZGVza3RvcC13aWRlLTcsIC5ncmlkLWRlc2t0b3Atd2lkZS04LCAuZ3JpZC1kZXNrdG9wLXdpZGUtOSwgLmdyaWQtZGVza3RvcC13aWRlLTEwLCAuZ3JpZC1kZXNrdG9wLXdpZGUtMTEsIC5ncmlkLWRlc2t0b3Atd2lkZS0xMiwgLmdyaWQtZGVza3RvcC13aWRlci0wLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTEsIC5ncmlkLWRlc2t0b3Atd2lkZXItMiwgLmdyaWQtZGVza3RvcC13aWRlci0zLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTQsIC5ncmlkLWRlc2t0b3Atd2lkZXItNSwgLmdyaWQtZGVza3RvcC13aWRlci02LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTcsIC5ncmlkLWRlc2t0b3Atd2lkZXItOCwgLmdyaWQtZGVza3RvcC13aWRlci05LCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTEwLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTExLCAuZ3JpZC1kZXNrdG9wLXdpZGVyLTEyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuXG4uZ3JpZC0wIHtcbiAgd2lkdGg6IDAlOyB9XG5cbi5wdXNoLTAge1xuICBsZWZ0OiAwJTsgfVxuXG4ucHVsbC0wIHtcbiAgcmlnaHQ6IDAlOyB9XG5cbi5wcmVmaXgtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc3VmZml4LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG5cbi5ncmlkLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLnB1c2gtMSB7XG4gIGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5wdWxsLTEge1xuICByaWdodDogOC4zMzMzMyU7IH1cblxuLnByZWZpeC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zdWZmaXgtMSB7XG4gIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cblxuLmdyaWQtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnB1c2gtMiB7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4ucHVsbC0yIHtcbiAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuXG4ucHJlZml4LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zdWZmaXgtMiB7XG4gIG1hcmdpbi1yaWdodDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5wdXNoLTMge1xuICBsZWZ0OiAyNSU7IH1cblxuLnB1bGwtMyB7XG4gIHJpZ2h0OiAyNSU7IH1cblxuLnByZWZpeC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc3VmZml4LTMge1xuICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuXG4uZ3JpZC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4ucHVzaC00IHtcbiAgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5wdWxsLTQge1xuICByaWdodDogMzMuMzMzMzMlOyB9XG5cbi5wcmVmaXgtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnN1ZmZpeC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnB1c2gtNSB7XG4gIGxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4ucHVsbC01IHtcbiAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuXG4ucHJlZml4LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zdWZmaXgtNSB7XG4gIG1hcmdpbi1yaWdodDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5wdXNoLTYge1xuICBsZWZ0OiA1MCU7IH1cblxuLnB1bGwtNiB7XG4gIHJpZ2h0OiA1MCU7IH1cblxuLnByZWZpeC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc3VmZml4LTYge1xuICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuXG4uZ3JpZC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4ucHVzaC03IHtcbiAgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5wdWxsLTcge1xuICByaWdodDogNTguMzMzMzMlOyB9XG5cbi5wcmVmaXgtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnN1ZmZpeC03IHtcbiAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnB1c2gtOCB7XG4gIGxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4ucHVsbC04IHtcbiAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuXG4ucHJlZml4LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zdWZmaXgtOCB7XG4gIG1hcmdpbi1yaWdodDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5wdXNoLTkge1xuICBsZWZ0OiA3NSU7IH1cblxuLnB1bGwtOSB7XG4gIHJpZ2h0OiA3NSU7IH1cblxuLnByZWZpeC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc3VmZml4LTkge1xuICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuXG4uZ3JpZC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnB1c2gtMTAge1xuICBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLnB1bGwtMTAge1xuICByaWdodDogODMuMzMzMzMlOyB9XG5cbi5wcmVmaXgtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zdWZmaXgtMTAge1xuICBtYXJnaW4tcmlnaHQ6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnB1c2gtMTEge1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLnB1bGwtMTEge1xuICByaWdodDogOTEuNjY2NjclOyB9XG5cbi5wcmVmaXgtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zdWZmaXgtMTEge1xuICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC0xMiwgLmNvbC1tZC00LCAuY29sLW1kLTYge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucHVzaC0xMiB7XG4gIGxlZnQ6IDEwMCU7IH1cblxuLnB1bGwtMTIge1xuICByaWdodDogMTAwJTsgfVxuXG4ucHJlZml4LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7IH1cblxuLnN1ZmZpeC0xMiB7XG4gIG1hcmdpbi1yaWdodDogMTAwJTsgfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uY2xlYXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uY2xlYXItbGVmdCB7XG4gIGNsZWFyOiBsZWZ0OyB9XG5cbi5jbGVhci1yaWdodCB7XG4gIGNsZWFyOiByaWdodDsgfVxuXG4ubm8tZ3V0dGVyLFxuLm5vLW1hcmdpbiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubm8tZ3V0dGVyLWxlZnQsXG4ubm8tbWFyZ2luLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLm5vLWd1dHRlci1yaWdodCxcbi5uby1tYXJnaW4tcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5uby1ndXR0ZXItdG9wLFxuLm5vLW1hcmdpbi10b3Age1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ubm8tZ3V0dGVyLWJvdHRvbSxcbi5uby1tYXJnaW4tYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmd1dHRlcixcbi5tYXJnaW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG5cbi5ndXR0ZXItbGVmdCxcbi5tYXJnaW4tbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDsgfVxuXG4uZ3V0dGVyLXJpZ2h0LFxuLm1hcmdpbi1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cblxuLmd1dHRlci10b3AsXG4ubWFyZ2luLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4OyB9XG5cbi5ndXR0ZXItYm90dG9tLFxuLm1hcmdpbi1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuXG4uYXV0by1oZWlnaHQge1xuICBoZWlnaHQ6IGluaGVyaXQ7IH1cblxuLmNlbnRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7IH1cblxuLnBhcmVudCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4udmVydGljYWwtYWxpZ24tbWlkZGxlIHtcbiAgZm9udC1zaXplOiAwO1xuICBjbGVhcjogYm90aDsgfVxuICAudmVydGljYWwtYWxpZ24tbWlkZGxlID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuLnZlcnRpY2FsLWFsaWduLXRvcCB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgLnZlcnRpY2FsLWFsaWduLXRvcCA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi52ZXJ0aWNhbC1hbGlnbi1ib3R0b20ge1xuICBmb250LXNpemU6IDA7XG4gIGNsZWFyOiBib3RoOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi1ib3R0b20gPiAqIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4vKipcblx0ICogVmlzaWJsZSwgaGlkZSwgZXRjLi4uXG5cdCAqL1xuLmhpZGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5ub3QtdmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zaG93LWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLyoqXG5cdCAqIENsZWFyIGVhY2ggY2xhc3MgOlxuXHQgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxNHB4KSB7XG4gIC5ncmlkLW1vYmlsZS0wIHtcbiAgICB3aWR0aDogMCU7IH1cbiAgLnB1c2gtbW9iaWxlLTAge1xuICAgIGxlZnQ6IDAlOyB9XG4gIC5wdWxsLW1vYmlsZS0wIHtcbiAgICByaWdodDogMCU7IH1cbiAgLnByZWZpeC1tb2JpbGUtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5zdWZmaXgtbW9iaWxlLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgLmdyaWQtbW9iaWxlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucHVzaC1tb2JpbGUtMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnB1bGwtbW9iaWxlLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAucHJlZml4LW1vYmlsZS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tb2JpbGUtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAucHVzaC1tb2JpbGUtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5wdWxsLW1vYmlsZS0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5wcmVmaXgtbW9iaWxlLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtbW9iaWxlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnB1c2gtbW9iaWxlLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAucHVsbC1tb2JpbGUtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAucHJlZml4LW1vYmlsZS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5zdWZmaXgtbW9iaWxlLTMge1xuICAgIG1hcmdpbi1yaWdodDogMjUlOyB9XG4gIC5ncmlkLW1vYmlsZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5wdXNoLW1vYmlsZS00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnB1bGwtbW9iaWxlLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLnByZWZpeC1tb2JpbGUtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuc3VmZml4LW1vYmlsZS00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tb2JpbGUtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAucHVzaC1tb2JpbGUtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5wdWxsLW1vYmlsZS01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5wcmVmaXgtbW9iaWxlLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtbW9iaWxlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnB1c2gtbW9iaWxlLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAucHVsbC1tb2JpbGUtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAucHJlZml4LW1vYmlsZS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5zdWZmaXgtbW9iaWxlLTYge1xuICAgIG1hcmdpbi1yaWdodDogNTAlOyB9XG4gIC5ncmlkLW1vYmlsZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5wdXNoLW1vYmlsZS03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnB1bGwtbW9iaWxlLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLnByZWZpeC1tb2JpbGUtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuc3VmZml4LW1vYmlsZS03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tb2JpbGUtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAucHVzaC1tb2JpbGUtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5wdWxsLW1vYmlsZS04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5wcmVmaXgtbW9iaWxlLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtbW9iaWxlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnB1c2gtbW9iaWxlLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAucHVsbC1tb2JpbGUtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAucHJlZml4LW1vYmlsZS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5zdWZmaXgtbW9iaWxlLTkge1xuICAgIG1hcmdpbi1yaWdodDogNzUlOyB9XG4gIC5ncmlkLW1vYmlsZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAucHVzaC1tb2JpbGUtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAucHVsbC1tb2JpbGUtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLnByZWZpeC1tb2JpbGUtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtMTAge1xuICAgIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1vYmlsZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucHVzaC1tb2JpbGUtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAucHVsbC1tb2JpbGUtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLnByZWZpeC1tb2JpbGUtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC1tb2JpbGUtMTEge1xuICAgIG1hcmdpbi1yaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1vYmlsZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnB1c2gtbW9iaWxlLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5wdWxsLW1vYmlsZS0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLnByZWZpeC1tb2JpbGUtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9XG4gIC5zdWZmaXgtbW9iaWxlLTEyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7IH1cbiAgLmZsb2F0LW1vYmlsZS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuZmxvYXQtbW9iaWxlLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNsZWFyLW1vYmlsZSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNsZWFyLW1vYmlsZS1sZWZ0IHtcbiAgICBjbGVhcjogbGVmdDsgfVxuICAuY2xlYXItbW9iaWxlLXJpZ2h0IHtcbiAgICBjbGVhcjogcmlnaHQ7IH1cbiAgLm5vLWd1dHRlci1tb2JpbGUsXG4gIC5uby1tYXJnaW4tbW9iaWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubm8tZ3V0dGVyLW1vYmlsZS1sZWZ0LFxuICAubm8tbWFyZ2luLW1vYmlsZS1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5vLWd1dHRlci1tb2JpbGUtcmlnaHQsXG4gIC5uby1tYXJnaW4tbW9iaWxlLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5uby1ndXR0ZXItbW9iaWxlLXRvcCxcbiAgLm5vLW1hcmdpbi1tb2JpbGUtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAubm8tZ3V0dGVyLW1vYmlsZS1ib3R0b20sXG4gIC5uby1tYXJnaW4tbW9iaWxlLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmd1dHRlci1tb2JpbGUsXG4gIC5tYXJnaW5zLW1vYmlsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci1tb2JpbGUtbGVmdCxcbiAgLm1hcmdpbi1tb2JpbGUtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gIC5ndXR0ZXItbW9iaWxlLXJpZ2h0LFxuICAubWFyZ2luLW1vYmlsZS1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLW1vYmlsZS10b3AsXG4gIC5tYXJnaW4tbW9iaWxlLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgLmd1dHRlci1tb2JpbGUtYm90dG9tLFxuICAubWFyZ2luLW1vYmlsZS1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIC5hdXRvLWhlaWdodC1tb2JpbGUge1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuICAuY2VudGVyZWQtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50OyB9XG4gIC5wYXJlbnQtbW9iaWxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudmVydGljYWwtYWxpZ24tbW9iaWxlLW1pZGRsZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLW1vYmlsZS1taWRkbGUgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi1tb2JpbGUtdG9wIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tbW9iaWxlLXRvcCA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnZlcnRpY2FsLWFsaWduLW1vYmlsZS1ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi1tb2JpbGUtYm90dG9tID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAvKipcblx0ICogVmlzaWJsZSwgaGlkZSwgZXRjLi4uXG5cdCAqL1xuICAuaGlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5vdC12aXNpYmxlLW1vYmlsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zaG93LW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNob3ctaW5saW5lLW1vYmlsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC52aXNpYmxlLW1vYmlsZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAvKipcblx0ICogQ2xlYXIgZWFjaCBjbGFzcyA6XG5cdCAqLyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0wIHtcbiAgICB3aWR0aDogMCU7IH1cbiAgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTAge1xuICAgIGxlZnQ6IDAlOyB9XG4gIC5wdWxsLXRhYmxldC1wb3J0cmFpdC0wIHtcbiAgICByaWdodDogMCU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5zdWZmaXgtdGFibGV0LXBvcnRyYWl0LTAge1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAucHJlZml4LXRhYmxldC1wb3J0cmFpdC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC1wb3J0cmFpdC0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5wcmVmaXgtdGFibGV0LXBvcnRyYWl0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAucHVsbC10YWJsZXQtcG9ydHJhaXQtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAucHJlZml4LXRhYmxldC1wb3J0cmFpdC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5zdWZmaXgtdGFibGV0LXBvcnRyYWl0LTMge1xuICAgIG1hcmdpbi1yaWdodDogMjUlOyB9XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5wdXNoLXRhYmxldC1wb3J0cmFpdC00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuc3VmZml4LXRhYmxldC1wb3J0cmFpdC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC1wb3J0cmFpdC01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5wcmVmaXgtdGFibGV0LXBvcnRyYWl0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAucHVsbC10YWJsZXQtcG9ydHJhaXQtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAucHJlZml4LXRhYmxldC1wb3J0cmFpdC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5zdWZmaXgtdGFibGV0LXBvcnRyYWl0LTYge1xuICAgIG1hcmdpbi1yaWdodDogNTAlOyB9XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5wdXNoLXRhYmxldC1wb3J0cmFpdC03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnB1bGwtdGFibGV0LXBvcnRyYWl0LTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuc3VmZml4LXRhYmxldC1wb3J0cmFpdC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC10YWJsZXQtcG9ydHJhaXQtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC1wb3J0cmFpdC04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5wcmVmaXgtdGFibGV0LXBvcnRyYWl0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXBvcnRyYWl0LTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAucHVsbC10YWJsZXQtcG9ydHJhaXQtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAucHJlZml4LXRhYmxldC1wb3J0cmFpdC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5zdWZmaXgtdGFibGV0LXBvcnRyYWl0LTkge1xuICAgIG1hcmdpbi1yaWdodDogNzUlOyB9XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtMTAge1xuICAgIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAucHVsbC10YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtcG9ydHJhaXQtMTEge1xuICAgIG1hcmdpbi1yaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnB1c2gtdGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5wdWxsLXRhYmxldC1wb3J0cmFpdC0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLnByZWZpeC10YWJsZXQtcG9ydHJhaXQtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9XG4gIC5zdWZmaXgtdGFibGV0LXBvcnRyYWl0LTEyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7IH1cbiAgLmZsb2F0LXRhYmxldC1wb3J0cmFpdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuZmxvYXQtdGFibGV0LXBvcnRyYWl0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNsZWFyLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNsZWFyLXRhYmxldC1wb3J0cmFpdC1sZWZ0IHtcbiAgICBjbGVhcjogbGVmdDsgfVxuICAuY2xlYXItdGFibGV0LXBvcnRyYWl0LXJpZ2h0IHtcbiAgICBjbGVhcjogcmlnaHQ7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtcG9ydHJhaXQsXG4gIC5uby1tYXJnaW4tdGFibGV0LXBvcnRyYWl0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC1wb3J0cmFpdC1sZWZ0LFxuICAubm8tbWFyZ2luLXRhYmxldC1wb3J0cmFpdC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtcG9ydHJhaXQtcmlnaHQsXG4gIC5uby1tYXJnaW4tdGFibGV0LXBvcnRyYWl0LXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5uby1ndXR0ZXItdGFibGV0LXBvcnRyYWl0LXRvcCxcbiAgLm5vLW1hcmdpbi10YWJsZXQtcG9ydHJhaXQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC1wb3J0cmFpdC1ib3R0b20sXG4gIC5uby1tYXJnaW4tdGFibGV0LXBvcnRyYWl0LWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmd1dHRlci10YWJsZXQtcG9ydHJhaXQsXG4gIC5tYXJnaW5zLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci10YWJsZXQtcG9ydHJhaXQtbGVmdCxcbiAgLm1hcmdpbi10YWJsZXQtcG9ydHJhaXQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gIC5ndXR0ZXItdGFibGV0LXBvcnRyYWl0LXJpZ2h0LFxuICAubWFyZ2luLXRhYmxldC1wb3J0cmFpdC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC1wb3J0cmFpdC10b3AsXG4gIC5tYXJnaW4tdGFibGV0LXBvcnRyYWl0LXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgLmd1dHRlci10YWJsZXQtcG9ydHJhaXQtYm90dG9tLFxuICAubWFyZ2luLXRhYmxldC1wb3J0cmFpdC1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIC5hdXRvLWhlaWdodC10YWJsZXQtcG9ydHJhaXQge1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuICAuY2VudGVyZWQtdGFibGV0LXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50OyB9XG4gIC5wYXJlbnQtdGFibGV0LXBvcnRyYWl0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudmVydGljYWwtYWxpZ24tdGFibGV0LXBvcnRyYWl0LW1pZGRsZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLXRhYmxldC1wb3J0cmFpdC1taWRkbGUgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi10YWJsZXQtcG9ydHJhaXQtdG9wIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tdGFibGV0LXBvcnRyYWl0LXRvcCA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnZlcnRpY2FsLWFsaWduLXRhYmxldC1wb3J0cmFpdC1ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi10YWJsZXQtcG9ydHJhaXQtYm90dG9tID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAvKipcblx0ICogVmlzaWJsZSwgaGlkZSwgZXRjLi4uXG5cdCAqL1xuICAuaGlkZS10YWJsZXQtcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5vdC12aXNpYmxlLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zaG93LXRhYmxldC1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNob3ctaW5saW5lLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC52aXNpYmxlLXRhYmxldC1wb3J0cmFpdCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAvKipcblx0ICogQ2xlYXIgZWFjaCBjbGFzcyA6XG5cdCAqLyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU4N3B4KSB7XG4gIC5ncmlkLXRhYmxldC13aWRlLTAge1xuICAgIHdpZHRoOiAwJTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS0wIHtcbiAgICBsZWZ0OiAwJTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS0wIHtcbiAgICByaWdodDogMCU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5ncmlkLXRhYmxldC13aWRlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC13aWRlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnB1c2gtdGFibGV0LXdpZGUtMiB7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC13aWRlLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5zdWZmaXgtdGFibGV0LXdpZGUtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXdpZGUtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLnB1bGwtdGFibGV0LXdpZGUtMyB7XG4gICAgcmlnaHQ6IDI1JTsgfVxuICAucHJlZml4LXRhYmxldC13aWRlLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC10YWJsZXQtd2lkZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5wdXNoLXRhYmxldC13aWRlLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtdGFibGV0LXdpZGUtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuc3VmZml4LXRhYmxldC13aWRlLTQge1xuICAgIG1hcmdpbi1yaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC13aWRlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnB1c2gtdGFibGV0LXdpZGUtNSB7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC13aWRlLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5zdWZmaXgtdGFibGV0LXdpZGUtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXdpZGUtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLnB1bGwtdGFibGV0LXdpZGUtNiB7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAucHJlZml4LXRhYmxldC13aWRlLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC10YWJsZXQtd2lkZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5wdXNoLXRhYmxldC13aWRlLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5wcmVmaXgtdGFibGV0LXdpZGUtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuc3VmZml4LXRhYmxldC13aWRlLTcge1xuICAgIG1hcmdpbi1yaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC13aWRlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnB1c2gtdGFibGV0LXdpZGUtOCB7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5wdWxsLXRhYmxldC13aWRlLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5zdWZmaXgtdGFibGV0LXdpZGUtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQtdGFibGV0LXdpZGUtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLnB1bGwtdGFibGV0LXdpZGUtOSB7XG4gICAgcmlnaHQ6IDc1JTsgfVxuICAucHJlZml4LXRhYmxldC13aWRlLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC10YWJsZXQtd2lkZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5wdWxsLXRhYmxldC13aWRlLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtdGFibGV0LXdpZGUtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtdGFibGV0LXdpZGUtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnB1c2gtdGFibGV0LXdpZGUtMTEge1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAucHJlZml4LXRhYmxldC13aWRlLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5zdWZmaXgtdGFibGV0LXdpZGUtMTEge1xuICAgIG1hcmdpbi1yaWdodDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXRhYmxldC13aWRlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHVzaC10YWJsZXQtd2lkZS0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAucHVsbC10YWJsZXQtd2lkZS0xMiB7XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLnByZWZpeC10YWJsZXQtd2lkZS0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtd2lkZS0xMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMDAlOyB9XG4gIC5mbG9hdC10YWJsZXQtd2lkZS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuZmxvYXQtdGFibGV0LXdpZGUtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY2xlYXItdGFibGV0LXdpZGUge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jbGVhci10YWJsZXQtd2lkZS1sZWZ0IHtcbiAgICBjbGVhcjogbGVmdDsgfVxuICAuY2xlYXItdGFibGV0LXdpZGUtcmlnaHQge1xuICAgIGNsZWFyOiByaWdodDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC13aWRlLFxuICAubm8tbWFyZ2luLXRhYmxldC13aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC13aWRlLWxlZnQsXG4gIC5uby1tYXJnaW4tdGFibGV0LXdpZGUtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5uby1ndXR0ZXItdGFibGV0LXdpZGUtcmlnaHQsXG4gIC5uby1tYXJnaW4tdGFibGV0LXdpZGUtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtd2lkZS10b3AsXG4gIC5uby1tYXJnaW4tdGFibGV0LXdpZGUtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC13aWRlLWJvdHRvbSxcbiAgLm5vLW1hcmdpbi10YWJsZXQtd2lkZS1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5ndXR0ZXItdGFibGV0LXdpZGUsXG4gIC5tYXJnaW5zLXRhYmxldC13aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC13aWRlLWxlZnQsXG4gIC5tYXJnaW4tdGFibGV0LXdpZGUtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gIC5ndXR0ZXItdGFibGV0LXdpZGUtcmlnaHQsXG4gIC5tYXJnaW4tdGFibGV0LXdpZGUtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci10YWJsZXQtd2lkZS10b3AsXG4gIC5tYXJnaW4tdGFibGV0LXdpZGUtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC13aWRlLWJvdHRvbSxcbiAgLm1hcmdpbi10YWJsZXQtd2lkZS1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gIC5hdXRvLWhlaWdodC10YWJsZXQtd2lkZSB7XG4gICAgaGVpZ2h0OiBpbmhlcml0OyB9XG4gIC5jZW50ZXJlZC10YWJsZXQtd2lkZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDsgfVxuICAucGFyZW50LXRhYmxldC13aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtbWlkZGxlIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtbWlkZGxlID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtdG9wIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtdG9wID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtYm90dG9tIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tdGFibGV0LXdpZGUtYm90dG9tID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAvKipcblx0ICogVmlzaWJsZSwgaGlkZSwgZXRjLi4uXG5cdCAqL1xuICAuaGlkZS10YWJsZXQtd2lkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubm90LXZpc2libGUtdGFibGV0LXdpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2hvdy10YWJsZXQtd2lkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNob3ctaW5saW5lLXRhYmxldC13aWRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnZpc2libGUtdGFibGV0LXdpZGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLyoqXG5cdCAqIENsZWFyIGVhY2ggY2xhc3MgOlxuXHQgKi8gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTAge1xuICAgIHdpZHRoOiAwJTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTAge1xuICAgIGxlZnQ6IDAlOyB9XG4gIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtMCB7XG4gICAgcmlnaHQ6IDAlOyB9XG4gIC5wcmVmaXgtdGFibGV0LWxhbmRzY2FwZS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTEge1xuICAgIHJpZ2h0OiA4LjMzMzMzJTsgfVxuICAucHJlZml4LXRhYmxldC1sYW5kc2NhcGUtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5zdWZmaXgtdGFibGV0LWxhbmRzY2FwZS0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIHJpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTIge1xuICAgIG1hcmdpbi1yaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTMge1xuICAgIG1hcmdpbi1yaWdodDogMjUlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIHJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTQge1xuICAgIG1hcmdpbi1yaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIHJpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTUge1xuICAgIG1hcmdpbi1yaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTYge1xuICAgIG1hcmdpbi1yaWdodDogNTAlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIHJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTcge1xuICAgIG1hcmdpbi1yaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIHJpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTgge1xuICAgIG1hcmdpbi1yaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAucHVsbC10YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTkge1xuICAgIG1hcmdpbi1yaWdodDogNzUlOyB9XG4gIC5ncmlkLXRhYmxldC1sYW5kc2NhcGUtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnB1c2gtdGFibGV0LWxhbmRzY2FwZS0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLnByZWZpeC10YWJsZXQtbGFuZHNjYXBlLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5zdWZmaXgtdGFibGV0LWxhbmRzY2FwZS0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtdGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnB1bGwtdGFibGV0LWxhbmRzY2FwZS0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAucHJlZml4LXRhYmxldC1sYW5kc2NhcGUtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC10YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHVzaC10YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5wdWxsLXRhYmxldC1sYW5kc2NhcGUtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5wcmVmaXgtdGFibGV0LWxhbmRzY2FwZS0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH1cbiAgLnN1ZmZpeC10YWJsZXQtbGFuZHNjYXBlLTEyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7IH1cbiAgLmZsb2F0LXRhYmxldC1sYW5kc2NhcGUtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmZsb2F0LXRhYmxldC1sYW5kc2NhcGUtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY2xlYXItdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNsZWFyLXRhYmxldC1sYW5kc2NhcGUtbGVmdCB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmNsZWFyLXRhYmxldC1sYW5kc2NhcGUtcmlnaHQge1xuICAgIGNsZWFyOiByaWdodDsgfVxuICAubm8tZ3V0dGVyLXRhYmxldC1sYW5kc2NhcGUsXG4gIC5uby1tYXJnaW4tdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtbGFuZHNjYXBlLWxlZnQsXG4gIC5uby1tYXJnaW4tdGFibGV0LWxhbmRzY2FwZS1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtbGFuZHNjYXBlLXJpZ2h0LFxuICAubm8tbWFyZ2luLXRhYmxldC1sYW5kc2NhcGUtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtbGFuZHNjYXBlLXRvcCxcbiAgLm5vLW1hcmdpbi10YWJsZXQtbGFuZHNjYXBlLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm5vLWd1dHRlci10YWJsZXQtbGFuZHNjYXBlLWJvdHRvbSxcbiAgLm5vLW1hcmdpbi10YWJsZXQtbGFuZHNjYXBlLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmd1dHRlci10YWJsZXQtbGFuZHNjYXBlLFxuICAubWFyZ2lucy10YWJsZXQtbGFuZHNjYXBlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC1sYW5kc2NhcGUtbGVmdCxcbiAgLm1hcmdpbi10YWJsZXQtbGFuZHNjYXBlLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC1sYW5kc2NhcGUtcmlnaHQsXG4gIC5tYXJnaW4tdGFibGV0LWxhbmRzY2FwZS1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC1sYW5kc2NhcGUtdG9wLFxuICAubWFyZ2luLXRhYmxldC1sYW5kc2NhcGUtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAuZ3V0dGVyLXRhYmxldC1sYW5kc2NhcGUtYm90dG9tLFxuICAubWFyZ2luLXRhYmxldC1sYW5kc2NhcGUtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAuYXV0by1oZWlnaHQtdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgaGVpZ2h0OiBpbmhlcml0OyB9XG4gIC5jZW50ZXJlZC10YWJsZXQtbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50OyB9XG4gIC5wYXJlbnQtdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnZlcnRpY2FsLWFsaWduLXRhYmxldC1sYW5kc2NhcGUtbWlkZGxlIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tdGFibGV0LWxhbmRzY2FwZS1taWRkbGUgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi10YWJsZXQtbGFuZHNjYXBlLXRvcCB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLXRhYmxldC1sYW5kc2NhcGUtdG9wID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tdGFibGV0LWxhbmRzY2FwZS1ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi10YWJsZXQtbGFuZHNjYXBlLWJvdHRvbSA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLyoqXG5cdCAqIFZpc2libGUsIGhpZGUsIGV0Yy4uLlxuXHQgKi9cbiAgLmhpZGUtdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubm90LXZpc2libGUtdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zaG93LXRhYmxldC1sYW5kc2NhcGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zaG93LWlubGluZS10YWJsZXQtbGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnZpc2libGUtdGFibGV0LWxhbmRzY2FwZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAvKipcblx0ICogQ2xlYXIgZWFjaCBjbGFzcyA6XG5cdCAqLyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAuZ3JpZC1kZXNrdG9wLTAge1xuICAgIHdpZHRoOiAwJTsgfVxuICAucHVzaC1kZXNrdG9wLTAge1xuICAgIGxlZnQ6IDAlOyB9XG4gIC5wdWxsLWRlc2t0b3AtMCB7XG4gICAgcmlnaHQ6IDAlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTAge1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgLmdyaWQtZGVza3RvcC0xLCAuY29sLW1kLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAucHVzaC1kZXNrdG9wLTEge1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3AtMSB7XG4gICAgcmlnaHQ6IDguMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC0yLCAuY29sLW1kLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLTMsIC5jb2wtbWQtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAucHVzaC1kZXNrdG9wLTMge1xuICAgIGxlZnQ6IDI1JTsgfVxuICAucHVsbC1kZXNrdG9wLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTMge1xuICAgIG1hcmdpbi1yaWdodDogMjUlOyB9XG4gIC5ncmlkLWRlc2t0b3AtNCwgLmNvbC1tZC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5wdXNoLWRlc2t0b3AtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3AtNCB7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAucHJlZml4LWRlc2t0b3AtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuc3VmZml4LWRlc2t0b3AtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC01LCAuY29sLW1kLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC01IHtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLTYsIC5jb2wtbWQtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucHVzaC1kZXNrdG9wLTYge1xuICAgIGxlZnQ6IDUwJTsgfVxuICAucHVsbC1kZXNrdG9wLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTYge1xuICAgIG1hcmdpbi1yaWdodDogNTAlOyB9XG4gIC5ncmlkLWRlc2t0b3AtNywgLmNvbC1tZC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5wdXNoLWRlc2t0b3AtNyB7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3AtNyB7XG4gICAgcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAucHJlZml4LWRlc2t0b3AtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuc3VmZml4LWRlc2t0b3AtNyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC04LCAuY29sLW1kLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLTksIC5jb2wtbWQtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAucHVzaC1kZXNrdG9wLTkge1xuICAgIGxlZnQ6IDc1JTsgfVxuICAucHVsbC1kZXNrdG9wLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTkge1xuICAgIG1hcmdpbi1yaWdodDogNzUlOyB9XG4gIC5ncmlkLWRlc2t0b3AtMTAsIC5jb2wtbWQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnB1c2gtZGVza3RvcC0xMCB7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3AtMTAge1xuICAgIHJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC0xMSwgLmNvbC1tZC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAucHVzaC1kZXNrdG9wLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC0xMSB7XG4gICAgcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAucHJlZml4LWRlc2t0b3AtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLTEyLCAuY29sLW1kLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHVzaC1kZXNrdG9wLTEyIHtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5wdWxsLWRlc2t0b3AtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC0xMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwMCU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLTEyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7IH1cbiAgLmZsb2F0LWRlc2t0b3AtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmZsb2F0LWRlc2t0b3AtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY2xlYXItZGVza3RvcCB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmNsZWFyLWRlc2t0b3AtbGVmdCB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmNsZWFyLWRlc2t0b3AtcmlnaHQge1xuICAgIGNsZWFyOiByaWdodDsgfVxuICAubm8tZ3V0dGVyLWRlc2t0b3AsXG4gIC5uby1tYXJnaW4tZGVza3RvcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLWxlZnQsXG4gIC5uby1tYXJnaW4tZGVza3RvcC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLXJpZ2h0LFxuICAubm8tbWFyZ2luLWRlc2t0b3AtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLXRvcCxcbiAgLm5vLW1hcmdpbi1kZXNrdG9wLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLWJvdHRvbSxcbiAgLm5vLW1hcmdpbi1kZXNrdG9wLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmd1dHRlci1kZXNrdG9wLFxuICAubWFyZ2lucy1kZXNrdG9wIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLWRlc2t0b3AtbGVmdCxcbiAgLm1hcmdpbi1kZXNrdG9wLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAuZ3V0dGVyLWRlc2t0b3AtcmlnaHQsXG4gIC5tYXJnaW4tZGVza3RvcC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3V0dGVyLWRlc2t0b3AtdG9wLFxuICAubWFyZ2luLWRlc2t0b3AtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAuZ3V0dGVyLWRlc2t0b3AtYm90dG9tLFxuICAubWFyZ2luLWRlc2t0b3AtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAuYXV0by1oZWlnaHQtZGVza3RvcCB7XG4gICAgaGVpZ2h0OiBpbmhlcml0OyB9XG4gIC5jZW50ZXJlZC1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50OyB9XG4gIC5wYXJlbnQtZGVza3RvcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3AtbWlkZGxlIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tZGVza3RvcC1taWRkbGUgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLXRvcCB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3AtdG9wID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tZGVza3RvcC1ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLWJvdHRvbSA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLyoqXG5cdCAqIFZpc2libGUsIGhpZGUsIGV0Yy4uLlxuXHQgKi9cbiAgLmhpZGUtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubm90LXZpc2libGUtZGVza3RvcCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zaG93LWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zaG93LWlubGluZS1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnZpc2libGUtZGVza3RvcCB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAvKipcblx0ICogQ2xlYXIgZWFjaCBjbGFzcyA6XG5cdCAqLyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAuZ3JpZC1kZXNrdG9wLXdpZGUtMCB7XG4gICAgd2lkdGg6IDAlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZS0wIHtcbiAgICBsZWZ0OiAwJTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGUtMCB7XG4gICAgcmlnaHQ6IDAlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZS0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTEge1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3Atd2lkZS0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGUtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC13aWRlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTIge1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGUtMiB7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAucHJlZml4LWRlc2t0b3Atd2lkZS0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTIge1xuICAgIG1hcmdpbi1yaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZS0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlLTMge1xuICAgIHJpZ2h0OiAyNSU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGUtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZS0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGUtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAucHVzaC1kZXNrdG9wLXdpZGUtNCB7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3Atd2lkZS00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLXdpZGUtNCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC13aWRlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTUge1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGUtNSB7XG4gICAgcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAucHJlZml4LWRlc2t0b3Atd2lkZS01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTUge1xuICAgIG1hcmdpbi1yaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZS02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlLTYge1xuICAgIHJpZ2h0OiA1MCU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGUtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZS02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGUtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAucHVzaC1kZXNrdG9wLXdpZGUtNyB7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5wdWxsLWRlc2t0b3Atd2lkZS03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnN1ZmZpeC1kZXNrdG9wLXdpZGUtNyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtZGVza3RvcC13aWRlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTgge1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGUtOCB7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAucHJlZml4LWRlc2t0b3Atd2lkZS04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTgge1xuICAgIG1hcmdpbi1yaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZS05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlLTkge1xuICAgIHJpZ2h0OiA3NSU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGUtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZS05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGUtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTEwIHtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTEwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGUtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlLTExIHtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlLTExIHtcbiAgICByaWdodDogOTEuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlLTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGUtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZS0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGUtMTIge1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlLTEyIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwJTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZS0xMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMDAlOyB9XG4gIC5mbG9hdC1kZXNrdG9wLXdpZGUtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmZsb2F0LWRlc2t0b3Atd2lkZS1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jbGVhci1kZXNrdG9wLXdpZGUge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jbGVhci1kZXNrdG9wLXdpZGUtbGVmdCB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmNsZWFyLWRlc2t0b3Atd2lkZS1yaWdodCB7XG4gICAgY2xlYXI6IHJpZ2h0OyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlLFxuICAubm8tbWFyZ2luLWRlc2t0b3Atd2lkZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLXdpZGUtbGVmdCxcbiAgLm5vLW1hcmdpbi1kZXNrdG9wLXdpZGUtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlLXJpZ2h0LFxuICAubm8tbWFyZ2luLWRlc2t0b3Atd2lkZS1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubm8tZ3V0dGVyLWRlc2t0b3Atd2lkZS10b3AsXG4gIC5uby1tYXJnaW4tZGVza3RvcC13aWRlLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLXdpZGUtYm90dG9tLFxuICAubm8tbWFyZ2luLWRlc2t0b3Atd2lkZS1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5ndXR0ZXItZGVza3RvcC13aWRlLFxuICAubWFyZ2lucy1kZXNrdG9wLXdpZGUge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gIC5ndXR0ZXItZGVza3RvcC13aWRlLWxlZnQsXG4gIC5tYXJnaW4tZGVza3RvcC13aWRlLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAuZ3V0dGVyLWRlc2t0b3Atd2lkZS1yaWdodCxcbiAgLm1hcmdpbi1kZXNrdG9wLXdpZGUtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci1kZXNrdG9wLXdpZGUtdG9wLFxuICAubWFyZ2luLWRlc2t0b3Atd2lkZS10b3Age1xuICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIC5ndXR0ZXItZGVza3RvcC13aWRlLWJvdHRvbSxcbiAgLm1hcmdpbi1kZXNrdG9wLXdpZGUtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAuYXV0by1oZWlnaHQtZGVza3RvcC13aWRlIHtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7IH1cbiAgLmNlbnRlcmVkLWRlc2t0b3Atd2lkZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDsgfVxuICAucGFyZW50LWRlc2t0b3Atd2lkZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3Atd2lkZS1taWRkbGUge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLXdpZGUtbWlkZGxlID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tZGVza3RvcC13aWRlLXRvcCB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3Atd2lkZS10b3AgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLXdpZGUtYm90dG9tIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tZGVza3RvcC13aWRlLWJvdHRvbSA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLyoqXG5cdCAqIFZpc2libGUsIGhpZGUsIGV0Yy4uLlxuXHQgKi9cbiAgLmhpZGUtZGVza3RvcC13aWRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ub3QtdmlzaWJsZS1kZXNrdG9wLXdpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2hvdy1kZXNrdG9wLXdpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zaG93LWlubGluZS1kZXNrdG9wLXdpZGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudmlzaWJsZS1kZXNrdG9wLXdpZGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLyoqXG5cdCAqIENsZWFyIGVhY2ggY2xhc3MgOlxuXHQgKi8gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmdyaWQtZGVza3RvcC13aWRlci0wIHtcbiAgICB3aWR0aDogMCU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci0wIHtcbiAgICBsZWZ0OiAwJTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGVyLTAge1xuICAgIHJpZ2h0OiAwJTsgfVxuICAucHJlZml4LWRlc2t0b3Atd2lkZXItMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci0wIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAlOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZXItMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZXItMSB7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci0xIHtcbiAgICByaWdodDogOC4zMzMzMyU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGVyLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZXItMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci0yIHtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci0yIHtcbiAgICByaWdodDogMTYuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci0zIHtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci0zIHtcbiAgICByaWdodDogMjUlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci00IHtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci00IHtcbiAgICByaWdodDogMzMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci01IHtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci01IHtcbiAgICByaWdodDogNDEuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci02IHtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci02IHtcbiAgICByaWdodDogNTAlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci03IHtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci03IHtcbiAgICByaWdodDogNTguMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci04IHtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci04IHtcbiAgICByaWdodDogNjYuNjY2NjclOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci05IHtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLnB1bGwtZGVza3RvcC13aWRlci05IHtcbiAgICByaWdodDogNzUlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC1kZXNrdG9wLXdpZGVyLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5wdXNoLWRlc2t0b3Atd2lkZXItMTAge1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGVyLTEwIHtcbiAgICByaWdodDogODMuMzMzMzMlOyB9XG4gIC5wcmVmaXgtZGVza3RvcC13aWRlci0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuc3VmZml4LWRlc2t0b3Atd2lkZXItMTAge1xuICAgIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLWRlc2t0b3Atd2lkZXItMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci0xMSB7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5wdWxsLWRlc2t0b3Atd2lkZXItMTEge1xuICAgIHJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLnByZWZpeC1kZXNrdG9wLXdpZGVyLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci0xMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQtZGVza3RvcC13aWRlci0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnB1c2gtZGVza3RvcC13aWRlci0xMiB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAucHVsbC1kZXNrdG9wLXdpZGVyLTEyIHtcbiAgICByaWdodDogMTAwJTsgfVxuICAucHJlZml4LWRlc2t0b3Atd2lkZXItMTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDAlOyB9XG4gIC5zdWZmaXgtZGVza3RvcC13aWRlci0xMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMDAlOyB9XG4gIC5mbG9hdC1kZXNrdG9wLXdpZGVyLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5mbG9hdC1kZXNrdG9wLXdpZGVyLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNsZWFyLWRlc2t0b3Atd2lkZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jbGVhci1kZXNrdG9wLXdpZGVyLWxlZnQge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5jbGVhci1kZXNrdG9wLXdpZGVyLXJpZ2h0IHtcbiAgICBjbGVhcjogcmlnaHQ7IH1cbiAgLm5vLWd1dHRlci1kZXNrdG9wLXdpZGVyLFxuICAubm8tbWFyZ2luLWRlc2t0b3Atd2lkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlci1sZWZ0LFxuICAubm8tbWFyZ2luLWRlc2t0b3Atd2lkZXItbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlci1yaWdodCxcbiAgLm5vLW1hcmdpbi1kZXNrdG9wLXdpZGVyLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlci10b3AsXG4gIC5uby1tYXJnaW4tZGVza3RvcC13aWRlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5uby1ndXR0ZXItZGVza3RvcC13aWRlci1ib3R0b20sXG4gIC5uby1tYXJnaW4tZGVza3RvcC13aWRlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5ndXR0ZXItZGVza3RvcC13aWRlcixcbiAgLm1hcmdpbnMtZGVza3RvcC13aWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci1kZXNrdG9wLXdpZGVyLWxlZnQsXG4gIC5tYXJnaW4tZGVza3RvcC13aWRlci1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgLmd1dHRlci1kZXNrdG9wLXdpZGVyLXJpZ2h0LFxuICAubWFyZ2luLWRlc2t0b3Atd2lkZXItcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmd1dHRlci1kZXNrdG9wLXdpZGVyLXRvcCxcbiAgLm1hcmdpbi1kZXNrdG9wLXdpZGVyLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgLmd1dHRlci1kZXNrdG9wLXdpZGVyLWJvdHRvbSxcbiAgLm1hcmdpbi1kZXNrdG9wLXdpZGVyLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgLmF1dG8taGVpZ2h0LWRlc2t0b3Atd2lkZXIge1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuICAuY2VudGVyZWQtZGVza3RvcC13aWRlciB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDsgfVxuICAucGFyZW50LWRlc2t0b3Atd2lkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLXdpZGVyLW1pZGRsZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3Atd2lkZXItbWlkZGxlID4gKiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAudmVydGljYWwtYWxpZ24tZGVza3RvcC13aWRlci10b3Age1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC52ZXJ0aWNhbC1hbGlnbi1kZXNrdG9wLXdpZGVyLXRvcCA+ICoge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnZlcnRpY2FsLWFsaWduLWRlc2t0b3Atd2lkZXItYm90dG9tIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgICAudmVydGljYWwtYWxpZ24tZGVza3RvcC13aWRlci1ib3R0b20gPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC8qKlxuXHQgKiBWaXNpYmxlLCBoaWRlLCBldGMuLi5cblx0ICovXG4gIC5oaWRlLWRlc2t0b3Atd2lkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5vdC12aXNpYmxlLWRlc2t0b3Atd2lkZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2hvdy1kZXNrdG9wLXdpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2hvdy1pbmxpbmUtZGVza3RvcC13aWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC52aXNpYmxlLWRlc2t0b3Atd2lkZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLyoqXG5cdCAqIENsZWFyIGVhY2ggY2xhc3MgOlxuXHQgKi8gfVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNlZTAwMDA7XG4gIC8qIFdlYktpdC9CbGluayBCcm93c2VycyAqLyB9XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjZWUwMDAwO1xuICAvKiBHZWNrbyBCcm93c2VycyAqLyB9XG5cbjpmb2N1cyB7XG4gIG91dGxpbmU6IHRoaW4gZG90dGVkOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMyMjI7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgYm9keSB7XG4gICAgICBmb250LXNpemU6IDE3cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG5cbnAge1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIHAuc21hbGwtZGVzYyB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICBwLnNtYWxsLWRlc2Mge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4ubGFiZWwge1xuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMCAwIDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCAuaW50cm8ge1xuICBjb2xvcjogIzIyMjsgfVxuXG4uaW50cm8ge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE1ZW07XG4gIG1hcmdpbjogMCAwIDQwcHg7XG4gIGZvbnQtc2l6ZTogMTdweDsgfVxuICAudGVtcGxhdGUtbGlzdGluZyAuaW50cm8ge1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6IDIzcHg7IH0gfVxuXG5oMSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsgfVxuICBoMS5sZWFkLWluLXRleHQge1xuICAgIG1hcmdpbjogMCAwIDdweDsgfVxuICAudGVtcGxhdGUtYXJ0aWNsZSBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4OyB9XG4gIGgxIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnRlbXBsYXRlLWxpc3RpbmcgaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC50ZW1wbGF0ZS1saXN0aW5nIGgxIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgb3BhY2l0eTogMC45OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9XG4gICAgICAudGVtcGxhdGUtYXJ0aWNsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4xOyB9IH1cblxuaDIge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE1ZW07XG4gIG1hcmdpbjogMjBweCAwIDIwcHg7IH1cbiAgaDIubGVhZC1pbi10ZXh0IHtcbiAgICBtYXJnaW46IDMwcHggMCA3cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgbWFyZ2luOiA0MHB4IDAgNDBweDsgfVxuICAgICAgaDIubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgN3B4OyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMTVlbTtcbiAgbWFyZ2luOiAwIDAgMTBweDsgfVxuICBoMy5sZWFkLWluLXRleHQge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7IH1cbiAgaDMuZmVhdHVyZS1oZWFkaW5nIHtcbiAgICBtYXJnaW46IDAgMCA1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cblxuaDQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmZhY3RmaWxlIGg0LCAudm9pY2VzIHVsIGxpIGg0LCAuY3RhX21haW4gaDQsIC52b2ljZXMtc21hbGwgaDQsIC5tYXAtd3JhcHBlciBoNCwgLm1vZGFsIGg0IHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBtYXJnaW46IDAgMCAxNXB4OyB9XG4gICAgLmZhY3RmaWxlIGg0IHNwYW4sIC52b2ljZXMgdWwgbGkgaDQgc3BhbiwgLmN0YV9tYWluIGg0IHNwYW4sIC52b2ljZXMtc21hbGwgaDQgc3BhbiwgLm1hcC13cmFwcGVyIGg0IHNwYW4sIC5tb2RhbCBoNCBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgaDQgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiA0MHB4IDAgNDBweDtcbiAgd2lkdGg6IDk1JTsgfVxuICBibG9ja3F1b3RlIHAge1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGJhY2tncm91bmQ6ICMyMzFGMjA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjMjMxRjIwLCAtMTBweCAwIDAgIzIzMUYyMDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBibG9ja3F1b3RlIC5tZXRhIHtcbiAgICBtYXJnaW46IDEwcHggMCAwOyB9XG4gIGJsb2NrcXVvdGUgLmJ0bl9zbSB7XG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIG1hcmdpbjogNjBweCA2MHB4IDYwcHg7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgYmxvY2txdW90ZS5yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgbWFyZ2luOiAwIC02MHB4IDYwcHggNjBweDsgfVxuICAgICAgYmxvY2txdW90ZSBwIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLm1ldGEge1xuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjNDQ0O1xuICBmb250LXNpemU6IDEycHg7IH1cbiAgLm1ldGEgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tZXRhIC5wcmltYXJ5LWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5tZXRhIC5wcmltYXJ5LWxhYmVsLndpdGhfc3ZnIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5tZXRhIC5wcmltYXJ5LWxhYmVsIHN2ZyB7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIGZpbGw6ICMyMzFGMjA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5tZXRhIC5zZWNvbmRhcnktbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLm1ldGEgLnRlcnRpYXJ5LWxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLm1ldGEgLnRlcnRpYXJ5LWxhYmVsOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnLyc7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBsZWZ0OiAtMTVweDtcbiAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgIC5tZXRhIC50ZXJ0aWFyeS1sYWJlbCBzdmcge1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICBmaWxsOiAjNDQ0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1ldGEge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNlZTAwMDA7IH1cblxuYTpob3ZlcixcbmE6Zm9jdXMge1xuICBjb2xvcjogIzMxYTE5YTsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4ubm9ybWFsLXVsIHtcbiAgbWFyZ2luOiAyMHB4IDAgNDBweCAyMHB4OyB9XG4gIC5ub3JtYWwtdWwgbGkge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ub3JtYWwtdWwgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDZweDtcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogLTE1cHg7IH1cblxuLmJ0biwgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuYnRuLmJ0bl9zbSwgLnNlYXJjaC1mb3JtIC5idG5fc20jZWRpdC1zdWJtaXQge1xuICAgIGhlaWdodDogMzBweDtcbiAgICBwYWRkaW5nOiA2cHggMTVweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuYnRuLmJ0bl9hbHQsIC5zZWFyY2gtZm9ybSAuYnRuX2FsdCNlZGl0LXN1Ym1pdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTsgfVxuICAgIC5idG4uYnRuX2FsdDpob3ZlciwgLnNlYXJjaC1mb3JtIC5idG5fYWx0I2VkaXQtc3VibWl0OmhvdmVyLCAuYnRuLmJ0bl9hbHQ6Zm9jdXMsIC5zZWFyY2gtZm9ybSAuYnRuX2FsdCNlZGl0LXN1Ym1pdDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWM3MzZlOyB9XG4gIC5idG4uYnRuX3RpY2tib3gsIC5zZWFyY2gtZm9ybSAuYnRuX3RpY2tib3gjZWRpdC1zdWJtaXQge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA0NXB4OyB9XG4gICAgLmJ0bi5idG5fdGlja2JveC5idG5fc2Vjb25kYXJ5LmJ0bl9zbSwgLnNlYXJjaC1mb3JtIC5idG5fdGlja2JveC5idG5fc2Vjb25kYXJ5LmJ0bl9zbSNlZGl0LXN1Ym1pdCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA0NXB4OyB9XG4gICAgLmJ0bi5idG5fdGlja2JveCAudGlja2JveCwgLnNlYXJjaC1mb3JtIC5idG5fdGlja2JveCNlZGl0LXN1Ym1pdCAudGlja2JveCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICB3aWR0aDogMjZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogN3B4O1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAgICAgLmJ0bi5idG5fdGlja2JveCAudGlja2JveCBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3RpY2tib3gjZWRpdC1zdWJtaXQgLnRpY2tib3ggc3ZnIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICBsZWZ0OiA0cHg7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAuYnRuLmJ0bl90aWNrYm94LmFjdGl2ZSwgLnNlYXJjaC1mb3JtIC5idG5fdGlja2JveC5hY3RpdmUjZWRpdC1zdWJtaXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQ5YTEzMTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAuYnRuLmJ0bl90aWNrYm94LmFjdGl2ZSAudGlja2JveCBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3RpY2tib3guYWN0aXZlI2VkaXQtc3VibWl0IC50aWNrYm94IHN2ZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLmJ0bi5idG5fc2Vjb25kYXJ5LCAuc2VhcmNoLWZvcm0gLmJ0bl9zZWNvbmRhcnkjZWRpdC1zdWJtaXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZWUwMDAwO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDsgfVxuICAgIC5idG4uYnRuX3NlY29uZGFyeSBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3NlY29uZGFyeSNlZGl0LXN1Ym1pdCBzdmcge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA3cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgIGxlZnQ6IDdweDsgfVxuICAgIC5idG4uYnRuX3NlY29uZGFyeTpob3ZlciBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3NlY29uZGFyeSNlZGl0LXN1Ym1pdDpob3ZlciBzdmcsIC5idG4uYnRuX3NlY29uZGFyeTpmb2N1cyBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3NlY29uZGFyeSNlZGl0LXN1Ym1pdDpmb2N1cyBzdmcge1xuICAgICAgZmlsbDogd2hpdGU7IH1cbiAgICAuYnRuLmJ0bl9zZWNvbmRhcnkuYnRuX3NtLCAuc2VhcmNoLWZvcm0gLmJ0bl9zZWNvbmRhcnkuYnRuX3NtI2VkaXQtc3VibWl0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfVxuICAgICAgLmJ0bi5idG5fc2Vjb25kYXJ5LmJ0bl9zbSBzdmcsIC5zZWFyY2gtZm9ybSAuYnRuX3NlY29uZGFyeS5idG5fc20jZWRpdC1zdWJtaXQgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIGxlZnQ6IDRweDsgfVxuICAuYnRuOmhvdmVyLCAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0OmhvdmVyLCAuYnRuOmZvY3VzLCAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFhMTlhO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMyMzFGMjA7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuXG5pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMjMxRjIwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAjb3MxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuXG4uc2tpcGxpbmtzIHtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTdlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTRlbTtcbiAgei1pbmRleDogOTk5OTsgfVxuICAuc2tpcGxpbmtzIC5za2lwbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDAuMjVlbSAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxNGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIC5za2lwbGlua3MgLnNraXBsaW5rOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgcGFkZGluZzogMC4yNWVtIDFlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uc2tpcGFuY2hvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDUwcHg7XG4gIC8qc2FtZSBoZWlnaHQgYXMgaGVhZGVyKi9cbiAgbWFyZ2luLXRvcDogLTUwcHg7XG4gIC8qc2FtZSBoZWlnaHQgYXMgaGVhZGVyKi9cbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5mb2N1c2FibGUge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsOyB9XG4gIC5mb2N1c2FibGU6Zm9jdXMge1xuICAgIGNsaXA6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLm1haW4ge1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmhlYWRlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgaGVpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMzA7XG4gIHRvcDogMDsgfVxuICBoZWFkZXIuZml4ZWQge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM1LCAzMSwgMzIsIDAuMSk7XG4gICAgdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDkwcHg7IH0gfVxuXG4uc3RpY2t5LWJ0bnMge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAtNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgei1pbmRleDogMjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdGlja3ktYnRucyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0gfVxuICAuZnJvbnQgLnN0aWNreS1idG5zLCAudGVtcGxhdGUtcmVxcyAuc3RpY2t5LWJ0bnMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnN0aWNreS1idG5zLmZpeGVkIHtcbiAgICBib3R0b206IDA7IH1cbiAgLnN0aWNreS1idG5zIGEge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAuc3RpY2t5LWJ0bnMgYTpob3ZlciwgLnN0aWNreS1idG5zIGE6Zm9jdXMge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDsgfVxuICAuc3RpY2t5LWJ0bnMgLmRvbmF0ZS1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuc3RpY2t5LWJ0bnMgLnNoYXJlLWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTsgfVxuICAgIC5zdGlja3ktYnRucyAuc2hhcmUtYnRuIC5zd2FwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc3RpY2t5LWJ0bnMgLnNoYXJlLWJ0bi5hY3RpdmUgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuc3RpY2t5LWJ0bnMgLnNoYXJlLWJ0bi5hY3RpdmUgc3Bhbi5zd2FwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnN0aWNreS1idG5zIHtcbiAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5zdGlja3ktYnRucyBhIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4ubWVudS1idG4ge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogNTBweDtcbiAgd2lkdGg6IDUwcHg7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGNvbG9yOiAjMjMxRjIwO1xuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA4cHggMCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogNDA7IH1cbiAgLm1lbnUtYnRuIC5pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmlsbDogIzIzMUYyMDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgdG9wOiAycHg7IH1cbiAgICAubWVudS1idG4gLmljb24uY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAubWVudS1idG46aG92ZXIsIC5tZW51LWJ0bjpmb2N1cyB7XG4gICAgY29sb3I6ICMyMzFGMjA7IH1cbiAgLm1lbnUtYnRuLmFjdGl2ZSAuaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tZW51LWJ0bi5hY3RpdmUgLmljb24uY2xvc2Uge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5tZW51LWJ0biAuZGl2aWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogNjUlO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAtOHB4O1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBmaWxsOiAjMjMxRjIwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5tZW51LWJ0biB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNlYXJjaC1iYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzMSwgMzIsIDAuOTUpO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNlYXJjaC1iYXIgLnNlYXJjaC1mb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLnNlYXJjaC1iYXIgLnNlYXJjaC1mb3JtIC5pbnB1dC1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWFyY2gtYmFyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnNlYXJjaC1iYXIgLmJ0biwgLnNlYXJjaC1iYXIgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC5zZWFyY2gtYmFyICNlZGl0LXN1Ym1pdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7IH1cbiAgLnNlYXJjaC1iYXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLnNlYXJjaC1iYXIgLmNsb3NlLXBhbmVsIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDUwcHg7IH1cbiAgICAuc2VhcmNoLWJhciAuY2xvc2UtcGFuZWwgc3ZnIHtcbiAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICB0b3A6IDE1cHg7IH1cbiAgLnNlYXJjaC1iYXIub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnNlYXJjaC1iYXIge1xuICAgICAgaGVpZ2h0OiA5MHB4OyB9XG4gICAgICAuc2VhcmNoLWJhciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuc2VhcmNoLWJhciAuYnRuLCAuc2VhcmNoLWJhciAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0LCAuc2VhcmNoLWZvcm0gLnNlYXJjaC1iYXIgI2VkaXQtc3VibWl0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOTBweDsgfVxuICAgICAgLnNlYXJjaC1iYXIgLmNsb3NlLXBhbmVsIHtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICByaWdodDogMDsgfSB9XG5cbi5sb2dvLWNvbnRhaW5lciB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5sb2dvIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgei1pbmRleDogMzI7XG4gIGxlZnQ6IC0xMHB4OyB9XG4gIC5sb2dvIHN2ZyAubGluZSwgLmxvZ28gc3ZnIC53b3JkMSwgLmxvZ28gc3ZnIC53b3JkMiB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubG9nbyBzdmcgLmV4dHJhYml0IHtcbiAgICBmaWxsOiAjZWUwMDAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmxvZ28gc3ZnIC5leHRyYWJpdC1jdXRvZmYge1xuICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuZml4ZWQgLmxvZ28ge1xuICAgIHdpZHRoOiAxMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiA1cHggMCAwOyB9XG4gICAgLmZpeGVkIC5sb2dvIHN2ZyAubGluZSwgLmZpeGVkIC5sb2dvIHN2ZyAud29yZDEsIC5maXhlZCAubG9nbyBzdmcgLndvcmQyLCAuZml4ZWQgLmxvZ28gc3ZnIC5leHRyYWJpdC1jdXRvZmYge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5maXhlZCAubG9nbyBzdmcgLmV4dHJhYml0IHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmxvZ28ge1xuICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgbWFyZ2luOiAxOHB4IDAgMDtcbiAgICAgIGxlZnQ6IC0zMHB4OyB9XG4gICAgICAubG9nbyBzdmcgLmxpbmUsIC5sb2dvIHN2ZyAud29yZDEsIC5sb2dvIHN2ZyAud29yZDIsIC5sb2dvIHN2ZyAuZXh0cmFiaXQtY3V0b2ZmIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLmxvZ28gc3ZnIC5leHRyYWJpdCB7XG4gICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC5maXhlZCAubG9nbyB7XG4gICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBtYXJnaW46IDVweCAwIDA7IH1cbiAgICAgICAgLmZpeGVkIC5sb2dvIHN2ZyAubGluZSwgLmZpeGVkIC5sb2dvIHN2ZyAud29yZDEsIC5maXhlZCAubG9nbyBzdmcgLndvcmQyIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkgYW5kIChtYXgtd2lkdGg6IDExMDBweCkge1xuICAgIC5sb2dvIHtcbiAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICAgIGxlZnQ6IC00MHB4O1xuICAgICAgdG9wOiAyNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgLmxvZ28ge1xuICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgbWFyZ2luOiAxMnB4IDAgMDtcbiAgICAgIGxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgLmZpeGVkIC5sb2dvIHN2ZyAud29yZDEsIC5maXhlZCAubG9nbyBzdmcgLndvcmQyIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5maXhlZCAubG9nbyBzdmcgLndvcmQxLCAuZml4ZWQgLmxvZ28gc3ZnIC53b3JkMiB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbmZvb3RlciB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBmb290ZXIgLmltZ19tYXNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICB0b3A6IDA7IH1cbiAgZm9vdGVyIC5jb3B5cmlnaHQge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgY29sb3I6ICM0NDQ7IH1cbiAgICBmb290ZXIgLmNvcHlyaWdodCBhIHtcbiAgICAgIGNvbG9yOiAjNDQ0OyB9XG4gICAgZm9vdGVyIC5jb3B5cmlnaHQgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIGZvb3RlciAuc29jaWFsIGxpIHtcbiAgICBtYXJnaW46IDAgNXB4ICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIGZvb3RlciAuc29jaWFsIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH0gfVxuICBmb290ZXIgLnNpdGVieXRieCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIGZvb3RlciAuc2l0ZWJ5dGJ4IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDsgfSB9XG4gIGZvb3RlciAuY3JlZGl0cyB7XG4gICAgbWFyZ2luOiAwIDAgMzBweDsgfVxuICAgIGZvb3RlciAuY3JlZGl0cyAuYnJhbmRpbmcge1xuICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICBmb290ZXIgLmNyZWRpdHMgLnRleHQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIGZvb3RlciAuY3JlZGl0cyAudGV4dCAubGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgICAgICAgZm9vdGVyIC5jcmVkaXRzIC50ZXh0IC5sYWJlbCBhIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgY29sb3I6ICMyMzFGMjA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgICAgICBmb290ZXIgLmNyZWRpdHMgLnRleHQgLmxhYmVsIGEgc3ZnIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDsgfVxuICAgICAgICAgICAgZm9vdGVyIC5jcmVkaXRzIC50ZXh0IC5sYWJlbCBhIHN2Zy5tYXAge1xuICAgICAgICAgICAgICBmaWxsOiAjMjMxRjIwO1xuICAgICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDAgMjBweDtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7IH1cbiAgICAgICAgICBmb290ZXIgLmNyZWRpdHMgLnRleHQgLmxhYmVsIGE6aG92ZXIgc3ZnLCBmb290ZXIgLmNyZWRpdHMgLnRleHQgLmxhYmVsIGE6Zm9jdXMgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICMyMzFGMjA7IH1cbiAgICAgICAgICAgIGZvb3RlciAuY3JlZGl0cyAudGV4dCAubGFiZWwgYTpob3ZlciBzdmcubWFwLCBmb290ZXIgLmNyZWRpdHMgLnRleHQgLmxhYmVsIGE6Zm9jdXMgc3ZnLm1hcCB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIGZvb3RlciAuY3JlZGl0cyB7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7IH1cbiAgICAgICAgZm9vdGVyIC5jcmVkaXRzIC5icmFuZGluZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGZvb3RlciAuY3JlZGl0cyAudGV4dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gICAgICAgICAgZm9vdGVyIC5jcmVkaXRzIC50ZXh0IC5sYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW46IC0yNXB4IDAgMTVweDsgfSB9XG4gIGZvb3RlciAuZm9vdGVyLWxpbmtzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICBmb290ZXIgLmZvb3Rlci1saW5rcyBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAgIGZvb3RlciAuZm9vdGVyLWxpbmtzIGxpIGEge1xuICAgICAgICBjb2xvcjogI2VlMDAwMDsgfVxuICAgICAgICBmb290ZXIgLmZvb3Rlci1saW5rcyBsaSBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzMxYTE5YTsgfVxuICBmb290ZXIgaDEge1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBmb290ZXIge1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG5cbi5tb2JpbGUtbmF2IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuMXM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdG9wOiAtNDAwcHg7XG4gIHBhZGRpbmc6IDAgMjBweCAyMHB4OyB9XG4gIC5tb2JpbGUtbmF2IGEge1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjMjMxRjIwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubW9iaWxlLW5hdiBhLmRvbmF0ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAubW9iaWxlLW5hdiBhLmRvbmF0ZTpob3ZlciwgLm1vYmlsZS1uYXYgYS5kb25hdGU6Zm9jdXMge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTsgfVxuICAubW9iaWxlLW5hdiBsaTpsYXN0LWNoaWxkIGEge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpOyB9XG4gIC5tb2JpbGUtbmF2Lm9wZW4ge1xuICAgIHRvcDogNTBweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAudGVtcGxhdGUtbm8taW1hZ2UgLm1vYmlsZS1uYXYub3BlbiB7XG4gICAgICB0b3A6IDQ5cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1vYmlsZS1uYXYge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5rZXlib2FyZCAubW9iaWxlLW5hdiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmtleWJvYXJkIC5tb2JpbGUtbmF2Lm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiA1NXB4OyB9XG4gIC5uYXYgLmRyb3Bkb3duX21hc2sge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMzE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG4gICAgLmZpeGVkIC5uYXYgLmRyb3Bkb3duX21hc2sge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7IH1cbiAgICAudGVtcGxhdGUtbm8taW1hZ2UgLm5hdiAuZHJvcGRvd25fbWFzayB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTsgfVxuICAgIC5maXhlZCAubmF2IC5kcm9wZG93bl9tYXNrIHtcbiAgICAgIGhlaWdodDogNTBweDsgfVxuICAubmF2IHVsLnByaW1hcnlfbmF2IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm5hdiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm5hdiAucHJpbWFyeV9saW5rIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB6LWluZGV4OiAzMjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMyMzFGMjA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7IH1cbiAgICAubmF2IC5wcmltYXJ5X2xpbmsgc3ZnIHtcbiAgICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDsgfVxuICAgIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluayB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEwcHggMTBweCAwIDEwcHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgICAgIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluayAuaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjAwJTsgfVxuICAgICAgLm5hdiAucHJpbWFyeV9saW5rLmRvbmF0ZV9saW5rIC5kaXZpZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgbGVmdDogLThweDtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICBmaWxsOiAjMjMxRjIwOyB9XG4gICAgICAubmF2IC5wcmltYXJ5X2xpbmsuZG9uYXRlX2xpbmsgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubmF2IC5wcmltYXJ5X2xpbmsuZ2xvYmFsX2xpbmsge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4IDA7IH1cbiAgICAgIC5uYXYgLnByaW1hcnlfbGluay5nbG9iYWxfbGluayBzdmcge1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtM3B4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAubmF2IC5wcmltYXJ5X2xpbmsuc2VhcmNoX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAubmF2IC5wcmltYXJ5X2xpbmsuc2VhcmNoX2xpbmsgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZmlsbDogIzIyMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgbGVmdDogMDsgfVxuICAubmF2IC5tZWdhX2Ryb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBtaW4taGVpZ2h0OiAyMDBweDsgfVxuICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24uZG9uYXRlX2Ryb3Bkb3duIHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICByaWdodDogMjBweDsgfVxuICAgICAgLm5hdiAubWVnYV9kcm9wZG93bi5kb25hdGVfZHJvcGRvd24gbGkgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNzBweCAxMHB4IDE1cHg7IH1cbiAgICAubmF2IC5tZWdhX2Ryb3Bkb3duIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gaDQge1xuICAgICAgbWFyZ2luOiAwIDAgMDsgfVxuICAgICAgLm5hdiAubWVnYV9kcm9wZG93biBoNCBhIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICBjb2xvcjogIzIzMUYyMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMTVweCA1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAubmF2IC5tZWdhX2Ryb3Bkb3duIGg0IGEgc3ZnIHtcbiAgICAgICAgICBmaWxsOiAjZWUwMDAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLm5hdiAubWVnYV9kcm9wZG93biBoNCBhOmhvdmVyLCAubmF2IC5tZWdhX2Ryb3Bkb3duIGg0IGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzFmMjA7IH1cbiAgICAubmF2IC5tZWdhX2Ryb3Bkb3duIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBtYXJnaW46IDAgMCAyNXB4OyB9XG4gICAgLm5hdiAubWVnYV9kcm9wZG93biAubWV0YSB7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gICAgLm5hdiAubWVnYV9kcm9wZG93biAuZHJvcC1jdGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzQsIDIzNiwgMjMwLCAwLjk1KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAzNDBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAtMzQwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7IH1cbiAgICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gLmRyb3AtY3RhLmZsaXBwZWQge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogLTM0MHB4OyB9XG4gICAgICAubmF2IC5tZWdhX2Ryb3Bkb3duIC5kcm9wLWN0YSAudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7IH1cbiAgICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gLmRyb3AtY3RhIHAge1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gICAgLm5hdiAubWVnYV9kcm9wZG93biB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4xKTsgfVxuICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gbGkge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gbGkgYSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTBweCA3NXB4IDEwcHggMjVweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICAgIGNvbG9yOiAjMjMxRjIwOyB9XG4gICAgICAgIC5uYXYgLm1lZ2FfZHJvcGRvd24gbGkgYTpob3ZlciwgLm5hdiAubWVnYV9kcm9wZG93biBsaSBhOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAubmF2IC5kcm9wZG93bl9tYXNrIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogOTBweDsgfVxuICAgICAgLm5hdiB1bC5wcmltYXJ5X25hdiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgLm5hdiAucHJpbWFyeV9saW5rIHtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogOTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAxMnB4OyB9XG4gICAgICAgIC5maXhlZCAubmF2IC5wcmltYXJ5X2xpbmsge1xuICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLm5hdiAucHJpbWFyeV9saW5rOmhvdmVyLCAubmF2IC5wcmltYXJ5X2xpbms6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZWUwMDAwOyB9XG4gICAgICAgIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluayB7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDIwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgICAgIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluayBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgICAgICAgIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluayAuZGl2aWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgLm5hdiAucHJpbWFyeV9saW5rLmRvbmF0ZV9saW5rIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAuZml4ZWQgLm5hdiAucHJpbWFyeV9saW5rLmRvbmF0ZV9saW5rIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIycHg7IH1cbiAgICAgICAgICAubmF2IC5wcmltYXJ5X2xpbmsuZG9uYXRlX2xpbms6aG92ZXIsIC5uYXYgLnByaW1hcnlfbGluay5kb25hdGVfbGluazpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7IH1cbiAgICAgICAgLm5hdiAucHJpbWFyeV9saW5rLnNlYXJjaF9saW5rIHtcbiAgICAgICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgICAgIC5uYXYgLnByaW1hcnlfbGluay5zZWFyY2hfbGluayBzdmcge1xuICAgICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICAgIC5uYXYgLnByaW1hcnlfbGluay5zZWFyY2hfbGluazpob3ZlciBzdmcsIC5uYXYgLnByaW1hcnlfbGluay5zZWFyY2hfbGluazpmb2N1cyBzdmcge1xuICAgICAgICAgICAgZmlsbDogI2VlMDAwMDsgfVxuICAgICAgICAubmF2IC5wcmltYXJ5X2xpbmsuZ2xvYmFsX2xpbms6aG92ZXIgc3ZnLCAubmF2IC5wcmltYXJ5X2xpbmsuZ2xvYmFsX2xpbms6Zm9jdXMgc3ZnIHtcbiAgICAgICAgICB0b3A6IC04cHg7IH1cbiAgICAgICAgLmZpeGVkIC5uYXYgLnByaW1hcnlfbGluay5nbG9iYWxfbGluayB7XG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgLm5hdiAubWVnYV9kcm9wZG93biB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dCAwLjFzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xcztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0b3A6IC03MDBweDtcbiAgICAgICAgei1pbmRleDogMzA7IH1cbiAgICAgICAgLm5hdiAubWVnYV9kcm9wZG93biAuY29udGFpbmVyIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0IDAuM3M7XG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCAwLjNzO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dCAwLjNzO1xuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0IDAuM3M7XG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgLm5hdiBsaTpob3ZlciAucHJpbWFyeV9saW5rLCAubmF2IGxpOmZvY3VzIC5wcmltYXJ5X2xpbmssIC5uYXYgbGlbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC5wcmltYXJ5X2xpbmsge1xuICAgICAgICBjb2xvcjogI2VlMDAwMDsgfVxuICAgICAgICAubmF2IGxpOmhvdmVyIC5wcmltYXJ5X2xpbmsuZG9uYXRlX2xpbmssIC5uYXYgbGk6Zm9jdXMgLnByaW1hcnlfbGluay5kb25hdGVfbGluaywgLm5hdiBsaVthcmlhLWV4cGFuZGVkPSd0cnVlJ10gLnByaW1hcnlfbGluay5kb25hdGVfbGluayB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5uYXYgbGk6aG92ZXIgLm1lZ2FfZHJvcGRvd24sIC5uYXYgbGk6Zm9jdXMgLm1lZ2FfZHJvcGRvd24sIC5uYXYgbGlbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgdG9wOiA5MHB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgICAgLm5hdiBsaTpob3ZlciAubWVnYV9kcm9wZG93biAuY29udGFpbmVyLCAubmF2IGxpOmZvY3VzIC5tZWdhX2Ryb3Bkb3duIC5jb250YWluZXIsIC5uYXYgbGlbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC5tZWdhX2Ryb3Bkb3duIC5jb250YWluZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5maXhlZCAubmF2IGxpOmhvdmVyIC5tZWdhX2Ryb3Bkb3duLCAuZml4ZWQgLm5hdiBsaTpmb2N1cyAubWVnYV9kcm9wZG93biwgLmZpeGVkIC5uYXYgbGlbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgdG9wOiA0OXB4OyB9XG4gICAgICAudGVtcGxhdGUtbm8taW1hZ2UgLm5hdiBsaTpob3ZlciAubWVnYV9kcm9wZG93biwgLnRlbXBsYXRlLW5vLWltYWdlIC5uYXYgbGk6Zm9jdXMgLm1lZ2FfZHJvcGRvd24ge1xuICAgICAgICB0b3A6IDg5cHg7IH1cbiAgICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAuZml4ZWQgLm5hdiBsaTpob3ZlciAubWVnYV9kcm9wZG93biwgLnRlbXBsYXRlLW5vLWltYWdlIC5maXhlZCAubmF2IGxpOmZvY3VzIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgdG9wOiA0OXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgLm5hdiAucHJpbWFyeV9saW5rIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG5cbi5mbG9hdGVkLWxhYmVscyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5mbG9hdGVkLWxhYmVscyBsaSB7XG4gICAgbWFyZ2luOiAwIDAgMTBweDsgfVxuICAgIC5mbG9hdGVkLWxhYmVscyBsaSBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5mbG9hdGVkLWxhYmVscy5rZXlfbGlua3Mge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBtYXJnaW46IDAgMCA0MHB4OyB9XG4gICAgLmZsb2F0ZWQtbGFiZWxzLmtleV9saW5rcyBzdmcge1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5mbG9hdGVkLWxhYmVscyB7XG4gICAgICBmb250LXNpemU6IDE5cHg7IH1cbiAgICAgIC5mbG9hdGVkLWxhYmVscyBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cblxuLm5ld3MtZmVlZC13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5uZXdzLWZlZWQtd3JhcHBlcjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMjAwMHB4O1xuICAgIHJpZ2h0OiAtMjAwMHB4O1xuICAgIHRvcDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5uZXdzLWZlZWQtd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAtMTQwcHg7XG4gICAgICBwYWRkaW5nOiA0MHB4OyB9IH1cblxuLm5ld3MtZmVlZCBhIHtcbiAgY29sb3I6ICMyMjI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxOHB4IDA7IH1cblxuLm5ld3MtZmVlZCBwIHtcbiAgbWFyZ2luOiAwIDAgNXB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5uZXdzLWZlZWQgcCB7XG4gICAgZm9udC1zaXplOiAxN3B4OyB9IH1cblxuLmxhdW5jaF9wYW5lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwOyB9XG4gIC5sYXVuY2hfcGFuZWwuc2ltcGxlIHtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5sYXVuY2hfcGFuZWwgc3ZnIHtcbiAgICBmaWxsOiAjZmZmO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICByaWdodDogOHB4O1xuICAgIHRvcDogOHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc3RvcnktdGVhc2VyIC5zdG9yeS1wZXJzb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCA0MHB4IDAgMDtcbiAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zdG9yeS10ZWFzZXIgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDIwcHg7IH1cbiAgLnN0b3J5LXRlYXNlciBibG9ja3F1b3RlIHAge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTsgfVxuXG4uc3RvcnktdGVhc2VyIC5zdG9yeS1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLnN0b3J5LXRlYXNlciAuc3RvcnktcGVyc29uIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc3RvcnktdGVhc2VyIGJsb2NrcXVvdGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMCAwIDIwcHg7IH0gfVxuXG4uYXVkaW8tcGxheWVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCA2cHggNnB4IDhweDtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gIC5hdWRpby1wbGF5ZXIgLm1ldGEge1xuICAgIGNvbG9yOiAjMzFhMTlhO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5hdWRpby1wbGF5ZXIgLm1ldGEgLnByaW1hcnktbGFiZWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgLmF1ZGlvLXBsYXllciBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgdG9wOiA0cHg7XG4gICAgZmlsbDogIzMxYTE5YTsgfVxuICAuYXVkaW8tcGxheWVyOmhvdmVyLCAuYXVkaW8tcGxheWVyOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5hdWRpby1wbGF5ZXIge1xuICAgICAgcGFkZGluZzogMCA2cHggNnB4IDhweDsgfSB9XG5cbi5icmVhZGNydW1iIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gIC5icmVhZGNydW1iIGxpIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJyZWFkY3J1bWIgbGkgYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBjb2xvcjogIzIzMUYyMDsgfVxuICAgICAgLmJyZWFkY3J1bWIgbGkgYSBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBmaWxsOiAjMjMxRjIwO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAuYnJlYWRjcnVtYiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudGVtcGxhdGUtbGFuZGluZy1wYWdlIC5icmVhZGNydW1iIGxpIGEsIC50ZW1wbGF0ZS1pbmRleC1wYWdlIC5icmVhZGNydW1iIGxpIGEsIC50ZW1wbGF0ZS1jb3VudHJpZXMgLmJyZWFkY3J1bWIgbGkgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAudGVtcGxhdGUtbGFuZGluZy1wYWdlIC5icmVhZGNydW1iIGxpIGEgc3ZnLCAudGVtcGxhdGUtaW5kZXgtcGFnZSAuYnJlYWRjcnVtYiBsaSBhIHN2ZywgLnRlbXBsYXRlLWNvdW50cmllcyAuYnJlYWRjcnVtYiBsaSBhIHN2ZyB7XG4gICAgICBmaWxsOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5icmVhZGNydW1iIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgLmJyZWFkY3J1bWIgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4udGVtcGxhdGUtbGFuZGluZy1wYWdlIC5wYWdpbmcsIC50ZW1wbGF0ZS1zdG9yeSAucGFnaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFnZV9hbmNob3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDUwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMjBweCAtNHB4IHJnYmEoMCwgMCwgMCwgMCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnBhZ2VfYW5jaG9ycyB7XG4gICAgICB0b3A6IDI1cHg7IH0gfVxuICAucGFnZV9hbmNob3JzIC5kb3duLWFycm93IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlX2FuY2hvcnMgLmJyYW5kaW5nIHtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgdG9wOiA2cHg7XG4gICAgZmlsbDogI2VlMDAwMDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlX2FuY2hvcnMgLnRvcF9saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBjb250ZW50OiAnWWVtZW4nO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7IH1cbiAgICAucGFnZV9hbmNob3JzIC50b3BfbGluayBzdmcge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMnB4OyB9XG4gICAgLnBhZ2VfYW5jaG9ycyAudG9wX2xpbms6aG92ZXIsIC5wYWdlX2FuY2hvcnMgLnRvcF9saW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAucGFnZV9hbmNob3JzIC50b3BfbGluazpob3ZlciBzdmcsIC5wYWdlX2FuY2hvcnMgLnRvcF9saW5rOmZvY3VzIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnBhZ2VfYW5jaG9ycyAuc2hvd19hbmNob3JzX2xpbmsge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5wYWdlX2FuY2hvcnMgLnNob3dfYW5jaG9yc19saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogI2ZmZiB0aGluIGRvdHRlZDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAucGFnZV9hbmNob3JzIC5zaG93X2FuY2hvcnNfbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDAgNDBweDsgfSB9XG4gICAgLnBhZ2VfYW5jaG9ycyAuc2hvd19hbmNob3JzX2xpbmsgc3ZnIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBmaWxsOiAjZmZmO1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMnB4OyB9XG4gICAgLnBhZ2VfYW5jaG9ycyAuc2hvd19hbmNob3JzX2xpbmsuYWN0aXZlIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIC5wYWdlX2FuY2hvcnMgLnBhZ2VfYW5jaG9yc19jb250YWluZXJbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucGFnZV9hbmNob3JzIC5wYWdlX2FuY2hvcnNfY29udGFpbmVyW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ10ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5wYWdlX2FuY2hvcnMgLnBhZ2VfYW5jaG9yc19jb250YWluZXJbYXJpYS1leHBhbmRlZD0nZmFsc2UnXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAucGFnZV9hbmNob3JzIC5mbG9hdGVkLWxhYmVscyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGFnZV9hbmNob3JzIC5mbG9hdGVkLWxhYmVscyBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5wYWdlX2FuY2hvcnMgLmZsb2F0ZWQtbGFiZWxzIGEge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICBjb2xvcjogI0Y5NjY2NDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgLnBhZ2VfYW5jaG9ycyAuZmxvYXRlZC1sYWJlbHMgYSAuZGl2aWRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgdG9wOiAxMnB4O1xuICAgICAgcmlnaHQ6IC04cHg7XG4gICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICBmaWxsOiAjZmZmO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdlX2FuY2hvcnMgLmZsb2F0ZWQtbGFiZWxzIGE6aG92ZXIsIC5wYWdlX2FuY2hvcnMgLmZsb2F0ZWQtbGFiZWxzIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAucGFnZV9hbmNob3JzIC5mbG9hdGVkLWxhYmVscyBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAucGFnZV9hbmNob3JzLm9wZW4ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM1LCAzMSwgMzIsIDAuOTUpOyB9XG4gIC5wYWdlX2FuY2hvcnMuZml4ZWQge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgMzEsIDMyLCAwLjk1KTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDNweCAyMHB4IC00cHggcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuICAgIC5wYWdlX2FuY2hvcnMuZml4ZWQub3BlbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAucGFnZV9hbmNob3JzLmZpeGVkIGEge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgIC5wYWdlX2FuY2hvcnMuZml4ZWQgYSAuZGl2aWRlciB7XG4gICAgICAgIHRvcDogOHB4OyB9XG4gICAgLnBhZ2VfYW5jaG9ycy5maXhlZCAuYnJhbmRpbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnBhZ2VfYW5jaG9ycyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogOTBweDsgfVxuICAgICAgLnBhZ2VfYW5jaG9ycyAuZG93bi1hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICBmaWxsOiAjZWUwMDAwOyB9XG4gICAgICAucGFnZV9hbmNob3JzIC5zaG93X2FuY2hvcnNfbGluayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5wYWdlX2FuY2hvcnMgLmZsb2F0ZWQtbGFiZWxzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4OyB9XG4gICAgICAgIC5wYWdlX2FuY2hvcnMgLmZsb2F0ZWQtbGFiZWxzIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lOyB9XG4gICAgICAgICAgLnBhZ2VfYW5jaG9ycyAuZmxvYXRlZC1sYWJlbHMgYSAuZGl2aWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnBhZ2VfYW5jaG9ycy5maXhlZCAudG9wX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5oZXJvIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDEzMDBtcyBjdWJpYy1iZXppZXIoMC4xNTUsIDAuNTc1LCAwLjg3LCAwLjg3KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMzFGMjA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAwIDA7IH1cbiAgLmhlcm8gLnN1Yi1uYXYtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5oZXJvIC5pbnRybyB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5oZXJvLmhlcm8taG9tZXBhZ2UgaDEgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuaGVyby5oZXJvLWhvbWVwYWdlIGgxIGEgc3ZnIHtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAuaGVyby5oZXJvLWhvbWVwYWdlIGgxIGEgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1cHg7IH0gfVxuICAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogMjBweCAxNXB4IDUwcHggMDsgfVxuICAgIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDEge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDk1JTsgfVxuICAgIC50ZW1wbGF0ZS1pbmRleC1wYWdlIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUge1xuICAgICAgcGFkZGluZzogMCAwIDIwcHg7IH1cbiAgICAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHAge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnRlbXBsYXRlLXN0b3J5IC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHAge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgLmludHJvIHtcbiAgICAgIG1hcmdpbjogNXB4IDAgMjBweDsgfVxuICAgIC5mcm9udCAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTVweCA0MHB4IDA7IH1cbiAgICAgIC5mcm9udCAuaGVybyAubWFpbi1wYWdlLXRpdGxlIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDsgfVxuICAgICAgICAuZnJvbnQgLmhlcm8gLm1haW4tcGFnZS10aXRsZSBoMTpob3ZlciwgLmZyb250IC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDE6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG4gICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzMxYTE5YSwgLTEwcHggMCAwICMzMWExOWE7IH1cbiAgICAuaGVybyAubWFpbi1wYWdlLXRpdGxlIC5tZXRhIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmhlcm8gLm1haW4tcGFnZS10aXRsZSAuYXVkaW8tcGxheWVyIC5tZXRhIHtcbiAgICAgIGNvbG9yOiAjMzFhMTlhOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgLmhlcm8ge1xuICAgICAgcGFkZGluZzogMzgwcHggMCAwOyB9XG4gICAgICAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHAge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLmhlcm8ge1xuICAgICAgcGFkZGluZzogNDgwcHggMCAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmhlcm8ge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgICBwYWRkaW5nOiAwIDAgMDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAuaGVybyB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDIyMHB4KTsgfVxuICAgICAgLmhlcm8gLnN1Yi1uYXYtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmhlcm8gLnN1Yi1uYXYtd3JhcHBlciAuc3ViLW5hdiB7XG4gICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMTVweDsgfVxuICAgICAgICAgIC5oZXJvIC5zdWItbmF2LXdyYXBwZXIgLnN1Yi1uYXYgLmluLXRoaXMtc2VjdGlvbi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgICAgICAgLmhlcm8gLnN1Yi1uYXYtd3JhcHBlciAuc3ViLW5hdi5vcGVuIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTsgfVxuICAgICAgLmhlcm8gLm1haW4tcGFnZS10aXRsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgcGFkZGluZzogMCAwIDgwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNTVweDsgfVxuICAgICAgICAuZnJvbnQgLmhlcm8gLm1haW4tcGFnZS10aXRsZSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDMwcHg7IH1cbiAgICAgICAgICAuZnJvbnQgLmhlcm8gLm1haW4tcGFnZS10aXRsZSBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNTsgfVxuICAgICAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDsgfVxuICAgICAgICAudGVtcGxhdGUtc3RvcnkgLmhlcm8gLm1haW4tcGFnZS10aXRsZSBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtOyB9XG4gICAgICAgIC50ZW1wbGF0ZS1zdG9yeSAuaGVybyAubWFpbi1wYWdlLXRpdGxlIGgxIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAgIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDEge1xuICAgICAgZm9udC1zaXplOiA1MHB4OyB9XG4gICAgLmZyb250IC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDEge1xuICAgICAgZm9udC1zaXplOiA1MHB4OyB9XG4gICAgLnRlbXBsYXRlLXN0b3J5IC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUgaDEge1xuICAgICAgZm9udC1zaXplOiA1MHB4OyB9IH1cblxuLmFuY2hvci1zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBtYXJnaW4tdG9wOiAtMTAwcHg7IH1cblxuLnNlY3Rpb24taGVhZGluZyB7XG4gIG1hcmdpbjogNDBweCAwIDQwcHg7IH1cbiAgLnNlY3Rpb24taGVhZGluZyBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWRhcmstZnVsbC5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMyMjIsIC0xMHB4IDAgMCAjMjIyO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuc2VjdGlvbi1oZWFkaW5nIGgyIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cbiAgLnNlY3Rpb24taGVhZGluZyBwIHtcbiAgICBtYXJnaW46IDEwcHggMCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zZWN0aW9uLWhlYWRpbmcgcCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMDsgfSB9XG5cbi5mYWN0ZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZmFjdGZpbGUge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXRvcC1sZWZ0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgI2YyZjRmMDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNjBweDtcbiAgICAgIHotaW5kZXg6IDQ7IH1cbiAgICAgIC5mYWN0ZmlsZTphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICByaWdodDogLTIwMDBweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0gfVxuXG4ubWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAwOyB9XG5cbi5kYXRhIHtcbiAgcGFkZGluZzogMjBweCAwIDQwcHg7IH1cbiAgLmRhdGEgLnN0YXQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLmRhdGEgLnN0YXQgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBjb2xvcjogIzIzMUYyMDsgfVxuICAgIC5kYXRhIC5zdGF0IC5udW1iZXIge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAuZGF0YSAuc3RhdCAud29yZCB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDRweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5kYXRhIC5zdGF0IC5udW1iZXIge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgLmRhdGEgLnN0YXQgLndvcmQge1xuICAgICAgdG9wOiA4cHg7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4uc2l0ZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zaXRlLmluYWN0aXZlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDAuMjsgfVxuXG4ubXNmX2dsb2JhbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDQwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tc2ZfZ2xvYmFsIGgyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAubXNmX2dsb2JhbCAuaW50cm8ge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAubXNmX2dsb2JhbCB1bCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDsgfVxuICAgIC5tc2ZfZ2xvYmFsIHVsIGEge1xuICAgICAgY29sb3I6ICMzMWExOWE7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG4gICAgICAubXNmX2dsb2JhbCB1bCBhOmhvdmVyLCAubXNmX2dsb2JhbCB1bCBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5tc2ZfZ2xvYmFsLm9wZW4ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiA0MHB4IDAgNDBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5tc2ZfZ2xvYmFsIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIC5tc2ZfZ2xvYmFsIHVsIGxpIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAubXNmX2dsb2JhbCB1bCBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmNsb3NlLXBhbmVsIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogNDVweDtcbiAgd2lkdGg6IDQ1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAyO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmNsb3NlLXBhbmVsIHN2ZyB7XG4gICAgZmlsbDogI2ZmZjtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTNweDtcbiAgICBsZWZ0OiAxM3B4OyB9XG4gIC5jbG9zZS1wYW5lbDpob3ZlciwgLmNsb3NlLXBhbmVsOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFhMTlhOyB9XG5cbi5mZWF0dXJlcy13cmFwcGVyIHtcbiAgbWFyZ2luOiA2MHB4IDAgMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZmVhdHVyZXMtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA0MHB4OyB9IH1cblxuLmZlYXR1cmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luOiAwIDAgNDBweDsgfVxuICAuZmVhdHVyZSAudGV4dF9hcmVhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIHdpZHRoOiA5NSU7IH1cbiAgICAuZmVhdHVyZSAudGV4dF9hcmVhIHAge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzIzMUYyMCwgLTEwcHggMCAwICMyMzFGMjA7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGVmdDogMTBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mZWF0dXJlIC50ZXh0X2FyZWEgaDMgYSB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMzMWExOWEsIC0xMHB4IDAgMCAjMzFhMTlhO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuZmVhdHVyZSAudGV4dF9hcmVhIGgzIGEgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgZmlsbDogI2ZmZjsgfVxuICAgICAgLmZlYXR1cmUgLnRleHRfYXJlYSBoMyBhOmhvdmVyLCAuZmVhdHVyZSAudGV4dF9hcmVhIGgzIGE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDsgfVxuICAgIC5mZWF0dXJlIC50ZXh0X2FyZWEgLnNtYWxsLWRlc2Mge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5mZWF0dXJlIC5sYXVuY2hfcGFuZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZmVhdHVyZSAubGF1bmNoX3BhbmVsIHN2ZyB7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogMTNweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZmVhdHVyZSB7XG4gICAgICBtYXJnaW46IDAgMCA2MHB4OyB9IH1cblxuLnZvaWNlcy1zbWFsbCAudm9pY2VzLWhlYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMzBweDsgfVxuXG4udm9pY2VzLXNtYWxsIC52b2ljZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtd2hpdGUuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZmZmO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gIHBhZGRpbmc6IDgwcHggNDBweCA2MHB4IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjEpOyB9XG4gIC52b2ljZXMtc21hbGwgLnZvaWNlIC5wcm9maWxlX3BpYyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTVweDsgfVxuICAudm9pY2VzLXNtYWxsIC52b2ljZSAudGV4dF9hcmVhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICAudm9pY2VzLXNtYWxsIC52b2ljZSBoNCB7XG4gICAgbWFyZ2luOiAwIDAgMjVweDsgfVxuICAudm9pY2VzLXNtYWxsIC52b2ljZSBoMyB7XG4gICAgbWFyZ2luOiAwIDAgNXB4OyB9XG4gIC52b2ljZXMtc21hbGwgLnZvaWNlIC5tZXRhIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4OyB9XG4gIC52b2ljZXMtc21hbGwgLnZvaWNlIHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07IH1cblxuLmltcGFjdCB7XG4gIHBhZGRpbmc6IDAgMCAxMjBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaW1wYWN0IC5zZWN0aW9uLWhlYWRpbmcgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5pbXBhY3QgLndvcmxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmltcGFjdCAud29ybGQgc3ZnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA2MDBweDtcbiAgICAgIGZpbGw6ICM0MzRhNGE7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cbiAgICAuaW1wYWN0IC53b3JsZCBpbWcge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5pbXBhY3QgLndvcmxkIC50ZXh0LWxpbmsge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5pbXBhY3QgLndvcmxkIC50ZXh0LWxpbmsgaDQge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDZweCAxMHB4OyB9XG4gICAgICAgIC5pbXBhY3QgLndvcmxkIC50ZXh0LWxpbmsgaDQgc3ZnIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5pbXBhY3QgLndvcmxkIC50ZXh0LWxpbmsge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgIGJvdHRvbTogYXV0bzsgfVxuICAgICAgICAuaW1wYWN0IC53b3JsZCAudGV4dC1saW5rIGg0IHtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDEwcHggNnB4IDEwcHg7IH1cbiAgICAgICAgICAuaW1wYWN0IC53b3JsZCAudGV4dC1saW5rIGg0IHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDsgfVxuICAgICAgLmltcGFjdCAud29ybGQ6aG92ZXIgaW1nLCAuaW1wYWN0IC53b3JsZDpmb2N1cyBpbWcge1xuICAgICAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAgIC5pbXBhY3QgLndvcmxkOmhvdmVyIC50ZXh0LWxpbmssIC5pbXBhY3QgLndvcmxkOmZvY3VzIC50ZXh0LWxpbmsge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH0gfVxuICAuaW1wYWN0IC5zbWFsbC1kZXNjIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDAuNzsgfVxuICAuaW1wYWN0IC5zdGF0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLmltcGFjdCAubGlzdGluZy1ibG9jayBoNCB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIHVsIGEge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgY29sb3I6ICMyMzFGMjA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gICAgICAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIHVsIGE6aG92ZXIsIC5pbXBhY3QgLmxpc3RpbmctYmxvY2sgdWwgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIC5zaG93LWFsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMTVweCAwIDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogI2VlMDAwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuaW1wYWN0IC5saXN0aW5nLWJsb2NrIGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5zdGF0cyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgI2VhZWNlNjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnN0YXRzLmlubGluZS1zdGF0cyB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW46IDE1cHggMCAzMHB4OyB9XG4gIC5zdGF0cy5zdGF0cy1iaWcge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN0YXRzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuc3RhdHMgbGkgLmRpdmlkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuc3RhdHMgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjEuMiU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgcGFkZGluZzogMCAwIDAgMDsgfVxuICAgICAgLnN0YXRzIGxpOm50aC1jaGlsZCg0bis0KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgLnN0YXRzIGxpIC5kaXZpZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB0b3A6IDEwJTtcbiAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjE7IH1cbiAgICAuc3RhdHMuaW5saW5lLXN0YXRzIHtcbiAgICAgIHdpZHRoOiAxMzAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNSU7IH1cbiAgICAgIC5mcm9udCAuc3RhdHMuaW5saW5lLXN0YXRzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAuc3RhdHMuaW5saW5lLXN0YXRzIGxpIHtcbiAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLnN0YXRzLmlubGluZS1zdGF0cyBsaTpudGgtY2hpbGQoNG4rNCkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICAuc3RhdHMuaW5saW5lLXN0YXRzIGxpOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5zdGF0cy5pbmxpbmUtc3RhdHMgbGkgLmRpdmlkZXIge1xuICAgICAgICAgIHJpZ2h0OiAtMTUlO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7IH0gfVxuICAuc3RhdHMgLmNlbnRlci1idXR0b24gYS5idG4uYnRuX3NlY29uZGFyeSwgLnN0YXRzIC5jZW50ZXItYnV0dG9uIC5zZWFyY2gtZm9ybSBhLmJ0bl9zZWNvbmRhcnkjZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAuc3RhdHMgLmNlbnRlci1idXR0b24gYS5idG5fc2Vjb25kYXJ5I2VkaXQtc3VibWl0IHtcbiAgICBjb2xvcjogI2QyMDAwMDsgfVxuICAgIC5zdGF0cyAuY2VudGVyLWJ1dHRvbiBhLmJ0bi5idG5fc2Vjb25kYXJ5OmhvdmVyLCAuc3RhdHMgLmNlbnRlci1idXR0b24gLnNlYXJjaC1mb3JtIGEuYnRuX3NlY29uZGFyeSNlZGl0LXN1Ym1pdDpob3ZlciwgLnNlYXJjaC1mb3JtIC5zdGF0cyAuY2VudGVyLWJ1dHRvbiBhLmJ0bl9zZWNvbmRhcnkjZWRpdC1zdWJtaXQ6aG92ZXIsIC5zdGF0cyAuY2VudGVyLWJ1dHRvbiBhLmJ0bi5idG5fc2Vjb25kYXJ5OmZvY3VzLCAuc3RhdHMgLmNlbnRlci1idXR0b24gLnNlYXJjaC1mb3JtIGEuYnRuX3NlY29uZGFyeSNlZGl0LXN1Ym1pdDpmb2N1cywgLnNlYXJjaC1mb3JtIC5zdGF0cyAuY2VudGVyLWJ1dHRvbiBhLmJ0bl9zZWNvbmRhcnkjZWRpdC1zdWJtaXQ6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7IH1cblxuLnN0YXQge1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN0YXQgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjMzFhMTlhOyB9XG4gICAgLnN0YXQgc3Bhbi5jb3VudGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuc3RhdCAubnVtYmVyIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzIyNzA2YjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnN0YXQgLndvcmQge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjMjI3MDZiO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zdGF0IHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmlubGluZS1zdGF0cyAuc3RhdCAubnVtYmVyIHtcbiAgICBmb250LXNpemU6IDQ1cHg7IH1cbiAgLnN0YXRzLWJpZyAuc3RhdCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG4gICAgLnN0YXRzLWJpZyAuc3RhdCAuZGl2aWRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnN0YXRzLWJpZyAuc3RhdCAubnVtYmVyIHtcbiAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDZlbTsgfVxuICAgICAgLnN0YXRzLWJpZyAuc3RhdCAubnVtYmVyIC5zZWNvbmRhcnkge1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLnN0YXRzLWJpZyAuc3RhdCAud29yZCB7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuc3RhdHMtYmlnIC5zdGF0IC5kZXNjIHtcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdGF0cy1iaWcgLnN0YXQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH0gfVxuXG4udGFnIHtcbiAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogIzQ0NDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnRhZy5jb3VudHJ5LXRhZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gIC5mZWF0dXJlZCAudGFnIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG4gICAgLmZlYXR1cmVkIC50YWcgc3ZnIHtcbiAgICAgIGZpbGw6ICNmZmY7IH1cbiAgLnRhZyBzdmcge1xuICAgIGZpbGw6ICM0NDQ7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAzcHg7XG4gICAgdG9wOiA1cHg7IH1cbiAgLnRhZyBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4OyB9XG4gIC50YWc6aG92ZXIsIC50YWc6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAudGFnOmhvdmVyIHN2ZywgLnRhZzpmb2N1cyBzdmcge1xuICAgICAgZmlsbDogI2ZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAudGFnIHtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4OyB9IH1cblxuLmxhdGVzdF9mZWVkIC5mZWVkIC5sYXRlc3RfZmVhdHVyZS52aWRlbyAudGV4dF9hcmVhIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubGF0ZXN0X2ZlZWQge1xuICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC13aGl0ZS5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICNmZmY7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5sYXRlc3RfZmVlZC5saXN0aW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIC50ZW1wbGF0ZS1pbmRleC1wYWdlIC5sYXRlc3RfZmVlZCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7IH1cbiAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAubGF0ZXN0X2ZlZWQgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5sYXRlc3RfZmVlZCAudG9wLWxlZnQtdGV4IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5sYXRlc3RfZmVlZCAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLnNlY3Rpb24taGVhZGluZyBoMiB7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGVmdDogMDsgfVxuICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUge1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlLnRleHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEwMiwgMTAyLCAxMDIsIDAuMSk7IH0gfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgYS5tYWluX2ltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgYS5tYWluX2ltZyBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTMwMG1zIGN1YmljLWJlemllcigwLjE1NSwgMC41NzUsIDAuODcsIDAuODcpOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS52aWRlbyAudGV4dF9hcmVhIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4OyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCAudGFnIHtcbiAgICAgIGNvbG9yOiAjMzFhMTlhO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMzFhMTlhO1xuICAgICAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQ7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLnRhZyBzdmcge1xuICAgICAgICBmaWxsOiAjMzFhMTlhO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLnRhZzpob3ZlciwgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCAudGFnOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzMxYTE5YTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzFhMTlhOyB9XG4gICAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLnRhZzpob3ZlciBzdmcsIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLnRhZzpmb2N1cyBzdmcge1xuICAgICAgICAgIGZpbGw6IHdoaXRlOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCAuaGVhZGluZyB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCAuaGVhZGluZyBzdmcge1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHRfYXJlYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC5wcm9maWxlX3RodW1iIHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGUge1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC01MHB4O1xuICAgICAgei1pbmRleDogMjsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGUgc3ZnIHtcbiAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGUgc3ZnIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgICAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLmJ0bl90eXBlIHN2ZyB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH0gfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGUubmV3cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGUubmV3cyBzdmcge1xuICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgbGVmdDogMTJweDsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAuYnRuX3R5cGU6aG92ZXIsIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLmJ0bl90eXBlOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnR5cGUge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTUwcHg7XG4gICAgICBsZWZ0OiAtNTBweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC50eXBlIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnR5cGUge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfSB9XG4gICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC50eXBlLmFjdGl2ZSB7XG4gICAgICAgIGxlZnQ6IDUwcHg7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC50ZXh0IC5jb250ZW50X3R5cGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgcGFkZGluZzogMTJweCAwIDAgMDsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgaDIge1xuICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCBoMiBhIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgI2VlMDAwMCwgLTEwcHggMCAwICNlZTAwMDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAxMHB4OyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCBoMyB7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgICBmb250LXNpemU6IDIycHg7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgaDMgYSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgY29sb3I6ICMyMzFGMjA7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCBoMyBhOmhvdmVyLCAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC50ZXh0IGgzIGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZWUwMDAwOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLm1ldGEge1xuICAgICAgbWFyZ2luOiA1cHggMCAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgLmZlYXR1cmVfYXV0aG9yIHtcbiAgICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS5uZXdzIC50ZXh0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS5pbnN0YWdyYW0ge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1saWdodC1ib3R0b20ucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IGJvdHRvbSAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlLmluc3RhZ3JhbSAubWFpbl9pbWcge1xuICAgICAgICBib3JkZXI6IDEwcHggc29saWQgI2ZmZjsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS5pbnN0YWdyYW0gLmxhdW5jaF9wYW5lbCB7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgbGVmdDogYXV0bzsgfVxuICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS5pbnN0YWdyYW0gLnRleHRfYXJlYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4OyB9XG4gICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlLmluc3RhZ3JhbSAucHJvZmlsZV90aHVtYiB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUuaW5zdGFncmFtIC50ZXh0IC5mZWF0dXJlX2F1dGhvciB7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDA7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZS5pbnN0YWdyYW0gLnRleHQgLmZlYXR1cmVfYXV0aG9yIC5wcmltYXJ5LWxhYmVsIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgNXB4OyB9XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZTpob3ZlciBoMyBhLCAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlOmZvY3VzIGgzIGEge1xuICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlOmhvdmVyIGgyIGEsIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmU6Zm9jdXMgaDIgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFhMTlhO1xuICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzMxYTE5YSwgLTEwcHggMCAwICMzMWExOWE7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlOmhvdmVyIC50eXBlLCAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlOmZvY3VzIC50eXBlIHtcbiAgICAgIGxlZnQ6IDUwcHg7IH1cbiAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlOmhvdmVyIC50eXBlLmFjdGl2ZSwgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZTpmb2N1cyAudHlwZS5hY3RpdmUge1xuICAgICAgbGVmdDogNTBweDsgfVxuICAubGF0ZXN0X2ZlZWQubGlzdGluZyAubGF0ZXN0X2ZlYXR1cmUgLmJ0bl90eXBlLCAubGF0ZXN0X2ZlZWQubGlzdGluZyAubGF0ZXN0X2ZlYXR1cmUgLnR5cGUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7IH1cbiAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWRhcmstZnVsbC5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB9XG4gICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEge1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICAubGF0ZXN0X2ZlZWQubGlzdGluZyAubGF0ZXN0X2ZlYXR1cmUuZmVhdHVyZWQgLnRleHRfYXJlYSAudGV4dCB7XG4gICAgICAgIGxlZnQ6IDgwJTtcbiAgICAgICAgd2lkdGg6IDMwJTsgfVxuICAgICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEgaDMgYSwgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEgLm1ldGEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEgaDMgYTpob3ZlciwgLmxhdGVzdF9mZWVkLmxpc3RpbmcgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI0Y5NjY2NDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgIC5sYXRlc3RfZmVlZCBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwJTsgfVxuICAgICAgLmxhdGVzdF9mZWVkIGxpOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sYXRlc3RfZmVlZC5saXN0aW5nIGxpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5sYXRlc3RfZmVlZC5saXN0aW5nIGxpIC5tYWluX2ltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzUlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDclOyB9XG4gICAgICAubGF0ZXN0X2ZlZWQubGlzdGluZyBsaSAuYnRuX3R5cGUsIC5sYXRlc3RfZmVlZC5saXN0aW5nIGxpIC50eXBlIHtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgICAubGF0ZXN0X2ZlZWQubGlzdGluZyBsaSAudGV4dF9hcmVhIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1OCU7IH1cbiAgICAgIC5sYXRlc3RfZmVlZC5saXN0aW5nIGxpIC50ZXh0IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9XG4gICAgICAubGF0ZXN0X2ZlZWQubGlzdGluZyBsaSAuYnRuLXR5cGUge1xuICAgICAgICB0b3A6IDA7IH1cbiAgICAgIC5sYXRlc3RfZmVlZC5saXN0aW5nIGxpIC5sYXRlc3RfZmVhdHVyZS5mZWF0dXJlZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgbGkgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC5tYWluX2ltZyB7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgbGkgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEge1xuICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgcGFkZGluZzogMzBweCAzMHB4OyB9XG4gICAgICAgICAgLmxhdGVzdF9mZWVkLmxpc3RpbmcgbGkgLmxhdGVzdF9mZWF0dXJlLmZlYXR1cmVkIC50ZXh0X2FyZWEgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAubGF0ZXN0X2ZlZWQge1xuICAgICAgcGFkZGluZzogNDBweCAwIDAgMjBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDsgfVxuICAgICAgLmZyb250IC5sYXRlc3RfZmVlZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gICAgICAubGF0ZXN0X2ZlZWQgLnRvcC1sZWZ0LXRleCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG9wYWNpdHk6IDAuNzsgfVxuICAgICAgLmxhdGVzdF9mZWVkIGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyNi41JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkIGxpOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7IH1cbiAgICAgICAgLmxhdGVzdF9mZWVkIGxpOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAubGF0ZXN0X2ZlZWQgLmxhdGVzdF9mZWF0dXJlIC5wcm9maWxlX3RodW1iIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmxhdGVzdF9mZWVkIC5sYXRlc3RfZmVhdHVyZSAudGV4dCBoMiB7XG4gICAgICBtYXJnaW46IDFweCAwIDEwcHg7IH1cbiAgICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnRleHQgaDIgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDsgfVxuICAgIC5sYXRlc3RfZmVlZCAubGF0ZXN0X2ZlYXR1cmUgLnR5cGUuYWN0aXZlIHtcbiAgICAgIGxlZnQ6IC0xMDBweDsgfSB9XG5cbi5pbnRyby13cmFwcGVyIHtcbiAgcGFkZGluZzogMjBweCAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICNmMmY0ZjA7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuaW50cm8td3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgMjBweDsgfSB9XG5cbi5wYWdpbmcge1xuICBtYXJnaW46IDEwcHggMCA0MHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAucGFnaW5nIHN2ZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDsgfVxuXG4uY3RhcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBwYWRkaW5nOiA0MHB4IDAgMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY3RhcyB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDA7IH0gfVxuXG4uY3RhLXNpbXBsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDQwcHggMCA0MHB4OyB9XG4gIC5jdGEtc2ltcGxlIC5kaXZpZGVyIHtcbiAgICBmaWxsOiAjZmZmO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMDRkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMDZkZWcpO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMjBweDtcbiAgICBsZWZ0OiA0MCU7IH1cbiAgLmN0YS1zaW1wbGUgLmludHJvIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5pbmxpbmUtY3RhIHtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuaW5saW5lLWN0YSBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4OyB9XG5cbi5jdGEtc21hbGwge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIG1hcmdpbjogMCBhdXRvIDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDk1JTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsZWZ0OiAxMHB4OyB9XG4gIC5jdGEtc21hbGwgLmJvdHRvbS10ZXh0dXJlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jdGEtc21hbGwud2l0aHZvaWNlcyB7XG4gICAgei1pbmRleDogNTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmN0YS1zbWFsbCAuZGl2aWRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY3RhLXNtYWxsIGRpdiB7XG4gICAgbWFyZ2luOiAzcHggMCAwOyB9XG4gIC5jdGEtc21hbGwgcCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjMjMxRjIwLCAtMTBweCAwIDAgIzIzMUYyMDtcbiAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5jdGEtc21hbGwgaDMge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjMzFhMTlhLCAtMTBweCAwIDAgIzMxYTE5YTtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgLmN0YS1zbWFsbCBoMyBzdmcge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGhlaWdodDogMThweDsgfVxuICAuY3RhLXNtYWxsLmxpZ2h0IHAge1xuICAgIGJhY2tncm91bmQ6ICMzYTNhM2E7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzNhM2EzYSwtMTBweCAwIDAgIzNhM2EzYTsgfVxuICAuY3RhLXNtYWxsOmhvdmVyLCAuY3RhLXNtYWxsOmZvY3VzIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7IH1cbiAgICAuY3RhLXNtYWxsOmhvdmVyIGgzLCAuY3RhLXNtYWxsOmZvY3VzIGgzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTNweCAwIDAgI2VlMDAwMDsgfVxuICAuY3RhLXNtYWxsIC5pbnRybyB7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAuY3RhLXNtYWxsIC5idG4sIC5jdGEtc21hbGwgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC5jdGEtc21hbGwgI2VkaXQtc3VibWl0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuICAuY3RhLXNtYWxsIC5kaXZpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAyNjBweDtcbiAgICB3aWR0aDogOTBweDtcbiAgICB0b3A6IC0xNTBweDtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDQ1cHgpO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICBmaWxsOiAjMjMxRjIwO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTA1ZGVnKTsgfVxuICAgIC5jdGEtc21hbGwgLmRpdmlkZXIuYm90dG9tIHtcbiAgICAgIGJvdHRvbTogLTE1MHB4O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwOGRlZyk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmN0YS1zbWFsbCB7XG4gICAgICBtYXJnaW46IDAgYXV0byA0MHB4OyB9XG4gICAgICAuY3RhLXNtYWxsIGRpdiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7IH1cbiAgICAgIC5jdGEtc21hbGwucmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMCAtNjBweCA2MHB4IDYwcHg7XG4gICAgICAgIHdpZHRoOiAzNSU7IH1cbiAgICAgIC5jdGEtc21hbGwubWlkZGxlIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGxlZnQ6IDA7IH0gfVxuXG4uYm90dG9tLXRleHR1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7IH1cblxuLmN0YV9tYWluIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgcGFkZGluZzogMCAwIDMwcHg7IH1cbiAgLmN0YV9tYWluIC5kaXZpZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTYwcHg7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIGZpbGw6ICNmZmY7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmN0YV9tYWluIGg0IHtcbiAgICBtYXJnaW46IDAgMCAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmN0YV9tYWluIGgyIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjZWUwMDAwO1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDE1cHg7IH1cbiAgICAuY3RhX21haW4gaDIgc3ZnIHtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5jdGFfbWFpbiBwIHtcbiAgICBtYXJnaW46IDAgMCAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAuY3RhX21haW46aG92ZXIgaDIsIC5jdGFfbWFpbjpmb2N1cyBoMiB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgICBwYWRkaW5nOiA1cHggMTVweDsgfVxuICAuY3RhX21haW46Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6ICNlZTAwMDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmN0YV9tYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICAgLmN0YV9tYWluIC5kaXZpZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jdGFfbWFpbiBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzhweDsgfSB9XG5cbi5zaGFyZV9iYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3R0b206IC0zMDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDI2cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zaGFyZV9iYXIge1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyNnB4IC01cHggcmdiYSgwLCAwLCAwLCAwKTsgfSB9XG4gIC5zaGFyZV9iYXIgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDsgfVxuICAuc2hhcmVfYmFyLmFjdGl2ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLnNoYXJlX2JhciAuc2hhcmVfaW50cm8gc3ZnIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zaGFyZV9iYXIgLnNoYXJlX2ludHJvIGgyIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS4zOyB9XG4gICAgLnNoYXJlX2JhciAuc2hhcmVfaW50cm8gaDIgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5zaGFyZV9iYXIgLnNoYXJlX2ludHJvIC5pbnRybyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgb3BhY2l0eTogMC44OyB9XG4gIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmxhYmVsIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtOXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAuc2hhcmVfYmFyIC5zaGFyZV9vcHRpb25zIC5sYWJlbCB7XG4gICAgICAgIHRvcDogMDsgfSB9XG4gIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXdhcm0uanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZWFlY2U2O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlOyB9XG4gICAgLnNoYXJlX2JhciAuc2hhcmVfb3B0aW9ucyAuY29weV9saW5rIC5idG4sIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0LCAuc2VhcmNoLWZvcm0gLnNoYXJlX2JhciAuc2hhcmVfb3B0aW9ucyAuY29weV9saW5rICNlZGl0LXN1Ym1pdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgICAgLnNoYXJlX2JhciAuc2hhcmVfb3B0aW9ucyAuY29weV9saW5rIC5idG4gc3BhbiwgLnNoYXJlX2JhciAuc2hhcmVfb3B0aW9ucyAuY29weV9saW5rIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQgc3BhbiwgLnNlYXJjaC1mb3JtIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayAjZWRpdC1zdWJtaXQgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnNoYXJlX2JhciB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDgwcHg7IH1cbiAgICAgIC5zaGFyZV9iYXIgLnNoYXJlX2ludHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAuc2hhcmVfYmFyIC5zaGFyZV9pbnRybyBzdmcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgb3BhY2l0eTogMC4zOyB9XG4gICAgICAgIC5zaGFyZV9iYXIgLnNoYXJlX2ludHJvIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAgIC5zaGFyZV9iYXIgLnNoYXJlX2ludHJvIGgyIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgICAuc2hhcmVfYmFyIC5zaGFyZV9vcHRpb25zIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9XG4gICAgICAgIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayAuYnRuIHNwYW4sIC5zaGFyZV9iYXIgLnNoYXJlX29wdGlvbnMgLmNvcHlfbGluayAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0IHNwYW4sIC5zZWFyY2gtZm9ybSAuc2hhcmVfYmFyIC5zaGFyZV9vcHRpb25zIC5jb3B5X2xpbmsgI2VkaXQtc3VibWl0IHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsgfSB9XG5cbi5zb2NpYWwgLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7IH1cblxuLnNvY2lhbCB1bCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uc29jaWFsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5zb2NpYWwgYSBzcGFuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc29jaWFsIGEgc3ZnIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBmaWxsOiAjNDQ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogN3B4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zb2NpYWwgYSBzdmcge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7IH0gfVxuICAuc29jaWFsIGEgc3ZnLmZiIHtcbiAgICBmaWxsOiAjM2I1OTk4OyB9XG4gIC5zb2NpYWwgYSBzdmcudHcge1xuICAgIGZpbGw6ICM1NWFjZWU7IH1cbiAgLnNvY2lhbCBhIHN2Zy5saSB7XG4gICAgZmlsbDogIzAwN2JiNTsgfVxuICAuc29jaWFsIGEgc3ZnLmdvIHtcbiAgICBmaWxsOiAjZGQ0YjM5OyB9XG4gIC5zb2NpYWwgYSBzdmcuZW0ge1xuICAgIGZpbGw6ICMzMWExOWE7IH1cblxuLnNvY2lhbCBhOmhvdmVyLCAuc29jaWFsIGE6Zm9jdXMge1xuICBjb2xvcjogIzMxYTE5YTsgfVxuICAuc29jaWFsIGE6aG92ZXIgc3ZnLCAuc29jaWFsIGE6Zm9jdXMgc3ZnIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbGw6ICMyMzFGMjA7IH1cblxuZm9vdGVyIC5zb2NpYWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIHBhZGRpbmc6IDMwcHggMCAwO1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4xKTsgfVxuICBmb290ZXIgLnNvY2lhbCAubGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwgLmxhYmVsLmhpZGUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICBmb290ZXIgLnNvY2lhbCAubGFiZWw6YWZ0ZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGNvbG9yOiAjMjMxRjIwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGZvb3RlciAuc29jaWFsIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBmb290ZXIgLnNvY2lhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBmb290ZXIgLnNvY2lhbCBhIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweCAwIDE1cHggMzVweDtcbiAgICBtYXJnaW46IDAgMCAxcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwgYSBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGZvb3RlciAuc29jaWFsIGEgc3ZnIHtcbiAgICAgIGZpbGw6ICM0NDQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAgIGZvb3RlciAuc29jaWFsIGE6aG92ZXIuYnNjbXNfc29jaWFsX25ldHdvcmtzX2ZhY2Vib29rIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5ic2Ntc19zb2NpYWxfbmV0d29ya3NfZmFjZWJvb2sgc3ZnIHtcbiAgICAgIGZpbGw6ICMzYjU5OTg7IH1cbiAgICBmb290ZXIgLnNvY2lhbCBhOmhvdmVyLmJzY21zX3NvY2lhbF9uZXR3b3Jrc190d2l0dGVyIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5ic2Ntc19zb2NpYWxfbmV0d29ya3NfdHdpdHRlciBzdmcge1xuICAgICAgZmlsbDogIzU1YWNlZTsgfVxuICAgIGZvb3RlciAuc29jaWFsIGE6aG92ZXIuYnNjbXNfc29jaWFsX25ldHdvcmtzX2luc3RhZ3JhbSBzdmcsIGZvb3RlciAuc29jaWFsIGE6Zm9jdXMuYnNjbXNfc29jaWFsX25ldHdvcmtzX2luc3RhZ3JhbSBzdmcge1xuICAgICAgZmlsbDogI2U5NTk1MDsgfVxuICAgIGZvb3RlciAuc29jaWFsIGE6aG92ZXIuYnNjbXNfc29jaWFsX25ldHdvcmtzX3doYXRzYXBwIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5ic2Ntc19zb2NpYWxfbmV0d29ya3Nfd2hhdHNhcHAgc3ZnIHtcbiAgICAgIGZpbGw6ICM0ZGMyNDc7IH1cbiAgICBmb290ZXIgLnNvY2lhbCBhOmhvdmVyLnBpIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5waSBzdmcge1xuICAgICAgZmlsbDogI2NiMjAyNzsgfVxuICAgIGZvb3RlciAuc29jaWFsIGE6aG92ZXIuYnNjbXNfc29jaWFsX25ldHdvcmtzX2dvb2dsZXBsdXMgc3ZnLCBmb290ZXIgLnNvY2lhbCBhOmZvY3VzLmJzY21zX3NvY2lhbF9uZXR3b3Jrc19nb29nbGVwbHVzIHN2ZyB7XG4gICAgICBmaWxsOiAjZGQ0YjM5OyB9XG4gICAgZm9vdGVyIC5zb2NpYWwgYTpob3Zlci5ic2Ntc19zb2NpYWxfbmV0d29ya3NfdHVtYmxyIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5ic2Ntc19zb2NpYWxfbmV0d29ya3NfdHVtYmxyIHN2ZyB7XG4gICAgICBmaWxsOiAjMzI1MDZkOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwgYTpob3Zlci5ic2Ntc19zb2NpYWxfbmV0d29ya3NfcnNzIHN2ZywgZm9vdGVyIC5zb2NpYWwgYTpmb2N1cy5ic2Ntc19zb2NpYWxfbmV0d29ya3NfcnNzIHN2ZyB7XG4gICAgICBmaWxsOiAjZmY2NjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGZvb3RlciAuc29jaWFsIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXItbGVmdDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7IH1cbiAgICAgIGZvb3RlciAuc29jaWFsIC5sYWJlbDphZnRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4ubGlzdGluZy1maWx0ZXJzIHtcbiAgbWFyZ2luOiAwIDAgMDtcbiAgei1pbmRleDogMTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7IH1cbiAgLmxpc3RpbmctZmlsdGVycyAuZmlsdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGYwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAwO1xuICAgIGJvcmRlcjogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMDQpOyB9XG4gICAgLmxpc3RpbmctZmlsdGVycyAuZmlsdGVyIC5maWx0ZXItbGFiZWwge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5saXN0aW5nLWZpbHRlcnMgLmZpbHRlciAuZmlsdGVyLWxhYmVsIHN2ZyB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgdG9wOiAxNXB4OyB9XG4gICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgLmZpbHRlci1sYWJlbDpob3ZlciwgLmxpc3RpbmctZmlsdGVycyAuZmlsdGVyIC5maWx0ZXItbGFiZWw6Zm9jdXMge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzFGMjA7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5saXN0aW5nLWZpbHRlcnMgLmZpbHRlciAuZmlsdGVyLWxhYmVsOmhvdmVyIHN2ZywgLmxpc3RpbmctZmlsdGVycyAuZmlsdGVyIC5maWx0ZXItbGFiZWw6Zm9jdXMgc3ZnIHtcbiAgICAgICAgICBmaWxsOiAjZmZmOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgLmZpbHRlci1sYWJlbC5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMxRjIwO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgLmZpbHRlci1sYWJlbC5hY3RpdmUgc3ZnIHtcbiAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgdWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGxlZnQ6IC0xcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgICAgIHotaW5kZXg6IDExO1xuICAgICAgYm9yZGVyOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgdWwgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTtcbiAgICAgICAgY29sb3I6ICMyMzFGMjA7IH1cbiAgICAgICAgLmxpc3RpbmctZmlsdGVycyAuZmlsdGVyIHVsIGE6aG92ZXIsIC5saXN0aW5nLWZpbHRlcnMgLmZpbHRlciB1bCBhOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIgdWwuYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmxpc3RpbmctZmlsdGVycyB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpOyB9XG4gICAgICAubGlzdGluZy1maWx0ZXJzIC5maWx0ZXIge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICAgIHdpZHRoOiAyNiU7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuLmZpbHRlcnMge1xuICBtYXJnaW46IDAgMCAxNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmZpbHRlcnMgdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZmlsdGVycyB1bCBhIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICM0NDQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiA4cHggNXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgICAuZmlsdGVycyB1bCBhLmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2VlMDAwMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmZpbHRlcnMgdWwgYSB7XG4gICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgIG1hcmdpbjogMCA1cHg7IH1cbiAgICAgIC5maWx0ZXJzIHVsIGE6aG92ZXIsIC5maWx0ZXJzIHVsIGE6Zm9jdXMge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2VlMDAwMDtcbiAgICAgICAgY29sb3I6ICNlZTAwMDA7IH0gfVxuXG4uY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1cHg7XG4gIHJpZ2h0OiA1cHg7XG4gIHotaW5kZXg6IDEwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC42OyB9XG4gIC50aXRsZS1iYW5uZXIgLmNhcHRpb24ge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY2FwdGlvbiB7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIC5jYXB0aW9uIHN2ZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2FwdGlvbi1tYWluLCAubWVkaWEtZWxlbWVudC1jb250YWluZXIubWVkaWEtZGVmYXVsdCAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1jYXB0aW9uIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXdhcm0tbHQucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZjJmNGYwO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5zaG93X2NhcHRpb24gc3ZnIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBmaWxsOiAjZmZmO1xuICAtd2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4uc2hvd19jYXB0aW9uOmhvdmVyIHN2ZywgLnNob3dfY2FwdGlvbjpmb2N1cyBzdmcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5zaG93X2NhcHRpb24gc3ZnIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7IH0gfVxuXG4uZ3JhZC1tYXNrIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2dyYWQtbWFzay5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogMjUwcHg7IH1cbiAgLnRpdGxlLWJhbm5lciAuZ3JhZC1tYXNrIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZ3JhZC1tYXNrLXRvcCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ncmFkLW1hc2stdG9wLnBuZ1wiKSBuby1yZXBlYXQgcmlnaHQgdG9wO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiAyNTBweDsgfVxuICAudGl0bGUtYmFubmVyIC5ncmFkLW1hc2stdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZ3JhZC1tYXNrLWJpZyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9ncmFkLW1hc2stYmlnLnBuZ1wiKSBuby1yZXBlYXQgYm90dG9tIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxNTAlO1xuICBoZWlnaHQ6IDE1MCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAuZ3JhZC1tYXNrLWJpZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi50aXRsZS1iYW5uZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWdyZXktd2FybS5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICNlYWVjZTY7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7XG4gIHRvcDogNTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHJpZ2h0OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC50aXRsZS1iYW5uZXIge1xuICAgICAgdG9wOiA5MHB4O1xuICAgICAgd2lkdGg6IDc1JTsgfSB9XG5cbi5yaWNoLXRleHQge1xuICBwYWRkaW5nOiAxNXB4IDAgMTVweCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBtYXJnaW4tdG9wOiAyMjBweDtcbiAgbWF4LXdpZHRoOiA4NjBweDsgfVxuICAudGVtcGxhdGUtc3RvcnkgLnJpY2gtdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC50ZW1wbGF0ZS1zdGFuZGFyZCAucmljaC10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIC50ZW1wbGF0ZS1uby1pbWFnZSAucmljaC10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAudGVtcGxhdGUtbm8taW1hZ2UgLnJpY2gtdGV4dDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAucmljaC10ZXh0OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMjAwMHB4O1xuICAgIGxlZnQ6IC0yMDAwcHg7XG4gICAgdG9wOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAucmljaC10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDA7XG4gICAgICBtYXJnaW4tdG9wOiAzMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLnJpY2gtdGV4dCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDQwcHggMzBweCAwO1xuICAgICAgbWFyZ2luLXRvcDogNDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAucmljaC10ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDc1dmg7XG4gICAgICBwYWRkaW5nOiA0MHB4IDQwcHggNDBweCAwOyB9XG4gICAgICAudGVtcGxhdGUtbm8taW1hZ2UgLnJpY2gtdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7IH0gfVxuXG4uYXV0aG9ybmFtZSB7XG4gIGNvbG9yOiAjZWUwMDAwOyB9XG5cbi5tZXRhLW1haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxMHB4IDEwcHggMDtcbiAgei1pbmRleDogNTsgfVxuICAubWV0YS1tYWluIC5zZWNvbmRhcnktbGFiZWwgYSwgLm1ldGEtbWFpbiAudGVydGlhcnktbGFiZWwgYSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5tZXRhLW1haW4gLnNlY29uZGFyeS1sYWJlbC5saW5rIHN2ZywgLm1ldGEtbWFpbiAudGVydGlhcnktbGFiZWwubGluayBzdmcge1xuICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5tZXRhLW1haW4gLnNlY29uZGFyeS1sYWJlbC5saW5rOmhvdmVyIHN2ZywgLm1ldGEtbWFpbiAuc2Vjb25kYXJ5LWxhYmVsLmxpbms6Zm9jdXMgc3ZnLCAubWV0YS1tYWluIC50ZXJ0aWFyeS1sYWJlbC5saW5rOmhvdmVyIHN2ZywgLm1ldGEtbWFpbiAudGVydGlhcnktbGFiZWwubGluazpmb2N1cyBzdmcge1xuICAgIGZpbGw6ICMzMWExOWE7IH1cbiAgLnRlbXBsYXRlLW5vLWltYWdlIC5tZXRhLW1haW4ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAudGVtcGxhdGUtbm8taW1hZ2UgLm1ldGEtbWFpbjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAubWV0YS1tYWluLm1ldGEtbWFpbi1ibG9nIHtcbiAgICB0b3A6IC00NXB4O1xuICAgIGhlaWdodDogNDVweDsgfVxuICAgIC5tZXRhLW1haW4ubWV0YS1tYWluLWJsb2cgLmZlYXR1cmVfYXV0aG9yIC5zZWNvbmRhcnktbGFiZWwsIC5tZXRhLW1haW4ubWV0YS1tYWluLWJsb2cgLmZlYXR1cmVfYXV0aG9yIC50ZXJ0aWFyeS1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50ZW1wbGF0ZS1zdG9yeSAubWV0YS1tYWluLm1ldGEtbWFpbi1ibG9nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZy10b3A6IDVweDsgfVxuICAubWV0YS1tYWluIC5zdG9yeS1wZXJzb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogOTBweDtcbiAgICBsZWZ0OiAtMTEwcHg7IH1cbiAgLm1ldGEtbWFpbjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwMDBweDtcbiAgICBsZWZ0OiAtMjAwMHB4O1xuICAgIHRvcDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1ldGEtbWFpbiB7XG4gICAgICB0b3A6IC00MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZzogMTBweCAxNXB4IDEwcHggMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLm1ldGEtbWFpbi5tZXRhLW1haW4tYmxvZyB7XG4gICAgICAgIHRvcDogLTY1cHg7XG4gICAgICAgIGhlaWdodDogNjVweDsgfVxuICAgICAgICAubWV0YS1tYWluLm1ldGEtbWFpbi1ibG9nIC5mZWF0dXJlX2F1dGhvciAuc2Vjb25kYXJ5LWxhYmVsLCAubWV0YS1tYWluLm1ldGEtbWFpbi1ibG9nIC5mZWF0dXJlX2F1dGhvciAudGVydGlhcnktbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgICAgLnRlbXBsYXRlLXN0b3J5IC5tZXRhLW1haW4ubWV0YS1tYWluLWJsb2cge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAgICAgLm1ldGEtbWFpbiAubWV0YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDsgfSB9XG4gIC5tZXRhLW1haW4uaW5jbHVkZXMtYnV0dG9uIC5idG4sIC5tZXRhLW1haW4uaW5jbHVkZXMtYnV0dG9uIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAubWV0YS1tYWluLmluY2x1ZGVzLWJ1dHRvbiAjZWRpdC1zdWJtaXQge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwLjU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5tZXRhLW1haW4uaW5jbHVkZXMtYnV0dG9uIC5idG4sIC5tZXRhLW1haW4uaW5jbHVkZXMtYnV0dG9uIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAubWV0YS1tYWluLmluY2x1ZGVzLWJ1dHRvbiAjZWRpdC1zdWJtaXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAtMjclO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuODsgfSB9XG5cbi5pbWctaW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5pbWctaW5saW5lLmltZy1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogNDAlO1xuICAgICAgbWFyZ2luOiAwIC02MHB4IDYwcHggNjBweDsgfSB9XG5cbi5zdWItbmF2IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMTJweCAyMHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAyNDQsIDI0MCwgMC43KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTMwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDM7IH1cbiAgLnN1Yi1uYXYub3BlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgei1pbmRleDogMTU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4gIC5zdWItbmF2IC5pbi10aGlzLXNlY3Rpb24tbGluayB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIC5zdWItbmF2IC5pbi10aGlzLXNlY3Rpb24tbGluayBhIHtcbiAgICAgIGNvbG9yOiAjMjMxRjIwOyB9XG4gICAgICAuc3ViLW5hdiAuaW4tdGhpcy1zZWN0aW9uLWxpbmsgYSBzdmcge1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGZpbGw6ICNlZTAwMDA7IH1cbiAgICAuc3ViLW5hdiAuaW4tdGhpcy1zZWN0aW9uLWxpbmsuYWN0aXZlIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIC5zdWItbmF2IGg0IHtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC5zdWItbmF2IGg0IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gICAgLnN1Yi1uYXYgaDQgYSB7XG4gICAgICBjb2xvcjogIzIzMUYyMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuc3ViLW5hdiBoNCBhOmhvdmVyLCAuc3ViLW5hdiBoNCBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgLnN1Yi1uYXYgdWwgYSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjE1KTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGNvbG9yOiAjMjMxRjIwO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjsgfVxuICAgIC5zdWItbmF2IHVsIGEuYWN0aXZlLXBhZ2Uge1xuICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgICAuc3ViLW5hdiB1bCBhLmFjdGl2ZS1zZWN0aW9uIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzIzMUYyMDsgfVxuICAgIC5zdWItbmF2IHVsIGE6aG92ZXIsIC5zdWItbmF2IHVsIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cbiAgICAgIC5zdWItbmF2IHVsIGE6aG92ZXIgc3ZnLCAuc3ViLW5hdiB1bCBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgLnN1Yi1uYXYgdWwgdWwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIDAgMTVweDsgfVxuICAgIC5zdWItbmF2IHVsIHVsIGEge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7IH1cbiAgICAgIC5zdWItbmF2IHVsIHVsIGEgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTJweDsgfVxuICAgICAgLnN1Yi1uYXYgdWwgdWwgYTpob3ZlciwgLnN1Yi1uYXYgdWwgdWwgYTpmb2N1cyB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4OyB9XG4gICAgLnN1Yi1uYXYgdWwgdWwgdWwgYSB7XG4gICAgICBwYWRkaW5nOiA2cHggMjVweDsgfVxuICAgICAgLnN1Yi1uYXYgdWwgdWwgdWwgYTpob3ZlciwgLnN1Yi1uYXYgdWwgdWwgdWwgYTpmb2N1cyB7XG4gICAgICAgIHBhZGRpbmc6IDZweCAyNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLnN1Yi1uYXYge1xuICAgICAgcGFkZGluZzogMTJweCA0MHB4IDEycHg7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdWItbmF2IHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjB2aDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5zdWItbmF2LndpdGhvdXQtbWFyZ2luIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLnN1Yi1uYXYgLmluLXRoaXMtc2VjdGlvbi1saW5rIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnN1Yi1uYXYgaDQge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAgIC5zdWItbmF2IHVsIGEge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIC5zdWItbmF2IHVsIHVsIGEge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4ucmVsYXRlZC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyNTsgfVxuICAucmVsYXRlZC1jb250ZW50IGg0IHtcbiAgICBtYXJnaW46IDAgMCAzMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5yZWxhdGVkLWNvbnRlbnQuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwOyB9IH1cblxuLnJlbGF0ZWQtZmVlZCB7XG4gIG1hcmdpbjogMCAwIDQwcHg7IH1cbiAgLnJlbGF0ZWQtY29udGVudCAucmVsYXRlZC1mZWVkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5yZWxhdGVkLWZlZWQgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4OyB9XG4gIC5yZWxhdGVkLWZlZWQgLm1haW5faW1nIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5yZWxhdGVkLWZlZWQgLnByb2ZpbGVfdGh1bWIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnJlbGF0ZWQtZmVlZCAubWV0YSB7XG4gICAgbWFyZ2luOiAwIDAgNXB4OyB9XG4gIC5yZWxhdGVkLWZlZWQgaDMge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICBsaW5lLWhlaWdodDogMS4zOyB9XG4gICAgLnJlbGF0ZWQtZmVlZCBoMyBhIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIGNvbG9yOiAjMjMxRjIwOyB9XG4gICAgICAucmVsYXRlZC1mZWVkIGgzIGEgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuICAgICAgLnJlbGF0ZWQtZmVlZCBoMyBhOmhvdmVyLCAucmVsYXRlZC1mZWVkIGgzIGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2VlMDAwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAucmVsYXRlZC1jb250ZW50IC5yZWxhdGVkLWZlZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucmVsYXRlZC1mZWVkIC50ZXh0X2FyZWEge1xuICAgICAgd2lkdGg6IDc1JTsgfSB9XG5cbi50YWdzIHtcbiAgbWFyZ2luOiA2MHB4IDAgNjBweDsgfVxuICAucmVsYXRlZC1jb250ZW50IC50YWdzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50YWdzIGg0IHtcbiAgICBtYXJnaW46IDAgMCAyMHB4OyB9XG4gIC50YWdzIGEge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4xKTtcbiAgICBwYWRkaW5nOiA4cHggMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudGFncyBhIHN2ZyB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBmaWxsOiAjZWUwMDAwOyB9XG4gICAgLnRhZ3MgYTpob3ZlciwgLnRhZ3MgYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cbiAgICAgIC50YWdzIGE6aG92ZXIgc3ZnLCAudGFncyBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnJlbGF0ZWQtY29udGVudCAudGFncyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5pbmxpbmUtaW1nIHtcbiAgbWFyZ2luOiAwIDAgNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pbmxpbmUtaW1nIC5pbWctYXJlYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5yZWxhdGVkLXRvcGljcyB7XG4gIHBhZGRpbmc6IDQwcHggMCAwOyB9XG4gIC5yZWxhdGVkLXRvcGljcyAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAyMHB4IDAgNDBweDsgfVxuICAgIC5yZWxhdGVkLXRvcGljcyAuc2VjdGlvbi1oZWFkaW5nIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDMwcHggYXV0bztcbiAgICAgIGxlZnQ6IDA7IH1cbiAgLnRlbXBsYXRlLWNvdW50cmllcyAucmVsYXRlZC10b3BpY3Mge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtd2hpdGUuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZmZmO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfVxuICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgLnJlbGF0ZWQtdG9waWNzIC5yZWxhdGVkLXRvcGljIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgMCAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgLnJlbGF0ZWQtdG9waWNzIC5yZWxhdGVkLXRvcGljIHtcbiAgICAgIG1hcmdpbjogMCAwIDcwcHg7IH1cbiAgICAudGVtcGxhdGUtY291bnRyaWVzIC5yZWxhdGVkLXRvcGljcyBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyOC42JTtcbiAgICAgIG1hcmdpbi1yaWdodDogNyU7IH1cbiAgICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgLnJlbGF0ZWQtdG9waWNzIGxpOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5yZWxhdGVkLXRvcGljIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1saWdodC1ib3R0b20ucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IGJvdHRvbSAjZmZmO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDMwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnRlbXBsYXRlLWNvdW50cmllcyAucmVsYXRlZC10b3BpYyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5yZWxhdGVkLXRvcGljIC5pbWctd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAucmVsYXRlZC10b3BpYyAuaW1nLXdyYXBwZXIgaW1nIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxMzAwbXMgY3ViaWMtYmV6aWVyKDAuMTU1LCAwLjU3NSwgMC44NywgMC44Nyk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cbiAgICAucmVsYXRlZC10b3BpYyAuaW1nLXdyYXBwZXIgaDMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAucmVsYXRlZC10b3BpYyAuaW1nLXdyYXBwZXIgaDMgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC5yZWxhdGVkLXRvcGljIC5pbWctd3JhcHBlciBoMyBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9XG4gICAgLnJlbGF0ZWQtdG9waWMgLmltZy13cmFwcGVyOmhvdmVyIGltZywgLnJlbGF0ZWQtdG9waWMgLmltZy13cmFwcGVyOmZvY3VzIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIC5yZWxhdGVkLXRvcGljIC50ZXh0LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgI2YyZjRmMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCAyMHB4IDIwcHg7IH1cbiAgICAucmVsYXRlZC10b3BpYyAudGV4dC13cmFwcGVyIHAge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIC5yZWxhdGVkLXRvcGljIC5sYXRlc3RfZmVhdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjEpO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIC5yZWxhdGVkLXRvcGljIC5jb250ZW50X3R5cGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnJlbGF0ZWQtdG9waWMgLm1haW5faW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5yZWxhdGVkLXRvcGljIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4IDMwcHg7IH1cbiAgICAgIC5yZWxhdGVkLXRvcGljIC5pbWctd3JhcHBlciBoMyB7XG4gICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG5cbi5zdHJvbmctbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzUsIDMxLCAzMiwgMC42KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG4gIC5tb2RhbC5tYXAge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm1vZGFsLm1hcCAubW9kYWwtYm94IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMC4xKTsgfVxuICAgICAgLm1vZGFsLm1hcCAubW9kYWwtYm94IGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1vZGFsLm1hcC5vcGVuIC5tb2RhbC1ib3gge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDEpOyB9XG4gIC5tb2RhbCAuY29udGVudCB7XG4gICAgcGFkZGluZzogNTBweCA2MHB4IDIwcHggNjBweDsgfVxuICAubW9kYWwgLm1vZGFsLWJveCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGN1YmljLWJlemllcigwLjE1NSwgMC41NzUsIDAuODcsIDAuODcpO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtd2hpdGUuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZmZmO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwIDAgNDBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogY2FsYyg1MCUgLSA0MCUpO1xuICAgIHRvcDogMTQwcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpOyB9XG4gIC5tb2RhbC5vcGVuIHtcbiAgICB6LWluZGV4OiA1MDA7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5tb2RhbC5vcGVuIC5tb2RhbC1ib3gge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAubW9kYWwgLmJsb2ctc2l0ZS1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogI2VhZWNlNjtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgLm1vZGFsIC5ibG9nLXNpdGUtbGluayBoMiB7XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gIC5tb2RhbCAuYnRuIHN2ZywgLm1vZGFsIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQgc3ZnLCAuc2VhcmNoLWZvcm0gLm1vZGFsICNlZGl0LXN1Ym1pdCBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgZmlsbDogd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnZpc2l0LWJsb2cge1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkICNlYWVjZTY7XG4gIHBhZGRpbmc6IDMwcHggMCAwOyB9XG4gIC52aXNpdC1ibG9nIC5idG4gc3ZnLCAudmlzaXQtYmxvZyAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0IHN2ZywgLnNlYXJjaC1mb3JtIC52aXNpdC1ibG9nICNlZGl0LXN1Ym1pdCBzdmcge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBmaWxsOiB3aGl0ZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7IH1cblxuLnByb2ZpbGUtaW1nLXdyYXBwZXIge1xuICB3aWR0aDogMjAwcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICB0b3A6IC01OHB4O1xuICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucHJvZmlsZS10ZXh0LXdyYXBwZXIge1xuICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucHJvZmlsZS10ZXh0LXdyYXBwZXIgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gIC5wcm9maWxlLXRleHQtd3JhcHBlciAubWV0YS5wcm9maWxlLW1ldGEge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAucHJvZmlsZS10ZXh0LXdyYXBwZXIgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAzMHB4IDAgNDBweDsgfVxuICAucHJvZmlsZS10ZXh0LXdyYXBwZXIgLnJlbGF0ZWQtZmVlZCAudGV4dF9hcmVhIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucHJvZmlsZS10ZXh0LXdyYXBwZXIgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpOyB9XG4gICAgLnByb2ZpbGUtdGV4dC13cmFwcGVyIC5sYXRlc3RfZmVhdHVyZSAubWV0YSB7XG4gICAgICBtYXJnaW46IDAgMCA1cHg7IH1cblxuLnZvaWNlcy1jYXJvdXNlbC13aWRlIHtcbiAgei1pbmRleDogMjsgfVxuICAudm9pY2VzLWNhcm91c2VsLXdpZGUgLm93bC1jb250cm9scyAub3dsLXBhZ2Ugc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBtYXJnaW46IDVweCA1cHg7XG4gICAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTUwKTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiAjNDQ0OyB9XG5cbi52b2ljZXMtY2Fyb3VzZWwtd2lkZSAub3dsLWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG9wYWNpdHk6IDE7IH1cblxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAwOyB9XG5cbi8qIEJ1dHRvbnMgKi9cbi5vd2wtcHJldiwgLm93bC1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTM1MHB4OyB9XG4gIC52b2ljZXMtY2Fyb3VzZWwtd2lkZSAub3dsLXByZXYsIC52b2ljZXMtY2Fyb3VzZWwtd2lkZSAub3dsLW5leHQge1xuICAgIHRvcDogLTI1MHB4OyB9XG4gIC5vd2wtcHJldjphZnRlciwgLm93bC1uZXh0OmFmdGVyIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAub3dsLXByZXY6aG92ZXI6YWZ0ZXIsIC5vd2wtcHJldjpmb2N1czphZnRlciwgLm93bC1uZXh0OmhvdmVyOmFmdGVyLCAub3dsLW5leHQ6Zm9jdXM6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm93bC1wcmV2OmFmdGVyLCAub3dsLW5leHQ6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgICAudm9pY2VzLWNhcm91c2VsLXdpZGUgLm93bC1wcmV2OmFmdGVyLCAudm9pY2VzLWNhcm91c2VsLXdpZGUgLm93bC1uZXh0OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9IH1cblxuLm93bC1wcmV2IHtcbiAgbGVmdDogMDsgfVxuICAub3dsLXByZXY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1sZWZ0LnN2Z1wiKSBuby1yZXBlYXQ7IH1cbiAgLnZvaWNlcy1jYXJvdXNlbC13aWRlIC5vd2wtcHJldiB7XG4gICAgbGVmdDogLTEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnZvaWNlcy1jYXJvdXNlbC13aWRlIC5vd2wtcHJldiB7XG4gICAgICBsZWZ0OiAtNjBweDsgfSB9XG5cbi5vd2wtbmV4dCB7XG4gIHJpZ2h0OiAzMHB4OyB9XG4gIC5vd2wtbmV4dDphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Fycm93LnN2Z1wiKSBuby1yZXBlYXQ7IH1cbiAgLnZvaWNlcy1jYXJvdXNlbC13aWRlIC5vd2wtbmV4dCB7XG4gICAgcmlnaHQ6IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnZvaWNlcy1jYXJvdXNlbC13aWRlIC5vd2wtbmV4dCB7XG4gICAgICByaWdodDogLTMwcHg7IH0gfVxuXG4ucG9zLXN0YXRlbWVudCB7XG4gIHotaW5kZXg6IDIwO1xuICBwYWRkaW5nOiA0MHB4IDAgMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wb3Mtc3RhdGVtZW50IGgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICMyMzFGMjA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogM3B4IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZmZmLCAtMTBweCAwIDAgI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBvcy1zdGF0ZW1lbnQgcCB7XG4gICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAucG9zLXN0YXRlbWVudCB7XG4gICAgICB0b3A6IDA7XG4gICAgICBwYWRkaW5nOiA3MHB4IDAgMzBweDsgfVxuICAgICAgLnBvcy1zdGF0ZW1lbnQgaDIge1xuICAgICAgICBmb250LXNpemU6IDQ0cHg7IH1cbiAgICAgICAgLnBvcy1zdGF0ZW1lbnQgaDIgc3BhbiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAucG9zLXN0YXRlbWVudCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4OyB9IH1cblxuLmxpc3RpbmctYnRucyBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDklO1xuICBwYWRkaW5nOiAxMHB4OyB9XG5cbi53b3JsZC1tYXAtd3JhcHBlciB7XG4gIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpOyB9XG5cbiNtYXAge1xuICBoZWlnaHQ6IDI4MHB4O1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGYwICFpbXBvcnRhbnQ7IH1cbiAgI21hcCBzdmcge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAjbWFwIHtcbiAgICAgIGhlaWdodDogNjUwcHg7IH0gfVxuXG4uYmlnLWRyb3BzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICB3aWR0aDogNDAlO1xuICBtYXJnaW4tcmlnaHQ6IDUlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBjb2xvcjogIzIzMUYyMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmlubGluZS1mZWF0dXJlLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luOiAwIC03MHB4IDYwcHggNDBweDtcbiAgICB3aWR0aDogMzUlOyB9XG4gICAgLnRlbXBsYXRlLWFydGljbGUgLmlubGluZS1mZWF0dXJlLXJpZ2h0IHtcbiAgICAgIG1hcmdpbjogMCAtNDBweCA2MHB4IDYwcHg7IH0gfVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjAwcHggMjBweCAyMHB4O1xuICBtYXJnaW46IDAgMCA0MHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmNhbGxvdXQgLmdyYWQtbWFzay1iaWcge1xuICAgIHdpZHRoOiAzMDAlOyB9XG4gIC5jYWxsb3V0Lm5vLXRodW1iIC5xdW90ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5jYWxsb3V0IGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuY2FsbG91dCAucXVvdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1pbi1oZWlnaHQ6IDkwcHg7IH1cbiAgICAuY2FsbG91dCAucXVvdGUgaW1nIHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmNhbGxvdXQgcCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTsgfVxuICAuY2FsbG91dCAubWV0YSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAuY2FsbG91dCAuYXVkaW8tcGxheWVyIC5tZXRhIHtcbiAgICBjb2xvcjogIzMxYTE5YTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY2FsbG91dCB7XG4gICAgICBwYWRkaW5nOiA0MDBweCAzMHB4IDIwcHg7IH1cbiAgICAgIC5jYWxsb3V0IC5ncmFkLW1hc2stYmlnIHtcbiAgICAgICAgd2lkdGg6IDEyMCU7IH1cbiAgICAgIC5jYWxsb3V0IC5xdW90ZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOTBweDsgfVxuICAgICAgICAuY2FsbG91dCAucXVvdGUgaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmNhbGxvdXQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAgICAgLmNhbGxvdXQgLm1ldGEge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH1cbiAgICAgIC5pbmxpbmUtZmVhdHVyZS1yaWdodCAuY2FsbG91dCB7XG4gICAgICAgIHBhZGRpbmc6IDIwMHB4IDIwcHggMjBweDsgfVxuICAgICAgICAuaW5saW5lLWZlYXR1cmUtcmlnaHQgLmNhbGxvdXQgLmdyYWQtbWFzay1iaWcge1xuICAgICAgICAgIHdpZHRoOiAyMDAlOyB9IH1cblxuLmN0YS1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBlYXNlIDBtcywgdHJhbnNmb3JtIDUwMG1zIGVhc2UgMG1zO1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICBwYWRkaW5nOiAzNTBweCAyMHB4IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAuY3RhLXBhbmVsIC5pbnRybyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtOyB9XG4gIC5jdGEtcGFuZWwgLmdyYWRpZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGJsYWNrIDAlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTsgfVxuICAuY3RhLXBhbmVsIC50ZXh0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTsgfVxuICAuY3RhLXBhbmVsIC5hY3Rpb25zIGEge1xuICAgIG1hcmdpbjogNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5jdGEtcGFuZWwge1xuICAgICAgcGFkZGluZzogMzQwcHggMjAwcHggMjIwcHg7IH1cbiAgICAgIC5jdGEtcGFuZWwub24tc2NyZWVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuY3RhLXBhbmVsIC5pbnRybyB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDsgfVxuICAgICAgLmN0YS1wYW5lbCAuYWN0aW9ucyBhIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgaGVpZ2h0OiA1OHB4OyB9XG4gICAgICAuY3RhLXBhbmVsIC5hY3Rpb25zIC5idG46aG92ZXIsIC5jdGEtcGFuZWwgLmFjdGlvbnMgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdDpob3ZlciwgLnNlYXJjaC1mb3JtIC5jdGEtcGFuZWwgLmFjdGlvbnMgI2VkaXQtc3VibWl0OmhvdmVyLCAuY3RhLXBhbmVsIC5hY3Rpb25zIC5idG46Zm9jdXMsIC5jdGEtcGFuZWwgLmFjdGlvbnMgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdDpmb2N1cywgLnNlYXJjaC1mb3JtIC5jdGEtcGFuZWwgLmFjdGlvbnMgI2VkaXQtc3VibWl0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Q1MDAwMDsgfVxuICAgICAgLmN0YS1wYW5lbCAuYWN0aW9ucyAuYnRuX2FsdDpob3ZlciwgLmN0YS1wYW5lbCAuYWN0aW9ucyAuYnRuX2FsdDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyYjhkODc7IH0gfVxuXG4uY3RhLXBhbmVsMiB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgZWFzZSAwbXMsIHRyYW5zZm9ybSA1MDBtcyBlYXNlIDBtcztcbiAgbWFyZ2luOiAzMHB4IDAgNTBweDtcbiAgcGFkZGluZzogMjUwcHggNDBweCA0MHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7IH1cbiAgLmN0YS1wYW5lbDIgLmludHJvIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIG1hcmdpbjogMCAwIDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMyMzFGMjAsIC0xMHB4IDAgMCAjMjMxRjIwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzFGMjA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmN0YS1wYW5lbDIgLmFjdGlvbnMgYSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgIC5jdGEtcGFuZWwyIC5hY3Rpb25zIGEuYnRuX2FsdCB7XG4gICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjMzFhMTlhLCAtMTBweCAwIDAgIzMxYTE5YTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7IH1cbiAgICAuY3RhLXBhbmVsMiAuYWN0aW9ucyBhIHN2ZyB7XG4gICAgICBmaWxsOiAjZmZmO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4OyB9XG4gICAgLmN0YS1wYW5lbDIgLmFjdGlvbnMgYTpob3ZlciwgLmN0YS1wYW5lbDIgLmFjdGlvbnMgYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFhMTlhO1xuICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzMxYTE5YSwgLTEwcHggMCAwICMzMWExOWE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmN0YS1wYW5lbDIge1xuICAgICAgcGFkZGluZzogMzAwcHggNTAlIDcwcHggMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgLmN0YS1wYW5lbDIub24tc2NyZWVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwcHgsIDApO1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuY3RhLXBhbmVsMiAuaW50cm8ge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwOyB9XG4gICAgICAuY3RhLXBhbmVsMiAuYWN0aW9ucyBhIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICAgICAgcGFkZGluZzogNnB4IDA7IH1cbiAgICAgICAgLmN0YS1wYW5lbDIgLmFjdGlvbnMgYSBzdmcge1xuICAgICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICAgIGhlaWdodDogMjJweDsgfSB9XG5cbi5zdG9yaWVzLXN0cmlwIHtcbiAgcGFkZGluZzogMCAwIDQwcHg7IH1cbiAgLnN0b3JpZXMtc3RyaXAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuc3Rvcmllcy1zdHJpcCAuc2VjdGlvbi1oZWFkaW5nIGgyIHtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgLnN0b3JpZXMtc3RyaXAgaDQge1xuICAgIG1hcmdpbjogMCAwIDMwcHg7IH1cbiAgLnN0b3JpZXMtc3RyaXAgcCB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIG1hcmdpbjogMTBweCAwIDA7IH1cbiAgLnN0b3JpZXMtc3RyaXAucGVvcGxlIGxpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc3Rvcmllcy1zdHJpcC5wZW9wbGUgbGkgLm1haW5faW1nIHtcbiAgICAgIHdpZHRoOiA0MCU7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIC5zdG9yaWVzLXN0cmlwLnBlb3BsZSBsaSBoMyB7XG4gICAgICBmb250LXNpemU6IDI0cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnN0b3JpZXMtc3RyaXAgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1JTsgfVxuICAgICAgLnN0b3JpZXMtc3RyaXAgbGk6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAuc3Rvcmllcy1zdHJpcCBsaSAubWFpbl9pbWcge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDQ1JTsgfVxuICAgICAgLnN0b3JpZXMtc3RyaXAgbGkgLnRleHRfYXJlYSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH1cbiAgICAuc3Rvcmllcy1zdHJpcC5wZW9wbGUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgLnN0b3JpZXMtc3RyaXAucGVvcGxlIGxpIC5tYWluX2ltZyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzAlOyB9XG4gICAgICAuc3Rvcmllcy1zdHJpcC5wZW9wbGUgbGkgLnRleHRfYXJlYSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuXG4ubGlzdGluZy1ib2R5IHtcbiAgbWFyZ2luOiA1MHB4IDAgMDsgfVxuICAudGVtcGxhdGUtY291bnRyaWVzIC5saXN0aW5nLWJvZHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubGlzdGluZy1ib2R5IHtcbiAgICAgIG1hcmdpbjogMzNweCAwIDA7IH0gfVxuXG4ucm9sZXMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICNmMmY0ZjA7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgaGVpZ2h0OiAyNTBweDsgfVxuICAucm9sZXMgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgei1pbmRleDogMjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnJvbGVzIC5zZWN0aW9uLWhlYWRpbmcgaDIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxlZnQ6IDA7IH1cblxuLnZvaWNlcyB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgI2YyZjRmMDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAgNDBweDsgfVxuICAudm9pY2VzIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLnZvaWNlcyAuc2VjdGlvbi1oZWFkaW5nIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC52b2ljZXMgLnZvaWNlLXdpZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnZvaWNlcyAudm9pY2Utd2lkZSAucHJvZmlsZV9waWMge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDRweDsgfVxuICAgICAgLnZvaWNlcyAudm9pY2Utd2lkZSAucHJvZmlsZV9waWMgYTpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgIzIzMUYyMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAudm9pY2VzIC52b2ljZS13aWRlIHAge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMDsgfVxuICAgIC52b2ljZXMgLnZvaWNlLXdpZGUgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDMwcHggMDsgfVxuICAgICAgLnZvaWNlcyAudm9pY2Utd2lkZSBibG9ja3F1b3RlIHAge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwZW07XG4gICAgICAgIHBhZGRpbmc6IDJweDsgfVxuICAgIC52b2ljZXMgLnZvaWNlLXdpZGUgaDMge1xuICAgICAgbWFyZ2luOiAwIDAgNXB4OyB9XG4gICAgICAudm9pY2VzIC52b2ljZS13aWRlIGgzIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICNlZTAwMDAsIC0xMHB4IDAgMCAjZWUwMDAwOyB9XG4gICAgICAgIC52b2ljZXMgLnZvaWNlLXdpZGUgaDMgYSBzdmcge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICBoZWlnaHQ6IDE1cHg7IH1cbiAgICAgICAgLnZvaWNlcyAudm9pY2Utd2lkZSBoMyBhOmhvdmVyLCAudm9pY2VzIC52b2ljZS13aWRlIGgzIGE6Zm9jdXMge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMzMWExOWEsIC0xMHB4IDAgMCAjMzFhMTlhO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7IH1cbiAgICAudm9pY2VzIC52b2ljZS13aWRlIGg0IGEge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgLnZvaWNlcyAudm9pY2Utd2lkZSBoNCBhIHN2ZyB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgZmlsbDogI2VlMDAwMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMTRweDsgfVxuICAgICAgLnZvaWNlcyAudm9pY2Utd2lkZSBoNCBhOmhvdmVyIHN2ZywgLnZvaWNlcyAudm9pY2Utd2lkZSBoNCBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICMzMWExOWE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAudm9pY2VzIC52b2ljZS13aWRlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgMjBweCA1MHB4OyB9XG4gICAgICAudm9pY2VzIC52b2ljZS13aWRlIC5wcm9maWxlX3BpYyB7XG4gICAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG4ucmVxcyB7XG4gIG1hcmdpbjogMCAwIDIwcHggMTBweDsgfVxuICAucmVxcyBsaSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBlYXNlIDBtcywgdHJhbnNmb3JtIDUwMG1zIGVhc2UgMG1zO1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXdhcm0tbHQucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZjJmNGYwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgbWFyZ2luOiAwIDAgMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAjZmZmOyB9XG4gICAgLnJlcXMgbGkgLm51bSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMThweDtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlY2U2O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBjb2xvcjogIzQ0NDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgICAucmVxcyBsaSAuYnRuX3RpY2tib3gge1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwOyB9XG4gICAgLnJlcXMgbGkgLmZvbGxvd29ubGluayB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLnJlcXMgbGkgaDMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzIzMUYyMCwgLTEwcHggMCAwICMyMzFGMjA7XG4gICAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgICAucmVxcyBsaSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgICAucmVxcyBsaS5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXdhcm0uanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjZWFlY2U2O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgLnJlcXMgbGkuYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7IH1cbiAgICAgIC5yZXFzIGxpLmFjdGl2ZSAubnVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQ5YTEzMTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLnJlcXMucmVxcy1leHRlbmRlZCBsaSB7XG4gICAgbWFyZ2luOiAwIDAgMDsgfVxuICAgIC5yZXFzLnJlcXMtZXh0ZW5kZWQgbGkgcCB7XG4gICAgICBtYXJnaW46IDEwcHggMCAxNXB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5yZXFzIHtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMDsgfVxuICAgICAgLnJlcXMgbGkge1xuICAgICAgICBwYWRkaW5nOiAzNXB4IDMwcHggMzVweCA0MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHB4LCAwKTtcbiAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAucmVxcyBsaSAubnVtIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogN3B4O1xuICAgICAgICAgIHRvcDogMzVweDsgfVxuICAgICAgICAucmVxcyBsaS5vbi1zY3JlZW4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMHB4LCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgIC5yZXFzIGxpIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgICAgICAucmVxcyBsaSBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgICAucmVxcy5yZXFzLWV4dGVuZGVkIGxpIHAge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4uYWN0aW9ucy1iYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAtOTBweDtcbiAgaGVpZ2h0OiAxODBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDtcbiAgcGFkZGluZzogMjBweCAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgLmFjdGlvbnMtYmFyIHtcbiAgICAgIGhlaWdodDogOTBweDsgfSB9XG4gIC5hY3Rpb25zLWJhci5ub3QtZml4ZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IGF1dG87IH1cbiAgLmFjdGlvbnMtYmFyIC5uZXh0LXN0ZXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjgsIDY4LCA2OCwgMC40KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAgIC5hY3Rpb25zLWJhciAubmV4dC1zdGVwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0OyB9IH1cbiAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcCAuaGVscHRleHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGhlaWdodDogMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcCAuaGVscHRleHQsXG4gICAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcCAuZnJlbmNoLWhlbHB0ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcCAuaGVscHRleHQge1xuICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgbGVmdDogMTUwcHg7IH1cbiAgICAgIC5hY3Rpb25zLWJhciAubmV4dC1zdGVwIC5mcmVuY2gtaGVscHRleHQge1xuICAgICAgICB3aWR0aDogMjI1cHg7XG4gICAgICAgIGxlZnQ6IDI1MHB4OyB9IH1cbiAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcCBzdmcge1xuICAgICAgZmlsbDogI2ZmZjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogMTJweDsgfVxuICAgIC5hY3Rpb25zLWJhciAubmV4dC1zdGVwLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDlhMTMxOyB9XG4gICAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcC5hY3RpdmUgLmhlbHB0ZXh0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLmFjdGlvbnMtYmFyIC5uZXh0LXN0ZXA6aG92ZXIgLmhlbHB0ZXh0LFxuICAgIC5hY3Rpb25zLWJhciAubmV4dC1zdGVwOmhvdmVyIC5mcmVuY2gtaGVscHRleHQsIC5hY3Rpb25zLWJhciAubmV4dC1zdGVwOmZvY3VzIC5oZWxwdGV4dCxcbiAgICAuYWN0aW9ucy1iYXIgLm5leHQtc3RlcDpmb2N1cyAuZnJlbmNoLWhlbHB0ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5hY3Rpb25zLWJhciAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgLmFjdGlvbnMtYmFyIC5zZWNvbmRhcnktYWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIC5hY3Rpb25zLWJhciAuc2Vjb25kYXJ5LWFjdGlvbiBhIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgICAgLmFjdGlvbnMtYmFyIC5zZWNvbmRhcnktYWN0aW9uIGEgc3ZnIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICBmaWxsOiAjZWUwMDAwOyB9XG4gICAgICAuYWN0aW9ucy1iYXIgLnNlY29uZGFyeS1hY3Rpb24gYTpob3ZlciBzdmcsIC5hY3Rpb25zLWJhciAuc2Vjb25kYXJ5LWFjdGlvbiBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICMzMWExOWE7IH1cbiAgLmFjdGlvbnMtYmFyLmZpeGVkIHtcbiAgICBib3R0b206IDA7IH1cbiAgLmFjdGlvbnMtYmFyLm5vdC1maXhlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDAgMCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5hY3Rpb25zLWJhciAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICAuYWN0aW9ucy1iYXIgLnNlY29uZGFyeS1hY3Rpb24gYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuXG4uZm9sbG93b25saW5rIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDE1cHggMCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmZvbGxvd29ubGluay5tdWx0aXBsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gIC5mb2xsb3dvbmxpbmsgc3ZnIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgZmlsbDogI2VlMDAwMDsgfVxuICAuZm9sbG93b25saW5rOmhvdmVyIHN2ZywgLmZvbGxvd29ubGluazpmb2N1cyBzdmcge1xuICAgIGZpbGw6ICMzMWExOWE7IH1cblxuLnZpZGVvV3JhcHBlciwgLm9lbWJlZC1wcm92aWRlci15b3V0dWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAvKiAxNjo5ICovXG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMCAwIDQwcHg7IH1cblxuLnZpZGVvV3JhcHBlciBpZnJhbWUsIC5vZW1iZWQtcHJvdmlkZXIteW91dHViZSBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uYXBwbHktYmFyIHtcbiAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMxRjIwO1xuICBtYXJnaW46IDAgMCA0MHB4OyB9XG4gIC5hcHBseS1iYXIgaDIge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDYwcHg7IH1cbiAgICAuYXBwbHktYmFyIGgyIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIG9wYWNpdHk6IDAuNzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuYXBwbHktYmFyIHtcbiAgICAgIGhlaWdodDogODBweDsgfVxuICAgICAgLmFwcGx5LWJhciBoMiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuXG4ud2lkZS1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZSAwcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogMTUwcHg7XG4gIG1hcmdpbjogMCAwIDQwcHg7XG4gIG1heC1oZWlnaHQ6IDQwMHB4OyB9XG4gIC53aWRlLWxpc3QgLmdyYWQtbWFzay13aGl0ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAud2lkZS1saXN0LmFjdGl2ZSB7XG4gICAgbWF4LWhlaWdodDogMjAwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG4gICAgLndpZGUtbGlzdC5hY3RpdmUgLmdyYWQtbWFzay13aGl0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLndpZGUtbGlzdC5hY3RpdmUgdWwge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC53aWRlLWxpc3QgLmdyYWQtbWFzay13aGl0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgd2hpdGUgNTElLCB3aGl0ZSAxMDAlKTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC53aWRlLWxpc3QgLnBhZ2luZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAzOyB9XG4gIC53aWRlLWxpc3QgdWwge1xuICAgIG1hcmdpbjogMCAwIDIwcHg7IH1cbiAgICAud2lkZS1saXN0IHVsIGEge1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxNHB4IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLndpZGUtbGlzdCB1bCBhOmhvdmVyLCAud2lkZS1saXN0IHVsIGE6Zm9jdXMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG4gICAgICAgIC53aWRlLWxpc3QgdWwgYTpob3ZlciAuaW5mbywgLndpZGUtbGlzdCB1bCBhOmZvY3VzIC5pbmZvIHtcbiAgICAgICAgICBjb2xvcjogIzMxYTE5YTsgfVxuICAgICAgLndpZGUtbGlzdCB1bCBhIC5pbmZvIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICNGOTY2NjQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgICAud2lkZS1saXN0IHVsIGEgLmluZm8gc3BhbiB7XG4gICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAud2lkZS1saXN0IHVsIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNTBweDtcbiAgICAgIC1tb3otY29sdW1uLWdhcDogNTBweDtcbiAgICAgIGNvbHVtbi1nYXA6IDUwcHg7IH1cbiAgICAgIC53aWRlLWxpc3QgdWwgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWJyZWFrLWluc2lkZTogYXZvaWQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAud2lkZS1saXN0IHVsIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNTBweDtcbiAgICAgIC1tb3otY29sdW1uLWdhcDogNTBweDtcbiAgICAgIGNvbHVtbi1nYXA6IDUwcHg7IH1cbiAgICAgIC53aWRlLWxpc3QgdWwgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgIC53aWRlLWxpc3QgdWwge1xuICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA1MHB4O1xuICAgICAgLW1vei1jb2x1bW4tZ2FwOiA1MHB4O1xuICAgICAgY29sdW1uLWdhcDogNTBweDsgfVxuICAgICAgLndpZGUtbGlzdCB1bCBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cblxuLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDAgYXV0byAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGVtcGxhdGUtY291bnRyaWVzIC53b3JsZC1tYXAtaW50ZXJhY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSAuZmlsdGVycyB7XG4gICAgd2lkdGg6IDQwJTsgfVxuICAud29ybGQtbWFwLWludGVyYWN0aXZlIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSAucG9wdXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMCAwIDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAyODBweDtcbiAgICB0b3A6IDMwcHg7XG4gICAgcmlnaHQ6IDQwcHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAud29ybGQtbWFwLWludGVyYWN0aXZlIC5wb3B1cCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgMCAwOyB9XG4gICAgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSAucG9wdXAgaDMge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAgICAgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSAucG9wdXAgaDMgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAzcHggMTVweDsgfVxuICAgICAgICAud29ybGQtbWFwLWludGVyYWN0aXZlIC5wb3B1cCBoMyBhIHN2ZyB7XG4gICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuICAgICAgICAud29ybGQtbWFwLWludGVyYWN0aXZlIC5wb3B1cCBoMyBhOmhvdmVyLCAud29ybGQtbWFwLWludGVyYWN0aXZlIC5wb3B1cCBoMyBhOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFhMTlhOyB9XG4gICAgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSAucG9wdXAgLnRvcGljcyB7XG4gICAgICBtYXJnaW46IDAgMTVweDsgfVxuICAgIC53b3JsZC1tYXAtaW50ZXJhY3RpdmUgLnBvcHVwIHAge1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIC53b3JsZC1tYXAtaW50ZXJhY3RpdmUgLnBvcHVwIHAubGFiZWwge1xuICAgICAgICBtYXJnaW46IDE1cHggMTVweCAwIDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC53b3JsZC1tYXAtaW50ZXJhY3RpdmUgLnBvcHVwIHAudG9waWMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbjogMCA1cHggMCAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgzNSwgMzEsIDMyLCAwLjIpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgLndvcmxkLW1hcC1pbnRlcmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jb3VudHJpZXMtdG9wIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY291bnRyaWVzLXRvcCAuZ3JhZC1tYXNrLXdoaXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDM1LCAzMSwgMzIsIDApIDAlLCAjMjMxZjIwIDUxJSwgIzIzMWYyMCAxMDAlKTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5jb3VudHJpZXMtdG9wIGgxLCAuY291bnRyaWVzLXRvcCAuaW50cm8ge1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5oZXJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTYwcHggMCA1MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5oZXJvIHtcbiAgICAgIHBhZGRpbmc6IDQwMHB4IDAgNjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuaGVybyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLmhlcm8gaDEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICNlZTAwMDAsIC0xMHB4IDAgMCAjZWUwMDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDk1JTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLmhlcm8gaDEge1xuICAgICAgICBmb250LXNpemU6IDU1cHg7IH0gfVxuICAgIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5oZXJvIGgxIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLmhlcm8gLmJyZWFkY3J1bWIgbGksIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5icmVhZGNydW1iIGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuaGVybyAuYnJlYWRjcnVtYiBzdmcge1xuICAgIGZpbGw6IHdoaXRlOyB9XG5cbi5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMjBweCBhdXRvIDEwcHg7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCBpbnB1dCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMTVweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2dsYXNzLWljb24td2hpdGUucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4sIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2ggLm5vdC1oZXJlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDQ5cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4gbGksIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2ggLm5vdC1oZXJlIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIGNvbG9yOiAjZWUwMDAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMyMjI7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMjIyO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gICAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4gbGk6Zmlyc3Qtb2YtdHlwZSwgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAubm90LWhlcmUgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4gbGk6bGFzdC1vZi10eXBlLCAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5ub3QtaGVyZSBsaTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyMjI7IH1cbiAgICAgIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2ggLmhpZGRlbiBsaTpob3ZlciwgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAubm90LWhlcmUgbGk6aG92ZXIsIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2ggLmhpZGRlbiBsaTpmb2N1cywgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAubm90LWhlcmUgbGk6Zm9jdXMge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgICAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAuaGlkZGVuIGxpLmJvdHRvbS1ub25lLCAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5ub3QtaGVyZSBsaS5ib3R0b20tbm9uZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4gbGkueWVtZW4taXRlbSwgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAubm90LWhlcmUgbGkueWVtZW4taXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5oaWRkZW4uYWN0aXZlLCAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5hY3RpdmUubm90LWhlcmUge1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAubm90LWhlcmUge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5zZWFyY2ggLm5vdC1oZXJlIGxpOmZpcnN0LW9mLXR5cGUge1xuICAgICAgY29sb3I6ICMyMjI7IH1cbiAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoIC5ub3QtaGVyZS5oaWRlIHtcbiAgICAgIGhlaWdodDogMDsgfVxuXG4uY291bnRyaWVzLWxhbmRpbmctcGFnZSAuYW5jaG9yIHtcbiAgY29sb3I6ICNGOTY2NjQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5hbmNob3IgLnN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLmFuY2hvciBzdmcge1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGZpbGw6ICNGOTY2NjQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5hbmNob3I6aG92ZXIsIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5hbmNob3I6Zm9jdXMge1xuICAgIGNvbG9yOiAjZWUwMDAwOyB9XG4gICAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLmFuY2hvcjpob3ZlciBzdmcsIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5hbmNob3I6Zm9jdXMgc3ZnIHtcbiAgICAgIGZpbGw6ICNlZTAwMDA7IH1cblxuLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlY3Rpb24taGVhZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY291bnRyaWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICBtYXJnaW46IDYwcHggMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcge1xuICAgICAgcGFkZGluZzogNDBweCAwIDcwcHg7IH0gfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXc6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5vdmVydmlldzphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5vdmVydmlldyAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDsgfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcgaDIge1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICBtYXJnaW46IDAgMCA1MHB4OyB9XG4gICAgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLm92ZXJ2aWV3IGgyIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4ubmV3LXZvaWNlcyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAubmV3LXZvaWNlcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLm5ldy12b2ljZXMgLnByb2ZpbGVfcGljIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgLm5ldy12b2ljZXMgLnByb2ZpbGVfcGljIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyNSU7IH0gfVxuICAubmV3LXZvaWNlcyAudGV4dF9hcmVhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIC5uZXctdm9pY2VzIC50ZXh0X2FyZWEge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUlOyB9IH1cbiAgLm5ldy12b2ljZXMgaDMsIC5uZXctdm9pY2VzIHAge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAubmV3LXZvaWNlcyBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgdGV4dC1pbmRlbnQ6IC01cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAubmV3LXZvaWNlcyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgLm5ldy12b2ljZXMgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIGZpbGw6ICNGOTY2NjQ7XG4gICAgd2lkdGg6IDEzcHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5uZXctdm9pY2VzIC5tZXRhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0ZXh0LWluZGVudDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAubmV3LXZvaWNlcyAubWV0YSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICAgIC5uZXctdm9pY2VzIC5tZXRhIHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgLm5ldy12b2ljZXMgLm1ldGEgc3BhbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgIHRvcDogNXB4O1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIC5uZXctdm9pY2VzIGEge1xuICAgIGNvbG9yOiAjRjk2NjY0O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAubmV3LXZvaWNlcyBhOmhvdmVyLCAubmV3LXZvaWNlcyBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZWUwMDAwOyB9XG4gICAgICAubmV3LXZvaWNlcyBhOmhvdmVyIHN2ZywgLm5ldy12b2ljZXMgYTpmb2N1cyBzdmcge1xuICAgICAgICBmaWxsOiAjZWUwMDAwOyB9XG5cbi5yd2QtdGFibGUge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnJ3ZC10YWJsZSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMDsgfSB9XG4gIC5yd2QtdGFibGUgYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAgIC5yd2QtdGFibGUgYTpob3ZlciwgLnJ3ZC10YWJsZSBhOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnJ3ZC10YWJsZSB0ciB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGNvbG9yOiAjMzFhMTlhO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDI1cHg7IH1cbiAgICAgIC5yd2QtdGFibGUgdHIgdGQ6Zmlyc3Qtb2YtdHlwZSBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgLnJ3ZC10YWJsZSB0aCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAucndkLXRhYmxlIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAucndkLXRhYmxlIHRkIHtcbiAgICAgICAgbWFyZ2luOiAuNWVtIDFlbTsgfSB9XG4gICAgLnJ3ZC10YWJsZSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogLjVlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLnJ3ZC10YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC41ZW07IH0gfVxuICAgIC5yd2QtdGFibGUgdGQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10aCkgXCI6IFwiO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAucndkLXRhYmxlIHRkOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5yd2QtdGFibGUgdGgsIC5yd2QtdGFibGUgdGQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5yd2QtdGFibGUgdGgsIC5yd2QtdGFibGUgdGQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nOiAzcHggMjVweDsgfVxuICAgICAgICAucndkLXRhYmxlIHRoOmZpcnN0LWNoaWxkLCAucndkLXRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgICAgLnJ3ZC10YWJsZSB0aDpsYXN0LWNoaWxkLCAucndkLXRhYmxlIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4uY29sdW1ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDE1cHggNDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY29sdW1ucyB7XG4gICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH0gfVxuXG4uYWxsLWNvdW50cmllcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5hbGwtY291bnRyaWVzIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuYWxsLWNvdW50cmllcyAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiA0MHB4IDAgMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLmFsbC1jb3VudHJpZXMgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgNjBweDsgfSB9XG4gIC5hbGwtY291bnRyaWVzOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvbWFwLWoucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgb3BhY2l0eTogMC4wNTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLmFsbC1jb3VudHJpZXM6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9IH1cblxuLnJlZ2lvbnMge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAucmVnaW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgLnJlZ2lvbnMgaDMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGNvbG9yOiAjMzFhMTlhO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5yZWdpb25zIGgzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5yZWdpb25zIGgzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC0zMHB4O1xuICAgICAgdG9wOiAxM3B4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvcGx1cy1pY29uLnBuZ1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAucmVnaW9ucyBoMzphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLnJlZ2lvbnMgaDMudHdpc3Q6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5yZWdpb25zIGg0IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAucmVnaW9ucyAubWV0YSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gICAgLnJlZ2lvbnMgLm1ldGEgc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAgIC5yZWdpb25zIC5tZXRhIHNwYW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgIHRvcDogNHB4O1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzQsIDM0LCAzNCwgMC43KTsgfVxuICAucmVnaW9ucyB1bCB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5yZWdpb25zIHVsIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAgICAgICAucmVnaW9ucyB1bDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgLnJlZ2lvbnMgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgLnJlZ2lvbnMgdWwgbGk6aG92ZXIsIC5yZWdpb25zIHVsIGxpOmZvY3VzIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAgIC5yZWdpb25zIHVsIGxpOmhvdmVyIGg0LCAucmVnaW9ucyB1bCBsaTpmb2N1cyBoNCB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBjb2xvcjogI2VlMDAwMDsgfVxuICAgICAgICAucmVnaW9ucyB1bCBsaTpob3ZlciAubWV0YSwgLnJlZ2lvbnMgdWwgbGk6Zm9jdXMgLm1ldGEge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNzU7IH1cbiAgICAucmVnaW9ucyB1bC5hY3RpdmUge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5pc3N1ZXMtbGFuZGluZy1wYWdlIC5oZXJvIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpOyB9XG4gIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5tYWluLXBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4OyB9XG4gIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5icmVhZGNydW1iIGxpLCAuaXNzdWVzLWxhbmRpbmctcGFnZSAuaGVybyAuYnJlYWRjcnVtYiBhIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmhlcm8gLmJyZWFkY3J1bWIgc3ZnIHtcbiAgICBmaWxsOiB3aGl0ZTsgfVxuICAuaXNzdWVzLWxhbmRpbmctcGFnZSAuaGVybyAuY29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmhlcm8gLmdyaWQtMTIuZ3JpZC1kZXNrdG9wLTcsIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5ncmlkLWRlc2t0b3AtNy5jb2wtbWQtNCwgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmhlcm8gLmNvbC1tZC00LmNvbC1tZC03LCAuaXNzdWVzLWxhbmRpbmctcGFnZSAuaGVybyAuZ3JpZC1kZXNrdG9wLTcuY29sLW1kLTYsIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5jb2wtbWQtNi5jb2wtbWQtNywgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmhlcm8gLmdyaWQtMTIuY29sLW1kLTcge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuXG4uaXNzdWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICBtYXJnaW46IDYwcHggMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3A7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLm92ZXJ2aWV3IHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA3MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5vdmVydmlldzphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAuaXNzdWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXc6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAuaXNzdWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTQwMHB4O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLm92ZXJ2aWV3IC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLm92ZXJ2aWV3IGgyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQ6ICMyMjI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMyMjIsIC0xMHB4IDAgMCAjMjIyO1xuICAgIG1hcmdpbjogMCAwIDUwcHg7IH1cbiAgICAuaXNzdWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcgaDIgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogMTAwOyB9XG4gIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5vdmVydmlldyBoMyB7XG4gICAgY29sb3I6ICMyMjI7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLm92ZXJ2aWV3IC5tZXRhIHtcbiAgICBjb2xvcjogIzIyMjsgfVxuICAuaXNzdWVzLWxhbmRpbmctcGFnZSAub3ZlcnZpZXcgcCB7XG4gICAgY29sb3I6ICMyMjI7IH1cblxuLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuaXNzdWVzLWxhbmRpbmctcGFnZSAucmVnaW9ucyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5yZWdpb25zIHVsIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5yZWdpb25zIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAgIC5pc3N1ZXMtbGFuZGluZy1wYWdlIC5yZWdpb25zIGxpOmhvdmVyIHN2ZywgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMgbGk6Zm9jdXMgc3ZnIHtcbiAgICAgIGZpbGw6ICNlZTAwMDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMgaDQge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMgaDQgc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgZmlsbDogIzIyMjtcbiAgICB3aWR0aDogMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMjVzIGVhc2UgMHM7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbnMgLm1ldGEge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAuaXNzdWVzLWxhbmRpbmctcGFnZSAucmVnaW9ucyAubWV0YSBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuXG4uaXNzdWVzLWxhbmRpbmctcGFnZSAuYWxsLWNvdW50cmllcyB7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAyNXB4IDA7IH1cbiAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmFsbC1jb3VudHJpZXM6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmlzc3Vlcy1sYW5kaW5nLXBhZ2UgLmFsbC1jb3VudHJpZXMge1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICBtYXgtd2lkdGg6IDg1JTtcbiAgICAgIG1hcmdpbjogNDBweCBhdXRvIDA7IH0gfVxuICAuaXNzdWVzLWxhbmRpbmctcGFnZSAuYWxsLWNvdW50cmllcyAucm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5pc3N1ZXMtbGFuZGluZy1wYWdlIC5zZWN0aW9uLWhlYWRpbmcge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmNyaXNpcy1yZXNwb25zZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDBweCAwIDEwcHg7XG4gIG1hcmdpbjogLTIwcHggMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmNyaXNpcy1yZXNwb25zZXMge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nLzcuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBwYWRkaW5nOiAzMHB4IDAgNTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuY3Jpc2lzLXJlc3BvbnNlcyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmNyaXNpcy1yZXNwb25zZXM6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNCwgMzQsIDAuNyk7IH0gfVxuICAuY3Jpc2lzLXJlc3BvbnNlcyBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgICAuY3Jpc2lzLXJlc3BvbnNlcyBoMiBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogIzIyMjsgfVxuICAuY3Jpc2lzLXJlc3BvbnNlcyAuZ3JpZC0xMi5ncmlkLWRlc2t0b3AtNCwgLmNyaXNpcy1yZXNwb25zZXMgLmNvbC1tZC00LCAuY3Jpc2lzLXJlc3BvbnNlcyAuZ3JpZC1kZXNrdG9wLTQuY29sLW1kLTYsIC5jcmlzaXMtcmVzcG9uc2VzIC5jb2wtbWQtNi5jb2wtbWQtNCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5jcmlzaXMtcmVzcG9uc2VzIC5ncmlkLTEyLmdyaWQtZGVza3RvcC00LCAuY3Jpc2lzLXJlc3BvbnNlcyAuY29sLW1kLTQsIC5jcmlzaXMtcmVzcG9uc2VzIC5ncmlkLWRlc2t0b3AtNC5jb2wtbWQtNiwgLmNyaXNpcy1yZXNwb25zZXMgLmNvbC1tZC02LmNvbC1tZC00IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50YWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC50YWJzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgLnRhYnM6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAudGFicyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAudGFicyBsaSB7XG4gICAgICAgIHdpZHRoOiAyNC41JTsgfSB9XG4gICAgLnRhYnMgbGkgaDMge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAgIC50YWJzIGxpOmhvdmVyLCAudGFicyBsaTpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC50YWJzIGxpOmhvdmVyIGgzLCAudGFicyBsaTpmb2N1cyBoMyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZWUwMDAwOyB9XG4gICAgLnRhYnMgbGkuYWN0aXZlIGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2VlMDAwMDsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBoZWlnaHQ6IDMwMHB4OyB9XG4gICAgICAudGFicy1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLnRhYnMtY29udGVudCBoMyB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxOXB4OyB9XG4gIC50YWJzLWNvbnRlbnQgdWwge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjc1KTsgfVxuICAgIC50YWJzLWNvbnRlbnQgdWw6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRhYnMtY29udGVudCBsaS50YWItb25lLCAudGFicy1jb250ZW50IGxpLnRhYi10d28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDMwcHg7XG4gICAgbGVmdDogMzBweDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gICAgLnRhYnMtY29udGVudCBsaS50YWItb25lLmFjdGl2ZSwgLnRhYnMtY29udGVudCBsaS50YWItdHdvLmFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMTA7IH1cbiAgLnRhYnMtY29udGVudCBoNCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC50YWJzLWNvbnRlbnQgcCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC50YWJzLWNvbnRlbnQgdWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRhYnMtY29udGVudCB1bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLnRhYnMtY29udGVudCB1bCBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLnRhYnMtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfSB9XG4gIC50YWJzLWNvbnRlbnQgLmNvdW50cmllcyBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gICAgLnRhYnMtY29udGVudCAuY291bnRyaWVzIHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTEwcHg7XG4gICAgICB0b3A6IDRweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAudGFicy1jb250ZW50IC5jb3VudHJpZXMgc3BhbjpsYXN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC50YWJzLWNvbnRlbnQgLmNvdW50cmllcyBzcGFuOmhvdmVyLCAudGFicy1jb250ZW50IC5jb3VudHJpZXMgc3Bhbjpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHdoaXRlOyB9XG4gIC50YWJzLWNvbnRlbnQgLmZhY3RzIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50YWJzLWNvbnRlbnQgLmZhY3RzIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxMnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgICAudGFicy1jb250ZW50IC5mYWN0cyBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDEycHg7IH1cbiAgICAgIC50YWJzLWNvbnRlbnQgLmZhY3RzIGxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlOyB9XG4gIC50YWJzLWNvbnRlbnQgLmZyb20tZmllbGQgLnByb2ZpbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSAucHJvZmlsZS1waWMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDc1cHg7IH1cbiAgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSAudGV4dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSBoMywgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSAubWV0YSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC50YWJzLWNvbnRlbnQgLmZyb20tZmllbGQgLnByb2ZpbGUgaDMge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW46IDAgMCAwOyB9XG4gIC50YWJzLWNvbnRlbnQgLmZyb20tZmllbGQgLnByb2ZpbGUgLm1ldGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtaW5kZW50OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIC50YWJzLWNvbnRlbnQgLmZyb20tZmllbGQgLnByb2ZpbGUgLm1ldGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgICAudGFicy1jb250ZW50IC5mcm9tLWZpZWxkIC5wcm9maWxlIC5tZXRhIHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSAubWV0YSBzcGFuOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTdweDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLnRhYnMtY29udGVudCAuZnJvbS1maWVsZCAucHJvZmlsZSAudGV4dF9hcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50YWJzLWNvbnRlbnQgLmZyb20tZmllbGQgLnByb2ZpbGUgLnRleHRfYXJlYSBwIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAudGFicy1jb250ZW50IGEucGFnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjZWUwMDAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAgIC50YWJzLWNvbnRlbnQgYS5wYWdlOmhvdmVyLCAudGFicy1jb250ZW50IGEucGFnZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzFhMTlhOyB9XG4gICAgICAudGFicy1jb250ZW50IGEucGFnZTpob3ZlciBzdmcsIC50YWJzLWNvbnRlbnQgYS5wYWdlOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNlZTAwMDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5saXN0aW5nLXBhZ2UgLmhlcm8ge1xuICAgIHBhZGRpbmc6IDM1MHB4IDAgNjBweDsgfSB9XG5cbi5saXN0aW5nLXBhZ2UgaDEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4ubGlzdGluZy1wYWdlIC5sYXRlc3RfZmVlZC5zaWRlLWJ5LXNpZGUge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAubGlzdGluZy1wYWdlIC5sYXRlc3RfZmVlZC5zaWRlLWJ5LXNpZGUgdWwge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5saXN0aW5nLXBhZ2UgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubGlzdGluZy1wYWdlIC5sYXRlc3RfZmVlZC5zaWRlLWJ5LXNpZGUgbGkge1xuICAgICAgd2lkdGg6IDQ3LjUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubGlzdGluZy1wYWdlIC5sYXRlc3RfZmVlZC5zaWRlLWJ5LXNpZGUgbGk6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5saXN0aW5nLXBhZ2UgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSBsaSAudGV4dCBoMyB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubGlzdGluZy1wYWdlIC5sYXRlc3RfZmVlZC5zaWRlLWJ5LXNpZGUgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM0LCAyMzYsIDIzMCwgMC41KTsgfSB9XG4gIC5saXN0aW5nLXBhZ2UgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSAubGF0ZXN0X2ZlYXR1cmUgLnRleHRfYXJlYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5saXN0aW5nLXBhZ2UgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSAubGF0ZXN0X2ZlYXR1cmUgLnRleHRfYXJlYSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5saXN0aW5nLXBhZ2UgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBoZWlnaHQ6IDIwMHB4OyB9IH1cblxuLmZpbHRlci1kcm9wLWRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbjogMzBweCBhdXRvIDA7IH1cbiAgLmZpbHRlci1kcm9wLWRvd246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZpbHRlci1kcm9wLWRvd24gbGkge1xuICAgIHBhZGRpbmc6IDE1cHggMjVweCAxM3B4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjI1KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5maWx0ZXItZHJvcC1kb3duIGxpIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgLmZpbHRlci1kcm9wLWRvd24gbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAuZmlsdGVyLWRyb3AtZG93biBsaTpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTsgfSB9XG4gICAgLmZpbHRlci1kcm9wLWRvd24gbGk6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG4gICAgLmZpbHRlci1kcm9wLWRvd24gbGk6aG92ZXIsIC5maWx0ZXItZHJvcC1kb3duIGxpOmZvY3VzIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzQsIDM0LCAzNCwgMC43NSk7IH1cbiAgICAuZmlsdGVyLWRyb3AtZG93biBsaS5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjc1KTsgfVxuICAgICAgLmZpbHRlci1kcm9wLWRvd24gbGkuYWN0aXZlIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLmZpbHRlci1kcm9wLWRvd24gc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gICAgZmlsbDogIzIyMjtcbiAgICB3aWR0aDogMTVweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZmlsbDogd2hpdGU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG5cbi5maWx0ZXItZHJvcC1kb3duLW9wZW4ge1xuICBtYXgtd2lkdGg6IDkwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC40NXMgZWFzZSAwcztcbiAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjkpOyB9XG4gIC5maWx0ZXItZHJvcC1kb3duLW9wZW4gdWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLmZpbHRlci1kcm9wLWRvd24tb3BlbiB1bCB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNDsgfSB9XG4gICAgLmZpbHRlci1kcm9wLWRvd24tb3BlbiB1bCBsaSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gICAgICAuZmlsdGVyLWRyb3AtZG93bi1vcGVuIHVsIGxpOmhvdmVyLCAuZmlsdGVyLWRyb3AtZG93bi1vcGVuIHVsIGxpOmZvY3VzIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogI2VlMDAwMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cbiAgICAgIC5maWx0ZXItZHJvcC1kb3duLW9wZW4gdWwgbGkuaGVhZGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICAgIGNvbG9yOiAjMzFhMTlhOyB9XG4gICAgICAgIC5maWx0ZXItZHJvcC1kb3duLW9wZW4gdWwgbGkuaGVhZGluZzpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAgIC5maWx0ZXItZHJvcC1kb3duLW9wZW4gdWwgbGkuaGVhZGluZzpob3ZlciwgLmZpbHRlci1kcm9wLWRvd24tb3BlbiB1bCBsaS5oZWFkaW5nOmZvY3VzIHtcbiAgICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgICAgY29sb3I6ICMzMWExOWE7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAuZmlsdGVyLWRyb3AtZG93bi1vcGVuIHVsIGxpLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogI2VlMDAwMDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgICAgLmZpbHRlci1kcm9wLWRvd24tb3BlbiB1bCBsaS5hY3RpdmUgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICBmaWxsOiB3aGl0ZTsgfVxuICAgICAgICAuZmlsdGVyLWRyb3AtZG93bi1vcGVuIHVsIGxpLmFjdGl2ZTpob3ZlciwgLmZpbHRlci1kcm9wLWRvd24tb3BlbiB1bCBsaS5hY3RpdmU6Zm9jdXMge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWUwMDAwOyB9XG4gIC5maWx0ZXItZHJvcC1kb3duLW9wZW4uYWN0aXZlIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5maWx0ZXItZHJvcC1kb3duLW9wZW4uYWN0aXZlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cblxuLmZpbHRlci1jaG9zZW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmZpbHRlci1jaG9zZW4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDMwcHggNXB4IDVweCAwO1xuICAgIGJhY2tncm91bmQ6ICMzMWExOWE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIHBhZGRpbmc6IDNweCAxMHB4OyB9XG4gICAgLmZpbHRlci1jaG9zZW4gbGkgc3ZnIHtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgZmlsbDogd2hpdGU7IH1cbiAgICAuZmlsdGVyLWNob3NlbiBsaTpob3ZlciwgLmZpbHRlci1jaG9zZW4gbGk6Zm9jdXMge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZDogI2VlMDAwMDsgfVxuXG4uZGlyZWN0aW9ucyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyOyB9XG4gIC5kaXJlY3Rpb25zOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5kaXJlY3Rpb25zICNtYXAge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5kaXJlY3Rpb25zICNtYXAgaW1nIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLmRpcmVjdGlvbnMgI21hcCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDI1MHB4OyB9IH1cbiAgLmRpcmVjdGlvbnMgLnRleHQge1xuICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5kaXJlY3Rpb25zIC50ZXh0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAuZGlyZWN0aW9ucyAuYnRuLCAuZGlyZWN0aW9ucyAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0LCAuc2VhcmNoLWZvcm0gLmRpcmVjdGlvbnMgI2VkaXQtc3VibWl0IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAuZGlyZWN0aW9ucyBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5kaXJlY3Rpb25zIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTsgfVxuXG4uY2VudGVyLWJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuY2VudGVyLWJ1dHRvbjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc3RvcnktaHViIC5wYWdlX2FuY2hvcnMsIC50YWtlLWFjdGlvbiAucGFnZV9hbmNob3JzLCAuZnJvbnRsaW5lIC5wYWdlX2FuY2hvcnMge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG4gIC5zdG9yeS1odWIgLnBhZ2VfYW5jaG9ycy5tb3ZlLXVwLCAudGFrZS1hY3Rpb24gLnBhZ2VfYW5jaG9ycy5tb3ZlLXVwLCAuZnJvbnRsaW5lIC5wYWdlX2FuY2hvcnMubW92ZS11cCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC05MHB4KTsgfVxuICAuc3RvcnktaHViIC5wYWdlX2FuY2hvcnMuZml4ZWQsIC50YWtlLWFjdGlvbiAucGFnZV9hbmNob3JzLmZpeGVkLCAuZnJvbnRsaW5lIC5wYWdlX2FuY2hvcnMuZml4ZWQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc3RvcnktaHViIC5oZXJvLCAudGFrZS1hY3Rpb24gLmhlcm8sIC5mcm9udGxpbmUgLmhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9jdGEtcGFuZWwzLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTUwcHgpOyB9XG4gIC5zdG9yeS1odWIgLmhlcm8gLmNvbnRhaW5lciwgLnRha2UtYWN0aW9uIC5oZXJvIC5jb250YWluZXIsIC5mcm9udGxpbmUgLmhlcm8gLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLnN0b3J5LWh1YiAuaGVybyAubWFpbi1wYWdlLXRpdGxlLCAudGFrZS1hY3Rpb24gLmhlcm8gLm1haW4tcGFnZS10aXRsZSwgLmZyb250bGluZSAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICBwYWRkaW5nOiAwIDAgMjBweDsgfVxuICAuc3RvcnktaHViIC5oZXJvIGgxLCAudGFrZS1hY3Rpb24gLmhlcm8gaDEsIC5mcm9udGxpbmUgLmhlcm8gaDEge1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiAzcHggMDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDAgMCB3aGl0ZSwgLTEwcHggMCAwIHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDk1JTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAuc3RvcnktaHViIC5oZXJvIGgxLCAudGFrZS1hY3Rpb24gLmhlcm8gaDEsIC5mcm9udGxpbmUgLmhlcm8gaDEge1xuICAgICAgICBmb250LXNpemU6IDU1cHg7IH0gfVxuICAuc3RvcnktaHViIC5oZXJvIC5mZWF0dXJlZC1hcnRpY2xlLCAudGFrZS1hY3Rpb24gLmhlcm8gLmZlYXR1cmVkLWFydGljbGUsIC5mcm9udGxpbmUgLmhlcm8gLmZlYXR1cmVkLWFydGljbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxMHB4OyB9XG4gICAgLnN0b3J5LWh1YiAuaGVybyAuZmVhdHVyZWQtYXJ0aWNsZSBhLCAudGFrZS1hY3Rpb24gLmhlcm8gLmZlYXR1cmVkLWFydGljbGUgYSwgLmZyb250bGluZSAuaGVybyAuZmVhdHVyZWQtYXJ0aWNsZSBhIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuc3RvcnktaHViIC5oZXJvIC5mZWF0dXJlZCwgLnRha2UtYWN0aW9uIC5oZXJvIC5mZWF0dXJlZCwgLmZyb250bGluZSAuaGVybyAuZmVhdHVyZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICNlZTAwMDAsIC0xMHB4IDAgMCAjZWUwMDAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICAgIC8qJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ2ZlYXR1cmVkJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgICB9Ki8gfVxuICAgIC5zdG9yeS1odWIgLmhlcm8gLmZlYXR1cmVkIHN2ZywgLnRha2UtYWN0aW9uIC5oZXJvIC5mZWF0dXJlZCBzdmcsIC5mcm9udGxpbmUgLmhlcm8gLmZlYXR1cmVkIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gICAgLnN0b3J5LWh1YiAuaGVybyAuZmVhdHVyZWQ6aG92ZXIsIC50YWtlLWFjdGlvbiAuaGVybyAuZmVhdHVyZWQ6aG92ZXIsIC5mcm9udGxpbmUgLmhlcm8gLmZlYXR1cmVkOmhvdmVyLCAuc3RvcnktaHViIC5oZXJvIC5mZWF0dXJlZDpmb2N1cywgLnRha2UtYWN0aW9uIC5oZXJvIC5mZWF0dXJlZDpmb2N1cywgLmZyb250bGluZSAuaGVybyAuZmVhdHVyZWQ6Zm9jdXMge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTtcbiAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMzMWExOWEsIC0xMHB4IDAgMCAjMzFhMTlhOyB9XG4gIC5zdG9yeS1odWIgLmhlcm8ud2l0aC1hbmNob3JzIC5tYWluLXBhZ2UtdGl0bGUsIC50YWtlLWFjdGlvbiAuaGVyby53aXRoLWFuY2hvcnMgLm1haW4tcGFnZS10aXRsZSwgLmZyb250bGluZSAuaGVyby53aXRoLWFuY2hvcnMgLm1haW4tcGFnZS10aXRsZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7IH1cbiAgLnN0b3J5LWh1YiAuaGVybyAuYnJlYWRjcnVtYiBsaSwgLnRha2UtYWN0aW9uIC5oZXJvIC5icmVhZGNydW1iIGxpLCAuZnJvbnRsaW5lIC5oZXJvIC5icmVhZGNydW1iIGxpLCAuc3RvcnktaHViIC5oZXJvIC5icmVhZGNydW1iIGEsIC50YWtlLWFjdGlvbiAuaGVybyAuYnJlYWRjcnVtYiBhLCAuZnJvbnRsaW5lIC5oZXJvIC5icmVhZGNydW1iIGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuc3RvcnktaHViIC5oZXJvIC5icmVhZGNydW1iIHN2ZywgLnRha2UtYWN0aW9uIC5oZXJvIC5icmVhZGNydW1iIHN2ZywgLmZyb250bGluZSAuaGVybyAuYnJlYWRjcnVtYiBzdmcge1xuICAgIGZpbGw6IHdoaXRlOyB9XG4gIC5zdG9yeS1odWIgLmhlcm86YWZ0ZXIsIC50YWtlLWFjdGlvbiAuaGVybzphZnRlciwgLmZyb250bGluZSAuaGVybzphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNCwgMzQsIDAuMSk7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5OyB9XG4gIC5zdG9yeS1odWIgLmhlcm8gLmFuY2hvciwgLnRha2UtYWN0aW9uIC5oZXJvIC5hbmNob3IsIC5mcm9udGxpbmUgLmhlcm8gLmFuY2hvciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7IH1cbiAgICAuc3RvcnktaHViIC5oZXJvIC5hbmNob3IgbGksIC50YWtlLWFjdGlvbiAuaGVybyAuYW5jaG9yIGxpLCAuZnJvbnRsaW5lIC5oZXJvIC5hbmNob3IgbGkge1xuICAgICAgY29sb3I6ICNGOTY2NjQ7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgLnN0b3J5LWh1YiAuaGVybyAuYW5jaG9yIGxpLCAudGFrZS1hY3Rpb24gLmhlcm8gLmFuY2hvciBsaSwgLmZyb250bGluZSAuaGVybyAuYW5jaG9yIGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsgfSB9XG4gICAgICAuc3RvcnktaHViIC5oZXJvIC5hbmNob3IgbGk6Zmlyc3Qtb2YtdHlwZSwgLnRha2UtYWN0aW9uIC5oZXJvIC5hbmNob3IgbGk6Zmlyc3Qtb2YtdHlwZSwgLmZyb250bGluZSAuaGVybyAuYW5jaG9yIGxpOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC5zdG9yeS1odWIgLmhlcm8gLmFuY2hvciBsaSBzdmcsIC50YWtlLWFjdGlvbiAuaGVybyAuYW5jaG9yIGxpIHN2ZywgLmZyb250bGluZSAuaGVybyAuYW5jaG9yIGxpIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgIHJpZ2h0OiAtOHB4O1xuICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgIGZpbGw6ICNmZmY7IH1cbiAgICAgIC5zdG9yeS1odWIgLmhlcm8gLmFuY2hvciBsaSBhLCAudGFrZS1hY3Rpb24gLmhlcm8gLmFuY2hvciBsaSBhLCAuZnJvbnRsaW5lIC5oZXJvIC5hbmNob3IgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjRjk2NjY0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgICAgICAgLnN0b3J5LWh1YiAuaGVybyAuYW5jaG9yIGxpIGE6aG92ZXIsIC50YWtlLWFjdGlvbiAuaGVybyAuYW5jaG9yIGxpIGE6aG92ZXIsIC5mcm9udGxpbmUgLmhlcm8gLmFuY2hvciBsaSBhOmhvdmVyLCAuc3RvcnktaHViIC5oZXJvIC5hbmNob3IgbGkgYTpmb2N1cywgLnRha2UtYWN0aW9uIC5oZXJvIC5hbmNob3IgbGkgYTpmb2N1cywgLmZyb250bGluZSAuaGVybyAuYW5jaG9yIGxpIGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjZWUwMDAwOyB9XG4gICAgLnN0b3J5LWh1YiAuaGVybyAuYW5jaG9yLmZpeGVkLCAudGFrZS1hY3Rpb24gLmhlcm8gLmFuY2hvci5maXhlZCwgLmZyb250bGluZSAuaGVybyAuYW5jaG9yLmZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5zdG9yeS1odWIgLnNlY3Rpb24taGVhZGluZywgLnRha2UtYWN0aW9uIC5zZWN0aW9uLWhlYWRpbmcsIC5mcm9udGxpbmUgLnNlY3Rpb24taGVhZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc3RvcnktaHViIGgyLCAudGFrZS1hY3Rpb24gaDIsIC5mcm9udGxpbmUgaDIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdG9yeS1odWIgaDIsIC50YWtlLWFjdGlvbiBoMiwgLmZyb250bGluZSBoMiB7XG4gICAgICBmb250LXNpemU6IDM0cHg7IH0gfVxuXG4uc3RvcnktaHViIC5vdmVydmlldywgLnRha2UtYWN0aW9uIC5vdmVydmlldywgLmZyb250bGluZSAub3ZlcnZpZXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICBtYXJnaW46IDYwcHggMCAzMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuc3RvcnktaHViIC5vdmVydmlldywgLnRha2UtYWN0aW9uIC5vdmVydmlldywgLmZyb250bGluZSAub3ZlcnZpZXcge1xuICAgICAgcGFkZGluZzogNzBweCAwIDcwcHg7IH0gfVxuICAuc3RvcnktaHViIC5vdmVydmlldyBoMiwgLnRha2UtYWN0aW9uIC5vdmVydmlldyBoMiwgLmZyb250bGluZSAub3ZlcnZpZXcgaDIge1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICBtYXJnaW46IDAgMCA1MHB4OyB9XG4gICAgLnN0b3J5LWh1YiAub3ZlcnZpZXcgaDIgc3BhbiwgLnRha2UtYWN0aW9uIC5vdmVydmlldyBoMiBzcGFuLCAuZnJvbnRsaW5lIC5vdmVydmlldyBoMiBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLnN0b3J5LWh1YiAuYnRuLnNtbC1idG4sIC50YWtlLWFjdGlvbiAuYnRuLnNtbC1idG4sIC5mcm9udGxpbmUgLmJ0bi5zbWwtYnRuLCAuc3RvcnktaHViIC5zZWFyY2gtZm9ybSAuc21sLWJ0biNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC5zdG9yeS1odWIgLnNtbC1idG4jZWRpdC1zdWJtaXQsIC50YWtlLWFjdGlvbiAuc2VhcmNoLWZvcm0gLnNtbC1idG4jZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAudGFrZS1hY3Rpb24gLnNtbC1idG4jZWRpdC1zdWJtaXQsIC5mcm9udGxpbmUgLnNlYXJjaC1mb3JtIC5zbWwtYnRuI2VkaXQtc3VibWl0LCAuc2VhcmNoLWZvcm0gLmZyb250bGluZSAuc21sLWJ0biNlZGl0LXN1Ym1pdCB7XG4gIGhlaWdodDogNDJweDtcbiAgcGFkZGluZzogNXB4IDE1cHg7IH1cblxuLnN0b3J5LWh1YiAuZmxleCwgLnRha2UtYWN0aW9uIC5mbGV4LCAuZnJvbnRsaW5lIC5mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBjbGVhcjogYm90aDsgfVxuXG4uc3RvcnktaHViIC5iYWNrZ3JvdW5kLWx0LCAudGFrZS1hY3Rpb24gLmJhY2tncm91bmQtbHQsIC5mcm9udGxpbmUgLmJhY2tncm91bmQtbHQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmc6IDUwcHggMCA2MHB4O1xuICBtYXJnaW46IDcwcHggMCAwOyB9XG4gIC5zdG9yeS1odWIgLmJhY2tncm91bmQtbHQ6YWZ0ZXIsIC50YWtlLWFjdGlvbiAuYmFja2dyb3VuZC1sdDphZnRlciwgLmZyb250bGluZSAuYmFja2dyb3VuZC1sdDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc3RvcnktaHViIC5iYWNrZ3JvdW5kLWx0IC5sYXRlc3RfZmVlZCwgLnRha2UtYWN0aW9uIC5iYWNrZ3JvdW5kLWx0IC5sYXRlc3RfZmVlZCwgLmZyb250bGluZSAuYmFja2dyb3VuZC1sdCAubGF0ZXN0X2ZlZWQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLnRha2UtYWN0aW9uIC5jdGEtcGFuZWwge1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG5cbi50YWtlLWFjdGlvbiAuaGVybyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9tZWQuanBnXCIpOyB9XG4gIC50YWtlLWFjdGlvbiAuaGVybyAuaW50cm8ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgICB0b3A6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC50YWtlLWFjdGlvbiAuaGVybzphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGFrZS1hY3Rpb24gLmhlcm8gaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjZWUwMDAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICNlZTAwMDAsIC0xMHB4IDAgMCAjZWUwMDAwOyB9XG5cbi50YWtlLWFjdGlvbiAucm93OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAudGFrZS1hY3Rpb24gLmRhcmstYmFja2dyb3VuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG5cbi50YWtlLWFjdGlvbiAuZGFyay1iYWNrZ3JvdW5kIC5idG4sIC50YWtlLWFjdGlvbiAuZGFyay1iYWNrZ3JvdW5kIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAudGFrZS1hY3Rpb24gLmRhcmstYmFja2dyb3VuZCAjZWRpdC1zdWJtaXQge1xuICBsaW5lLWhlaWdodDogMjsgfVxuXG4udGFrZS1hY3Rpb24gLmRhcmstYmFja2dyb3VuZCAuYnRuLWNlbnRlciB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLnRha2UtYWN0aW9uIC5kYXJrLWJhY2tncm91bmQgLmJ0bi1zZWNvbmRhcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWUwMDAwOyB9XG4gIC50YWtlLWFjdGlvbiAuZGFyay1iYWNrZ3JvdW5kIC5idG4tc2Vjb25kYXJ5OmhvdmVyLCAudGFrZS1hY3Rpb24gLmRhcmstYmFja2dyb3VuZCAuYnRuLXNlY29uZGFyeTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzFhMTlhOyB9XG5cbi50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGFrZS1hY3Rpb24gLnN0YXRpc3RpY3MgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjAlO1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7IH1cbiAgLnRha2UtYWN0aW9uIC5zdGF0aXN0aWNzIC5zdGF0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgLnRha2UtYWN0aW9uIC5zdGF0aXN0aWNzIC5idG4sIC50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0LCAuc2VhcmNoLWZvcm0gLnRha2UtYWN0aW9uIC5zdGF0aXN0aWNzICNlZGl0LXN1Ym1pdCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAudGFrZS1hY3Rpb24gLnN0YXRpc3RpY3MgLmJ0biwgLnRha2UtYWN0aW9uIC5zdGF0aXN0aWNzIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQsIC5zZWFyY2gtZm9ybSAudGFrZS1hY3Rpb24gLnN0YXRpc3RpY3MgI2VkaXQtc3VibWl0IHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICAudGFrZS1hY3Rpb24gLnN0YXRpc3RpY3MgLmJ0biBzdmcsIC50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyAuc2VhcmNoLWZvcm0gI2VkaXQtc3VibWl0IHN2ZywgLnNlYXJjaC1mb3JtIC50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyAjZWRpdC1zdWJtaXQgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gIC50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyAuYnRuLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMxYTE5YTtcbiAgICBiYWNrZ3JvdW5kOiAjMzFhMTlhO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAudGFrZS1hY3Rpb24gLnN0YXRpc3RpY3MgLm5ldy12b2ljZXMgLnRleHRfYXJlYSBoMywgLnRha2UtYWN0aW9uIC5zdGF0aXN0aWNzIC5uZXctdm9pY2VzIC50ZXh0X2FyZWEgLm1ldGEsIC50YWtlLWFjdGlvbiAuc3RhdGlzdGljcyAubmV3LXZvaWNlcyAudGV4dF9hcmVhIHAge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuXG4udGFrZS1hY3Rpb24gLmludHJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEwcHg7IH1cblxuLnRha2UtYWN0aW9uIGEge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cblxuLnRha2UtYWN0aW9uIC5kb25hdGlvbiAuY2xlYXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4udGFrZS1hY3Rpb24gLmRvbmF0aW9uIGEge1xuICBjbGVhcjogYWxsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuXG4udGFrZS1hY3Rpb24gLmRvbmF0aW9uIC5idG4sIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gI2VkaXQtc3VibWl0IHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAudGFrZS1hY3Rpb24gLmRvbmF0aW9uIC5idG46aG92ZXIsIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdDpob3ZlciwgLnNlYXJjaC1mb3JtIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gI2VkaXQtc3VibWl0OmhvdmVyLCAudGFrZS1hY3Rpb24gLmRvbmF0aW9uIC5idG46Zm9jdXMsIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdDpmb2N1cywgLnNlYXJjaC1mb3JtIC50YWtlLWFjdGlvbiAuZG9uYXRpb24gI2VkaXQtc3VibWl0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzFhMTlhO1xuICAgIGJvcmRlci1jb2xvcjogIzMxYTE5YTsgfVxuXG4udGFrZS1hY3Rpb24gLm92ZXJ2aWV3IC5sYXRlc3RfZmVlZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLnRha2UtYWN0aW9uIC5vdmVydmlldyAubGF0ZXN0X2ZlZWQgLnRleHQgYSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC50YWtlLWFjdGlvbiAub3ZlcnZpZXcgLmxhdGVzdF9mZWVkIC50ZXh0IC5tZXRhIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpOyB9XG5cbi50YWtlLWFjdGlvbiAuY2VudGVyLXZvaWNlIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVweDsgfVxuICAudGFrZS1hY3Rpb24gLmNlbnRlci12b2ljZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudGFrZS1hY3Rpb24gLmNlbnRlci12b2ljZSAubmV3LXZvaWNlczphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudGFrZS1hY3Rpb24gLmNlbnRlci12b2ljZSAubmV3LXZvaWNlcyBpbWcge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnRha2UtYWN0aW9uIC5jZW50ZXItdm9pY2UgLm5ldy12b2ljZXMgaDMge1xuICAgIGNvbG9yOiAjMjIyOyB9XG4gIC50YWtlLWFjdGlvbiAuY2VudGVyLXZvaWNlIC5uZXctdm9pY2VzIC5tZXRhIHtcbiAgICBjb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjcpOyB9XG4gICAgLnRha2UtYWN0aW9uIC5jZW50ZXItdm9pY2UgLm5ldy12b2ljZXMgLm1ldGEgc3BhbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNCwgMzQsIDAuMik7IH1cbiAgLnRha2UtYWN0aW9uIC5jZW50ZXItdm9pY2UgLm5ldy12b2ljZXMgcCB7XG4gICAgY29sb3I6ICMyMjI7IH1cblxuLnRha2UtYWN0aW9uIC5yZWxhdGVkLXRvcGljcy5kYXJrIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDEwMHB4OyB9XG5cbi50YWtlLWFjdGlvbiAub3RoZXItd2F5cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGFrZS1hY3Rpb24gLm90aGVyLXdheXMgaDIge1xuICAgIGZvbnQtc2l6ZTogMjlweDsgfVxuXG4uaG9yaXpvbnRhbC1saXN0aW5nOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5ob3Jpem9udGFsLWxpc3RpbmcgaW1nIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMHB4OyB9XG5cbi5ob3Jpem9udGFsLWxpc3RpbmcgLnRleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDYwJTtcbiAgcGFkZGluZy1sZWZ0OiA1JTsgfVxuXG4uaG9yaXpvbnRhbC1saXN0aW5nIGgzIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDI1cHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuXG4uaG9yaXpvbnRhbC1saXN0aW5nIHAge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uaG9yaXpvbnRhbC1saXN0aW5nIHN2ZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMXB4O1xuICB3aWR0aDogMTVweDtcbiAgZmlsbDogd2hpdGU7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuXG4uaG9yaXpvbnRhbC1saXN0aW5nIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuaG9yaXpvbnRhbC1saXN0aW5nIGxpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5ob3Jpem9udGFsLWxpc3RpbmcgbGk6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5ob3Jpem9udGFsLWxpc3RpbmcgbGk6aG92ZXIsIC5ob3Jpem9udGFsLWxpc3RpbmcgbGk6Zm9jdXMge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5ob3Jpem9udGFsLWxpc3RpbmcgbGk6aG92ZXIgaDMsIC5ob3Jpem9udGFsLWxpc3RpbmcgbGk6Zm9jdXMgaDMge1xuICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgICAuaG9yaXpvbnRhbC1saXN0aW5nIGxpOmhvdmVyIHN2ZywgLmhvcml6b250YWwtbGlzdGluZyBsaTpmb2N1cyBzdmcge1xuICAgICAgZmlsbDogI2VlMDAwMDsgfVxuXG4uYmFja2dyb3VuZC1mZWF0dXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZmVhdHVyZS1oZXJvLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNTBweCAwO1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5iYWNrZ3JvdW5kLWZlYXR1cmUge1xuICAgICAgcGFkZGluZzogMjUwcHggMDtcbiAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH0gfVxuICAuYmFja2dyb3VuZC1mZWF0dXJlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzQsIDM0LCAzNCwgMC42KTtcbiAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7IH1cbiAgLmJhY2tncm91bmQtZmVhdHVyZSAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYmFja2dyb3VuZC1mZWF0dXJlIGgzIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5iYWNrZ3JvdW5kLWZlYXR1cmUgaDMge1xuICAgICAgICBmb250LXNpemU6IDQwcHg7IH0gfVxuXG4uaWNvbi10ZXh0LWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDIwcHggMCAyMHB4OyB9XG4gIC5pY29uLXRleHQtY29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5pY29uLXRleHQtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uaWNvbi10ZXh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgLmljb24tdGV4dCBzdmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgIGZpbGw6ICNlZTAwMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuaWNvbi10ZXh0IHAge1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5pY29uLXRleHQ6aG92ZXIsIC5pY29uLXRleHQ6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZTAwMDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zbWFsbC1saW5rIHtcbiAgbWFyZ2luOiAzMHB4IDAgMDsgfVxuICAuc21hbGwtbGluayBhIHtcbiAgICBjb2xvcjogI0Y5NjY2NDsgfVxuICAgIC5zbWFsbC1saW5rIGE6aG92ZXIsIC5zbWFsbC1saW5rIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNlZTAwMDA7IH1cbiAgICAgIC5zbWFsbC1saW5rIGE6aG92ZXIgc3ZnLCAuc21hbGwtbGluayBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNlZTAwMDA7IH1cbiAgLnNtYWxsLWxpbmsgc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIGZpbGw6ICNGOTY2NjQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwczsgfVxuXG4uZGFyay1iYWNrZ3JvdW5kIHtcbiAgcGFkZGluZzogMzBweCAwIDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWRhcmstZnVsbC5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZGFyay1iYWNrZ3JvdW5kIHtcbiAgICAgIHBhZGRpbmc6IDcwcHggMCA3MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gIC5kYXJrLWJhY2tncm91bmQgLmxlYWQtaW4tdGV4dCB7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogIzIyMjtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgICAuZGFyay1iYWNrZ3JvdW5kIC5sZWFkLWluLXRleHQgc3BhbiB7XG4gICAgICBjb2xvcjogIzIyMjsgfVxuICAuZGFyay1iYWNrZ3JvdW5kIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTEwMHB4OyB9XG4gIC5kYXJrLWJhY2tncm91bmQgcCB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiA1MDBweDsgfVxuICAuZGFyay1iYWNrZ3JvdW5kIGg0IHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ubGlnaHQtYmFja2dyb3VuZCB7XG4gIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5saWdodC1iYWNrZ3JvdW5kIHtcbiAgICAgIHBhZGRpbmc6IDcwcHggMCA3MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gIC5saWdodC1iYWNrZ3JvdW5kIC5sYXRlc3RfZmVlZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLmxpZ2h0LWJhY2tncm91bmQgLmxhdGVzdF9mZWVkIGgyIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmxpZ2h0LWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmc6IDUwcHggMCA2MHB4O1xuICBtYXJnaW46IDcwcHggMCAzMHB4OyB9XG4gIC5saWdodC1iYWNrZ3JvdW5kOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5mcm9udGxpbmUgLmhlcm8ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gIHBhZGRpbmc6IDcwcHggMCA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5mcm9udGxpbmUgLmhlcm8ge1xuICAgICAgcGFkZGluZzogMTUwcHggMCAxMzBweDsgfSB9XG5cbi5mcm9udGxpbmUgLmRhcmstYmFja2dyb3VuZCBoMiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogM3B4IDA7XG4gIG1hcmdpbjogMCAwIDMwcHg7IH1cblxuLmZyb250bGluZSAuZGFyay1iYWNrZ3JvdW5kIC5yb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmZyb250bGluZSAuYWxsLWNvdW50cmllcyAucmVnaW9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZyb250bGluZSAuYWxsLWNvdW50cmllcyAucmVnaW9ucyBoNCB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuZnJvbnRsaW5lIC5hbGwtY291bnRyaWVzIC5yZWdpb25zIC5tZXRhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgLmZyb250bGluZSAuYWxsLWNvdW50cmllcyAucmVnaW9ucyB1bCB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5mcm9udGxpbmUgLmFsbC1jb3VudHJpZXMgLnJlZ2lvbnMgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5mcm9udGxpbmUgLmFsbC1jb3VudHJpZXMgLnJlZ2lvbnMgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLmZyb250bGluZSAuYWxsLWNvdW50cmllcyAucmVnaW9ucyBsaTpob3ZlciwgLmZyb250bGluZSAuYWxsLWNvdW50cmllcyAucmVnaW9ucyBsaTpmb2N1cyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5mcm9udGxpbmUgLmFsbC1jb3VudHJpZXMgLnJlZ2lvbnMgbGk6aG92ZXIgaDQsIC5mcm9udGxpbmUgLmFsbC1jb3VudHJpZXMgLnJlZ2lvbnMgbGk6Zm9jdXMgaDQge1xuICAgICAgICBjb2xvcjogI2VlMDAwMDsgfVxuXG4uZnJvbnRsaW5lIC5saWdodC1iYWNrZ3JvdW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZnJvbnRsaW5lIC5saWdodC1iYWNrZ3JvdW5kIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9IH1cblxuLmZyb250bGluZSAuYmFja2dyb3VuZC1mZWF0dXJlIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZnJvbnRsaW5lIC5jb3VudHJpZXMtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDcwcHg7IH1cbiAgLmZyb250bGluZSAuY291bnRyaWVzLXNlY3Rpb246YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9tYXAtai5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG9wYWNpdHk6IDAuMDU7IH1cbiAgLmZyb250bGluZSAuY291bnRyaWVzLXNlY3Rpb24gLnNlY3Rpb24taGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZnJvbnRsaW5lIC5jb3VudHJpZXMtc2VjdGlvbiBwIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4OyB9XG5cbi5tc2YtYnJlYWR0aCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTQwcHggMDsgfVxuICAubXNmLWJyZWFkdGg6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9tYXAtai13aGl0ZS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgb3BhY2l0eTogMC4xOyB9XG4gIC5tc2YtYnJlYWR0aCAuYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tc2YtYnJlYWR0aCAuYnRuIHN2ZywgLm1zZi1icmVhZHRoIC5zZWFyY2gtZm9ybSAjZWRpdC1zdWJtaXQgc3ZnLCAuc2VhcmNoLWZvcm0gLm1zZi1icmVhZHRoICNlZGl0LXN1Ym1pdCBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZpbGw6IHdoaXRlO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLm1zZi1icmVhZHRoIGgxIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4OyB9XG4gICAgLm1zZi1icmVhZHRoIGgxIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5tc2YtYnJlYWR0aCAuYnJlYWRjcnVtYiBhIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAubXNmLWJyZWFkdGggLmJyZWFkY3J1bWIgYSBzdmcge1xuICAgICAgZmlsbDogd2hpdGU7IH1cbiAgLm1zZi1icmVhZHRoIC5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDsgfVxuICAgIC5tc2YtYnJlYWR0aCAuY29udGFpbmVyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tc2YtYnJlYWR0aCAubGVhZC1pbi10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5tc2YtYnJlYWR0aCAuaW50cm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH1cbiAgLm1zZi1icmVhZHRoIC5saW5rIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAubXNmLWJyZWFkdGggLmxpbmsgLmRpdmlkZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgZmlsbDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICAgICAgd2lkdGg6IDUwcHg7IH0gfVxuICAubXNmLWJyZWFkdGggLmxpbmsgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAubXNmLWJyZWFkdGggLmxpbmsgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLm1zZi1icmVhZHRoIC5saW5rIHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4OyB9XG4gICAgLm1zZi1icmVhZHRoIC5saW5rIHAgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5tc2YtdmFsdWVzIC5oZXJvIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL21lZDIuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1zZi12YWx1ZXMgLmhlcm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gIC5tc2YtdmFsdWVzIC5oZXJvIC5pbnRybyB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDVweCAwIDIwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubXNmLXZhbHVlcyAuaGVybyAuYnJlYWRjcnVtYiBhIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLm1zZi12YWx1ZXMgLmhlcm8gLmJyZWFkY3J1bWIgc3ZnIHtcbiAgICBmaWxsOiB3aGl0ZTsgfVxuICAubXNmLXZhbHVlcyAuaGVybyAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuXG4ubXNmLXZhbHVlcyAudGV4dC10b3Age1xuICBwYWRkaW5nOiA2MHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubXNmLXZhbHVlcyAudGV4dC10b3AgaDEge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMjIyO1xuICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLm1zZi12YWx1ZXMgLnRleHQtdG9wIGgxIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAubXNmLXZhbHVlcyAudGV4dC10b3AgLmludHJvIHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubXNmLXZhbHVlcyAudmFsdWVzLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LXdoaXRlLmpwZ1wiKSBsZWZ0IHRvcC8xMDAlIG5vLXJlcGVhdCB3aGl0ZTsgfVxuXG4ubXNmLXZhbHVlcyAudmFsdWVzIHtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gNTBweDsgfSB9XG4gIC5tc2YtdmFsdWVzIC52YWx1ZXMgLmJ0biBzdmcsIC5tc2YtdmFsdWVzIC52YWx1ZXMgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCBzdmcsIC5zZWFyY2gtZm9ybSAubXNmLXZhbHVlcyAudmFsdWVzICNlZGl0LXN1Ym1pdCBzdmcge1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGZpbGw6IHdoaXRlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDRweDsgfVxuICAubXNmLXZhbHVlcyAudmFsdWVzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4OyB9XG4gICAgLm1zZi12YWx1ZXMgLnZhbHVlcyBsaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cbiAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpIHN2ZywgLm1zZi12YWx1ZXMgLnZhbHVlcyBsaSBpbWcge1xuICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgIGZpbGw6ICMzMWExOWE7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGkgc3ZnLCAubXNmLXZhbHVlcyAudmFsdWVzIGxpIGltZyB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGkgaW1nIHtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGkgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogLTIwJTtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGkgLnRleHQge1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpIC50ZXh0IHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNzAlOyB9IH1cbiAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjIyO1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgICAgLm1zZi12YWx1ZXMgLnZhbHVlcyBsaSBoMiBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGkgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAgIC5tc2YtdmFsdWVzIC52YWx1ZXMgbGk6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpOm50aC1jaGlsZCgybisyKSBpbWcge1xuICAgICAgICAgIHJpZ2h0OiAtMjAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpLnNlYXJjaC1yZXN1bHQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgICAgICAubXNmLXZhbHVlcyAudmFsdWVzIGxpLnNlYXJjaC1yZXN1bHQgaW1nIHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAtMjAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLmV2ZW50cy1wYWdlIC5yaWNoLXRleHQge1xuICAgIG1hcmdpbi10b3A6IDYwdmg7IH0gfVxuXG4uZnJvbnQgLm1zZi1icmVhZHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgLmZyb250IC5tc2YtYnJlYWR0aCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgMzVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5mcm9udCAubXNmLWJyZWFkdGgge1xuICAgICAgcGFkZGluZzogNTBweCAwIDcwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkge1xuICAgIC5mcm9udCAubXNmLWJyZWFkdGgge1xuICAgICAgcGFkZGluZzogMjBweCAwIDBweDsgfSB9XG4gIC5mcm9udCAubXNmLWJyZWFkdGg6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDsgfVxuICAuZnJvbnQgLm1zZi1icmVhZHRoIC5sZWFkLWluLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAuZnJvbnQgLm1zZi1icmVhZHRoIC5sZWFkLWluLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDQwcHg7IH0gfVxuICAuZnJvbnQgLm1zZi1icmVhZHRoIC5pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAuZnJvbnQgLm1zZi1icmVhZHRoIC5saW5rIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4OyB9XG4gICAgLmZyb250IC5tc2YtYnJlYWR0aCAubGluayBsaSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gIC5mcm9udCAubXNmLWJyZWFkdGggLnN0YXQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gICAgLmZyb250IC5tc2YtYnJlYWR0aCAuc3RhdCBwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXJyb3ctc2Nyb2xsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogLTE1cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuICAuYXJyb3ctc2Nyb2xsIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDI1JTtcbiAgICB0b3A6IDIwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBmaWxsOiB3aGl0ZTtcbiAgICBhbmltYXRpb246IGRvd24tZmFkZSAxLjVzIGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjYyNSwgMC4wNzUsIDAuMTEsIDEuMTY1KTsgfVxuXG5Aa2V5ZnJhbWVzIGRvd24tZmFkZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uY2VudGVyLWZyb250IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jZW50ZXItZnJvbnQgLmxlYWQtaW4tdGV4dCB7XG4gICAgei1pbmRleDogMTsgfVxuXG4ubGF0ZXN0X2ZlZWQgLmZlZWQgLmxhdGVzdF9mZWF0dXJlLnZpZGVvIC50ZXh0X2FyZWEge1xuICBwYWRkaW5nLXRvcDogMTBweDsgfVxuXG4jdXNlci1sb2dpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMTAlOyB9XG4gICN1c2VyLWxvZ2luIGlucHV0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwOyB9XG5cbi5wb2ludGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5rcnVtby1mb290bm90ZSBpbWcge1xuICB3aWR0aDogYXV0bzsgfVxuXG4ubWVkaWEtZWxlbWVudC1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lciAuZmlsZS1pbWFnZSBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4udGl0bGUtYmFubmVyIC5maWVsZC10eXBlLWltYWdlIGltZyB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4jcGFnZS1hbmNob3JzIGxpOmxhc3QtY2hpbGQgc3ZnIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5jdGFzIGRpdjpudGgtY2hpbGQoMykgLmRpdmlkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5yZWdpb24tdW5kZXItY29udGVudC1sZXZlbC0yLFxuLnJlZ2lvbi11bmRlci1jb250ZW50LWxldmVsLTEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbnRlbnQgLmJ0biwgLmNvbnRlbnQgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC5jb250ZW50ICNlZGl0LXN1Ym1pdCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uY29udGVudCAuY29weV9saW5rIC5idG4sIC5jb250ZW50IC5jb3B5X2xpbmsgLnNlYXJjaC1mb3JtICNlZGl0LXN1Ym1pdCwgLnNlYXJjaC1mb3JtIC5jb250ZW50IC5jb3B5X2xpbmsgI2VkaXQtc3VibWl0IHtcbiAgaGVpZ2h0OiA1MHB4OyB9XG5cbnA6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5lbWJlZGRlZENvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5lbWJlZGRlZENvbnRlbnQgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuLm1lZGlhLWVsZW1lbnQuZmlsZS13eXNpd3lnLWZ1bGwtd2lkdGgge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxNHB4KSB7XG4gICNzaGFyZWJhciAuZGlyZWN0X2xpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkge1xuICAjYmxvY2stYnNjbXMtY29tbW9uLWJsb2Nrcy1ic2Ntcy1jYi1tYWlubWVudSAuc3RpY2t5LWJ0bnMgLnNoYXJlLWJ0biB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICNibG9jay1ic2Ntcy1jb21tb24tYmxvY2tzLWJzY21zLWNiLW1haW5tZW51IC5zdGlja3ktYnRucyAuc2hhcmUtYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICNibG9jay1ic2Ntcy1jb21tb24tYmxvY2tzLWJzY21zLWNiLW1haW5tZW51IC5zdGlja3ktYnRucyAuc2hhcmUtYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAjYmxvY2stYnNjbXMtY29tbW9uLWJsb2Nrcy1ic2Ntcy1jYi1tYWlubWVudSAuc3RpY2t5LWJ0bnMgLnNoYXJlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgI2Jsb2NrLWJzY21zLWNvbW1vbi1ibG9ja3MtYnNjbXMtY2ItbWFpbm1lbnUgLnN0aWNreS1idG5zIC5zaGFyZS1idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDE0cHgpIHtcbiAgI2Jsb2NrLWJzY21zLWNvbW1vbi1ibG9ja3MtYnNjbXMtY2ItbWFpbm1lbnUgLnN0aWNreS1idG5zLmZpeGVkIC5zaGFyZS1idG4ge1xuICAgIG1pbi13aWR0aDogMTkwcHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAjYmxvY2stYnNjbXMtY29tbW9uLWJsb2Nrcy1ic2Ntcy1jYi1tYWlubWVudSAuc3RpY2t5LWJ0bnMuZml4ZWQgLnNoYXJlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICAjYmxvY2stYnNjbXMtY29tbW9uLWJsb2Nrcy1ic2Ntcy1jYi1tYWlubWVudSAuc3RpY2t5LWJ0bnMuZml4ZWQgLnNoYXJlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgI2Jsb2NrLWJzY21zLWNvbW1vbi1ibG9ja3MtYnNjbXMtY2ItbWFpbm1lbnUgLnN0aWNreS1idG5zLmZpeGVkIC5zaGFyZS1idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICNibG9jay1ic2Ntcy1jb21tb24tYmxvY2tzLWJzY21zLWNiLW1haW5tZW51IC5zdGlja3ktYnRucy5maXhlZCAuc2hhcmUtYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5maWVsZC1uYW1lLWJvZHkge1xuICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gIC5maWVsZC1uYW1lLWJvZHkgdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IGluaXRpYWw7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgdGV4dC1pbmRlbnQ6IDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7IH1cbiAgLmZpZWxkLW5hbWUtYm9keSBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4jYmxvY2stYnNjbXMtY29udGVudC10eXBlLWFydGljbGUtYnNjbXMtY29udGVudC10eXBlLWFydGljbGUge1xuICBwb3NpdGlvbjogdW5zZXQ7IH1cblxudWwge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIHVsLnRhYnMucHJpbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDBweCAwcHggMTAwcHg7IH1cbiAgdWwudGFicy5wcmltYXJ5IGxpOm5vdCguYWN0aXZlKSBhIHtcbiAgICBjb2xvcjogIzIzMUYyMDsgfVxuXG4ubmF2YmFyLWFkbWluaXN0cmF0aW9uIC5tc2ZfZ2xvYmFsLm9wZW4ge1xuICB0b3A6IDM4cHg7IH1cblxuLm5hdmJhci1hZG1pbmlzdHJhdGlvbi5uYXZiYXItdHJheS1vcGVuIC5tc2ZfZ2xvYmFsLm9wZW4ge1xuICB0b3A6IDc4cHg7IH1cblxuLm5vZGUtdHlwZS1wYWdlLnRlbXBsYXRlLW5vLWltYWdlIC5zaXRlICNibG9jay1zeXN0ZW0tbWFpbixcbi5ub2RlLXR5cGUtYXJ0aWNsZS50ZW1wbGF0ZS1uby1pbWFnZSAuc2l0ZSAjYmxvY2stc3lzdGVtLW1haW4ge1xuICBwYWRkaW5nOiA1MHB4IDAgMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgIC5ub2RlLXR5cGUtcGFnZS50ZW1wbGF0ZS1uby1pbWFnZSAuc2l0ZSAjYmxvY2stc3lzdGVtLW1haW4sXG4gICAgLm5vZGUtdHlwZS1hcnRpY2xlLnRlbXBsYXRlLW5vLWltYWdlIC5zaXRlICNibG9jay1zeXN0ZW0tbWFpbiB7XG4gICAgICBwYWRkaW5nOiA1MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm5vZGUtdHlwZS1wYWdlLnRlbXBsYXRlLW5vLWltYWdlIC5zaXRlICNibG9jay1zeXN0ZW0tbWFpbixcbiAgICAubm9kZS10eXBlLWFydGljbGUudGVtcGxhdGUtbm8taW1hZ2UgLnNpdGUgI2Jsb2NrLXN5c3RlbS1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDkwcHggMCAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgLm5vZGUtdHlwZS1wYWdlLnRlbXBsYXRlLW5vLWltYWdlIC5zaXRlICNibG9jay1zeXN0ZW0tbWFpbixcbiAgICAubm9kZS10eXBlLWFydGljbGUudGVtcGxhdGUtbm8taW1hZ2UgLnNpdGUgI2Jsb2NrLXN5c3RlbS1tYWluIHtcbiAgICAgIHBhZGRpbmc6IDkwcHggMCAwOyB9IH1cblxuLnRlbXBsYXRlLWluZGV4LXBhZ2UudGVtcGxhdGUtbm8taW1hZ2UudGVtcGxhdGUtbGlzdGluZyAuc2l0ZSAjYmxvY2stc3lzdGVtLW1haW4gLmNvbnRlbnQgLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi50ZW1wbGF0ZS1uby1pbWFnZSAuc2l0ZSAjYmxvY2stc3lzdGVtLW1haW4gLmNvbnRlbnQgLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5pbWFnZS1jZW50ZXIge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uaW1hZ2UtZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5ja2VfZWRpdGFibGUgdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIHRleHQtaW5kZW50OiAtMTVweDtcbiAgbGlzdC1zdHlsZTogaW5zaWRlOyB9XG5cbi5ja2VfZWRpdGFibGUgLmltYWdlLWNlbnRlciB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5ja2VfZWRpdGFibGUgLmltYWdlLWZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uc3RhdHMgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtaW5kZW50OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ubWFyZ2luLXRvcC0zMCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuLnNlYXJjaC1mb3JtIHtcbiAgbWFyZ2luLXRvcDogNWVtOyB9XG4gIC5zZWFyY2gtZm9ybSBpbnB1dCNlZGl0LWtleXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkOyB9XG5cbi5zZWFyY2gtcmVzdWx0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5zZWFyY2gtcmVzdWx0IHN2ZyB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgZmlsbDogd2hpdGU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNHB4OyB9XG4gIC5zZWFyY2gtcmVzdWx0IGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5zZWFyY2gtcmVzdWx0IGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgICAgLnNlYXJjaC1yZXN1bHQgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuc2VhcmNoLXJlc3VsdCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnNlYXJjaC1yZXN1bHQgaDIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgIC5zZWFyY2gtcmVzdWx0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuc2VhcmNoLXJlc3VsdCBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuLmNyaXNpcy1yZXNwb25zZXMgLmNvdW50cmllcy1saXN0IGEge1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnBhZ2VyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLnJlZ2lvbi1iaWdwaG90byB7XG4gIHBhZGRpbmc6IDUwcHggMCAwO1xuICBoZWlnaHQ6IGNhbGMoNjV2aCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAucmVnaW9uLWJpZ3Bob3RvIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MHZoKTsgfSB9XG4gIC5yZWdpb24tYmlncGhvdG8gLmhlcm8ge1xuICAgIGhlaWdodDogY2FsYyg2NXZoKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gICAgICAucmVnaW9uLWJpZ3Bob3RvIC5oZXJvIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDkwdmgpOyB9IH1cblxuLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnJlZ2lvbi1iaWdwaG90byB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uY291bnRyaWVzLWxhbmRpbmctcGFnZSAuaGVybyB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5jb3VudHJpZXMtbGFuZGluZy1wYWdlIC5oZXJvIC5jb250YWluZXIge1xuICAgIHRvcDogLTEwdmg7IH1cblxuLnNlY3Rpb24taGVhZGluZy5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuI2Jsb2NrLWJzY21zLWNvbnRlbnQtdHlwZS1pbmRleC1ic2Ntcy1jdC1pbmRleC1hbGwtcm9sZXMgLnZvaWNlcyB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbiNibG9jay1ic2Ntcy1jb250ZW50LXR5cGUtaW5kZXgtYnNjbXMtY3QtaW5kZXgtYWxsLXJvbGVzIC5icmVhZGNydW1iIGxpIGEge1xuICBjb2xvcjogIzIzMUYyMCAhaW1wb3J0YW50OyB9XG5cbi5hbmNob3Jyb2xlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbiNibG9jay1ic2Ntcy1jb250ZW50LXR5cGUtaW5kZXgtYnNjbXMtY3QtaW5kZXgtYWxsLXJvbGVzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB6LWluZGV4OiA5OyB9XG5cblt2LWNsb2FrXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRlbXBsYXRlLXJlcXMgLnJlZ2lvbi1jb250ZW50IHtcbiAgcGFkZGluZzogOTBweCAwIDA7IH1cblxuLmZpZWxkLW5hbWUtZmllbGQtbm1ldGFkYXRhLWNhcHRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZWRpYS1pbWFnZS13cmFwcGVyIGJyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWVkaWEtaW1hZ2Utd3JhcHBlciAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1jb3B5cmlnaHQge1xuICBmb250LXNpemU6IDEycHg7IH1cblxuI3BhZ2UtbWVudSB7XG4gIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgI3BhZ2UtbWVudSB7XG4gICAgICBtYXJnaW4tdG9wOiA5MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgI3BhZ2UtbWVudSB7XG4gICAgICBtYXJnaW4tdG9wOiA5MHB4OyB9IH1cblxuLnNjcm9sbGVkIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgaGVpZ2h0OiA0NXZoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiAtbW96LXNjcm9sbGJhcnMtbm9uZTsgfVxuXG4uc2Nyb2xsZWQ6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY291bnRyaWVzLWxhbmRpbmctcGFnZSAjc2VhcmNoY291bnRyaWVzIC5oaWRkZW4uYWN0aXZlLCAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAjc2VhcmNoY291bnRyaWVzIC5zZWFyY2ggLmFjdGl2ZS5ub3QtaGVyZSwgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgLnNlYXJjaCAjc2VhcmNoY291bnRyaWVzIC5hY3RpdmUubm90LWhlcmUge1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiAtbW96LXNjcm9sbGJhcnMtbm9uZTsgfVxuXG4uY291bnRyaWVzLWxhbmRpbmctcGFnZSAjc2VhcmNoY291bnRyaWVzIC5oaWRkZW4uYWN0aXZlOjotd2Via2l0LXNjcm9sbGJhciwgLmNvdW50cmllcy1sYW5kaW5nLXBhZ2UgI3NlYXJjaGNvdW50cmllcyAuc2VhcmNoIC5hY3RpdmUubm90LWhlcmU6Oi13ZWJraXQtc2Nyb2xsYmFyLCAuY291bnRyaWVzLWxhbmRpbmctcGFnZSAuc2VhcmNoICNzZWFyY2hjb3VudHJpZXMgLmFjdGl2ZS5ub3QtaGVyZTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb3VudHJpZXMtbGFuZGluZy1wYWdlICNzZWFyY2hjb3VudHJpZXMgYSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiNmYWN0cy1ub2RlIHVsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4jZmFjdHMtbm9kZSAucGFnaW5nIGEge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuI3F1ZXJ5IHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDM0LCAzNCwgMzQsIDAuMjUpO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDUwJTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogd2hpdGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gICAgI3F1ZXJ5IHtcbiAgICAgIHdpZHRoOiAzMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAjcXVlcnkge1xuICAgICAgd2lkdGg6IDMwJTsgfSB9XG5cbi5yZXN1bHRzZm91bmQge1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnBhZ2UtdnVlc2VhcmNoIC5oZXJvIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xpc3RpbmcuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG5cbi5wYWdlLXZ1ZXNlYXJjaCAucGFnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiNtYWluLWhlYWRlciB1bC5wcmltYXJ5X25hdiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyoqIEZpeCBtZW51IGdldHRpbmcgaW50byBibG9ncG9zdCBpbWFnZSAqKi9cbi5pcy1ibG9ncG9zdCAuc3RvcnktcGVyc29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmlzLWJsb2dwb3N0IC5tZXRhLW1haW4tYmxvZyB7XG4gICAgbGVmdDogOTBweDsgfVxuICAuaXMtYmxvZ3Bvc3QgLnN0b3J5LXBlcnNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmlzLWJsb2dwb3N0IC5tZXRhLW1haW4tYmxvZyB7XG4gICAgbGVmdDogOTBweDsgfVxuICAuaXMtYmxvZ3Bvc3QgLnN0b3J5LXBlcnNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4vKiogSW1hZ2UgY29weXJpZ2h0ICoqL1xuLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtbWVkaWF0eXBlLFxuICAubWVkaWEtZWxlbWVudC1jb250YWluZXIubWVkaWEtZGVmYXVsdCAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1jYXB0aW9uLFxuICAubWVkaWEtZWxlbWVudC1jb250YWluZXIubWVkaWEtZGVmYXVsdCAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1hcnRpc3QsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLWFydGlzdHNob3J0aWQsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLW1heHdpZHRoLFxuICAubWVkaWEtZWxlbWVudC1jb250YWluZXIubWVkaWEtZGVmYXVsdCAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1tYXhoZWlnaHQsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLW9zdCxcbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtd2lkdGgsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLWhlaWdodCxcbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtdGl0bGUsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLXN5c3RlbWlkZW50aWZpZXIsXG4gIC5tZWRpYS1lbGVtZW50LWNvbnRhaW5lci5tZWRpYS1kZWZhdWx0IC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLW1lZGlhZGF0ZSxcbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtY291bnRyeSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWVkaWEtZWxlbWVudC1jb250YWluZXIubWVkaWEtZGVmYXVsdCAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1jb3B5cmlnaHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IDM1cHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtY29weXJpZ2h0IC5maWVsZC1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lZGlhLWVsZW1lbnQtY29udGFpbmVyLm1lZGlhLWRlZmF1bHQgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTMwcHg7IH1cblxuLyoqKiBGaXggaGVybyBsaW5lLWhlaWdodCAqKi9cbi5oZXJvIGgyIHtcbiAgbGluZS1oZWlnaHQ6IDIuOHJlbTsgfVxuXG4vKiogTm9kZSB1bnB1Ymxpc2hlZCAqKi9cbi5ub2RlLXVucHVibGlzaGVk76O/IC5yaWNoLXRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGY0OyB9XG4gIC5ub2RlLXVucHVibGlzaGVk76O/IC5yaWNoLXRleHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGY0OyB9XG5cbi8qKiBIb21lIHN0YXRzICoqL1xuI2N0YWhvbWUgLmlubGluZS1zdGF0cy5zdGF0cy1iaWcgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICNjdGFob21lIC5pbmxpbmUtc3RhdHMuc3RhdHMtYmlnIGxpIHtcbiAgICAgIHdpZHRoOiAzMy4zMyU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcbiAgICAjY3RhaG9tZSAuaW5saW5lLXN0YXRzLnN0YXRzLWJpZyBsaSB7XG4gICAgICB3aWR0aDogMzMuMzMlOyB9IH1cblxuLyoqIFNsaWRpbmcgcG9wdXAgZm9yIGV1IGNvb2tpZSAqL1xuI3NsaWRpbmctcG9wdXAgLnBvcHVwLWNvbnRlbnQgI3BvcHVwLXRleHQgcCB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtICFpbXBvcnRhbnQ7IH1cblxuI3NsaWRpbmctcG9wdXAgLnBvcHVwLWNvbnRlbnQgYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDsgfVxuXG4jYmxvY2stbG9jYWxlLWxhbmd1YWdlIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmhpZGRlbi1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXgge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggLnZpZXdzLXZpZXctZ3JpZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggLnZpZXdzLWZpZWxkLXRpdGxlIC5maWVsZC1jb250ZW50IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICNlZTAwMDAsIC0xMHB4IDAgMCAjZWUwMDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggLnZpZXdzLWZpZWxkLXRpdGxlIC5maWVsZC1jb250ZW50IHN2ZyB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgZmlsbDogd2hpdGU7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggLnZpZXdzLWZpZWxkLXRpdGxlIC5maWVsZC1jb250ZW50IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG4gICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzMxYTE5YSwgLTEwcHggMCAwICMzMWExOWE7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggLnZpZXdzLWZpZWxkLmJvZHkgLmZpZWxkLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDIwZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgcGFkZGluZy1yaWdodDogMWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAucGFnZS1ub2RlLTI1MjYgLnZpZXctbm9kZS1jb250ZW50LWV2ZW50cy1pbmRleCB0ciwgLnBhZ2Utbm9kZS0yNTI2IC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXggdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ucGFnZS1ub2RlLTI1MjEgLmNvbnRlbnQsIC5wYWdlLW5vZGUtMjU2NiAuY29udGVudCwgLnBhZ2Utbm9kZS01MDA2IC5jb250ZW50LCAucGFnZS1ub2RlLTUwMTEgLmNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5wYWdlLW5vZGUtMjUyMSAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSwgLnBhZ2Utbm9kZS0yNTY2IC5jb250ZW50IC5maWVsZC1uYW1lLWZpZWxkLWltYWdlIC5maWVsZC1pdGVtLCAucGFnZS1ub2RlLTUwMDYgLmNvbnRlbnQgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2UgLmZpZWxkLWl0ZW0sIC5wYWdlLW5vZGUtNTAxMSAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3MDBweCkge1xuICAgICAgLnBhZ2Utbm9kZS0yNTIxIC5jb250ZW50IC5maWVsZC1uYW1lLWZpZWxkLWltYWdlIC5maWVsZC1pdGVtLCAucGFnZS1ub2RlLTI1NjYgLmNvbnRlbnQgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2UgLmZpZWxkLWl0ZW0sIC5wYWdlLW5vZGUtNTAwNiAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSwgLnBhZ2Utbm9kZS01MDExIC5jb250ZW50IC5maWVsZC1uYW1lLWZpZWxkLWltYWdlIC5maWVsZC1pdGVtIHtcbiAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIC5wYWdlLW5vZGUtMjUyMSAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSwgLnBhZ2Utbm9kZS0yNTY2IC5jb250ZW50IC5maWVsZC1uYW1lLWZpZWxkLWltYWdlIC5maWVsZC1pdGVtLCAucGFnZS1ub2RlLTUwMDYgLmNvbnRlbnQgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2UgLmZpZWxkLWl0ZW0sIC5wYWdlLW5vZGUtNTAxMSAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDAwMHB4KSB7XG4gICAgICAucGFnZS1ub2RlLTI1MjEgLmNvbnRlbnQgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2UgLmZpZWxkLWl0ZW0sIC5wYWdlLW5vZGUtMjU2NiAuY29udGVudCAuZmllbGQtbmFtZS1maWVsZC1pbWFnZSAuZmllbGQtaXRlbSwgLnBhZ2Utbm9kZS01MDA2IC5jb250ZW50IC5maWVsZC1uYW1lLWZpZWxkLWltYWdlIC5maWVsZC1pdGVtLCAucGFnZS1ub2RlLTUwMTEgLmNvbnRlbnQgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2UgLmZpZWxkLWl0ZW0ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMTAwcHg7IH0gfVxuXG4ucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIHtcbiAgcGFkZGluZzogMCAyMHB4IDAgMjBweDsgfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkIHtcbiAgICB3aWR0aDogNDcuNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzQsIDIzNiwgMjMwLCAwLjUpO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH0gfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctZXZlbiwgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW4sIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1ldmVuLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctZXZlbiB7XG4gICAgd2lkdGg6IDQ3LjUlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDUlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM0LCAyMzYsIDIzMCwgMC41KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW4sIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1ldmVuLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctZXZlbiwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfSB9XG4gIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXctc3Rvcmllcy1sZWZ0LXdyYXAsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXctc3Rvcmllcy1sZWZ0LXdyYXAsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXctc3Rvcmllcy1sZWZ0LXdyYXAsIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXctc3Rvcmllcy1sZWZ0LXdyYXAge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogNCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ3OXB4KSB7XG4gICAgICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3LXN0b3JpZXMtbGVmdC13cmFwLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3LXN0b3JpZXMtbGVmdC13cmFwLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3LXN0b3JpZXMtbGVmdC13cmFwLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3LXN0b3JpZXMtbGVmdC13cmFwIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG1heC13aWR0aDogNTIlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlldy1zdG9yaWVzLXJpZ2h0LXdyYXAsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXctc3Rvcmllcy1yaWdodC13cmFwLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3LXN0b3JpZXMtcmlnaHQtd3JhcCwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlldy1zdG9yaWVzLXJpZ2h0LXdyYXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLXRpdGxlLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC10aXRsZSwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtdGl0bGUgLmZpZWxkLWNvbnRlbnQgYSB7XG4gICAgICBjb2xvcjogIzIzMUYyMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtY3JlYXRlZCAuZmllbGQtY29udGVudCwgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtY3JlYXRlZCAuZmllbGQtY29udGVudCwgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtY3JlYXRlZCAuZmllbGQtY29udGVudCwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtY3JlYXRlZCAuZmllbGQtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50LFxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQsXG4gIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudCwgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCxcbiAgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50LCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50LFxuICAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDlweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIG1hcmdpbjogMTVweCAwIDA7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyOiAxcHggZG90dGVkICMzMWExOWE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjhweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50LCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudCwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDlweDtcbiAgICBjb2xvcjogIzMxYTE5YTsgfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50LCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50LCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50LCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDlweDtcbiAgICBjb2xvcjogIzMxYTE5YTsgfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50IHN2ZywgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBzdmcsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQgc3ZnLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50IHN2ZyB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAzcHg7XG4gICAgdG9wOiA3cHg7XG4gICAgZmlsbDogIzMxYTE5YTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBhLFxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBhLFxuICAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBhLFxuICAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQgYSwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBhLFxuICAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQgYSB7XG4gICAgY29sb3I6ICMzMWExOWE7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudDpob3ZlcixcbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50OmhvdmVyLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50OmhvdmVyLFxuICAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQ6aG92ZXIsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIsXG4gIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudDpob3ZlcixcbiAgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzFhMTlhO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzFhMTlhOyB9XG4gICAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudDpob3ZlciBhLFxuICAgIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBhLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50OmhvdmVyIGEsXG4gICAgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50OmhvdmVyIGEsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIgYSxcbiAgICAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1maWVsZC1maWVsZC1pc3N1ZXMgLmZpZWxkLWNvbnRlbnQ6aG92ZXIgYSwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudDpob3ZlciBhLFxuICAgIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBhIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIgc3ZnLFxuICAgIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBzdmcsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIgc3ZnLFxuICAgIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBzdmcsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIgc3ZnLFxuICAgIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBzdmcsIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQ6aG92ZXIgc3ZnLFxuICAgIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudDpob3ZlciBzdmcge1xuICAgICAgZmlsbDogd2hpdGU7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSBzdmcsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2Ugc3ZnLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIHN2ZywgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSBzdmcge1xuICAgIGZpbGw6ICNmZmY7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7IH1cbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSAuc3ZnLXdyYXAsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2UgLnN2Zy13cmFwLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIC5zdmctd3JhcCwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSAuc3ZnLXdyYXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJvdHRvbTogMDsgfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIC5zdmctd3JhcCAudHlwZSwgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSAuc3ZnLXdyYXAgLnR5cGUsIC5wYWdlLW5vZGUtNTAwNiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2UgLnN2Zy13cmFwIC50eXBlLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIC5zdmctd3JhcCAudHlwZSB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtNTBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuICAgIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2UgaW1nLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIGltZywgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSBpbWcsIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSBpbWcsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnN0b3JpZXMtaW1hZ2UgaW1nLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC5zdG9yaWVzLWltYWdlIGltZywgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAuc3Rvcmllcy1pbWFnZSBpbWcge1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LW9kZCwgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW4sIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1vZGQsIC5wYWdlLW5vZGUtMjU2NiAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1ldmVuLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctZXZlbiwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LW9kZCwgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW4ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAucGFnZS1ub2RlLTI1MjEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkOmhvdmVyIC5zdmctd3JhcCAudHlwZSxcbiAgLnBhZ2Utbm9kZS0yNTIxIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW46aG92ZXIgLnN2Zy13cmFwIC50eXBlLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkOmhvdmVyIC5zdmctd3JhcCAudHlwZSxcbiAgLnBhZ2Utbm9kZS0yNTY2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW46aG92ZXIgLnN2Zy13cmFwIC50eXBlLCAucGFnZS1ub2RlLTUwMDYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkOmhvdmVyIC5zdmctd3JhcCAudHlwZSxcbiAgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW46aG92ZXIgLnN2Zy13cmFwIC50eXBlLCAucGFnZS1ub2RlLTUwMTEgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkOmhvdmVyIC5zdmctd3JhcCAudHlwZSxcbiAgLnBhZ2Utbm9kZS01MDExIC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW46aG92ZXIgLnN2Zy13cmFwIC50eXBlIHtcbiAgICBsZWZ0OiA1MHB4OyB9XG4gIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1vZGQ6aG92ZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGEsXG4gIC5wYWdlLW5vZGUtMjUyMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1ldmVuOmhvdmVyIC52aWV3cy1maWVsZC10aXRsZSBhLCAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctb2RkOmhvdmVyIC52aWV3cy1maWVsZC10aXRsZSBhLFxuICAucGFnZS1ub2RlLTI1NjYgLnZpZXctaW5kZXgtcmVsYXRlZC1zdG9yaWVzIC52aWV3cy1yb3ctZXZlbjpob3ZlciAudmlld3MtZmllbGQtdGl0bGUgYSwgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LW9kZDpob3ZlciAudmlld3MtZmllbGQtdGl0bGUgYSxcbiAgLnBhZ2Utbm9kZS01MDA2IC52aWV3LWluZGV4LXJlbGF0ZWQtc3RvcmllcyAudmlld3Mtcm93LWV2ZW46aG92ZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGEsIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1vZGQ6aG92ZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGEsXG4gIC5wYWdlLW5vZGUtNTAxMSAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMgLnZpZXdzLXJvdy1ldmVuOmhvdmVyIC52aWV3cy1maWVsZC10aXRsZSBhIHtcbiAgICBjb2xvcjogI2VlMDAwMDsgfVxuXG4ubGFuZ3VhZ2UtdG9nZ2xlIC5sYW5ndWFnZS1zd2l0Y2hlci1sb2NhbGUtdXJsLFxuLm0tbGFuZ3VhZ2UtdG9nZ2xlIC5sYW5ndWFnZS1zd2l0Y2hlci1sb2NhbGUtdXJsIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5sYW5ndWFnZS10b2dnbGUgbGksXG4ubS1sYW5ndWFnZS10b2dnbGUgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmxhbmd1YWdlLXRvZ2dsZSBsaTpudGgtb2YtdHlwZSgxKTphZnRlcixcbiAgLm0tbGFuZ3VhZ2UtdG9nZ2xlIGxpOm50aC1vZi10eXBlKDEpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnIFxcMDAyZiAnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDE1cHggMCAyMHB4O1xuICAgIGJvcmRlcjogMDsgfVxuICAubGFuZ3VhZ2UtdG9nZ2xlIGxpIGEsXG4gIC5tLWxhbmd1YWdlLXRvZ2dsZSBsaSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubGFuZ3VhZ2UtdG9nZ2xlIGxpIGE6aG92ZXIsIC5sYW5ndWFnZS10b2dnbGUgbGkgYTpmb2N1cyxcbiAgICAubS1sYW5ndWFnZS10b2dnbGUgbGkgYTpob3ZlcixcbiAgICAubS1sYW5ndWFnZS10b2dnbGUgbGkgYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAubGFuZ3VhZ2UtdG9nZ2xlIGxpLmFjdGl2ZSBhLFxuICAubS1sYW5ndWFnZS10b2dnbGUgbGkuYWN0aXZlIGEge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLm0tbGFuZ3VhZ2UtdG9nZ2xlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMzUsIDMxLCAzMiwgMC4yKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5sYW5ndWFnZS10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDIzcHgpIHtcbiAgLmxhbmd1YWdlLXRvZ2dsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgLmxhbmd1YWdlLXRvZ2dsZSBsaTpudGgtb2YtdHlwZSgxKTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAzMjtcbiAgICAgIHBhZGRpbmc6IDNweDsgfVxuICAgIC5sYW5ndWFnZS10b2dnbGUgYSB7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICBsaW5lLWhlaWdodDogOTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHotaW5kZXg6IDMyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIC5sYW5ndWFnZS10b2dnbGUgYTpob3ZlciwgLmxhbmd1YWdlLXRvZ2dsZSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMwMDA7IH0gfVxuXG4uZml4ZWQtc2Nyb2xsIHtcbiAgbWFyZ2luLXRvcDogLTIwcHg7IH1cblxuLnNvY2lhbCAubGFiZWwge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmZiIHtcbiAgY29sb3I6ICMzYjU5OTg7IH1cblxuLnR3IHtcbiAgY29sb3I6ICM1NWFjZWU7IH1cblxuLmxpIHtcbiAgY29sb3I6ICMwMDdiYjU7IH1cblxuLmdvIHtcbiAgY29sb3I6ICNkZDRiMzk7IH1cblxuLmVtIHtcbiAgY29sb3I6ICMzMWExOWE7IH1cblxuLnR1IHtcbiAgY29sb3I6ICMzMjUwNmQ7IH1cblxuLnNuIHtcbiAgY29sb3I6ICNmZjY2MDA7IH1cblxuLmluc3Qge1xuICBjb2xvcjogI2U5NTk1MDsgfVxuXG4ubm9kZS10eXBlLXdlYmZvcm0gLndlYmZvcm0tY2xpZW50LWZvcm0ge1xuICBtYXJnaW4tdG9wOiA2MHB4OyB9XG5cbi5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLXByb2dyZXNzYmFyLW91dGVyIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIHtcbiAgICAgIHBhZGRpbmc6IDAgOTBweDsgfSB9XG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgLm1lZGlhLWVsZW1lbnQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgcCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCBoMiwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCBoNCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCBoMywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCB1bCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXgtd2lkdGg6IDk2JTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIHAsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgaDIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgaDQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgaDMsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgdWwge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAgICAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCBwLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIGgyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIGg0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIGgzLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIHVsIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjk1cHg7IH0gfVxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIGlmcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LW1hcmt1cCBpZnJhbWUge1xuICAgICAgICBtaW4taGVpZ2h0OiA0NTBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAgIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAgaWZyYW1lIHtcbiAgICAgICAgbWluLXdpZHRoOiA1NjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtbWFya3VwIGlmcmFtZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDYyNXB4OyB9IH1cblxuLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tcHJvZ3Jlc3NiYXIge1xuICBtYXJnaW4tdG9wOiA5N3B4O1xuICBtYXJnaW4tYm90dG9tOiAxMjBweDsgfVxuXG4ubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5mb3JtLWFjdGlvbnMsXG4ubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5mb3JtLWFjdGlvbnMsXG4gICAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWNoZWNrYm94ZXMsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1maWVsZHNldCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWRhdGUsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10aW1lLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNEYzRjI7IH0gfVxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zIC5mb3JtLXRleHQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1yYWRpb3MgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zIC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAuZm9ybS10ZXh0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAud2ViZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1lbWFpbCAuZm9ybS10ZXh0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC5mb3JtLXRleHQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLmZvcm0tYWN0aW9ucyAuZm9ybS10ZXh0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZm9ybS1hY3Rpb25zIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLmZvcm0tYWN0aW9ucyAud2ViZm9ybS1zdWJtaXQsXG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1jaGVja2JveGVzIC5mb3JtLXRleHQsXG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1jaGVja2JveGVzIC5mb3JtLXNlbGVjdCxcbiAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWNoZWNrYm94ZXMgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZmllbGRzZXQgLmZvcm0tdGV4dCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWRhdGUgLmZvcm0tdGV4dCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWRhdGUgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAud2ViZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10aW1lIC5mb3JtLXRleHQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10aW1lIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEgLmZvcm0tdGV4dCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRhcmVhIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRhcmVhIC53ZWJmb3JtLXN1Ym1pdCB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2UyZTJlMjtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXJhZGlvcyAuZm9ybS1jaGVja2JveCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAuZm9ybS1jaGVja2JveCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWVtYWlsIC5mb3JtLWNoZWNrYm94LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC5mb3JtLWNoZWNrYm94LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZm9ybS1hY3Rpb25zIC5mb3JtLWNoZWNrYm94LFxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAuZm9ybS1jaGVja2JveCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC5mb3JtLWNoZWNrYm94LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAuZm9ybS1jaGVja2JveCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0tY2hlY2tib3gsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSAuZm9ybS1jaGVja2JveCB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHdpZHRoOiBpbmhlcml0OyB9XG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1yYWRpb3MgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWVtYWlsIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXNlbGVjdCAuZm9ybS1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5mb3JtLWFjdGlvbnMgLmZvcm0tc2VsZWN0LFxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAuZm9ybS1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1maWVsZHNldCAuZm9ybS1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1kYXRlIC5mb3JtLXNlbGVjdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0tc2VsZWN0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEgLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXJhZGlvcyAuZm9ybS1yYWRpbywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAuZm9ybS1yYWRpbywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWVtYWlsIC5mb3JtLXJhZGlvLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC5mb3JtLXJhZGlvLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZm9ybS1hY3Rpb25zIC5mb3JtLXJhZGlvLFxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAuZm9ybS1yYWRpbywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC5mb3JtLXJhZGlvLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAuZm9ybS1yYWRpbywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0tcmFkaW8sIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSAuZm9ybS1yYWRpbyB7XG4gICAgd2lkdGg6IGluaGVyaXQ7IH1cbiAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXJhZGlvcyAud2ViZm9ybS1jYWxlbmRhciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAud2ViZm9ybS1jYWxlbmRhciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWVtYWlsIC53ZWJmb3JtLWNhbGVuZGFyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC53ZWJmb3JtLWNhbGVuZGFyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZm9ybS1hY3Rpb25zIC53ZWJmb3JtLWNhbGVuZGFyLFxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAud2ViZm9ybS1jYWxlbmRhciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC53ZWJmb3JtLWNhbGVuZGFyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAud2ViZm9ybS1jYWxlbmRhciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLndlYmZvcm0tY2FsZW5kYXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSAud2ViZm9ybS1jYWxlbmRhciB7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXJhZGlvcyAud2ViZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1yYWRpb3MgLmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkIC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAuZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1lbWFpbCAud2ViZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1lbWFpbCAuZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC5mb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLmZvcm0tYWN0aW9ucyAud2ViZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5mb3JtLWFjdGlvbnMgLmZvcm0tc3VibWl0LFxuICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAud2ViZm9ybS1zdWJtaXQsXG4gIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1jaGVja2JveGVzIC5mb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0IC5mb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWRhdGUgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAuZm9ybS1zdWJtaXQsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10aW1lIC53ZWJmb3JtLXN1Ym1pdCwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEgLndlYmZvcm0tc3VibWl0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEgLmZvcm0tc3VibWl0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjOTI0MWU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwczsgfVxuICAgIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1yYWRpb3MgLndlYmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zIC5mb3JtLXN1Ym1pdDpob3ZlciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRleHRmaWVsZCAud2ViZm9ybS1zdWJtaXQ6aG92ZXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0ZmllbGQgLmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwgLndlYmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZW1haWwgLmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtc2VsZWN0IC53ZWJmb3JtLXN1Ym1pdDpob3ZlciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXNlbGVjdCAuZm9ybS1zdWJtaXQ6aG92ZXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5mb3JtLWFjdGlvbnMgLndlYmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZm9ybS1hY3Rpb25zIC5mb3JtLXN1Ym1pdDpob3ZlcixcbiAgICAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcyAud2ViZm9ybS1zdWJtaXQ6aG92ZXIsXG4gICAgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LWNoZWNrYm94ZXMgLmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZmllbGRzZXQgLndlYmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZmllbGRzZXQgLmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSAud2ViZm9ybS1zdWJtaXQ6aG92ZXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC1kYXRlIC5mb3JtLXN1Ym1pdDpob3ZlciwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLndlYmZvcm0tY29tcG9uZW50LXRpbWUgLndlYmZvcm0tc3VibWl0OmhvdmVyLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAud2ViZm9ybS1jb21wb25lbnQtdGltZSAuZm9ybS1zdWJtaXQ6aG92ZXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSAud2ViZm9ybS1zdWJtaXQ6aG92ZXIsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSAuZm9ybS1zdWJtaXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTsgfVxuXG4ubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZmllbGRzZXQtd3JhcHBlciAud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZmllbGRzZXQtd3JhcHBlciAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkLCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZmllbGRzZXQtd3JhcHBlciAud2ViZm9ybS1jb21wb25lbnQtZW1haWwsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5maWVsZHNldC13cmFwcGVyIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5maWVsZHNldC13cmFwcGVyIC5mb3JtLWFjdGlvbnMsXG4ubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZmllbGRzZXQtd3JhcHBlciAud2ViZm9ybS1jb21wb25lbnQtY2hlY2tib3hlcywgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLmZpZWxkc2V0LXdyYXBwZXIgLndlYmZvcm0tY29tcG9uZW50LWZpZWxkc2V0LCAubm9kZS10eXBlLXdlYmZvcm0gLm5vZGUtd2ViZm9ybSAuZmllbGRzZXQtd3JhcHBlciAud2ViZm9ybS1jb21wb25lbnQtZGF0ZSwgLm5vZGUtdHlwZS13ZWJmb3JtIC5ub2RlLXdlYmZvcm0gLmZpZWxkc2V0LXdyYXBwZXIgLndlYmZvcm0tY29tcG9uZW50LXRpbWUsIC5ub2RlLXR5cGUtd2ViZm9ybSAubm9kZS13ZWJmb3JtIC5maWVsZHNldC13cmFwcGVyIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ubm9kZS10eXBlLXdlYmZvcm0gLmZvcm0tdGV4dGFyZWEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWU5ZTllOyB9XG5cbi5ub2RlLXR5cGUtd2ViZm9ybSAjbm9kZS00NTc1IC5jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDcwcHg7IH1cblxuI2NybVdlYlRvRW50aXR5Rm9ybSB7XG4gIGNsZWFyOiBib3RoO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgI2NybVdlYlRvRW50aXR5Rm9ybSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cbiAgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlY2U2ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwNSUgIWltcG9ydGFudDsgfVxuICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB7XG4gICAgICBtYXgtd2lkdGg6IDMwcmVtICFpbXBvcnRhbnQ7IH1cbiAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDE0cHgpIHtcbiAgICAgICAgICAjY3JtV2ViVG9FbnRpdHlGb3JtIGZvcm0gdGFibGUgdGJvZHkgdHIgdGQge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG4gICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dCwgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIHNlbGVjdCB7XG4gICAgICAgICAgd2lkdGg6IDE2cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgYm9yZGVyOiAycHggYmxhY2s7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkge1xuICAgICAgICAgICAgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIGlucHV0LCAjY3JtV2ViVG9FbnRpdHlGb3JtIGZvcm0gdGFibGUgdGJvZHkgdHIgdGQgc2VsZWN0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDE0cmVtICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAjY3JtV2ViVG9FbnRpdHlGb3JtIGZvcm0gdGFibGUgdGJvZHkgdHIgdGQgaW5wdXQsICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBzZWxlY3Qge1xuICAgICAgICAgICAgICB3aWR0aDogMTlyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTg3cHgpIHtcbiAgICAgICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dCwgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIHNlbGVjdCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNHJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dCwgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIHNlbGVjdCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAzNnJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIHNlbGVjdCB7XG4gICAgICAgICAgaGVpZ2h0OiAzcmVtOyB9XG4gICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBzZWxlY3RbbXVsdGlwbGU9XCJtdWx0aXBsZVwiXSB7XG4gICAgICAgICAgaGVpZ2h0OiA2cmVtOyB9XG4gICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXJlc2V0XSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgbWFyZ2luOiAxNXB4IDIwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjJweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuICAgICAgICAgIHdpZHRoOiAxNHJlbSAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIGlucHV0W3R5cGU9c3VibWl0XTpob3ZlciwgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIGlucHV0W3R5cGU9cmVzZXRdOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkge1xuICAgICAgICAgICAgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIGlucHV0W3R5cGU9c3VibWl0XSwgI2NybVdlYlRvRW50aXR5Rm9ybSBmb3JtIHRhYmxlIHRib2R5IHRyIHRkIGlucHV0W3R5cGU9cmVzZXRdIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDE0cmVtICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICAgICAgICAjY3JtV2ViVG9FbnRpdHlGb3JtIGZvcm0gdGFibGUgdGJvZHkgdHIgdGQgaW5wdXRbdHlwZT1zdWJtaXRdLCAjY3JtV2ViVG9FbnRpdHlGb3JtIGZvcm0gdGFibGUgdGJvZHkgdHIgdGQgaW5wdXRbdHlwZT1yZXNldF0ge1xuICAgICAgICAgICAgICB3aWR0aDogMTJyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTg3cHgpIHtcbiAgICAgICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXJlc2V0XSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxNnJlbSAhaW1wb3J0YW50OyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgICAgICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXN1Ym1pdF0sICNjcm1XZWJUb0VudGl0eUZvcm0gZm9ybSB0YWJsZSB0Ym9keSB0ciB0ZCBpbnB1dFt0eXBlPXJlc2V0XSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyMHJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5tYWluLnNnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkwcHg7IH0gfVxuXG4uc2ctaGVhZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiA0MHB4IDA7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgb3BhY2l0eTogMC44O1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2ctaGVhZGluZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgzNSwgMzEsIDMyLCAwLjQpO1xuICAgIHRvcDogN3B4O1xuICAgIGxlZnQ6IC03MHB4OyB9XG5cbi5zZy1yb3cge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIHBhZGRpbmc6IDQwcHggMCAwOyB9XG5cbi5zZy1tZW51LWJ0biB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICBwYWRkaW5nOiAyMHB4O1xuICBjb2xvcjogd2hpdGU7IH1cbiAgLnNnLW1lbnUtYnRuIGg0IHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLnNnLW1lbnUtYnRuOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnNnLW1lbnUtYnRuIGg0IHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLnNnLW1lbnUtYnRuLm9wZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5zZy1tZW51LWJ0bi5vcGVuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZWUwMDAwOyB9XG5cbi5zZy1oYW1idXJnZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zZy1oYW1idXJnZXI6YWZ0ZXIsIC5zZy1oYW1idXJnZXI6YmVmb3JlLCAuc2ctaGFtYnVyZ2VyIHNwYW4ge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNzAlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHRvcDogMTFweDtcbiAgICBsZWZ0OiAxNSU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzOyB9XG4gIC5zZy1oYW1idXJnZXI6YWZ0ZXIge1xuICAgIHRvcDogMjdweDsgfVxuICAuc2ctaGFtYnVyZ2VyIHNwYW4ge1xuICAgIG1pbi1oZWlnaHQ6IDNweDtcbiAgICB0b3A6IDE5cHg7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuc2ctaGFtYnVyZ2VyLmFjdGl2ZTpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCg1cHgsIDVweCwgMCk7IH1cbiAgLnNnLWhhbWJ1cmdlci5hY3RpdmU6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoN3B4LCAtNnB4LCAwKTsgfVxuICAuc2ctaGFtYnVyZ2VyLmFjdGl2ZSBzcGFuIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5zZy1oYW1idXJnZXIuYWN0aXZlOmFmdGVyLCAuc2ctaGFtYnVyZ2VyLmFjdGl2ZTpiZWZvcmUsIC5zZy1oYW1idXJnZXIuYWN0aXZlIHNwYW4ge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlOyB9XG5cbi5zZy1tZW51IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAtMzAwcHg7XG4gIHdpZHRoOiAzMDBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgei1pbmRleDogOTk5O1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgcGFkZGluZzogNDBweCAwIDQwcHggMDsgfVxuICAuc2ctbWVudSBhIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDdweCAyMHB4O1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzIzMUYyMDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLnNnLW1lbnUgYTpob3ZlciB7XG4gICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICNlZTAwMDA7XG4gICAgICBjb2xvcjogI2VlMDAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAuc2ctbWVudS5vcGVuIHtcbiAgICByaWdodDogMDsgfVxuXG4uY29sb3VyIHtcbiAgcGFkZGluZzogNDBweCAyMHB4O1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgd2lkdGg6IDQzJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmNvbG91ciB7XG4gICAgICB3aWR0aDogMTglO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG4uY29sb3VyLXJlZCB7XG4gIGJhY2tncm91bmQ6ICNlZTAwMDA7IH1cblxuLmNvbG91ci1yZWRfbHQge1xuICBiYWNrZ3JvdW5kOiAjRjk2NjY0OyB9XG5cbi5jb2xvdXItYmxhY2sge1xuICBiYWNrZ3JvdW5kOiAjMjMxRjIwOyB9XG5cbi5jb2xvdXItdGVhbCB7XG4gIGJhY2tncm91bmQ6ICMzMWExOWE7IH1cblxuLmNvbG91ci1ncmV5IHtcbiAgYmFja2dyb3VuZDogI2VhZWNlNjsgfVxuXG4uY29sb3VyLWdyZXlfZGsge1xuICBiYWNrZ3JvdW5kOiAjMjIyOyB9XG5cbi5jb2xvdXItZ3JleV9kay1taWQge1xuICBiYWNrZ3JvdW5kOiAjMzMzOyB9XG5cbi5jb2xvdXItZ3JleV9taWQge1xuICBiYWNrZ3JvdW5kOiAjNDQ0OyB9XG5cbi5jb2xvdXItZ3JleV9sdCB7XG4gIGJhY2tncm91bmQ6ICM2NjY7IH1cblxuLmltZy1mb3JtYXRzIGRpdiB7XG4gIG1hcmdpbjogMCAwIDMwcHg7IH1cblxuLmltZy1mb3JtYXRzIGltZyB7XG4gIG1hcmdpbjogMTBweCAwIDA7IH1cblxuLmltZy1mb3JtYXRzIHNwYW4ge1xuICBmb250LXNpemU6IDEuM2VtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuLm5vdHN0YXJ0ZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX2ZhY2Vib29rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX2dvb2dsZV9wbHVzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX2luc3RhZ3JhbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7IH1cblxuLmJzY21zX3NvY2lhbF9uZXR3b3Jrc19saW5rZWRpbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7IH1cblxuLmJzY21zX3NvY2lhbF9uZXR3b3Jrc19waW50ZXJlc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4OyB9XG5cbi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfcnNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3NuYXBjaGF0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3R1bWJsciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7IH1cblxuLmJzY21zX3NvY2lhbF9uZXR3b3Jrc190d2l0dGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3doYXRzYXBwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4ucG9wdXAtbWVzc2FnZXMubW9kYWwge1xuICBvcGFjaXR5OiB1bnNldCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgLnBvcHVwLW1lc3NhZ2VzLm1vZGFsIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnBvcHVwLW1lc3NhZ2VzLm1vZGFsIC5jbG9zZS1tb2RhbCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5wb3B1cC1tZXNzYWdlcy5tb2RhbCBwIHtcbiAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAucG9wdXAtbWVzc2FnZXMubW9kYWwgcDpob3ZlciB7XG4gICAgICBjb2xvcjogcmVkOyB9XG5cbi5qcXVlcnktbW9kYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgei1pbmRleDogOSAhaW1wb3J0YW50OyB9XG5cbiNibG9jay1ic2Ntcy1mcm9udHBhZ2UtYnNjbXMtcG9wdXAsICNibG9jay12aWV3cy1mcm9udHBhZ2UtYmxvY2tzLWJsb2NrLXBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udmlkZW8tanMge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4uYmFja2dyb3VuZC12aWRlby13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODFweCkge1xuICAgIC5iYWNrZ3JvdW5kLXZpZGVvLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIC5iYWNrZ3JvdW5kLXZpZGVvLXdyYXBwZXIgLnZpZGVvLWxpbmsge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLmJhY2tncm91bmQtdmlkZW8td3JhcHBlci5oYXMtbm8tdmlkZW8ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi52anMtdGVjaCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4iLCIvLyBub3JtYWxpemUuc2Nzc1xuXG4vKiEgbm9ybWFsaXplLmNzcyB2MS4xLjMgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxudmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICp6b29tOiAxO1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBGaXJlZm94IDMsIGFuZCBTYWZhcmkgNC5cbiAqIEtub3duIGlzc3VlOiBubyBJRSA2IHN1cHBvcnQuXG4gKi9cblxuW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xuICogICAgYGVtYCB1bml0cy5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgZm9udC1mYW1pbHlgIGluY29uc2lzdGVuY3kgYmV0d2VlbiBgdGV4dGFyZWFgIGFuZCBvdGhlciBmb3JtXG4gKiBlbGVtZW50cy5cbiAqL1xuXG5odG1sLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG59XG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW5zIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNi83LlxuICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgYG91dGxpbmVgIGluY29uc2lzdGVuY3kgYmV0d2VlbiBDaHJvbWUgYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmE6Zm9jdXMge1xuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gICAgb3V0bGluZTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFR5cG9ncmFwaHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBmb250IHNpemVzIGFuZCBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gKiBBZGRyZXNzIGZvbnQgc2l6ZXMgd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgIGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LFxuICogYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbWFyZ2luOiAwLjgzZW0gMDtcbn1cblxuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4xN2VtO1xuICAgIG1hcmdpbjogMWVtIDA7XG59XG5cbmg0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBtYXJnaW46IDEuMzNlbSAwO1xufVxuXG5oNSB7XG4gICAgZm9udC1zaXplOiAwLjgzZW07XG4gICAgbWFyZ2luOiAxLjY3ZW0gMDtcbn1cblxuaDYge1xuICAgIGZvbnQtc2l6ZTogMC42N2VtO1xuICAgIG1hcmdpbjogMi4zM2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDMrLCBTYWZhcmkgNC81LCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqIEtub3duIGlzc3VlOiBubyBJRSA2Lzcgbm9ybWFsaXphdGlvbi5cbiAqL1xuXG5ociB7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDYvNy84LzkuXG4gKi9cblxubWFyayB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cbiAqL1xuXG5wLFxucHJlIHtcbiAgICBtYXJnaW46IDFlbSAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFIDYsIFNhZmFyaSA0LzUsIGFuZCBDaHJvbWUuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNlcmlmO1xuICAgIF9mb250LWZhbWlseTogJ2NvdXJpZXIgbmV3JywgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgcHJlLWZvcm1hdHRlZCB0ZXh0IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIENTUyBxdW90ZXMgbm90IHN1cHBvcnRlZCBpbiBJRSA2LzcuXG4gKi9cblxucSB7XG4gICAgcXVvdGVzOiBub25lO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYHF1b3Rlc2AgcHJvcGVydHkgbm90IHN1cHBvcnRlZCBpbiBTYWZhcmkgNC5cbiAqL1xuXG5xOmJlZm9yZSxcbnE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTGlzdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcuXG4gKi9cblxuZGwsXG5tZW51LFxub2wsXG51bCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5kZCB7XG4gICAgbWFyZ2luOiAwIDAgMCAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgcGFkZGluZ3Mgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNy5cbiAqL1xuXG5tZW51LFxub2wsXG51bCB7XG4gICAgcGFkZGluZzogMCAwIDAgMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IGxpc3QgaW1hZ2VzIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUUgNy5cbiAqL1xuXG5uYXYgdWwsXG5uYXYgb2wge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4gKiAyLiBJbXByb3ZlIGltYWdlIHF1YWxpdHkgd2hlbiBzY2FsZWQgaW4gSUUgNy5cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRSA5LlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRmlndXJlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA2LzcvOC85LCBTYWZhcmkgNSwgYW5kIE9wZXJhIDExLlxuICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBtYXJnaW4gZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cbiAqL1xuXG5mb3JtIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA2LzcvOC85LlxuICogMi4gQ29ycmVjdCB0ZXh0IG5vdCB3cmFwcGluZyBpbiBGaXJlZm94IDMuXG4gKiAzLiBDb3JyZWN0IGFsaWdubWVudCBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5cbmxlZ2VuZCB7XG4gICAgYm9yZGVyOiAwOyAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAyICovXG4gICAgKm1hcmdpbi1sZWZ0OiAtN3B4OyAvKiAzICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBmb250IHNpemUgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFIDYvNywgRmlyZWZveCAzKywgU2FmYXJpIDUsXG4gKiAgICBhbmQgQ2hyb21lLlxuICogMy4gSW1wcm92ZSBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAzICovXG4gICAgKnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggMysgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBDaHJvbWUsIFNhZmFyaSA1KywgYW5kIElFIDYrLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94IDQrIGFuZCBPcGVyYS5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKiA0LiBSZW1vdmUgaW5uZXIgc3BhY2luZyBpbiBJRSA3IHdpdGhvdXQgYWZmZWN0aW5nIG5vcm1hbCB0ZXh0IGlucHV0cy5cbiAqICAgIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUUgNi5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG4gICAgKm92ZXJmbG93OiB2aXNpYmxlOyAgLyogNCAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBjb250ZW50LWJveCBpbiBJRSA4LzkuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LlxuICogMy4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDcuXG4gKiAgICBLbm93biBpc3N1ZTogZXhjZXNzIHBhZGRpbmcgcmVtYWlucyBpbiBJRSA2LlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICAqaGVpZ2h0OiAxM3B4OyAvKiAzICovXG4gICAgKndpZHRoOiAxM3B4OyAvKiAzICovXG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIDUgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIDUgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIDUgYW5kIENocm9tZVxuICogb24gT1MgWC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCAzKy5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDYvNy84LzkuXG4gKiAyLiBJbXByb3ZlIHJlYWRhYmlsaXR5IGFuZCBhbGlnbm1lbnQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bzsgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IC8qIDIgKi9cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG4iLCIvKiBcbiAqICBDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICogIHYxLjMuM1xuICovXG5cbi8qIGNsZWFyZml4ICovXG4ub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbn1cbi8qIGRpc3BsYXkgbm9uZSB1bnRpbCBpbml0ICovXG4ub3dsLWNhcm91c2Vse1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVye1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLW91dGVye1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXItb3V0ZXIuYXV0b0hlaWdodHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbiAgXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbXtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4ub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSxcbi5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdntcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm93bC1jb250cm9scyB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4vKiBtb3VzZSBncmFiIGljb24gKi9cbi5ncmFiYmluZyB7IFxuICAgIGN1cnNvcjp1cmwoZ3JhYmJpbmcucG5nKSA4IDgsIG1vdmU7XG59XG5cbi8qIGZpeCAqL1xuLm93bC1jYXJvdXNlbCAgLm93bC13cmFwcGVyLFxuLm93bC1jYXJvdXNlbCAgLm93bC1pdGVte1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICAgaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG59XG5cbiIsIi8qXG4qICAgT3dsIENhcm91c2VsIE93bCBEZW1vIFRoZW1lIFxuKiB2MS4zLjNcbiovXG5cbi5vd2wtdGhlbWUgLm93bC1jb250cm9sc3tcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBTdHlsaW5nIE5leHQgYW5kIFByZXYgYnV0dG9ucyAqL1xuXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1idXR0b25zIGRpdntcbiAgY29sb3I6ICNGRkY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTsvKklFNyBsaWZlLXNhdmVyICovXG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiAzcHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYmFja2dyb3VuZDogIzg2OTc5MTtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTUwKTsvKklFNyBmaXgqL1xuICBvcGFjaXR5OiAwLjU7XG59XG4vKiBDbGlja2FibGUgY2xhc3MgZml4IHByb2JsZW0gd2l0aCBob3ZlciBvbiB0b3VjaCBkZXZpY2VzICovXG4vKiBVc2UgaXQgZm9yIG5vbi10b3VjaCBob3ZlciBhY3Rpb24gKi9cbi5vd2wtdGhlbWUgLm93bC1jb250cm9scy5jbGlja2FibGUgLm93bC1idXR0b25zIGRpdjpob3ZlcntcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTEwMCk7LypJRTcgZml4Ki9cbiAgb3BhY2l0eTogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBTdHlsaW5nIFBhZ2luYXRpb24qL1xuXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdle1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHpvb206IDE7XG4gICpkaXNwbGF5OiBpbmxpbmU7LypJRTcgbGlmZS1zYXZlciAqL1xufVxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSBzcGFue1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbjogNXB4IDVweDtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTUwKTsvKklFNyBmaXgqL1xuICBvcGFjaXR5OiAwLjU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlLmFjdGl2ZSBzcGFuLFxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzLmNsaWNrYWJsZSAub3dsLXBhZ2U6aG92ZXIgc3BhbntcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTEwMCk7LypJRTcgZml4Ki9cbiAgb3BhY2l0eTogMTtcbn1cblxuLyogSWYgUGFnaW5hdGlvbk51bWJlcnMgaXMgdHJ1ZSAqL1xuXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW4ub3dsLW51bWJlcnN7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGNvbG9yOiAjRkZGO1xuICBwYWRkaW5nOiAycHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbn1cblxuLyogcHJlbG9hZGluZyBpbWFnZXMgKi9cbi5vd2wtaXRlbS5sb2FkaW5ne1xuICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgYmFja2dyb3VuZDogdXJsKEFqYXhMb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlclxufSIsIi8qIFxuICogIE93bCBDYXJvdXNlbCBDU1MzIFRyYW5zaXRpb25zIFxuICogIHYxLjMuMlxuICovXG5cbi5vd2wtb3JpZ2luIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi14IDogNTAlO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xuICAtbW96LXBlcnNwZWN0aXZlIDogMTIwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbi14IDogNTAlO1xuICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xuICBwZXJzcGVjdGl2ZSA6IDEyMDBweDtcbn1cbi8qIGZhZGUgKi9cbi5vd2wtZmFkZS1vdXQge1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgLjdzIGJvdGggZWFzZTtcbiAgLW1vei1hbmltYXRpb246IGZhZGVPdXQgLjdzIGJvdGggZWFzZTtcbiAgYW5pbWF0aW9uOiBmYWRlT3V0IC43cyBib3RoIGVhc2U7XG59XG4ub3dsLWZhZGUtaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluIC43cyBib3RoIGVhc2U7XG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTtcbn1cbi8qIGJhY2tTbGlkZSAqL1xuLm93bC1iYWNrU2xpZGUtb3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJhY2tTbGlkZU91dCAxcyBib3RoIGVhc2U7XG4gIC1tb3otYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xuICBhbmltYXRpb246IGJhY2tTbGlkZU91dCAxcyBib3RoIGVhc2U7XG59XG4ub3dsLWJhY2tTbGlkZS1pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBiYWNrU2xpZGVJbiAxcyBib3RoIGVhc2U7XG4gIC1tb3otYW5pbWF0aW9uOiBiYWNrU2xpZGVJbiAxcyBib3RoIGVhc2U7XG4gIGFuaW1hdGlvbjogYmFja1NsaWRlSW4gMXMgYm90aCBlYXNlO1xufVxuLyogZ29Eb3duICovXG4ub3dsLWdvRG93bi1vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDtcbiAgLW1vei1hbmltYXRpb246IHNjYWxlVG9GYWRlIC43cyBlYXNlIGJvdGg7XG4gIGFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDtcbn1cbi5vd2wtZ29Eb3duLWluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xuICAtbW96LWFuaW1hdGlvbjogZ29Eb3duIC42cyBlYXNlIGJvdGg7XG4gIGFuaW1hdGlvbjogZ29Eb3duIC42cyBlYXNlIGJvdGg7XG59XG4vKiBzY2FsZVVwICovXG4ub3dsLWZhZGVVcC1pbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xuICAtbW96LWFuaW1hdGlvbjogc2NhbGVVcEZyb20gLjVzIGVhc2UgYm90aDtcbiAgYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xufVxuXG4ub3dsLWZhZGVVcC1vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVVwVG8gLjVzIGVhc2UgYm90aDtcbiAgYW5pbWF0aW9uOiBzY2FsZVVwVG8gLjVzIGVhc2UgYm90aDtcbn1cbi8qIEtleWZyYW1lcyAqL1xuLyplbXB0eSovXG5ALXdlYmtpdC1rZXlmcmFtZXMgZW1wdHkge1xuICAwJSB7b3BhY2l0eTogMX1cbn1cbkAtbW96LWtleWZyYW1lcyBlbXB0eSB7XG4gIDAlIHtvcGFjaXR5OiAxfVxufVxuQGtleWZyYW1lcyBlbXB0eSB7XG4gIDAlIHtvcGFjaXR5OiAxfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHsgb3BhY2l0eTowOyB9XG4gIDEwMCUgeyBvcGFjaXR5OjE7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7IG9wYWNpdHk6MDsgfVxuICAxMDAlIHsgb3BhY2l0eToxOyB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHsgb3BhY2l0eTowOyB9XG4gIDEwMCUgeyBvcGFjaXR5OjE7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUgeyBvcGFjaXR5OjE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6MDsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7IG9wYWNpdHk6MTsgfVxuICAxMDAlIHsgb3BhY2l0eTowOyB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7IG9wYWNpdHk6MTsgfVxuICAxMDAlIHsgb3BhY2l0eTowOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcbiAgMjUlIHsgb3BhY2l0eTogLjU7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cbiAgNzUlIHsgb3BhY2l0eTogLjU7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcbiAgMjUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cbiAgNzUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IC41OyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XG59XG5Aa2V5ZnJhbWVzIGJhY2tTbGlkZU91dCB7XG4gIDI1JSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxuICA3NSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tTbGlkZUluIHtcbiAgMCUsIDI1JSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoMjAwJSk7IH1cbiAgNzUlIHsgb3BhY2l0eTogLjU7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoMCk7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBiYWNrU2xpZGVJbiB7XG4gIDAlLCAyNSUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKDIwMCUpOyB9XG4gIDc1JSB7IG9wYWNpdHk6IC41OyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAxOyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVYKDApOyB9XG59XG5Aa2V5ZnJhbWVzIGJhY2tTbGlkZUluIHtcbiAgMCUsIDI1JSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKDIwMCUpOyB9XG4gIDc1JSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoMCk7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZVRvRmFkZSB7XG4gIHRvIHsgb3BhY2l0eTogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC44KTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcbiAgdG8geyBvcGFjaXR5OiAwOyAtbW96LXRyYW5zZm9ybTogc2NhbGUoLjgpOyB9XG59XG5Aa2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcbiAgdG8geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKC44KTsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGdvRG93biB7XG4gIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBnb0Rvd24ge1xuICBmcm9tIHsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG59XG5Aa2V5ZnJhbWVzIGdvRG93biB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZVVwRnJvbSB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVXBGcm9tIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9XG59XG5Aa2V5ZnJhbWVzIHNjYWxlVXBGcm9tIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGVVcFRvIHtcbiAgdG8geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVXBUbyB7XG4gIHRvIHsgb3BhY2l0eTogMDsgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbn1cbkBrZXlmcmFtZXMgc2NhbGVVcFRvIHtcbiAgdG8geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbn0iLCIvLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8IFNpbGVudCBjbGFzc2VzXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiVncmlkbGUtcGllLWNsZWFyZml4IHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCIuXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXHQgXG5cdCYge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXHQgXG5cdGh0bWxbeG1sbnNdICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdCBcblx0KiBodG1sICYge1xuXHRcdGhlaWdodDogMSU7XG5cdH1cbn1cbiVncmlkbGUtc2ltcGxlLWNsZWFyZml4IHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRjbGVhcjogYm90aDtcblx0XHRib3JkZXItc3BhY2luZzowO1xuXHR9XG59XG4lZ3JpZGxlLWNsZWFyZml4IHtcblx0Ly8gRm9yIG1vZGVybiBicm93c2VyXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OlwiXCI7XG5cdFx0ZGlzcGxheTp0YWJsZTtcblx0XHRib3JkZXItc3BhY2luZzowO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdGNsZWFyOmJvdGg7XG5cdH1cblx0Ly8gRm9yIElFIDYvNyAodHJpZ2dlciBoYXNMYXlvdXRcblx0JiB7XG5cdCAgIHpvb206MTtcblx0fVxufVxuJWdyaWRsZS1wdXNoLXB1bGwtZGVidWctYmFja2dyb3VuZC1jb21tb24ge1xuXHRiYWNrZ3JvdW5kLXNpemU6NTBweCA5MCU7XG5cdGJhY2tncm91bmQtcG9zaXRpb246MCA1MCU7XG5cdGJhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O1xufVxuJWdyaWRsZS1wdXNoLXB1bGwtY29tbW9uIHtcblx0cG9zaXRpb246cmVsYXRpdmU7XG59XG4lZ3JpZGxlLWNvbnRhaW5lci1jb21tb24ge1xuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiVncmlkbGUtcGFyZW50LWNvbW1vbiB7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuJWdyaWRsZS1jb250YWluZXItZGVidWctY29tbW9uIHtcblx0YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O1xufVxuJWdyaWRsZS1ncmlkLWRlYnVnLWNvbW1vbiB7XG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OlwiXCI7XG5cdFx0ZGlzcGxheTpibG9jaztcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBRUFBQUFCQ0FZQUFBQWZGY1NKQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5UnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU15MWpNREV4SURZMkxqRTBOVFkyTVN3Z01qQXhNaTh3TWk4d05pMHhORG8xTmpveU55QWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTlROaUFvVFdGamFXNTBiM05vS1NJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRvd1JrRXpOelZGTlRnMU5qZ3hNVVV5T1VJNFJqaEVNemc0UXpNNFFqWkZPQ0lnZUcxd1RVMDZSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRG93UmtFek56VkZOamcxTmpneE1VVXlPVUk0UmpoRU16ZzRRek00UWpaRk9DSStJRHg0YlhCTlRUcEVaWEpwZG1Wa1JuSnZiU0J6ZEZKbFpqcHBibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPakJHUVRNM05VVXpPRFUyT0RFeFJUSTVRamhHT0VRek9EaERNemhDTmtVNElpQnpkRkpsWmpwa2IyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09qQkdRVE0zTlVVME9EVTJPREV4UlRJNVFqaEdPRVF6T0RoRE16aENOa1U0SWk4K0lEd3ZjbVJtT2tSbGMyTnlhWEIwYVc5dVBpQThMM0prWmpwU1JFWStJRHd2ZURwNGJYQnRaWFJoUGlBOFAzaHdZV05yWlhRZ1pXNWtQU0p5SWo4Kys1K0JoUUFBQUE5SlJFRlVlTnBpWUdCZ2tBSUlNQUFBSHdBYlpJQnRHZ0FBQUFCSlJVNUVya0pnZ2c9PSk7XG5cdFx0bWFyZ2luOjEwcHggMDtcblx0XHRwYWRkaW5nOjVweCAwO1xuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXHRcdGNvbG9yOndoaXRlO1xuXHRcdGZvbnQtc2l6ZToxMXB4O1xuXHRcdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XG5cdH1cblx0YmFja2dyb3VuZC1jb2xvcjojZGFlZmY1O1xufVxuJWdyaWRsZS1ncmlkLWNvbW1vbiB7XG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRtaW4taGVpZ2h0OjFweDtcblxuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxufVxuJWdyaWRsZS1wcmVmaXgtZGVidWctY29tbW9uIHtcblx0YmFja2dyb3VuZC1jb2xvcjojZGFlN2U5ICFpbXBvcnRhbnQ7XG59XG4lZ3JpZGxlLXN1ZmZpeC1kZWJ1Zy1jb21tb24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiNkYWU3ZTkgIWltcG9ydGFudDtcbn0iLCIvLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8IEZ1bmN0aW9uc1xuLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIFN0ciByZXBsYWNlXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9ICAkc3RyaW5nICAgIFN0cmluZyB0aGF0IHlvdSB3YW50IHRvIHJlcGxhY2VcbiAqIEBwYXJhbSB7c3RyaW5nfSAgJHN1YnN0ciAgICBTdHJpbmcgdGhhdCBpcyB0byBiZSByZXBsYWNlZCBieSBgJG5ld3N1YnN0cmBcbiAqIEBwYXJhbSB7c3RyaW5nfSAgJG5ld3N1YnN0ciBTdHJpbmcgdGhhdCByZXBsYWNlcyBgJHN1YnN0cmBcbiAqIEBwYXJhbSB7bnVtYmVyKn0gJGFsbCAgICAgICBGbGFnIGZvciByZXBsYWNlaW5nIGFsbCAoMSspIG9yIG5vdCAoMClcbiAqIEByZXR1cm4ge3N0cmluZ31cbiAqL1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzdWJzdHIsICRuZXdzdWJzdHIsICRhbGw6IDApIHtcblx0JHBvc2l0aW9uLWZvdW5kOiBzdHItaW5kZXgoJHN0cmluZywgJHN1YnN0cik7XG5cdCRwcm9jZXNzZWQ6ICgpO1xuXG5cdEB3aGlsZSAoJHBvc2l0aW9uLWZvdW5kIGFuZCAkcG9zaXRpb24tZm91bmQgPiAwKSB7XG5cdFx0JGxlbmd0aC1zdWJzdHI6IHN0ci1sZW5ndGgoJHN1YnN0cik7XG5cdFx0JHByb2Nlc3NlZDogYXBwZW5kKCRwcm9jZXNzZWQsIHN0ci1zbGljZSgkc3RyaW5nLCAwLCAkcG9zaXRpb24tZm91bmQgLSAxKSk7XG5cdFx0JHByb2Nlc3NlZDogYXBwZW5kKCRwcm9jZXNzZWQsICRuZXdzdWJzdHIpO1xuXHRcdCRzdHJpbmc6IHN0ci1zbGljZSgkc3RyaW5nLCAkcG9zaXRpb24tZm91bmQgKyAkbGVuZ3RoLXN1YnN0cik7XG5cblx0XHQkcG9zaXRpb24tZm91bmQ6IDA7XG5cblx0XHRAaWYgKCRhbGwgPiAwKSB7XG5cdFx0XHQkcG9zaXRpb24tZm91bmQ6IHN0ci1pbmRleCgkc3RyaW5nLCAkc3Vic3RyKTtcblx0XHR9XG5cdH1cblxuXHQkcHJvY2Vzc2VkOiBhcHBlbmQoJHByb2Nlc3NlZCwgJHN0cmluZyk7XG5cdCRzdHJpbmc6IFwiXCI7XG5cblx0QGVhY2ggJHMgaW4gJHByb2Nlc3NlZCB7XG5cdFx0JHN0cmluZzogI3skc3RyaW5nfSN7JHN9O1xuXHR9XG5cblx0QHJldHVybiAkc3RyaW5nO1xufVxuXG4vKipcbiAqIE1hcCBzZXRcbiAqXG4gKiBAcGFyYW0gXHRNYXAgXHQkbWFwIFx0XHRUaGUgbWFwIHRvIHVzZVxuICogQHBhcmFtIFx0U3RyaW5nIFx0JGtleSBcdFx0VGhlIGtleSB0byB1cGRhdGVcbiAqIEBwYXJhbSBcdE1peGVkIFx0JHZhbHVlIFx0XHRUaGUgbmV3IHZhbHVlXG4gKiBAcmV0dXJuIFx0TWFwIFx0XHRcdFRoZSBuZXcgbWFwXG4gKi9cbkBmdW5jdGlvbiBtYXAtc2V0KCRtYXAsICRrZXksICR2YWx1ZSkge1xuXHQkbmV3OiAoJGtleTogJHZhbHVlKTtcblx0QHJldHVybiBtYXAtbWVyZ2UoJG1hcCwgJG5ldyk7XG59XG5cblxuLyoqXG4gKiBHZXQgdGhlIGNvbHVtbiB3aWR0aCBpbiBwZXJjZW50IGZvciB0aGUgZ2xvYmFsIG9yIGEgc3BlY2lmaWMgY29udGV4dFxuICpcbiAqIEBwYXJhbSBcdGludCBcdFx0JGNvbHVtbnMgXHRcdFx0XHRcdFRoZSBudW1iZXIgb2YgY29sdW1ucyB0byBjYWxjdWxhdGVcbiAqIEBwYXJhbSBcdGludCBcdFx0JGNvbnRleHQgOiAkZ3JpZGxlLWNvbHVtbnMtY291bnQgXHQgXHRUaGUgY29udGV4dCB0byB1c2VcbiAqIEByZXR1cm4gXHRwZXJjZW50YWdlIFx0XHRcdFx0XHRcdFx0VGhlIHdpZHRoIGluIHBlcmNlbnRcbiAqL1xuQGZ1bmN0aW9uIGdyaWRsZV9nZXRfY29sdW1uX3dpZHRoKFxuXHQkY29sdW1ucyA6IDEsXG5cdCRzdGF0ZU1hcC1vci1zdGF0ZU5hbWUgOiBudWxsXG4pIHtcblx0QHJldHVybiBwZXJjZW50YWdlKDEgLyAkY29udGV4dCAqICRjb2x1bW5zKTtcbn1cblxuXG4vKipcbiAqICBHZXQgYSBzdGF0ZSBtYXBcbiAqXG4gKiBAcGFyYW0gXHRzdHJpbmcgXHRcdCRuYW1lIFx0XHRUaGUgbmFtZSBvZiB0aGUgc3RhdGUgdG8gZ2V0XG4gKiBAcmV0dXJuIFx0bWFwIFx0XHRcdFx0QSBzdGF0ZSBtYXAgb2JqZWN0XG4gKi9cbkBmdW5jdGlvbiBfZ3JpZGxlX2dldF9zdGF0ZShcblx0JHN0YXRlTWFwLW9yLXN0YXRlTmFtZVxuKSB7XG5cdC8vIGNoZWNrIGlmIGhhcyBhIHN0YXRlIG5hbWVkIGxpa2UgdGhpc1xuXHRAaWYgKHR5cGUtb2YoJHN0YXRlTWFwLW9yLXN0YXRlTmFtZSkgPT0gc3RyaW5nXG5cdFx0YW5kICBtYXAtaGFzLWtleSgkX2dyaWRsZV9zdGF0ZXMsIHVucXVvdGUoXCIjeyRzdGF0ZU1hcC1vci1zdGF0ZU5hbWV9XCIpKSlcblx0e1xuXHRcdEByZXR1cm4gbWFwLWdldCgkX2dyaWRsZV9zdGF0ZXMsIHVucXVvdGUoXCIjeyRzdGF0ZU1hcC1vci1zdGF0ZU5hbWV9XCIpKTtcblx0fVxuXG5cdC8vIGEgbWFwIGlzIHBhc3NlZCwgc28gaXQncyBhIHN0YXRlIGhpbXNlbGZcblx0QGlmICRzdGF0ZU1hcC1vci1zdGF0ZU5hbWVcblx0XHRhbmQgdHlwZS1vZigkc3RhdGVNYXAtb3Itc3RhdGVOYW1lKSA9PSBtYXBcblx0e1xuXHRcdEByZXR1cm4gbWFwLW1lcmdlKCRfZ3JpZGxlLXNldHRpbmdzLCAkc3RhdGVNYXAtb3Itc3RhdGVOYW1lKTtcblx0fVxuXG5cdC8vIHJldHVybiB0aGUgZGVmYXVsdCBvbmUgaWYgZXhpc3Rcblx0QGlmIG1hcC1oYXMta2V5KCRfZ3JpZGxlX3N0YXRlcywgZGVmYXVsdClcblx0e1xuXHRcdEByZXR1cm4gbWFwLWdldCgkX2dyaWRsZV9zdGF0ZXMsIGRlZmF1bHQpO1xuXHR9XG5cblx0Ly8gbm90aGluZyBmaW5kZWQsIHJldHVybiB0aGUgZGVmYXVsdCBzdGF0ZVxuXHRAcmV0dXJuICRfZ3JpZGxlLXNldHRpbmdzO1xufVxuXG5cbi8qKlxuICogQ2hlY2sgaWYgYSBzdGF0ZSBleGlzdCA6XG4gKlxuICogQHBhcmFtIFx0c3RyaW5nIFx0XHQkbmFtZSBcdFx0VGhlIG5hbWUgb2YgdGhlIHN0YXRlIHRvIGNoZWNrXG4gKiBAcmV0dXJuIFx0Qm9vbGVhbiBcdFx0XHR0cnVlIGlzIGV4aXN0XG4gKi9cbkBmdW5jdGlvbiBfZ3JpZGxlX2hhc19zdGF0ZShcblx0JHN0YXRlTmFtZVxuKSB7XG5cdEBpZiBtYXAtaGFzLWtleSgkX2dyaWRsZV9zdGF0ZXMsIHVucXVvdGUoXCIjeyRzdGF0ZU5hbWV9XCIpKSB7XG5cdFx0QHJldHVybiB0cnVlO1xuXHR9IEBlbHNlIHtcblx0XHRAcmV0dXJuIGZhbHNlO1xuXHR9XG59XG5cblxuLyoqXG4gKiBHZXQgdGhlIG1lZGlhIHF1ZXJpZXMgdmFyaWFibGVzIDpcbiAqXG4gKiBAcGFyYW0gXHRpbnQgXHRcdCRpbmRleCBcdCBcdFRoZSBtZWRpYSBxdWVyeSBpbmRlc1xuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkdmFyIFx0XHRUaGUgbWVkaWEgcXVlcnkgdmFyaWFibGUgbmFtZVxuICogQHJldHVybiBcdFN0cmluZ3xpbnQgXHRcdFx0VGhlIHZhcmlhYmxlIHZhbHVlXG4gKi9cbkBmdW5jdGlvbiBfZ3JpZGxlX2dldF9zdGF0ZV92YXIoXG5cdCRzdGF0ZU5hbWUsXG5cdCR2YXIgXHQ6IFwibmFtZVwiXG4pIHtcblxuXHQvLyBnZXQgdGhlIHN0YXRlIDpcblx0JHN0YXRlIDogX2dyaWRsZV9nZXRfc3RhdGUoJHN0YXRlTmFtZSk7XG5cblx0Ly8gY2hlY2sgaWcgc3RhdGUgYW5kIGlmIGhhcyB0aGUgdmFyaWFibGUgOlxuXHRAaWYgJHN0YXRlXG5cdFx0ICBhbmQgbWFwLWhhcy1rZXkoJHN0YXRlLHVucXVvdGUoXCIjeyR2YXJ9XCIpKVxuXHR7XG5cdFx0QHJldHVybiBtYXAtZ2V0KCRzdGF0ZSx1bnF1b3RlKFwiI3skdmFyfVwiKSk7XG5cdH1cblxuXHQvLyBub3RoaW5nIGdldHRlZCA6XG5cdEByZXR1cm4gbnVsbDtcbn1cblxuXG4vKipcbiAqIEdldCBhIHZhcmlhYmxlXG4gKlxuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkdmFyTmFtZSBcdFx0XHRcdFRoZSB2YXJpYWJsZSBuYW1lXG4gKiBAcGFyYW0gIFx0U3RyaW5nIFx0XHQkc3RhdGVNYXAtb3Itc3RhdGVOYW1lIFx0IFx0VGhlIHN0YXRlIG5hbWUgb3IgYSBtYXAgc3RhdGUgdmFsdWVcbiAqIEByZXR1cm4gXHRNaXhlZCBcdFx0XHRcdFx0XHRcdFRoZSBmaW5kZWQgdmFsdWVcbiAqL1xuQGZ1bmN0aW9uIF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShcblx0JHZhck5hbWUsXG5cdCRzdGF0ZU1hcC1vci1zdGF0ZU5hbWUgOiBudWxsXG4pIHtcblx0Ly8gaWYgaXMgYSBzdGF0ZSA6XG5cdCRzdGF0ZSA6IG51bGw7XG5cblx0Ly8gZ2V0IHRoZSBzdGF0ZSAoaWYgbm8gc3RhdGUgZmluZCwgcmV0dXJuIHRoZSBkZWZhdWx0IG9uZSkgOlxuXHQkc3RhdGUgOiBfZ3JpZGxlX2dldF9zdGF0ZSgkc3RhdGVNYXAtb3Itc3RhdGVOYW1lKTtcblxuXHQvLyBleHRlbmQgZGVmYXVsdCBzdGF0ZSB3aXRoIGdpdmVuIHN0YXRlIDpcblx0JHByb3BzIDogbWFwLW1lcmdlKCRfZ3JpZGxlLXNldHRpbmdzLCAkc3RhdGUpO1xuXG5cdEBpZiBtYXAtaGFzLWtleSgkcHJvcHMsIHVucXVvdGUoXCIjeyR2YXJOYW1lfVwiKSkge1xuXHRcdEByZXR1cm4gbWFwLWdldCgkc3RhdGUsIHVucXVvdGUoXCIjeyR2YXJOYW1lfVwiKSk7XG5cdH1cblx0XG5cdC8vIG5vdGhpbmcgZmluZGVkIDpcblx0QHJldHVybiBudWxsO1xufVxuXG5cbi8qKlxuICogU2V0IGEgdmFyaWFibGUgaW4gYSBzdGF0ZVxuICogQHBhcmFtIFx0TWl4ZWQgJHN0YXRlTmFtZS1vci1zdGF0ZUluZGV4IFx0VGhlIHN0YXRlIG5hbWUgb2Ygc3RhdGUgaW5kZXhcbiAqIEBwYXJhbSAgXHRTdHJpbmcgJHZhciAgICAgICAgICAgICAgICAgICAgXHRcdFZhcmlhYmxlIG5hbWUgdG8gYXNzaWduXG4gKiBAcGFyYW0gIFx0TWl4ZWQgJG5ld1ZhbHVlICAgICAgICAgIFx0XHRUaGUgbmV3IHZhbHVlIHRvIGFzc2lnblxuICogQHJldHVybiBcdExpc3QgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdFx0VGhlIHN0YXRlcyBsaXN0IChmdWxsKVxuICovXG5AZnVuY3Rpb24gX2dyaWRsZV9zZXRfc3RhdGVfdmFyKFxuXHQkc3RhdGVOYW1lLFxuXHQkdmFyLFxuXHQkbmV3VmFsdWVcbikge1xuXHQvLyBnZXQgdGhlIHN0YXRlIDpcblx0JHN0YXRlIDogX2dyaWRsZV9nZXRfc3RhdGUoJHN0YXRlTmFtZSk7XG5cblx0Ly8gY2hlY2sgaWcgc3RhdGUgYW5kIGlmIGhhcyB0aGUgdmFyaWFibGUgOlxuXHRAaWYgJHN0YXRlXG5cdFx0ICBhbmQgbWFwLWhhcy1rZXkoJHN0YXRlLHVucXVvdGUoXCIjeyR2YXJ9XCIpKVxuXHR7XG5cdFx0Ly8gc2V0IG5ldyB2YWx1ZSBpbiBzdGF0ZSA6XG5cdFx0JHN0YXRlIDogbWFwLXNldCgkc3RhdGUsIHVucXVvdGUoXCIjeyR2YXJ9XCIpLCAkbmV3VmFsdWUpO1xuXG5cdFx0Ly8gc2V0IHN0YXRlcyA6XG5cdFx0JF9ncmlkbGVfc3RhdGVzIDogbWFwLXNldCgkX2dyaWRsZV9zdGF0ZXMsIHVucXVvdGUoXCIjeyRzdGF0ZU5hbWV9XCIpLCAkc3RhdGUpO1xuXG5cdFx0Ly8gcmV0dXJuIG5ldyBzdGF0ZSA6XG5cdFx0QHJldHVybiAkc3RhdGU7XG5cdH1cblxuXHQvLyBub3RoaW5nIGdldHRlZCA6XG5cdEByZXR1cm4gbnVsbDtcbn1cblxuXG4vKipcbiAqIEdlbmVyYXRlIGEgY29sdW1uXG4gKlxuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkbmFtZSBcdFx0XHRUaGUgY29sdW1uIG5hbWUgKG9mdGVuIGNvdW50KVxuICogQHBhcmFtIFx0aW50IFx0XHQkY29sdW1ucyBcdFx0VGhlIGNvbHVtbiBjb3VudCB0aGF0IHRoZSBjb2x1bW4gd2lsbCB0YWtlXG4gKiBAcGFyYW0gXHRpbnQgXHRcdCRjb250ZXh0IFx0XHRUaGUgY29udGV4dCBvbiB3aXRjaCB0aGUgd2l0aCB3aWxsIGJlIGNhbGN1bGVkXG4gKiBAcGFyYW0gXHRCb29sZWFuIFx0JGdlbmVyYXRlQ2xhc3NlcyBcdFNldCBpZiB0aGUgY29sdW1uIGhhcyB0byBiZSBnZW5lcmF0ZWQgaW4gY3NzXG4gKi9cbkBmdW5jdGlvbiBfZ3JpZGxlX2NyZWF0ZV9jb2x1bW4oXG5cdCRuYW1lLFxuXHQkY29sdW1ucyxcblx0JGNvbnRleHQsXG5cdCRuYW1lLW11bHRpcGxpY2F0b3IgOiAxIC8vIHVzZWQgdG8gZXh0ZW5kIHRoZSBzdGF0ZSBvbiBjdXN0b20gcmVnaXN0ZXJlZCBjb2x1bW5zXG4pIHtcblx0QHJldHVybiAoXG5cdFx0bmFtZSA6ICRuYW1lLFxuXHRcdGNvbHVtbnMgOiAkY29sdW1ucyxcblx0XHRjb250ZXh0IDogJGNvbnRleHQsXG5cdFx0bmFtZS1tdWx0aXBsaWNhdG9yIDogJG5hbWUtbXVsdGlwbGljYXRvclxuXHQpO1xufVxuXG5cbi8qKlxuICogR2VuZXJhdGUgY2xhc3NuYW1lXG4gKlxuICogQHBhcmFtIFx0TGlzdCBcdFx0JHBhcnJlcm4gXHRUaGUgcGF0dGVybiB0byB1c2UgdG8gZ2VuZXJhdGUgY2xhc3NuYW1lXG4gKiBAcGFyYW0gXHRTdHJpbmcgXHRcdCRzdGF0ZSBcdFx0VGhlIHN0YXRlXG4gKiBAcGFyYW0gXHRpbnQgXHRcdCRjb3VudCBcdFx0VGhlIGNvbHVtbiBjb3VudFxuICovXG5AZnVuY3Rpb24gX2dyaWRsZV9jbGFzc25hbWUoXG5cdCRwYXR0ZXJuLFxuXHQkc3RhdGUgOiBudWxsLFxuXHQkY291bnQgOiBudWxsXG4pIHtcblxuXHQvLyBpbml0IHNlbGVjdG9yIDpcblx0JHNlbCA6IFwiLlwiO1xuXG5cdC8vIGRlbGV0ZSBkZWZhdWx0IDpcblx0QGlmIHVucXVvdGUoXCIjeyRzdGF0ZX1cIikgPT0gZGVmYXVsdCB7XG5cdFx0JHN0YXRlIDogbnVsbDtcblx0fVxuXHRcblx0Ly8gYWRkIGNsYXNzIHByZWZpeCA6XG5cdEBpZiAkZ3JpZGxlLWNsYXNzLXByZWZpeCBhbmQgJGdyaWRsZS1jbGFzcy1wcmVmaXggIT0gJycge1xuXHRcdCRzZWwgOiBcIiN7JHNlbH0jeyRncmlkbGUtY2xhc3MtcHJlZml4fVwiO1xuXHRcdEBpZiAkZ3JpZGxlLWNsYXNzLXNlcGFyYXRvciB7XG5cdFx0XHQkc2VsIDogXCIjeyRzZWx9I3skZ3JpZGxlLWNsYXNzLXNlcGFyYXRvcn1cIjtcblx0XHR9XG5cdH1cblxuXHQvLyBjb25zdHJ1Y3QgY2xhc3MgbmFtZSA6XG5cdCRpIDogMTtcblx0QGVhY2ggJHZhciBpbiAkcGF0dGVybiB7XG5cdFx0XG5cdFx0Ly8gcmVwbGFjZSB0b2tlbnMgOlxuXHRcdEBpZiAkdmFyID09ICclc3RhdGUnIGFuZCAkc3RhdGUge1xuXHRcdFx0JHNlbCA6IFwiI3skc2VsfSN7JHN0YXRlfVwiO1xuXHRcdH0gXG5cdFx0QGlmICR2YXIgPT0gJyVjb3VudCcgYW5kICRjb3VudCB7XG5cdFx0XHQkc2VsIDogXCIjeyRzZWx9I3skY291bnR9XCI7XG5cdFx0fSAgXG5cdFx0QGlmICR2YXIgIT0gJyVzdGF0ZScgYW5kICR2YXIgIT0gJyVjb3VudCcgYW5kICR2YXIgIT0gJyUtJyBhbmQgJHZhciAhPSAnLScgYW5kICR2YXIgIT0gJy0tJyBhbmQgJHZhciAhPSAnXycgYW5kICR2YXIgIT0gJ19fJyBhbmQgJHZhciAhPSAnJXByZWZpeCcge1xuXHRcdFx0JHNlbCA6IFwiI3skc2VsfSN7JHZhcn1cIjtcblx0XHR9XG5cblx0XHQvLyBoYW5kbGUgc2VwYXJhdG9ycyA6XG5cdFx0QGlmICgkdmFyID09ICclLScgb3IgJHZhciA9PSAnLScgb3IgJHZhciA9PSAnLS0nIG9yICR2YXIgPT0gJ18nIG9yICR2YXIgPT0gJ19fJykgYW5kICRpIDwgbGVuZ3RoKCRwYXR0ZXJuKSB7XG5cdFx0XHQkaW5kZXggOiAkaSArIDE7XG5cdFx0XHQkdmFsdWUgOiBudGgoJHBhdHRlcm4sICRpbmRleCk7XG5cdFx0XHRAaWYgJHZhbHVlICE9ICclc3RhdGUnIGFuZCAkdmFsdWUgIT0gJyVjb3VudCcgYW5kICR2YWx1ZSAhPSAnJS0nIGFuZCAkdmFsdWUgIT0gJy0nIGFuZCAkdmFsdWUgIT0gJy0tJyBhbmQgJHZhbHVlICE9ICdfJyBhbmQgJHZhbHVlICE9ICdfXycgYW5kICR2YWx1ZSAhPSAnJXByZWZpeCcge1xuXHRcdFx0XHRAaWYgJHZhciA9PSAnJS0nIHtcblx0XHRcdFx0XHQkc2VsIDogXCIjeyRzZWx9I3skZ3JpZGxlLWNsYXNzLXNlcGFyYXRvcn1cIjtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0JHNlbCA6IFwiI3skc2VsfSN7JHZhcn1cIjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0QGlmICR2YWx1ZSA9PSAnJXN0YXRlJyBhbmQgJHN0YXRlIHtcblx0XHRcdFx0QGlmICR2YXIgPT0gJyUtJyB7XG5cdFx0XHRcdFx0JHNlbCA6IFwiI3skc2VsfSN7JGdyaWRsZS1jbGFzcy1zZXBhcmF0b3J9XCI7XG5cdFx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHRcdCRzZWwgOiBcIiN7JHNlbH0jeyR2YXJ9XCI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdEBpZiAkdmFsdWUgPT0gJyVjb3VudCcgYW5kICRjb3VudCB7XG5cdFx0XHRcdEBpZiAkdmFyID09ICclLScge1xuXHRcdFx0XHRcdCRzZWwgOiBcIiN7JHNlbH0jeyRncmlkbGUtY2xhc3Mtc2VwYXJhdG9yfVwiO1xuXHRcdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0XHQkc2VsIDogXCIjeyRzZWx9I3skdmFyfVwiO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gdXBkYXRlIGkgOlxuXHRcdCRpIDogJGkgKyAxO1xuXHR9XG5cblx0Ly8gcmV0dXJuIGdlbmVyYXRlZCBjbGFzcyA6XG5cdEByZXR1cm4gJHNlbDtcbn1cblxuXG4vKipcbiAqIEdldCB0aGUgbWVkaWEgcXVlcnkgZm9yIGEgcGFydGljdWxhciBzdGF0ZSwgb3Igd2l0aCwgZXRjLi4uXG4gKlxuICogQHBhcmFtIFx0TWl4ZWQgXHRcdCRzdGF0ZS1vci1taW4td2lkdGggXHRcdFRoZSBzdGF0ZSBuYW1lIG9mIHRoZSBtaW4gd2l0aFxuICogQHBhcmFtIFx0TWl4ZWQgXHRcdCRtYXgtd2lkdGggXHRcdFx0VGhlIG1heCB3aWR0aCBpZiBmaXJzdCBwYXJhbSBpcyBhIG1pbiB3aWR0aFxuICogQHJldHVybiBcdFN0cmluZyBcdFx0XHRcdFx0XHRUaGUgbWVkaWEgcXVlcnkgc3RyaW5nIHdpdGhvdXQgdGhlIEBtZWRpYVxuICovXG5AZnVuY3Rpb24gX2dyaWRsZV9nZXRfbWVkaWFfcXVlcnkoXG5cdCRzdGF0ZS1vci1zZXR0aW5nc1xuKSB7XG5cdC8vIGNoZWNrIGlmIGlzIGEgc3RyaW5nIDpcblx0JHN0YXRlIDogbnVsbDtcblx0QGlmIHR5cGUtb2YoJHN0YXRlLW9yLXNldHRpbmdzKSA9PSBzdHJpbmdcblx0e1xuXHRcdCRzdGF0ZSA6IF9ncmlkbGVfZ2V0X3N0YXRlKCRzdGF0ZS1vci1zZXR0aW5ncyk7XG5cdH1cblx0QGVsc2UgaWYgJHN0YXRlLW9yLXNldHRpbmdzID09IG51bGxcblx0e1xuXHRcdCRzdGF0ZSA6ICRfZ3JpZGxlLXNldHRpbmdzO1xuXHR9XG5cdEBlbHNlXG5cdHtcblx0XHQkc3RhdGUgOiBtYXAtbWVyZ2UoJF9ncmlkbGUtc2V0dGluZ3MsICRzdGF0ZS1vci1zZXR0aW5ncyk7XG5cdH1cblxuXHQvLyBpZiBpdCdzIHNvbWUgc2V0dGluZ3Mgb3IgYSBzdGF0ZSA6XG5cdEBpZiAkc3RhdGUge1xuXG5cdFx0Ly8gZ2V0IHZhcnMgOlxuXHRcdCRuYW1lIDogbWFwLWdldCgkc3RhdGUsIG5hbWUpO1xuXHRcdCRtaW4td2lkdGggOiBtYXAtZ2V0KCRzdGF0ZSwgbWluLXdpZHRoKTtcblx0XHQkbWF4LXdpZHRoIDogbWFwLWdldCgkc3RhdGUsIG1heC13aWR0aCk7XG5cdFx0JHF1ZXJ5IDogbWFwLWdldCgkc3RhdGUsIHF1ZXJ5KTtcblxuXHRcdC8vIGRpcmVjdCBxdWVyeSA6XG5cdFx0QGlmICRxdWVyeVxuXHRcdHtcblx0XHRcdEByZXR1cm4gJHF1ZXJ5O1xuXHRcdH0gXG5cdFx0QGVsc2UgaWYgJG1pbi13aWR0aCBhbmQgJG1heC13aWR0aFxuXHRcdHtcblx0XHRcdEByZXR1cm4gXCJzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pIGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KVwiO1xuXHRcdH1cblx0XHRAZWxzZSBpZiAkbWluLXdpZHRoXG5cdFx0e1xuXHRcdFx0QHJldHVybiBcInNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSlcIjtcblx0XHR9XG5cdFx0QGVsc2UgaWYgJG1heC13aWR0aFxuXHRcdHtcblx0XHRcdEByZXR1cm4gXCJzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pXCI7XG5cdFx0fVxuXHRcdEBlbHNlXG5cdFx0e1xuXHRcdFx0QHJldHVybiBudWxsO1xuXHRcdH1cblxuXHR9IFxuXHRAZWxzZVxuXHR7XG5cdFx0QHJldHVybiBudWxsO1xuXHR9XG59XG5cblxuLyoqXG4gKiBHZXQgc3RhdGVzIGNvdW50XG4gKiBcbiAqIEByZXR1cm4gXHRpbnQgXHRUaGUgbnVtYmVyIG9mIHN0YXRlcyBkZWZpbmVkXG4gKi9cbkBmdW5jdGlvbiBfZ3JpZGxlX2dldF9zdGF0ZXNfY291bnQoKSB7XG5cdEByZXR1cm4gbGVuZ3RoKCRfZ3JpZGxlX3N0YXRlcykgLyBsZW5ndGgoJF9ncmlkbGVfc3RhdGVzX3ZhcnNfcGF0dGVybik7XG59IiwiLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gfCBTZXR0aW5ncyBtaXhpbnNcbi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiBTZXR1cFxuICovXG5AbWl4aW4gZ3JpZGxlX3NldHVwKFxuXHQkc2V0dGluZ3MgOiAoKVxuKSB7XG5cdCRfZ3JpZGxlLXNldHRpbmdzIDogbWFwLW1lcmdlKChcblx0XHRuYW1lIDogZGVmYXVsdCxcblx0XHRtaW4td2lkdGggOiBudWxsLFxuXHRcdG1heC13aWR0aCA6IG51bGwsXG5cdFx0cXVlcnkgOiBudWxsLFxuXHRcdGNsYXNzZXMgOiB0cnVlLFxuXHRcdGNvbnRleHQgOiAxMixcblx0XHRndXR0ZXItd2lkdGggOiAyMHB4LFxuXHRcdGRpcmVjdGlvbiA6IGx0cixcblx0XHRuYW1lLW11bHRpcGxpY2F0b3IgOiAxLFxuXHRcdGRlYnVnIDogZmFsc2UsXG5cdFx0ZGVidWctc2hvdy1jbGFzcy1uYW1lcyA6IHRydWUsXG5cdFx0aWU3LXN1cHBvcnQgOiBmYWxzZSxcblx0XHRodG1sLXN0YXRlcy1jbGFzc2VzIDogZmFsc2UsXG5cdFx0Z2VuZXJhdGUtcHVzaC1jbGFzc2VzIDogdHJ1ZSxcblx0XHRnZW5lcmF0ZS1wdWxsLWNsYXNzZXMgOiB0cnVlLFxuXHRcdGdlbmVyYXRlLXByZWZpeC1jbGFzc2VzIDogdHJ1ZSxcblx0XHRnZW5lcmF0ZS1zdWZmaXgtY2xhc3NlcyA6IHRydWUsXG5cdFx0Z2VuZXJhdGUtaGVscGVycy1jbGFzc2VzIDogdHJ1ZVxuXHQpLCAkc2V0dGluZ3MpICFnbG9iYWw7XG5cblx0Ly8gcmVnaXN0ZXIgZGVmYXVsdCBzdGF0ZSA6XG5cdEBpbmNsdWRlIGdyaWRsZV9yZWdpc3Rlcl9zdGF0ZShkZWZhdWx0LCAkX2dyaWRsZS1zZXR0aW5ncyk7XG5cbn1cblxuLy8gUmVnaXN0ZXIgYW4gc3RhdGUgOlxuQG1peGluIGdyaWRsZV9yZWdpc3Rlcl9zdGF0ZShcblx0JG5hbWUsXG5cdCRzZXR0aW5nc1xuKSB7XG5cdC8vIHNldHRpbmdzIDpcblx0JHNldHRpbmdzIDogbWFwLW1lcmdlKCRfZ3JpZGxlLXNldHRpbmdzLCAkc2V0dGluZ3MpO1xuXG5cdC8vIHNldCBuYW1lIDpcblx0JHNldHRpbmdzIDogbWFwLXNldCgkc2V0dGluZ3MsIG5hbWUsICRuYW1lKTtcblxuXHQvLyBhZGQgc3RhdGUgaW4gbWFwcyA6XG5cdCRfZ3JpZGxlX3N0YXRlcyA6IG1hcC1zZXQoJF9ncmlkbGVfc3RhdGVzLCAkbmFtZSwgJHNldHRpbmdzKSAhZ2xvYmFsO1xufVxuXG5cbi8qKlxuICogIFJlZ2lzdGVyIGEgY2xlYXIgZWFjaCBjbGFzc1xuICovXG5AbWl4aW4gZ3JpZGxlX3JlZ2lzdGVyX2NsZWFyX2VhY2goXG5cdCRjb3VudCxcblx0JGNsZWFyV2hhdFxuKSB7XG5cdC8vIGNyZWF0ZSB0aGUgY2xlYXIgbWFwIDpcblx0JGNsYXNzTWFwIDogKFxuXHRcdGNsZWFyRWFjaCA6ICRjb3VudCxcblx0XHRjbGVhcldoYXQgOiAkY2xlYXJXaGF0XG5cdCk7XG5cblx0Ly8gYXBwZW5kIHRvIG1hcCA6XG5cdCRfZ3JpZGxlX2NsZWFyX2NsYXNzZXMgOiBtYXAtc2V0KCRfZ3JpZGxlX2NsZWFyX2NsYXNzZXMsICRjb3VudCwgJGNsYXNzTWFwKSAhZ2xvYmFsO1xufVxuXG5cbi8qKlxuICogUmVnaXN0ZXIgYSBzcGVjaWFsIGNsYXNzXG4gKi9cbkBtaXhpbiBncmlkbGVfcmVnaXN0ZXJfY29sdW1uKFxuXHQkbmFtZSxcblx0JGNvbHVtbnMsXG5cdCRjb250ZXh0XG4pIHtcblx0Ly8gY3JlYXRlIGEgY29sdW1uIDpcblx0JGNvbCA6IF9ncmlkbGVfY3JlYXRlX2NvbHVtbigkbmFtZSwgJGNvbHVtbnMsICRjb250ZXh0KTtcblxuXHQvLyBhZGQgY29sdW1uIGluIG1hcHMgOlxuXHQkX2dyaWRsZV9jb2x1bW5zIDogbWFwLXNldCgkX2dyaWRsZV9jb2x1bW5zLCAkbmFtZSwgJGNvbCkgIWdsb2JhbDtcbn1cblxuXG4vKipcbiAqIFJlZ2lzdGVyIGRlZmF1bHQgc3RhdGVzXG4gKi9cbkBtaXhpbiBncmlkbGVfcmVnaXN0ZXJfZGVmYXVsdF9zdGF0ZXMoKSB7XG5cdEBpbmNsdWRlIGdyaWRsZV9yZWdpc3Rlcl9zdGF0ZShtb2JpbGUsIChcblx0XHRtYXgtd2lkdGggOiA0ODBweFxuXHQpKTtcblx0QGluY2x1ZGUgZ3JpZGxlX3JlZ2lzdGVyX3N0YXRlKHRhYmxldCwgKFxuXHRcdG1pbi13aWR0aCA6IDQ4MXB4LFxuXHRcdG1heC13aWR0aCA6IDEwMjRweFxuXHQpKTtcbn1cblxuXG4vKipcbiAqIFJlZ2lzdGVyIGRlZmF1bHQgbW9iaWxlIGZpcnN0IHN0YXRlcyA6XG4gKi9cbkBtaXhpbiBncmlkbGVfcmVnaXN0ZXJfZGVmYXVsdF9tb2JpbGVfZmlyc3Rfc3RhdGVzKCkge1xuXHRAaW5jbHVkZSBncmlkbGVfcmVnaXN0ZXJfc3RhdGUoeHMsIChcblx0XHRtYXgtd2lkdGggOiA3NjhweFxuXHQpKTtcblx0QGluY2x1ZGUgZ3JpZGxlX3JlZ2lzdGVyX3N0YXRlKHNtLCAoXG5cdFx0bWluLXdpZHRoIDogNzY4cHhcblx0KSk7XG5cdEBpbmNsdWRlIGdyaWRsZV9yZWdpc3Rlcl9zdGF0ZShtZCwgKFxuXHRcdG1pbi13aWR0aCA6IDk5MnB4XG5cdCkpO1xuXHRAaW5jbHVkZSBncmlkbGVfcmVnaXN0ZXJfc3RhdGUobGcsIChcblx0XHRtaW4td2lkdGggOiAxMjAwcHhcblx0KSk7XG59XG5cblxuLyoqXG4gKiBTZXQgdGhlIGRlYnVnIGRldmljZSAobm90IHVzZWQgZm9yIG5vdylcbiAqIFxuICogQHBhcmFtIFx0U3RyaW5nIFx0XHQkc3RhdGUgXHRcdFRoZSBzdGF0ZSB0byB1cGRhdGVcbiAqIEBwYXJhIG0gXHRTdHJpbmcgXHRcdCRkZXZpY2UgXHRUaGUgZGV2aWNlIHRvIHVzZSAoaXBob25lLCBldGMuLi4pXG4gKi9cbkBtaXhpbiBncmlkbGVfc2V0X2RlYnVnX2RldmljZShcblx0JHN0YXRlIDogZGVmYXVsdCxcblx0JGRldmljZSA6IG51bGxcbikge1xuXG5cdC8vIGNoZWNrIHBhcmFtcyA6XG5cdEBpZiAkc3RhdGUgYW5kICRkZXZpY2Uge1xuXHRcdC8vIHNldCB0aGUgc3RhdGUgZGV2aWNlIDpcblx0XHQkX2dyaWRsZV9zdGF0ZXNfZGVidWdfZGV2aWNlcyA6IGFwcGVuZCgkX2dyaWRsZV9zdGF0ZXNfZGVidWdfZGV2aWNlcywgdW5xdW90ZShcIlxcXCIjeyRzdGF0ZX1cXFwiIDogXFxcIiN7JGRldmljZX1cXFwiXCIpLCBjb21tYSk7XG5cdH1cblxufSIsIi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwgTWl4aW5zXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlbHBlciB0byBhcHBseSBtdWx0aXBsZSBjb25maWcgZm9yIGEgY2VydGFpbiBzdGF0ZSB3aXRoIG9uZSBtaXhpblxuQG1peGluIGdyaWRsZV9zZXQoXG5cdCRzZXR0aW5ncyxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdFxuXHQvLyBsb29wIG9uIGVhY2ggc2V0dGluZ3Ncblx0QGVhY2ggJHNldHRpbmdOYW1lLCAkc2V0dGluZ1ZhbHVlIGluICRzZXR0aW5nc1xuXHR7XG5cdFx0JHNuIDogdW5xdW90ZShcIiN7JHNldHRpbmdOYW1lfVwiKTtcblx0XHQkc3YgOiAkc2V0dGluZ1ZhbHVlO1xuXG5cdFx0Ly8gY2hlY2sgaWYgc2V0dGluZyBuYW1lIGlzIGEgc3RhdGUgOlxuXHRcdEBpZiBfZ3JpZGxlX2hhc19zdGF0ZSgkc24pIHtcblx0XHRcdC8vIHByb2Nlc3MgdGhlIHN0YXRlXG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfc2V0KCRzdiwgJHNuKTtcblx0XHR9IEBlbHNlIHtcblx0XHRcdEBpZiAkc24gPT0gY29udGFpbmVyIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2NvbnRhaW5lcigkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gZ3JpZCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZSgkc3YsICRzdGF0ZSk7XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBwdXNoIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3B1c2goJHN2LCAkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gcHVsbCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9wdWxsKCRzdiwgJHN0YXRlKTtcblx0XHRcdH0gQGVsc2UgaWYgJHNuID09IHByZWZpeCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9wcmVmaXgoJHN2LCAkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gc3VmZml4IHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N1ZmZpeCgkc3YsICRzdGF0ZSk7XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBwdWxsIHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3B1bGwoJHN2LCAkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gY2xlYXJfZWFjaCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9jbGVhcl9lYWNoKG50aCgkc3YsMSksIG50aCgkc3YsMiksICRzdGF0ZSk7XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBjZW50ZXJlZCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9jZW50ZXJlZCgkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gcGFyZW50IHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3BhcmVudCgkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gdmVydGljYWxfYWxpZ24ge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfdmVydGljYWxfYWxpZ24oJHN2LCAkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gaGlkZSB7XG5cdFx0XHRcdEBpZiAkc3YgPT0gdHJ1ZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2hpZGUoJHN0YXRlKTtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Nob3coJHN0YXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gc2hvdyB7XG5cdFx0XHRcdEBpZiAkc3YgPT0gdHJ1ZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Nob3coJHN0YXRlKTtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2hpZGUoJHN0YXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gdmlzaWJsZSB7XG5cdFx0XHRcdEBpZiAkc3YgPT0gdHJ1ZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Zpc2libGUoJHN0YXRlKTtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX25vdF92aXNpYmxlKCRzdGF0ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH0gQGVsc2UgaWYgJHNuID09IG5vdF92aXNpYmxlIHtcblx0XHRcdFx0QGlmICRzdiA9PSB0cnVlIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfbm90X3Zpc2libGUoJHN0YXRlKTtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Zpc2libGUoJHN0YXRlKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gc2hvd19pbmxpbmUge1xuXHRcdFx0XHRAaWYgJHN2ID09IHRydWUge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zaG93X2lubGluZSgkc3RhdGUpO1xuXHRcdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfaGlkZSgkc3RhdGUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBmbG9hdCB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9mbG9hdCgkc3YsICRzdGF0ZSk7XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBjbGVhciB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9jbGVhcigkc3YsICRzdGF0ZSk7XG5cdFx0XHR9IEBlbHNlIGlmICRzbiA9PSBub19ndXR0ZXJcblx0XHRcdFx0b3IgJHNuID09IG5vX21hcmdpbiB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9ub19ndXR0ZXIoJHN2LCAkc3RhdGUpO1xuXHRcdFx0fSBAZWxzZSBpZiAkc24gPT0gZ3V0dGVyXG5cdFx0XHRcdG9yICRzbiA9PSBtYXJnaW4ge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfZ3V0dGVyKCRzdiwgJHN0YXRlKTtcblx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHQvLyB3ZSBkbyBub3RoaW5nXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFJlc3BvbnNpdmUgaGVscGVycyBtaXhpbnMgOlxuQG1peGluIGdyaWRsZV9zdGF0ZShcblx0JHN0YXRlcyxcblx0JGhhcy1wYXJlbnQgOiB0cnVlXG4pIHtcblxuXHQvLyBjaGVjayBmaXJzdCBwYXJhbSBpZiBpcyBhIHN0YXRlIDpcblx0JGZpcnN0U3RhdGUgOiBudGgoJHN0YXRlcywxKTtcblx0QGlmIF9ncmlkbGVfaGFzX3N0YXRlKCRmaXJzdFN0YXRlKSB7XG5cblx0XHQvLyBsb29wIG9uIGVhY2ggc3RhdGVzIDpcblx0XHRAZWFjaCAkc3RhdGUgaW4gJHN0YXRlc1xuXHRcdHtcblx0XHRcdC8vIHZhcmlhYmxlcyA6XG5cdFx0XHQkaHRtbC1zdGF0ZXMtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShodG1sLXN0YXRlcy1jbGFzc2VzLCAkc3RhdGUpO1xuXHRcdFx0JGRlYnVnIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLCAkc3RhdGUpO1xuXHRcdFx0JHN0YXRlTmFtZSA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShuYW1lLCAkc3RhdGUpO1xuXG5cdFx0XHQvLyBjaGVjayBpZiBpcyBhIHN0YXRlIDpcblx0XHRcdEBpZiAoJGh0bWwtc3RhdGVzLWNsYXNzZXMgb3IgJGRlYnVnKVxuXHRcdFx0XHRhbmQgJHN0YXRlTmFtZSB7XG5cdFx0XHRcdC8vIGh0bWwgY2xhc3MgOlxuXHRcdFx0XHRAaWYgJGhhcy1wYXJlbnQge1xuXHRcdFx0XHRcdGh0bWwje19ncmlkbGVfY2xhc3NuYW1lKFwiI3skc3RhdGVOYW1lfVwiKX0gJiB7IEBjb250ZW50OyB9XG5cdFx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHRcdGh0bWwje19ncmlkbGVfY2xhc3NuYW1lKFwiI3skc3RhdGVOYW1lfVwiKX0geyBAY29udGVudDsgfVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIGdldCB0aGUgbWVkaWEgcXVlcnkgOlxuXHRcdFx0JHEgOiBfZ3JpZGxlX2dldF9tZWRpYV9xdWVyeSgkc3RhdGUpO1xuXG5cdFx0XHQvLyBtYWtlIHRoZSBtZWRpYSBxdWVyeSBpZiBhIHF1ZXJ5IGV4aXN0IDpcblx0XHRcdEBpZiAkcSB7XG5cdFx0XHRcdEBtZWRpYSAjeyRxfSB7XG5cdFx0XHRcdFx0QGNvbnRlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdEBlbHNlXG5cdFx0XHR7XG5cdFx0XHRcdEBjb250ZW50O1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9IEBlbHNlIHtcblxuXHRcdC8vIHZhcmlhYmxlcyA6XG5cdFx0JGh0bWwtc3RhdGVzLWNsYXNzZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoaHRtbC1zdGF0ZXMtY2xhc3NlcywgJHN0YXRlcyk7XG5cdFx0JGRlYnVnIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLCAkc3RhdGVzKTtcblx0XHQkc3RhdGVOYW1lIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKG5hbWUsICRzdGF0ZXMpO1xuXG5cdFx0Ly8gY2hlY2sgaWYgaXMgYSBzdGF0ZSA6XG5cdFx0QGlmICgkaHRtbC1zdGF0ZXMtY2xhc3NlcyBvciAkZGVidWcpXG5cdFx0XHRhbmQgJHN0YXRlTmFtZSB7XG5cdFx0XHQvLyBodG1sIGNsYXNzIDpcblx0XHRcdEBpZiAkaGFzLXBhcmVudCB7XG5cdFx0XHRcdGh0bWwje19ncmlkbGVfY2xhc3NuYW1lKFwiI3skc3RhdGVOYW1lfVwiKX0gJiB7IEBjb250ZW50OyB9XG5cdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0aHRtbCN7X2dyaWRsZV9jbGFzc25hbWUoXCIjeyRzdGF0ZU5hbWV9XCIpfSB7IEBjb250ZW50OyB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gZ2V0IHRoZSBtZWRpYSBxdWVyeSA6XG5cdFx0JHEgOiBfZ3JpZGxlX2dldF9tZWRpYV9xdWVyeSgkc3RhdGVzKTtcblxuXHRcdC8vIG1ha2UgdGhlIG1lZGlhIHF1ZXJ5IGlmIGEgcXVlcnkgZXhpc3QgOlxuXHRcdEBpZiAkcSB7XG5cdFx0XHRAbWVkaWEgI3skcX0ge1xuXHRcdFx0XHRAY29udGVudDtcblx0XHRcdH1cblx0XHR9XG5cdFx0QGVsc2Vcblx0XHR7XG5cdFx0XHRAY29udGVudDtcblx0XHR9XG5cblx0fVxufVxuXG5cblxuLy8gQ29udGFpbmVyIG1peGluIDpcbkBtaXhpbiBncmlkbGVfY29udGFpbmVyKFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0QGluY2x1ZGUgX2dyaWRsZV9jb250YWluZXJfY29tbW9uKCRzdGF0ZSk7XG59XG5cblxuLy8gR3JpZCBtaXhpbiA6XG4vLyBTZXQgdGhlIHdpZHRoIG9mIHRoZSBzcGVjaWZpZWQgZ3JpZCBjb2x1bW4gOlxuQG1peGluIGdyaWRsZShcblx0JGNvbHVtbnMsXG5cdCRzdGF0ZS1vci1jb250ZXh0IDogZGVmYXVsdCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIG1hbmFnZSBzdGF0ZSBhbmQgY29udGV4dCA6XG5cdCRjb250ZXh0IDogbnVsbDtcblx0QGlmIHR5cGUtb2YoJHN0YXRlLW9yLWNvbnRleHQpID09IG51bWJlciB7XG5cdFx0JGNvbnRleHQgOiAkc3RhdGUtb3ItY29udGV4dDtcblx0fSBAZWxzZSB7XG5cdFx0JHN0YXRlIDogJHN0YXRlLW9yLWNvbnRleHQ7XG5cdH1cblxuXHQvLyBjb21tb24gOlxuXHRAaW5jbHVkZSBfZ3JpZGxlX2dyaWRfY29tbW9uKCk7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlKCRjb2x1bW5zLCAkc3RhdGUsICRjb250ZXh0KTtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBpbmNsdWRlIF9ncmlkbGUoJGNvbHVtbnMsICRzdGF0ZSwgJGNvbnRleHQpO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZShcblx0JGNvbHVtbnMsXG5cdCRzdGF0ZSA6IGRlZmF1bHQsXG5cdCRjb250ZXh0IDogbnVsbFxuKSB7XG5cdC8vIHZhcnMgOlxuXHQkbmFtZSA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShuYW1lLCAkc3RhdGUpO1xuXHRAaWYgdHlwZS1vZigkY29udGV4dCkgIT0gbnVtYmVyIHtcblx0XHQkY29udGV4dCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShjb250ZXh0LCAkc3RhdGUpO1xuXHR9XG5cdCRuYW1lLW11bHRpcGxpY2F0b3IgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUobmFtZS1tdWx0aXBsaWNhdG9yLCAkc3RhdGUpO1xuXHQkZ3V0dGVyLXdpZHRoIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGd1dHRlci13aWR0aCwgJHN0YXRlKTtcblx0JGllNy1zdXBwb3J0IDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGllNy1zdXBwb3J0LCAkc3RhdGUpO1xuXHQkZGVidWcgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWcsICRzdGF0ZSk7XG5cdCRkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLXNob3ctY2xhc3MtbmFtZXMsICRzdGF0ZSk7XG5cblx0Ly8gbWFuYWdlIGNvbHVtbnNcblx0QGlmIHR5cGUtb2YoJGNvbHVtbnMpICE9IG51bWJlciBhbmQgbWFwLWhhcy1rZXkoJF9ncmlkbGVfY29sdW1ucywgJGNvbHVtbnMpIHtcblx0XHQvLyB0aGUgY29sdW1ucyBpcyBhIHNhdmVkIG9uZSwgZ2V0IHRoZSBjb250ZXh0IGFuZCBjb2x1bW4gdmFsdWVcblx0XHQkY29sdW1uIDogbWFwLWdldCgkX2dyaWRsZV9jb2x1bW5zLCAkY29sdW1ucyk7XG5cdFx0JGNvbnRleHQgOiBtYXAtZ2V0KCRjb2x1bW4sIGNvbnRleHQpO1xuXHRcdCRjb2x1bW5zIDogbWFwLWdldCgkY29sdW1uLCBjb2x1bW5zKTtcblx0fSBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSBudW1iZXIge1xuXHRcdCRjb2x1bW5zIDogJGNvbHVtbnMgLyAkbmFtZS1tdWx0aXBsaWNhdG9yO1xuXHR9IEBlbHNlIHtcblx0XHRAZXJyb3IgXCJ0aGUgY29sdW1uICN7JGNvbHVtbnN9IGRvZXMgbm90IGV4aXN0Li4uXCI7XG5cdH1cblxuXHQvLyB2YXJzIDpcblx0JHdpZHRoIDogcGVyY2VudGFnZSgxIC8gJGNvbnRleHQgKiAkY29sdW1ucyk7XG5cblx0Ly8gc2V0IHZhbHVlIDpcblx0d2lkdGg6JHdpZHRoO1xuXHRcblx0Ly8gaWU3IHN1cHBvcnQgOlxuXHRAaWYgJGllNy1zdXBwb3J0ID09IHRydWUge1xuXHRcdCp3aWR0aDogZXhwcmVzc2lvbigodGhpcy5wYXJlbnROb2RlLmNsaWVudFdpZHRoLyN7JGNvbnRleHR9KiN7KCRjb2x1bW5zIC8gJG5hbWUtbXVsdGlwbGljYXRvcil9IC0gcGFyc2VJbnQodGhpcy5jdXJyZW50U3R5bGVbJ3BhZGRpbmdMZWZ0J10pIC0gcGFyc2VJbnQodGhpcy5jdXJyZW50U3R5bGVbJ3BhZGRpbmdSaWdodCddKSkgKyAncHgnKTtcblx0fVxuXHRcblx0Ly8gZGVidWcgOlxuXHRAaWYgJGRlYnVnID09IHRydWUgYW5kICRkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzID09IHRydWUge1xuXHRcdCN7JGdyaWRsZS1kZWJ1Zy1zZWxlY3Rvcn0ge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRAaWYgJG5hbWUgPT0gZGVmYXVsdCB7XG5cdFx0XHRcdFx0Y29udGVudDpcImdyaWQtI3skbmFtZX0tI3skY29sdW1uc31cIjtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0Y29udGVudDpcImdyaWQtI3skbmFtZX0tI3skY29sdW1uc31cIiAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmLnBhcmVudDpiZWZvcmUge1xuXHRcdFx0XHRAaWYgJG5hbWUgPT0gZGVmYXVsdCB7XG5cdFx0XHRcdFx0Y29udGVudDpcImdyaWQtcGFyZW50LSN7JG5hbWV9LSN7JGNvbHVtbnN9XCI7XG5cdFx0XHRcdH0gQGVsc2Uge1xuXHRcdFx0XHRcdGNvbnRlbnQ6XCJncmlkLXBhcmVudC0jeyRuYW1lfS0jeyRjb2x1bW5zfVwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vLyBwdXNoIDpcbi8vIFB1c2ggdGhlIGVsZW1lbnQgb2YgdGhlIGNvdW50IG9mIGNvbHVtbiB3YW50ZWRcbkBtaXhpbiBncmlkbGVfcHVzaChcblx0JGNvbHVtbnMsXG5cdCRzdGF0ZS1vci1jb250ZXh0IDogZGVmYXVsdCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIG1hbmFnZSBzdGF0ZSBhbmQgY29udGV4dFxuXHQkY29udGV4dCA6IG51bGw7XG5cdEBpZiB0eXBlLW9mKCRzdGF0ZS1vci1jb250ZXh0KSA9PSBudW1iZXIge1xuXHRcdCRjb250ZXh0IDogJHN0YXRlLW9yLWNvbnRleHQ7XG5cdH0gQGVsc2Uge1xuXHRcdCRzdGF0ZSA6ICRzdGF0ZS1vci1jb250ZXh0O1xuXHR9XG5cblx0Ly8gY29tbW9uIDpcblx0QGluY2x1ZGUgX2dyaWRsZV9wdXNoX2NvbW1vbigkc3RhdGUpO1xuXG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3B1c2goJGNvbHVtbnMsICRzdGF0ZSwgJGNvbnRleHQpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9wdXNoKCRjb2x1bW5zLCAkc3RhdGUsICRjb250ZXh0KTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfcHVzaChcblx0JGNvbHVtbnMsXG5cdCRzdGF0ZSA6IGRlZmF1bHQsXG5cdCRjb250ZXh0IDogbnVsbFxuKSB7XG5cdC8vIHZhcmlhYmxlcyA6XG5cdCRuYW1lIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKG5hbWUsICRzdGF0ZSk7XG5cdEBpZiB0eXBlLW9mKCRjb250ZXh0KSAhPSBudW1iZXIge1xuXHRcdCRjb250ZXh0IDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNvbnRleHQsICRzdGF0ZSk7XG5cdH1cblx0JGRpcmVjdGlvbiA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkaXJlY3Rpb24sICRzdGF0ZSk7XG5cdCRuYW1lLW11bHRpcGxpY2F0b3IgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUobmFtZS1tdWx0aXBsaWNhdG9yLCAkc3RhdGUpO1xuXHQkZGVidWcgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWcsICRzdGF0ZSk7XG5cdCRkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLXNob3ctY2xhc3MtbmFtZXMsICRzdGF0ZSk7XG5cblx0Ly8gdmFycyA6XG5cdCR3aWR0aCA6IHBlcmNlbnRhZ2UoMSAvICRjb250ZXh0KSAqICgkY29sdW1ucyAvICRuYW1lLW11bHRpcGxpY2F0b3IpO1xuXHRAaWYgJGRpcmVjdGlvbiA9PSBydGwgeyAkd2lkdGggOiAkd2lkdGgqLTE7IH1cblx0bGVmdDokd2lkdGg7XG5cblx0Ly8gZGVidWcgY3NzIDpcblx0QGlmICRkZWJ1ZyA9PSB0cnVlIGFuZCAkZGVidWctc2hvdy1jbGFzcy1uYW1lcyA9PSB0cnVlIHtcblx0XHQjeyRncmlkbGUtZGVidWctc2VsZWN0b3J9IHtcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRAaWYgJG5hbWUgPT0gZGVmYXVsdCB7XG5cdFx0XHRcdFx0Y29udGVudDpcInB1c2gtI3skbmFtZX0tI3skY29sdW1uc31cIjtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0Y29udGVudDpcInB1c2gtI3skbmFtZX0tI3skY29sdW1uc31cIiAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuXG4vLyBwdWxsIDpcbi8vIFB1bGwgdGhlIGVsZW1lbnQgb2YgdGhlIGNvdW50IG9mIGNvbHVtbiB3YW50ZWRcbkBtaXhpbiBncmlkbGVfcHVsbChcblx0JGNvbHVtbnMsXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHQvLyBjb21tb24gOlxuXHRAaW5jbHVkZSBfZ3JpZGxlX3B1bGxfY29tbW9uKCRzdGF0ZSk7XG5cblx0Ly8gY2hlY2sgaWYgbmVlZCBtZWRpYSBxdWVyeSA6XG5cdEBpZiAkc3RhdGUge1xuXHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfcHVsbCgkY29sdW1ucywkc3RhdGUpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9wdWxsKCRjb2x1bW5zLCRzdGF0ZSk7XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3B1bGwoXG5cdCRjb2x1bW5zLFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gdmFycyA6XG5cdCRuYW1lIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKG5hbWUsICRzdGF0ZSk7XG5cdCRjb250ZXh0IDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNvbnRleHQsICRzdGF0ZSk7XG5cdCRkaXJlY3Rpb24gOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGlyZWN0aW9uLCAkc3RhdGUpO1xuXHQkbmFtZS1tdWx0aXBsaWNhdG9yIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKG5hbWUtbXVsdGlwbGljYXRvciwgJHN0YXRlKTtcblx0JGRlYnVnIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLCAkc3RhdGUpO1xuXHQkZGVidWctc2hvdy1jbGFzcy1uYW1lcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzLCAkc3RhdGUpO1xuXG5cdC8vIHZhcnMgOlxuXHQkd2lkdGggOiBwZXJjZW50YWdlKDEgLyAkY29udGV4dCkgKiAoJGNvbHVtbnMgLyAkbmFtZS1tdWx0aXBsaWNhdG9yKTtcblx0QGlmICRkaXJlY3Rpb24gPT0gcnRsIHsgJHdpZHRoIDogJHdpZHRoKi0xOyB9XG5cdHJpZ2h0OiR3aWR0aDtcblxuXHQvLyBkZWJ1ZyBjc3MgOlxuXHRAaWYgJGRlYnVnID09IHRydWUgYW5kICRkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzID09IHRydWUge1xuXHRcdCN7JGdyaWRsZS1kZWJ1Zy1zZWxlY3Rvcn0ge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdEBpZiAkbmFtZSA9PSBkZWZhdWx0IHtcblx0XHRcdFx0XHRjb250ZW50OlwicHVsbC0jeyRuYW1lfS0jeyRjb2x1bW5zfVwiO1xuXHRcdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0XHRjb250ZW50OlwicHVsbC0jeyRuYW1lfS0jeyRjb2x1bW5zfVwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vLyBwdXNoIDpcbi8vIFB1c2ggdGhlIGVsZW1lbnQgb2YgdGhlIGNvdW50IG9mIGNvbHVtbiB3YW50ZWRcbkBtaXhpbiBncmlkbGVfcHJlZml4KFxuXHQkY29sdW1ucyxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNvbW1vbiA6XG5cdEBpbmNsdWRlIF9ncmlkbGVfcHJlZml4X2NvbW1vbigkc3RhdGUpO1xuXHRcblx0Ly8gY2hlY2sgaWYgbmVlZCBtZWRpYSBxdWVyeSA6XG5cdEBpZiAkc3RhdGUge1xuXHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfcHJlZml4KCRjb2x1bW5zLCRzdGF0ZSk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX3ByZWZpeCgkY29sdW1ucywkc3RhdGUpO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV9wcmVmaXgoXG5cdCRjb2x1bW5zLFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gdmFycyA6XG5cdCRuYW1lIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKG5hbWUsICRzdGF0ZSk7XG5cdCRjb250ZXh0IDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNvbnRleHQsICRzdGF0ZSk7XG5cdCRkaXJlY3Rpb24gOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGlyZWN0aW9uLCAkc3RhdGUpO1xuXHQkZ3V0dGVyLXdpZHRoIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGd1dHRlci13aWR0aCwgJHN0YXRlKTtcblx0JG5hbWUtbXVsdGlwbGljYXRvciA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShuYW1lLW11bHRpcGxpY2F0b3IsICRzdGF0ZSk7XG5cdCRkZWJ1ZyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkZWJ1ZywgJHN0YXRlKTtcblx0JGRlYnVnLXNob3ctY2xhc3MtbmFtZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWctc2hvdy1jbGFzcy1uYW1lcywgJHN0YXRlKTtcblxuXHQvLyB2YXJzIDpcblx0JHdpZHRoIDogcGVyY2VudGFnZSgxIC8gJGNvbnRleHQpICogKCRjb2x1bW5zIC8gJG5hbWUtbXVsdGlwbGljYXRvcik7XG5cblx0Ly8gc2V0IHZhbHVlIDpcblx0QGlmICRkaXJlY3Rpb24gPT0gcnRsIHsgbWFyZ2luLXJpZ2h0OiR3aWR0aDsgfVxuXHRAZWxzZSB7IG1hcmdpbi1sZWZ0OiR3aWR0aDsgfVxuXG5cdC8vIGRlYnVnIGNzcyA6XG5cdEBpZiAkZGVidWcgPT0gdHJ1ZSBhbmQgJGRlYnVnLXNob3ctY2xhc3MtbmFtZXMgPT0gdHJ1ZSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGlmICRuYW1lID09IGRlZmF1bHQge1xuXHRcdFx0XHRcdGNvbnRlbnQ6XCJwcmVmaXgtI3skbmFtZX0tI3skY29sdW1uc31cIjtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0Y29udGVudDpcInByZWZpeC0jeyRuYW1lfS0jeyRjb2x1bW5zfVwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vLyBwdWxsIDpcbi8vIFB1bGwgdGhlIGVsZW1lbnQgb2YgdGhlIGNvdW50IG9mIGNvbHVtbiB3YW50ZWRcbkBtaXhpbiBncmlkbGVfc3VmZml4KFxuXHQkY29sdW1ucyxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNvbW1vbiA6XG5cdEBpbmNsdWRlIF9ncmlkbGVfc3VmZml4X2NvbW1vbigkc3RhdGUpO1xuXG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3N1ZmZpeCgkY29sdW1ucywkc3RhdGUpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9zdWZmaXgoJGNvbHVtbnMsJHN0YXRlKTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfc3VmZml4KFxuXHQkY29sdW1ucyxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIHZhcnMgOlxuXHQkbmFtZSA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShuYW1lLCAkc3RhdGUpO1xuXHQkY29udGV4dCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShjb250ZXh0LCAkc3RhdGUpO1xuXHQkZGlyZWN0aW9uIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRpcmVjdGlvbiwgJHN0YXRlKTtcblx0JGd1dHRlci13aWR0aCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShndXR0ZXItd2lkdGgsICRzdGF0ZSk7XG5cdCRuYW1lLW11bHRpcGxpY2F0b3IgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUobmFtZS1tdWx0aXBsaWNhdG9yLCAkc3RhdGUpO1xuXHQkZGVidWcgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWcsICRzdGF0ZSk7XG5cdCRkZWJ1Zy1zaG93LWNsYXNzLW5hbWVzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLXNob3ctY2xhc3MtbmFtZXMsICRzdGF0ZSk7XG5cblx0Ly8gdmFycyA6XG5cdCR3aWR0aCA6IHBlcmNlbnRhZ2UoMSAvICRjb250ZXh0KSAqICgkY29sdW1ucyAvICRuYW1lLW11bHRpcGxpY2F0b3IpO1xuXHRcblx0Ly8gc2V0IHZhbHVlIDpcblx0QGlmICRkaXJlY3Rpb24gPT0gcnRsIHsgbWFyZ2luLWxlZnQ6JHdpZHRoOyB9XG5cdEBlbHNlIHsgbWFyZ2luLXJpZ2h0OiR3aWR0aDsgfVxuXG5cdC8vIGRlYnVnIGNzcyA6XG5cdEBpZiAkZGVidWcgPT0gdHJ1ZSBhbmQgJGRlYnVnLXNob3ctY2xhc3MtbmFtZXMgPT0gdHJ1ZSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGlmICRuYW1lID09IGRlZmF1bHQge1xuXHRcdFx0XHRcdGNvbnRlbnQ6XCJzdWZmaXgtI3skbmFtZX0tI3skY29sdW1uc31cIjtcblx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0Y29udGVudDpcInN1ZmZpeC0jeyRuYW1lfS0jeyRjb2x1bW5zfVwiICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vLyBncmlkIGJhY2tncm91bmQgOlxuLy8gRGlzcGxheSB0aGUgZ3JpZCBiYWNrZ3JvdW5kIGRlYnVnXG5AbWl4aW4gZ3JpZGxlX2dyaWRfYmFja2dyb3VuZChcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2dyaWRfYmFja2dyb3VuZCgkc3RhdGUpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9ncmlkX2JhY2tncm91bmQoJHN0YXRlKTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfZ3JpZF9iYWNrZ3JvdW5kKFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0XG5cdC8vIHZhcmlhYmxlcyA6XG5cdCRjb250ZXh0IDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNvbnRleHQsICRzdGF0ZSk7XG5cblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHotaW5kZXg6OTk5OTtcblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6Jyc7XG5cdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0dG9wOjA7IGxlZnQ6MDtcblx0XHR3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJSAhaW1wb3J0YW50O1xuXHRcdC8vIHZhcnMgOlxuXHRcdCR3aWR0aCA6IHBlcmNlbnRhZ2UoMSAvICRjb250ZXh0KTtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwwLDAsLjAxKSA1MCUgLCByZ2JhKDAsMCwwLC4wNCkgNTAlKTsgLyogU3RhbmRhcmQgc3ludGF4ICovXG5cdFx0YmFja2dyb3VuZC1zaXplOigkd2lkdGgqMikgMTAwJTtcblx0XHQvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiRncmlkbGUtZ3V0dGVyLXdpZHRoLzIgMDtcblx0fVxufVxuXG5cbi8qKlxuICogUGFyZW50IGNsZWFyIGVhY2hcbiAqL1xuLy8gR3JpZCBtaXhpbiA6XG4vLyBTZXQgdGhlIHdpZHRoIG9mIHRoZSBzcGVjaWZpZWQgZ3JpZCBjb2x1bW4gOlxuQG1peGluIGdyaWRsZV9jbGVhcl9lYWNoKFxuXHQkY2xlYXJFYWNoLFxuXHQkY2xlYXJXaGF0IDogYm90aCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2NsZWFyX2VhY2goJGNsZWFyRWFjaCwgJGNsZWFyV2hhdCk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX2NsZWFyX2VhY2goJGNsZWFyRWFjaCwgJGNsZWFyV2hhdCk7XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX2NsZWFyX2VhY2goXG5cdCRjbGVhckVhY2gsXG5cdCRjbGVhcldoYXRcbikge1xuXHQ+ICo6bnRoLWNoaWxkKCN7JGNsZWFyRWFjaH1uKzEpIHtcblx0XHRjbGVhciA6ICRjbGVhcldoYXQ7XG5cdH1cbn1cblxuXG4vLyBHcmlkIGNlbnRlcmVkIDpcbkBtaXhpbiBncmlkbGVfY2VudGVyZWQoXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHQvLyBjaGVjayBpZiBuZWVkIG1lZGlhIHF1ZXJ5IDpcblx0QGlmICRzdGF0ZSB7XG5cdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCRzdGF0ZSkge1xuXHRcdFx0QGluY2x1ZGUgX2dyaWRsZV9jZW50ZXJlZCgpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9jZW50ZXJlZCgpO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV9jZW50ZXJlZCgpIHtcblx0ZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xuXHRmbG9hdDpub25lICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1sZWZ0OmF1dG8gIWltcG9ydGFudDtcblx0bWFyZ2luLXJpZ2h0OmF1dG8gIWltcG9ydGFudDtcblx0Y2xlYXI6Ym90aCAhaW1wb3J0YW50O1xufVxuXG5cbi8vIEdyaWQgcGFyZW50IDpcbkBtaXhpbiBncmlkbGVfcGFyZW50KFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gY29tbW9uIDpcblx0QGluY2x1ZGUgX2dyaWRsZV9wYXJlbnRfY29tbW9uKCk7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3BhcmVudCgpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9wYXJlbnQoKTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfcGFyZW50KCkge1xuXHRAaW5jbHVkZSBncmlkbGVfbm9fZ3V0dGVyKCk7XG59XG5cblxuLyoqXG4gKiBWZXJ0aWNhbCBhbGlnbiA6XG4gKi9cbkBtaXhpbiBncmlkbGVfdmVydGljYWxfYWxpZ24oXG5cdCRhbGlnbiA6IG1pZGRsZSxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3ZlcnRpY2FsX2FsaWduKCRhbGlnbik7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX3ZlcnRpY2FsX2FsaWduKCRhbGlnbik7XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3ZlcnRpY2FsX2FsaWduKFxuXHQkYWxpZ24gOiBtaWRkbGVcbikge1xuXHRmb250LXNpemU6MDtcblx0Y2xlYXI6Ym90aDtcblxuXHQ+ICoge1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdGZsb2F0Om5vbmUgIWltcG9ydGFudDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjokYWxpZ247XG5cdFx0Zm9udC1zaXplOjFyZW07XG5cdH1cbn1cblxuXG4vLyBIaWRlIG9uIDpcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRtZWRpYSAgT24gd2hhdCBzdGF0ZVxuQG1peGluIGdyaWRsZV9oaWRlKFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gY2hlY2sgaWYgbmVlZCBtZWRpYSBxdWVyeSA6XG5cdEBpZiAkc3RhdGUge1xuXHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfaGlkZSgpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9oaWRlKCk7XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX2hpZGUoKSB7XG5cdGRpc3BsYXk6bm9uZTtcbn1cblxuXG4vLyBOb3QgdmlzaWJsZSBvbiA6XG4vLyBAcGFyYW0gXHRTdHJpbmcgXHQkbWVkaWEgXHRXaGF0IHRvIGhpZGUgKG9uZSBvZiB0aGUgMyBzdGF0ZSBjbGFzc2VzIG5hbWUpXG5AbWl4aW4gZ3JpZGxlX25vdF92aXNpYmxlKFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gY2hlY2sgaWYgbmVlZCBtZWRpYSBxdWVyeSA6XG5cdEBpZiAkc3RhdGUge1xuXHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfbm90X3Zpc2libGUoKTtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBpbmNsdWRlIF9ncmlkbGVfbm90X3Zpc2libGUoKTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfbm90X3Zpc2libGUoKSB7XG5cdHZpc2liaWxpdHk6aGlkZGVuO1xufVxuXG5cbi8vIFNob3cgb25cbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRtZWRpYSBcdFdoYXQgdG8gaGlkZSAob25lIG9mIHRoZSAzIHN0YXRlIGNsYXNzZXMgbmFtZSlcbkBtaXhpbiBncmlkbGVfc2hvdyhcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3Nob3coKTtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBpbmNsdWRlIF9ncmlkbGVfc2hvdygpO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV9zaG93KCkge1xuXHRkaXNwbGF5OmJsb2NrO1xufVxuXG5cbi8qKlxuICogU2hvdyBpbmxpbmVcbiAqXG4gKiBAcGFyYW0gXHRTdHJpbmcgXHRcdCRzdGF0ZSBcdFx0VGhlIHN0YXRlIG5hbWVcbiAqL1xuQG1peGluIGdyaWRsZV9zaG93X2lubGluZShcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3Nob3dfaW5saW5lKCk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX3Nob3dfaW5saW5lKCk7XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3Nob3dfaW5saW5lKCkge1xuXHRkaXNwbGF5OmlubGluZS1ibG9jaztcbn1cblxuXG4vLyBWaXNpYmxlIG9uIDpcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRtZWRpYSBcdE9uIHdoYXQgc3RhdGVcbkBtaXhpbiBncmlkbGVfdmlzaWJsZShcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3Zpc2libGUoKTtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdEBpbmNsdWRlIF9ncmlkbGVfdmlzaWJsZSgpO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV92aXNpYmxlKCkge1xuXHR2aXNpYmlsaXR5OnZpc2libGU7XG59XG5cblxuLy8gR3JpZGxlIFJpZ2h0IDpcbkBtaXhpbiBncmlkbGVfZmxvYXQoXG5cdCRmbG9hdC1kaXJlY3Rpb24gOiBsZWZ0LFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0Ly8gY2hlY2sgaWYgbmVlZCBtZWRpYSBxdWVyeSA6XG5cdEBpZiAkc3RhdGUge1xuXHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfZmxvYXQoJGZsb2F0LWRpcmVjdGlvbik7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX2Zsb2F0KCRmbG9hdC1kaXJlY3Rpb24pO1xuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV9mbG9hdChcblx0JGZsb2F0LWRpcmVjdGlvbiA6IGxlZnRcbikge1xuXHRmbG9hdDojeyRmbG9hdC1kaXJlY3Rpb259O1xufVxuXG5cbi8vIEdyaWRsZSBjbGVhciA6XG4vLyBAcGFyYW0gXHRTdHJpbmcgXHQkY2xlYXItZGlyZWN0aW9uIFx0VGhlIGRpcmVjdGlvbiB0byBjbGVhclxuLy8gQHBhcmFtIFx0U3RyaW5nIFx0JHN0YXRlIFx0XHRcdFx0VGhlIHN0YXRlXG5AbWl4aW4gZ3JpZGxlX2NsZWFyKFxuXHQkY2xlYXItZGlyZWN0aW9uIDogYm90aCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2NsZWFyKCRjbGVhci1kaXJlY3Rpb24pO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0QGluY2x1ZGUgX2dyaWRsZV9jbGVhcigkY2xlYXItZGlyZWN0aW9uKTtcblx0fVxufVxuQG1peGluIF9ncmlkbGVfY2xlYXIoXG5cdCRjbGVhci1kaXJlY3Rpb24gOiBib3RoXG4pIHtcblx0Y2xlYXI6I3skY2xlYXItZGlyZWN0aW9ufTtcbn1cblxuXG4vLyBHcmlkbGUgbm8gZ3V0dGVyIDpcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRzaWRlIFx0XHRcdFx0VGhlIHNpZGUgdG8gY2xlYXJcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRzdGF0ZSBcdFx0XHRcdFRoZSBzdGF0ZVxuQG1peGluIGdyaWRsZV9ub19ndXR0ZXIoXG5cdCRzaWRlIDogbGVmdCByaWdodCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX25vX2d1dHRlcigkc2lkZSk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX25vX2d1dHRlcigkc2lkZSk7XG5cdH1cbn1cbkBtaXhpbiBncmlkbGVfbm9fbWFyZ2luKFxuXHQkc2lkZSA6IGxlZnQgcmlnaHQsXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHRAaW5jbHVkZSBncmlkbGVfbm9fZ3V0dGVyKCRzaWRlLCAkc3RhdGUpO1xufVxuQG1peGluIF9ncmlkbGVfbm9fZ3V0dGVyKFxuXHQkc2lkZSA6IGxlZnQgcmlnaHRcbikge1xuXHRAZWFjaCAkcyBpbiAkc2lkZSB7XG5cdFx0cGFkZGluZy0jeyRzfSA6IDA7XG5cdH1cbn1cblxuXG4vLyBHcmlkbGUgZ3V0dGVyIDpcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRzaWRlIFx0XHRcdFx0VGhlIHNpZGUgdG8gY2xlYXJcbi8vIEBwYXJhbSBcdFN0cmluZyBcdCRzdGF0ZSBcdFx0XHRcdFRoZSBzdGF0ZVxuQG1peGluIGdyaWRsZV9ndXR0ZXIoXG5cdCRzaWRlIDogbGVmdCByaWdodCxcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdC8vIGNoZWNrIGlmIG5lZWQgbWVkaWEgcXVlcnkgOlxuXHRAaWYgJHN0YXRlIHtcblx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlKSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2d1dHRlcigkc2lkZSk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRAaW5jbHVkZSBfZ3JpZGxlX2d1dHRlcigkc2lkZSk7XG5cdH1cbn1cbi8vIHNob3J0Y3V0IDpcbkBtaXhpbiBncmlkbGVfbWFyZ2luKFxuXHQkc2lkZSA6IGxlZnQgcmlnaHQsXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHRAaW5jbHVkZSBncmlkbGVfZ3V0dGVyKCRzaWRlLCAkc3RhdGUpO1xufVxuQG1peGluIF9ncmlkbGVfZ3V0dGVyKFxuXHQkc2lkZSA6IGxlZnQgcmlnaHQsXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHQkZ3V0dGVyLXdpZHRoIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGd1dHRlci13aWR0aCwgJHN0YXRlKTtcblx0QGVhY2ggJHMgaW4gJHNpZGUge1xuXHRcdHBhZGRpbmctI3skc30gOiAkZ3V0dGVyLXdpZHRoIC8gMjtcblx0fVxufSIsIi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwgR2VuZXJhdGUgbWl4aW5zXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLyoqXG4gKiBHZW5lcmF0ZSBhIGN1c3RvbSBjbGFzcyBmb3IgYWxsIHRoZSBzdGF0ZXNcbiAqXG4gKiBAcGFyYW0gXHRsaXN0IFx0JHBhdHRlcm4gXHRcdFRoZSBuYW1lIHBhdHRlcm4gb2YgdGhlIGNsYXNzXG4gKiBAcGFyYW0gXHRsaXN0IFx0JHN0YXRlc05hbWVzIFx0XHRUaGUgc3RhdGVzIG5hbWVzIHRvIGdlbmVyYXRlXG4gKi9cbkBtaXhpbiBncmlkbGVfZ2VuZXJhdGVfY3VzdG9tX2NsYXNzKFxuXHQkcGF0dGVybixcblx0JHN0YXRlc05hbWVzIDogbnVsbFxuKSB7XG5cdC8vIG1hbmFnZSBzdGF0ZXMgdG8gZ2VuZXJhdGUgOlxuXHQkc3RhdGVzIDogKCk7XG5cdEBpZiAkc3RhdGVzTmFtZXMgPT0gbnVsbCB7XG5cdFx0Ly8gbG9vcCBvbiBlYWNoIHN0YXRlcyB0byBnZW5lcmF0ZSBuYW1lcyBsaXN0IDpcblx0XHRAZWFjaCAkc3RhdGVOYW1lLCAkc3RhdGUgaW4gJF9ncmlkbGVfc3RhdGVzIHtcblx0XHRcdCRzdGF0ZXMgOiBhcHBlbmQoJHN0YXRlcywgJHN0YXRlTmFtZSk7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHQkc3RhdGVzIDogJHN0YXRlc05hbWVzO1xuXHR9XG5cblx0Ly8gbG9vcCBvbiBlYWNoIHN0YXRlcyA6XG5cdEBlYWNoICRzdGF0ZU5hbWUgaW4gJHN0YXRlc1xuXHR7XG5cdFx0Ly8gbWFuYWdlIHN0YXRlbmFtZSA6XG5cdFx0QGlmIHR5cGUtb2YoJHN0YXRlTmFtZSkgIT0gc3RyaW5nIHtcblx0XHRcdCRzdGF0ZU5hbWUgOiBtYXAtZ2V0KCRzdGF0ZU5hbWUsIG5hbWUpO1xuXHRcdH1cblxuXHRcdC8vIGNsYXNzZXMgOlxuXHRcdCRjbGFzc2VzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNsYXNzZXMsICRzdGF0ZU5hbWUpO1xuXG5cdFx0Ly8gZ2VucmF0ZSB0aGUgY2xhc3NuYW1lIDpcblx0XHRAaWYgJGNsYXNzZXNcblx0XHR7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoJHN0YXRlTmFtZSwgZmFsc2UpIHtcblx0XHRcdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkcGF0dGVybiwgJHN0YXRlTmFtZSl9IHtcblx0XHRcdFx0XHRAY29udGVudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBHZW5lcmF0ZSBhbGwgaGVscGVycyBjbGFzc2VzXG4vLyBBbGwgdGhlIGNsYXNzZXMgZ2VuZXJhdGVkIGFyZSBub3Qgd3JhcHBlciBpbiBncmlkbGVfc3RhdGVcbi8vIGluIHRoaXMgbWl4aW4uLi4gSnVzdCB0aGUgbmFtZXMgYXJlIGdlbmVyYXRlZCBhY2NvcmRpbmdseSB0byB0aGVcbi8vIHJlcXVlc3RlZCBzdGF0ZVxuQG1peGluIF9ncmlkbGVfZ2VuZXJhdGVfaGVscGVyX2NsYXNzZXMgKFxuXHQkc3RhdGUgOiBudWxsLFxuXHQkd2hhdCA6IG51bGxcbikge1xuXHQvLyBoZWxwZXJzIDpcblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIGZsb2F0KSBvciBpbmRleCgkd2hhdCwgaGVscGVycykge1xuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1mbG9hdC1sZWZ0LW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2Zsb2F0KGxlZnQpO1xuXHRcdH1cblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtZmxvYXQtcmlnaHQtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfZmxvYXQocmlnaHQpO1xuXHRcdH1cblx0fVxuXG5cdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBjbGVhcikgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtY2xlYXItbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfY2xlYXIoYm90aCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1jbGVhci1sZWZ0LW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2NsZWFyKGxlZnQpO1xuXHRcdH1cblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtY2xlYXItcmlnaHQtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfY2xlYXIocmlnaHQpO1xuXHRcdH1cblx0fVxuXG5cdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBub19ndXR0ZXIpIG9yIGluZGV4KCR3aGF0LCBub19tYXJnaW4pIG9yIGluZGV4KCR3aGF0LCBoZWxwZXJzKSB7XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW5vLWd1dHRlci1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9LFxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1tYXJnaW4tbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbm9fbWFyZ2luKCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1ndXR0ZXItbGVmdC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9LFxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1tYXJnaW4tbGVmdC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIGdyaWRsZV9ub19tYXJnaW4obGVmdCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1ndXR0ZXItcmlnaHQtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSxcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtbm8tbWFyZ2luLXJpZ2h0LW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX25vX21hcmdpbihyaWdodCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1ndXR0ZXItdG9wLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0sXG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW5vLW1hcmdpbi10b3AtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbm9fbWFyZ2luKHRvcCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1uby1ndXR0ZXItYm90dG9tLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0sXG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW5vLW1hcmdpbi1ib3R0b20tbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbm9fbWFyZ2luKGJvdHRvbSk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIGd1dHRlcikgb3IgaW5kZXgoJHdoYXQsIG1hcmdpbikgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtZ3V0dGVyLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0sXG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW1hcmdpbi1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIGdyaWRsZV9tYXJnaW4obGVmdCByaWdodCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1ndXR0ZXItbGVmdC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9LFxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1tYXJnaW4tbGVmdC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIGdyaWRsZV9tYXJnaW4obGVmdCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1ndXR0ZXItcmlnaHQtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSxcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtbWFyZ2luLXJpZ2h0LW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX21hcmdpbihyaWdodCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1ndXR0ZXItdG9wLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0sXG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW1hcmdpbi10b3AtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbWFyZ2luKHRvcCk7XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1ndXR0ZXItYm90dG9tLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0sXG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLW1hcmdpbi1ib3R0b20tbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbWFyZ2luKGJvdHRvbSk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIGF1dG9faGVpZ2h0KSBvciBpbmRleCgkd2hhdCwgaGVscGVycykge1xuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1hdXRvLWhlaWdodC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdGhlaWdodDppbmhlcml0O1xuXHRcdH1cblx0fVxuXG5cdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBjZW50ZXJlZCkgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtY2VudGVyZWQtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfY2VudGVyZWQobnVsbCk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIHBhcmVudCkgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtcGFyZW50LW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgX2dyaWRsZV9wYXJlbnQoKTtcblx0XHR9XG5cdH1cblxuXHRAaWYgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgdmVydGljYWxfYWxpZ24pIG9yIGluZGV4KCR3aGF0LCBoZWxwZXJzKSB7XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXZlcnRpY2FsLWFsaWduLW1pZGRsZS1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfdmVydGljYWxfYWxpZ24oKTtcblx0XHR9XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXZlcnRpY2FsLWFsaWduLXRvcC1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfdmVydGljYWxfYWxpZ24odG9wKTtcblx0XHR9XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXZlcnRpY2FsLWFsaWduLWJvdHRvbS1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfdmVydGljYWxfYWxpZ24oYm90dG9tKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogVmlzaWJsZSwgaGlkZSwgZXRjLi4uXG5cdCAqL1xuXHRAaWYgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgaGlkZSkgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtaGlkZS1uYW1lLXBhdHRlcm4sICRzdGF0ZSl9IHtcblx0XHRcdEBpbmNsdWRlIGdyaWRsZV9oaWRlKG51bGwpO1xuXHRcdH1cblx0fVxuXG5cdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBub3RfdmlzaWJsZSkgb3IgaW5kZXgoJHdoYXQsIGhlbHBlcnMpIHtcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtbm90LXZpc2libGUtbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfbm90X3Zpc2libGUobnVsbCk7XG5cdFx0fVxuXHR9XG5cblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIHNob3cpIG9yIGluZGV4KCR3aGF0LCBoZWxwZXJzKSB7XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXNob3ctbmFtZS1wYXR0ZXJuLCAkc3RhdGUpfSB7XG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfc2hvdyhudWxsKTtcblx0XHR9XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXNob3ctaW5saW5lLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Nob3dfaW5saW5lKG51bGwpO1xuXHRcdH1cblx0fVxuXG5cdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCB2aXNpYmxlKSBvciBpbmRleCgkd2hhdCwgaGVscGVycykge1xuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS12aXNpYmxlLW5hbWUtcGF0dGVybiwgJHN0YXRlKX0ge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3Zpc2libGUobnVsbCk7XG5cdFx0fVxuXHR9XG5cblx0LyoqXG5cdCAqIENsZWFyIGVhY2ggY2xhc3MgOlxuXHQgKi9cblx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIGNsZWFyX2VhY2gpIG9yIGluZGV4KCR3aGF0LCBoZWxwZXJzKSB7XG5cdFx0QGVhY2ggJGNsZWFyTmFtZSwgJGNsZWFyTWFwIGluICRfZ3JpZGxlX2NsZWFyX2NsYXNzZXMge1xuXHRcdFx0Ly8gZ2V0IGNvdW50IDpcblx0XHRcdCRjbGVhckNvdW50IDogbWFwLWdldCgkY2xlYXJNYXAsIGNsZWFyRWFjaCk7XG5cdFx0XHQvLyB3aGF0IHRvIGNsZWFyIDpcblx0XHRcdCRjbGVhcldoYXQgOiBtYXAtZ2V0KCRjbGVhck1hcCwgY2xlYXJXaGF0KTtcblx0XHRcdC8vIGdlbmVyYXRlIHRoZSBjbGFzcyA6XG5cdFx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtY2xlYXItZWFjaC1wYXR0ZXJuLCAkc3RhdGUsICRjbGVhckNvdW50KX0ge1xuXHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2NsZWFyX2VhY2goJGNsZWFyQ291bnQsICRjbGVhcldoYXQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIGRlYnVnIGNvbG9ycyA6XG5cdCRkZWJ1ZyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkZWJ1ZywgJHN0YXRlKTtcblx0QGlmICRkZWJ1ZyBhbmQgKCAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBkZWJ1Z19jb2xvcnMpIG9yIGluZGV4KCR3aGF0LCBoZWxwZXJzKSApIHtcblx0XHQvLyBkZWJ1ZyBjb2xvciBjbGFzc2VzIDpcblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtZGVidWctY29sb3ItbmFtZS1wYXR0ZXJuLCAkc3RhdGUsIDEpfSB7XG5cdFx0XHQjeyRncmlkbGUtZGVidWctc2VsZWN0b3J9IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvciA6ICNlZGVlYjI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1kZWJ1Zy1jb2xvci1uYW1lLXBhdHRlcm4sICRzdGF0ZSwgMil9IHtcblx0XHRcdCN7JGdyaWRsZS1kZWJ1Zy1zZWxlY3Rvcn0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yIDogI2ZhZTRhNztcblx0XHRcdH1cblx0XHR9XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLWRlYnVnLWNvbG9yLW5hbWUtcGF0dGVybiwgJHN0YXRlLCAzKX0ge1xuXHRcdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3IgOiAjZjVlYWNjO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtZGVidWctY29sb3ItbmFtZS1wYXR0ZXJuLCAkc3RhdGUsIDQpfSB7XG5cdFx0XHQjeyRncmlkbGUtZGVidWctc2VsZWN0b3J9IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvciA6ICNlZWJkYjI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1kZWJ1Zy1jb2xvci1uYW1lLXBhdHRlcm4sICRzdGF0ZSwgNSl9IHtcblx0XHRcdCN7JGdyaWRsZS1kZWJ1Zy1zZWxlY3Rvcn0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yIDogI2Q0YjJlZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLWRlYnVnLWNvbG9yLW5hbWUtcGF0dGVybiwgJHN0YXRlLCA2KX0ge1xuXHRcdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3IgOiAjYjJkOGVlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi8vIGdlbmVyYXRlIHNldHRpbmdzIGpzb24gOlxuQG1peGluIGdyaWRsZV9nZW5lcmF0ZV9qc29uX3NldHRpbmdzKCkge1xuXG5cdC8vIHNldHRpbmdzIGNvbnRlbnQgOlxuXHQkZ3JpZGxlLXNldHRpbmdzLXN0YXRlcyA6IFwie1wiO1xuXG5cdC8vIGdlbmVyYXRlIGFsbCBjbGFzc2VzIGZvciBkaWZmZXJlbnRzIG1lZGlhIHF1ZXJpZXMgOlxuXHQkc3RhdGVzQ291bnQgOiBsZW5ndGgoJF9ncmlkbGVfc3RhdGVzKTtcblx0JGkgOiAwO1xuXHRAZWFjaCAkc3RhdGVOYW1lLCAkc3RhdGUgaW4gJF9ncmlkbGVfc3RhdGVzIHtcblx0XG5cdFx0JG5hbWUgOiAkc3RhdGVOYW1lO1xuXG5cdFx0JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXMgOiBcIiN7JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXN9IFxcXCIjeyRuYW1lfVxcXCI6e1wiO1xuXHRcblx0XHRAZWFjaCAkdmFyTmFtZSwgJHZhciBpbiAkc3RhdGUge1xuXG5cdFx0XHQkdmFsdWUgOiBudWxsO1xuXHRcdFx0QGlmICR2YXJOYW1lID09IFwicXVlcnlcIiB7XG5cdFx0XHRcdCR2YWx1ZSA6IF9ncmlkbGVfZ2V0X21lZGlhX3F1ZXJ5KCRzdGF0ZU5hbWUpO1xuXHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdCR2YWx1ZSA6IG1hcC1nZXQoJHN0YXRlLCR2YXJOYW1lKTtcblx0XHRcdH1cblxuXHRcdFx0QGlmICR2YWx1ZSA9PSBudWxsIHtcblx0XHRcdFx0JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXMgOiBcIiN7JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXN9IFxcXCIjeyR2YXJOYW1lfVxcXCIgOiBudWxsLFwiO1xuXHRcdFx0fSBAZWxzZWlmIHR5cGUtb2YoJHZhbHVlKSA9PSBib29sIHtcblx0XHRcdFx0JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXMgOiBcIiN7JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXN9IFxcXCIjeyR2YXJOYW1lfVxcXCIgOiAjeyR2YWx1ZX0sXCI7XG5cdFx0XHR9IEBlbHNlIHtcblx0XHRcdFx0JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXMgOiBcIiN7JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXN9IFxcXCIjeyR2YXJOYW1lfVxcXCIgOiBcXFwiI3skdmFsdWV9XFxcIixcIjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQkZ3JpZGxlLXNldHRpbmdzLXN0YXRlcyA6IFwiI3skZ3JpZGxlLXNldHRpbmdzLXN0YXRlc30gXFxcIl9ncmlkbGVcXFwiIDogdHJ1ZVwiO1xuXG5cdFx0QGlmICRpID49ICRzdGF0ZXNDb3VudCAtIDEge1xuXHRcdFx0JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXMgOiBcIiN7JGdyaWRsZS1zZXR0aW5ncy1zdGF0ZXN9IH1cIjtcblx0XHR9IEBlbHNlIHtcblx0XHRcdCRncmlkbGUtc2V0dGluZ3Mtc3RhdGVzIDogXCIjeyRncmlkbGUtc2V0dGluZ3Mtc3RhdGVzfSB9LFwiO1xuXHRcdH1cblx0XG5cdFx0Ly8gdXBkYXRlIGkgOlxuXHRcdCRpIDogJGkgKyAxO1xuXG5cdH1cblxuXHQgLy8gZ2VuZXJhdGUgc2V0dGluZ3MganNvbiA6XG5cdCRncmlkbGUtc2V0dGluZ3Mtc3RhdGVzIDogXCIjeyRncmlkbGUtc2V0dGluZ3Mtc3RhdGVzfX1cIjtcblx0JGdyaWRsZS1zZXR0aW5ncyA6IFwie1wiO1xuXHQkZ3JpZGxlLXNldHRpbmdzIDogXCIjeyRncmlkbGUtc2V0dGluZ3N9IFxcXCJ2ZXJzaW9uXFxcIiA6IFxcXCIjeyRfZ3JpZGxlLXZlcnNpb259XFxcIlwiO1xuXHRcblx0Ly8gc3RhdGVzIDpcblx0JGdyaWRsZS1zZXR0aW5ncyA6IFwiI3skZ3JpZGxlLXNldHRpbmdzfSwgXFxcInN0YXRlc1xcXCIgOiAjeyRncmlkbGUtc2V0dGluZ3Mtc3RhdGVzfVwiO1xuXHRcblx0Ly8gZGVidWcgZGV2aWNlcyA6XG5cdCRkZWJ1Z19kZXZpY2VzIDogJF9ncmlkbGVfc3RhdGVzX2RlYnVnX2RldmljZXM7XG5cdEBpZiBsZW5ndGgoJF9ncmlkbGVfc3RhdGVzX2RlYnVnX2RldmljZXMpIDw9IDAge1xuXHRcdCRkZWJ1Z19kZXZpY2VzIDogbnVsbDtcblx0fVxuXHQvLyAkZ3JpZGxlLXNldHRpbmdzIDogXCIjeyRncmlkbGUtc2V0dGluZ3N9LCBcXFwiZGVidWdEZXZpY2VzXFxcIiA6IHsgI3skZGVidWdfZGV2aWNlc30gfVwiO1xuXG5cdC8vIHNldHRpbmdzIDpcblx0Ly8gJGdyaWRsZS1zZXR0aW5ncyA6IFwiI3skZ3JpZGxlLXNldHRpbmdzfSwgXFxcImNsYXNzUHJlZml4XFxcIiA6IFxcXCIjeyRncmlkbGUtY2xhc3MtcHJlZml4fVxcXCJcIjtcblx0JGdyaWRsZS1zZXR0aW5ncyA6IFwiI3skZ3JpZGxlLXNldHRpbmdzfSB9XCI7XG5cdCNncmlkbGUtc2V0dGluZ3Mge1xuXHRcdGNvbnRlbnQgOiAkZ3JpZGxlLXNldHRpbmdzO1xuXHR9XG59XG5cblxuLy8gZ3JpZGxlIG1peGluIDpcbi8vIEdlbmVyYXRlIGFsbCB0aGUgY2xhc3NlcyBuZWVkZWQgZm9yIGEgZ3JpZFxuQG1peGluIGdyaWRsZV9nZW5lcmF0ZV9jbGFzc2VzKFxuXHQkc3RhdGVOYW1lIDogbnVsbCxcblx0JHdoYXQgOiBudWxsLFxuXHQkc2NvcGUgOiBudWxsXG4pIHtcblx0Ly8gaWYgdGhlIHdoYXQgcGFyYW1ldGVyIGlzIG5vdCBudWxsLCBtZWFuIHRoYXQgd2UgbmVlZCB0byBnZW5lcmF0ZSBvbmx5IGNlcnRhaW4gY2xhc3NlcyBpbiBhIGNlcnRhaW4gb3JkZXIgOlxuXHRAaWYgJHdoYXRcblx0e1xuXHRcdC8vIGxvb3Agb24gZWFjaCB3aGF0IGl0ZW0gdG8gZ2VuZXJhdGUgdGhlIGNvcnJlc3BvbmRpbmcgY2xhc3NlcyA6XG5cdFx0QGVhY2ggJHcgaW4gJHdoYXRcblx0XHR7XG5cdFx0XHQvLyBjaGVjayBpZiBhIHNjb3BlIGV4aXN0IDpcblx0XHRcdEBpZiAkc2NvcGUge1xuXHRcdFx0XHQvLyB3cmFwcCBncmlkIGludG8gc2NvcGUgOlxuXHRcdFx0XHQuI3skc2NvcGV9IHtcblx0XHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2dlbmVyYXRlX2NsYXNzZXMoJHN0YXRlTmFtZSwgKCAkdyApLCB0cnVlKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdC8vIGdlbmVyYXRlIGNsYXNzZXMgOlxuXHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2dlbmVyYXRlX2NsYXNzZXMoJHN0YXRlTmFtZSwgKCAkdyApLCBmYWxzZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdEBlbHNlXG5cdHtcblx0XHQvLyBkb24ndCBoYXZlIGFueSBcIndoYXRcIiBwYXJhbWV0ZXIgc28gZ2VuZXJhdGUgYWxsIHRoZSBjbGFzc2VzXG5cdFx0Ly8gY2hlY2sgaWYgYSBzY29wZSBleGlzdCA6XG5cdFx0QGlmICRzY29wZSB7XG5cdFx0XHQvLyB3cmFwcCBncmlkIGludG8gc2NvcGUgOlxuXHRcdFx0LiN7JHNjb3BlfSB7XG5cdFx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfZ2VuZXJhdGVfY2xhc3Nlcygkc3RhdGVOYW1lLCBudWxsLCB0cnVlKTtcblx0XHRcdH1cblx0XHR9IEBlbHNlIHtcblx0XHRcdC8vIGdlbmVyYXRlIGNsYXNzZXMgOlxuXHRcdFx0QGluY2x1ZGUgX2dyaWRsZV9nZW5lcmF0ZV9jbGFzc2VzKCRzdGF0ZU5hbWUsIG51bGwsIGZhbHNlKTtcblx0XHR9XG5cdH1cbn1cbiRfZ3JpZGxlX2dlbmVyYXRlT25seU9uY2UgOiB0cnVlOyAvLyBrZWVwIHRyYWNrIG9mIGdlbmVyYXRlIG9uY2UgY2xhc3Nlc1xuQG1peGluIF9ncmlkbGVfZ2VuZXJhdGVfY2xhc3Nlcyhcblx0JHN0YXRlTmFtZSA6IG51bGwsXG5cdCR3aGF0IDogbnVsbCxcblx0JGhhcy1wYXJlbnQgOiBmYWxzZVxuKSB7XG4gXG5cdC8vIGdlbmVyYXRlIHRoZXNlIGNsYXNzZXMgb25seSBvbmNlIDpcblx0QGlmICRfZ3JpZGxlX2dlbmVyYXRlT25seU9uY2Vcblx0e1xuXG5cdFx0Ly8gdXBkYXRlIHN0YXR1cyA6XG5cdFx0JF9ncmlkbGVfZ2VuZXJhdGVPbmx5T25jZSA6IGZhbHNlO1xuXG5cdFx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0XHQvLyB8IFdpbmRvd3MgOCBmaXhcblx0XHQvLyB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdFxuXHRcdC8vIFdpbmRvd3MgOCBmaXggZm9yIHNuYXAgbW9kZSA6XG5cdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcblx0XHRcdEAtbXMtdmlld3BvcnQgeyB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cdFx0fVxuXG5cblx0XHQvLyB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdC8vIHwgQ29udGFpbmVyXG5cdFx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0IFxuXHRcdC8vIGdlbmVyYXRlIGNvbnRhaW5lciBjbGFzcyA6XG5cdFx0QGlmICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIGNvbnRhaW5lcikgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpXG5cdFx0e1xuXHRcdFx0JGNvbnRhaW5lci1zZWxlY3RvciA6ICgpO1xuXHRcdFx0JGNvbnRhaW5lci1zZWxlY3RvciA6IGFwcGVuZCggJGNvbnRhaW5lci1zZWxlY3RvciwgdW5xdW90ZShcIiN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1jb250YWluZXItbmFtZS1wYXR0ZXJuKX1cIiksIGNvbW1hKTtcblx0XHRcdCN7JGNvbnRhaW5lci1zZWxlY3Rvcn0ge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyKCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQvLyB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdC8vIHwgUGFyZW50IHNlbGVjdG9yXG5cdFx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHRcdC8vIHBhcmVudCBjb21tb24gY3NzIDpcblx0XHRAaWYgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcGFyZW50KSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdClcblx0XHR7XG5cdFx0XHQkcGFyZW50U2VsZWN0b3IgOiBfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXBhcmVudC1uYW1lLXBhdHRlcm4sbnVsbCxudWxsKTtcblx0XHRcdCN7JHBhcmVudFNlbGVjdG9yfSB7XG5cdFx0XHRcdEBleHRlbmQgJWdyaWRsZS1jbGVhcmZpeDtcblx0XHRcdFx0QGV4dGVuZCAlZ3JpZGxlLXBhcmVudC1jb21tb247XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQvLyAvLyB8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHRcdC8vIC8vIHwgSlNPTiBTZXR0aW5nc1xuXHRcdC8vIC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdCBcblx0XHQvLyAvLyBnZW5lcmF0ZSBqc29uIHNldHRpbmdzIDpcblx0XHRAaWYgJGdyaWRsZS1nZW5lcmF0ZS1qc29uLXNldHRpbmdzXG5cdFx0e1xuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX2dlbmVyYXRlX2pzb25fc2V0dGluZ3MoKTtcblx0XHR9XG5cblx0fVxuXG5cblx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ly8gfCBTZXQgdGhlIGxpc3Qgb2Ygc3RhdGVzIHRvIGdlbmVyYXRlXG5cdC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdCRzdGF0ZXMgOiAkX2dyaWRsZV9zdGF0ZXM7XG5cdEBpZiAkc3RhdGVOYW1lIGFuZCBfZ3JpZGxlX2hhc19zdGF0ZSgkc3RhdGVOYW1lKSB7XG5cdFx0JHN0YXRlcyA6IG1hcC1zZXQoKCksICRzdGF0ZU5hbWUsIF9ncmlkbGVfZ2V0X3N0YXRlKCRzdGF0ZU5hbWUpKTtcblx0fVxuXG5cblx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ly8gfCBTdG9yZSBhbGwgdGhlIGdlbmVyYXRlZCBjb21tb24gc2VsZWN0b3JzXG5cdC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblx0Ly8gZ2VuZXJhdGUgYWxsIHNlbGVjdG9yIGZvciBleHRlbmRzIDpcblx0JGdyaWQtY29tbW9uLXNlbGVjdG9yIDogKCk7XG5cdCRwdXNoLWNvbW1vbi1zZWxlY3RvciA6ICgpO1xuXHQkcHVsbC1jb21tb24tc2VsZWN0b3IgOiAoKTtcblx0JHByZWZpeC1jb21tb24tc2VsZWN0b3IgOiAoKTtcblx0JHN1ZmZpeC1jb21tb24tc2VsZWN0b3IgOiAoKTtcblxuXG5cdC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdC8vIHwgTWVkaWEgcXVlcmllcyBjbGFzc2VzIGNvbW1vbiBzZWxlY3RvcnNcblx0Ly8gfCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXHQvLyBnZW5lcmF0ZSBhbGwgY2xhc3NlcyBmb3IgbWVkaWEgcXVlcmllcyA6XG5cdEBlYWNoICRzdGF0ZU5hbWUsICRzdGF0ZSBpbiAkc3RhdGVzIHtcblx0XG5cdFx0Ly8gc2V0dXAgdmFycyA6XG5cdFx0JG1lZGlhIDogJHN0YXRlTmFtZTtcblx0XHQkY2xhc3NlcyA6IG1hcC1nZXQoJHN0YXRlLCBjbGFzc2VzKTtcblx0XHQkY29udGV4dCA6IG1hcC1nZXQoJHN0YXRlLCBjb250ZXh0KTtcblx0XHQkbmFtZS1tdWx0aXBsaWNhdG9yIDogbWFwLWdldCgkc3RhdGUsIG5hbWUtbXVsdGlwbGljYXRvcik7XG5cdFx0JGdlbmVyYXRlLXB1c2gtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShnZW5lcmF0ZS1wdXNoLWNsYXNzZXMsICRzdGF0ZSk7XG5cdFx0JGdlbmVyYXRlLXB1bGwtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShnZW5lcmF0ZS1wdWxsLWNsYXNzZXMsICRzdGF0ZSk7XG5cdFx0JGdlbmVyYXRlLXByZWZpeC1jbGFzc2VzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGdlbmVyYXRlLXByZWZpeC1jbGFzc2VzLCAkc3RhdGUpO1xuXHRcdCRnZW5lcmF0ZS1zdWZmaXgtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShnZW5lcmF0ZS1zdWZmaXgtY2xhc3NlcywgJHN0YXRlKTtcblxuXHRcdC8vIGdlbmVyYXRlIGNsYXNzZXMgOiAgIFxuXHRcdEBpZiAkY2xhc3NlcyA9PSB0cnVlIGFuZCAkY29udGV4dCB7XG5cblx0XHRcdC8vIGdldCBzcGVjaWFscyBjb2x1bW5zIDpcblx0XHRcdCRjb2x1bW5zTWFwIDogbWFwLW1lcmdlKCgpLCAkX2dyaWRsZV9jb2x1bW5zKTtcblxuXHRcdFx0Ly8gcmVnaXN0ZXIgZWFjaCBkZWZhdWx0IGNvbHVtbnMgOlxuXHRcdFx0QGZvciAkaiBmcm9tIDAgdGhyb3VnaCAkY29udGV4dCB7XG5cdFx0XHRcdFxuXHRcdFx0XHQvLyBuYW1lIDpcblx0XHRcdFx0JGNvbHVtbk5hbWUgOiBcIiN7JGoqJG5hbWUtbXVsdGlwbGljYXRvcn1cIjtcblx0XHRcdFx0JGNvbHVtbldpZHRoIDogJGogKiAkbmFtZS1tdWx0aXBsaWNhdG9yO1xuXG5cdFx0XHRcdC8vIC8vIGNyZWF0ZSBhIGNvbHVtbiA6XG5cdFx0XHRcdCRjb2wgOiBfZ3JpZGxlX2NyZWF0ZV9jb2x1bW4oJGNvbHVtbk5hbWUsICRjb2x1bW5XaWR0aCwgJGNvbnRleHQsICRuYW1lLW11bHRpcGxpY2F0b3IpO1xuXG5cdFx0XHRcdC8vIC8vIGFkZCBjb2x1bW4gaW4gY29sdW1ucyBtYXAgOlxuXHRcdFx0XHQkY29sdW1uc01hcCA6IG1hcC1zZXQoJGNvbHVtbnNNYXAsICRjb2x1bW5OYW1lLCAgJGNvbCk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIGxvb3Agb24gZWFjaCBjb2x1bW5zIHRvIGdlbmVyYXRlIGNvbW1vbiBzZWxlY3RvciA6XG5cdFx0XHRAZWFjaCAkY29sdW1uTmFtZSwgJGNvbHVtbiBpbiAkY29sdW1uc01hcCB7XG5cdFx0IFx0XG5cdFx0XHRcdC8vIGFkZCBzZWxlY3RvciA6XG5cdFx0XHRcdEBpZiAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBncmlkKSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdCkge1xuXHRcdFx0XHRcdCRncmlkLWNvbW1vbi1zZWxlY3RvciA6IGFwcGVuZCggJGdyaWQtY29tbW9uLXNlbGVjdG9yLCB1bnF1b3RlKFwiI3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLWdyaWQtbmFtZS1wYXR0ZXJuLCAkbWVkaWEsICRjb2x1bW5OYW1lKX1cIiksIGNvbW1hICk7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGlmICRnZW5lcmF0ZS1wdXNoLWNsYXNzZXMgYW5kICgkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBwdXNoKSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdCkpIHtcblx0XHRcdFx0XHQkcHVzaC1jb21tb24tc2VsZWN0b3IgOiBhcHBlbmQoICRwdXNoLWNvbW1vbi1zZWxlY3RvciwgdW5xdW90ZShcIiN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1wdXNoLW5hbWUtcGF0dGVybiwgJG1lZGlhLCAkY29sdW1uTmFtZSl9XCIpLCBjb21tYSApO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpZiAkZ2VuZXJhdGUtcHVsbC1jbGFzc2VzIGFuZCAoJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcHVsbCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpKSB7XG5cdFx0XHRcdFx0JHB1bGwtY29tbW9uLXNlbGVjdG9yIDogYXBwZW5kKCAkcHVsbC1jb21tb24tc2VsZWN0b3IsIHVucXVvdGUoXCIje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtcHVsbC1uYW1lLXBhdHRlcm4sICRtZWRpYSwgJGNvbHVtbk5hbWUpfVwiKSwgY29tbWEgKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaWYgJGdlbmVyYXRlLXByZWZpeC1jbGFzc2VzIGFuZCAoJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcHJlZml4KSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdCkpIHtcblx0XHRcdFx0XHQkcHJlZml4LWNvbW1vbi1zZWxlY3RvciA6IGFwcGVuZCggJHByZWZpeC1jb21tb24tc2VsZWN0b3IsIHVucXVvdGUoXCIje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtcHJlZml4LW5hbWUtcGF0dGVybiwgJG1lZGlhLCAkY29sdW1uTmFtZSl9XCIpLCBjb21tYSApO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBpZiAkZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXMgYW5kICgkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBzdWZmaXgpIG9yIGluZGV4KCR3aGF0LCBkZWZhdWx0KSkge1xuXHRcdFx0XHRcdCRzdWZmaXgtY29tbW9uLXNlbGVjdG9yIDogYXBwZW5kKCAkc3VmZml4LWNvbW1vbi1zZWxlY3RvciwgdW5xdW90ZShcIiN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1zdWZmaXgtbmFtZS1wYXR0ZXJuLCAkbWVkaWEsICRjb2x1bW5OYW1lKX1cIiksIGNvbW1hICk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbiBcblx0Ly8gY29tbW9uIGNzcyA6XG5cdEBpZiAgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgZ3JpZCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpIHtcblx0XHQjeyRncmlkLWNvbW1vbi1zZWxlY3Rvcn0ge1xuXHRcdFx0QGluY2x1ZGUgX2dyaWRsZV9ncmlkX2NvbW1vbigpO1xuXHRcdH1cblx0fVxuXHRAaWYgICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIHB1c2gpIG9yIGluZGV4KCR3aGF0LCBkZWZhdWx0KSB7XG5cdFx0I3skcHVzaC1jb21tb24tc2VsZWN0b3J9IHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfcHVzaF9jb21tb24oKTtcblx0XHR9XG5cdH1cblx0QGlmICAkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBwdWxsKSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdCkge1xuXHRcdCN7JHB1bGwtY29tbW9uLXNlbGVjdG9yfSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3B1bGxfY29tbW9uKCk7XG5cdFx0fVxuXHR9XG5cdEBpZiAgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcHJlZml4KSBvciBpbmRleCgkd2hhdCwgZGVmYXVsdCkge1xuXHRcdCN7JHByZWZpeC1jb21tb24tc2VsZWN0b3J9IHtcblx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfcHJlZml4X2NvbW1vbigpO1xuXHRcdH1cblx0fVxuXHRAaWYgICR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIHN1ZmZpeCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpIHtcblx0XHQjeyRzdWZmaXgtY29tbW9uLXNlbGVjdG9yfSB7XG5cdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3N1ZmZpeF9jb21tb24oKTtcblx0XHR9XG5cdH1cblxuXG5cdC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdC8vIHwgTWVkaWEgcXVlcmllcyBjbGFzc2VzXG5cdC8vIHwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gXG5cdC8vIGdlbmVyYXRlIGFsbCBjbGFzc2VzIGZvciBkaWZmZXJlbnRzIG1lZGlhIHF1ZXJpZXMgOlxuXHRAZWFjaCAkc3RhdGVOYW1lLCAkc3RhdGUgaW4gJHN0YXRlcyB7XG5cdFx0XG5cdFx0Ly8gc2V0dXAgdmFycyA6XG5cdFx0JGNsYXNzZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoY2xhc3NlcywgJHN0YXRlKTtcblx0XHQkY29udGV4dCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShjb250ZXh0LCAkc3RhdGUpO1xuXHRcdCRuYW1lLW11bHRpcGxpY2F0b3IgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUobmFtZS1tdWx0aXBsaWNhdG9yLCAkc3RhdGUpO1xuXHRcdCRnZW5lcmF0ZS1wdXNoLWNsYXNzZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZ2VuZXJhdGUtcHVzaC1jbGFzc2VzLCAkc3RhdGUpO1xuXHRcdCRnZW5lcmF0ZS1wdWxsLWNsYXNzZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZ2VuZXJhdGUtcHVsbC1jbGFzc2VzLCAkc3RhdGUpO1xuXHRcdCRnZW5lcmF0ZS1wcmVmaXgtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShnZW5lcmF0ZS1wcmVmaXgtY2xhc3NlcywgJHN0YXRlKTtcblx0XHQkZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXMgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXMsICRzdGF0ZSk7XG5cdFx0JGdlbmVyYXRlLWhlbHBlcnMtY2xhc3NlcyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShnZW5lcmF0ZS1oZWxwZXJzLWNsYXNzZXMsICRzdGF0ZSk7XG5cblx0XHQvLyBnZW5lcmF0ZSBhbGwgbWVkaWEgcXVlcmllcyBncmlkIGNsYXNzZXMgOlxuXHRcdEBpZiAkY2xhc3NlcyA9PSB0cnVlIHtcblxuXHRcdFx0Ly8gcGFyZW50IGNvbW1vbiBjc3MgOlxuXHRcdFx0JHBhcmVudFNlbGVjdG9yIDogX2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1wYXJlbnQtbmFtZS1wYXR0ZXJuLCRzdGF0ZU5hbWUsbnVsbCk7XG5cdFx0XHQjeyRwYXJlbnRTZWxlY3Rvcn0ge1xuXHRcdFx0XHRAZXh0ZW5kICVncmlkbGUtY2xlYXJmaXg7XG5cdFx0XHRcdEBleHRlbmQgJWdyaWRsZS1wYXJlbnQtY29tbW9uO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBnZW5lcmF0ZSBhbGwgdGhlIGNsYXNzZXMgOlxuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCRzdGF0ZU5hbWUsICRoYXMtcGFyZW50KSB7XG5cdFx0IFxuXHRcdFx0XHQvLyBnZXQgc3BlY2lhbHMgY29sdW1ucyA6XG5cdFx0XHRcdCRjb2x1bW5zTWFwIDogbWFwLW1lcmdlKCgpLCAkX2dyaWRsZV9jb2x1bW5zKTtcblxuXHRcdFx0XHQvLyByZWdpc3RlciBlYWNoIGRlZmF1bHQgY29sdW1ucyA6XG5cdFx0XHRcdEBmb3IgJGogZnJvbSAwIHRocm91Z2ggJGNvbnRleHQge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdC8vIG5hbWUgOlxuXHRcdFx0XHRcdCRjb2x1bW5OYW1lIDogXCIjeyRqKiRuYW1lLW11bHRpcGxpY2F0b3J9XCI7XG5cdFx0XHRcdFx0JGNvbHVtbldpZHRoIDogJGogKiAkbmFtZS1tdWx0aXBsaWNhdG9yO1xuXG5cdFx0XHRcdFx0Ly8gLy8gY3JlYXRlIGEgY29sdW1uIDpcblx0XHRcdFx0XHQkY29sIDogX2dyaWRsZV9jcmVhdGVfY29sdW1uKCRjb2x1bW5OYW1lLCAkY29sdW1uV2lkdGgsICRjb250ZXh0LCAkbmFtZS1tdWx0aXBsaWNhdG9yKTtcblxuXHRcdFx0XHRcdC8vIC8vIGFkZCBjb2x1bW4gaW4gY29sdW1ucyBtYXAgOlxuXHRcdFx0XHRcdCRjb2x1bW5zTWFwIDogbWFwLXNldCgkY29sdW1uc01hcCwgJGNvbHVtbk5hbWUsICAkY29sKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIGdlbmVyYXRlIGFsbCBjbGFzc2VzIGZvciBjb2x1bW5zIDpcblx0XHRcdFx0QGVhY2ggJGNvbHVtbk5hbWUsICRjb2x1bW4gaW4gJGNvbHVtbnNNYXAge1xuXG5cdFx0XHRcdFx0Ly8gdmFyaWFibGVzIDpcblx0XHRcdFx0XHQkY29sdW1uc0NvdW50IDogbWFwLWdldCgkY29sdW1uLCBjb2x1bW5zKTtcblx0XHRcdFx0XHQkY29sdW1uc0NvbnRleHQgOiBtYXAtZ2V0KCRjb2x1bW4sIGNvbnRleHQpO1xuXHRcdFx0XHRcdCRjb2x1bW5zTmFtZU11bHRpcGxpY2F0b3IgOiBtYXAtZ2V0KCRjb2x1bW4sIG5hbWUtbXVsdGlwbGljYXRvcik7XG5cblx0XHRcdFx0XHQvLyBleHRlbmQgY29udGV4dCBpbiBzdGF0ZSAoZm9yIGNvbHVtbnMpIDpcblx0XHRcdFx0XHQkZXh0ZW5kZWRTdGF0ZSA6IG1hcC1tZXJnZSgkc3RhdGUsIChcblx0XHRcdFx0XHRcdGNvbnRleHQgOiAkY29sdW1uc0NvbnRleHQsXG5cdFx0XHRcdFx0XHRuYW1lLW11bHRpcGxpY2F0b3IgOiAkY29sdW1uc05hbWVNdWx0aXBsaWNhdG9yIC8vIGluamVjdCB0aGUgbmFtZSBtdWx0aXBsaWNhdG9yIGhlcmUgZ2V0dGVkIGZyb20gY29sdW1uIHRvIGhhbmRsZSBjdXN0b20gcmVnaXN0ZXJlZCBjb2x1bW5zXG5cdFx0XHRcdFx0KSk7XG5cblx0XHRcdFx0XHQvLyBjbGFzc2VzIDpcblx0XHRcdFx0XHRAaWYgJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgZ3JpZCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpIHtcblx0XHRcdFx0XHRcdCN7X2dyaWRsZV9jbGFzc25hbWUoJGdyaWRsZS1ncmlkLW5hbWUtcGF0dGVybiwgJHN0YXRlTmFtZSwgJGNvbHVtbk5hbWUpfSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIF9ncmlkbGUoJGNvbHVtbnNDb3VudCwgJGV4dGVuZGVkU3RhdGUpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaWYgJGdlbmVyYXRlLXB1c2gtY2xhc3NlcyA9PSB0cnVlIGFuZCAoJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcHVzaCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpKSB7XG5cdFx0XHRcdFx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtcHVzaC1uYW1lLXBhdHRlcm4sICRzdGF0ZU5hbWUsICRjb2x1bW5OYW1lKX0ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3B1c2goJGNvbHVtbnNDb3VudCwgJGV4dGVuZGVkU3RhdGUpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaWYgJGdlbmVyYXRlLXB1bGwtY2xhc3NlcyA9PSB0cnVlIGFuZCAoJHdoYXQgPT0gbnVsbCBvciBpbmRleCgkd2hhdCwgcHVsbCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpKSB7XG5cdFx0XHRcdFx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtcHVsbC1uYW1lLXBhdHRlcm4sICRzdGF0ZU5hbWUsICRjb2x1bW5OYW1lKX0ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3B1bGwoJGNvbHVtbnNDb3VudCwgJGV4dGVuZGVkU3RhdGUpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRAaWYgJGdlbmVyYXRlLXByZWZpeC1jbGFzc2VzID09IHRydWUgYW5kICgkd2hhdCA9PSBudWxsIG9yIGluZGV4KCR3aGF0LCBwcmVmaXgpIG9yIGluZGV4KCR3aGF0LCBkZWZhdWx0KSkge1xuXHRcdFx0XHRcdFx0I3tfZ3JpZGxlX2NsYXNzbmFtZSgkZ3JpZGxlLXByZWZpeC1uYW1lLXBhdHRlcm4sICRzdGF0ZU5hbWUsICRjb2x1bW5OYW1lKX0ge1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX3ByZWZpeCgkY29sdW1uc0NvdW50LCAkZXh0ZW5kZWRTdGF0ZSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdEBpZiAkZ2VuZXJhdGUtc3VmZml4LWNsYXNzZXMgPT0gdHJ1ZSBhbmQgKCR3aGF0ID09IG51bGwgb3IgaW5kZXgoJHdoYXQsIHN1ZmZpeCkgb3IgaW5kZXgoJHdoYXQsIGRlZmF1bHQpKSB7XG5cdFx0XHRcdFx0XHQje19ncmlkbGVfY2xhc3NuYW1lKCRncmlkbGUtc3VmZml4LW5hbWUtcGF0dGVybiwgJHN0YXRlTmFtZSwgJGNvbHVtbk5hbWUpfSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIF9ncmlkbGVfc3VmZml4KCRjb2x1bW5zQ291bnQsICRleHRlbmRlZFN0YXRlKTtcblx0XHRcdFx0XHRcdH0gICBcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cbiBcblx0XHRcdFx0Ly8gbWVkaWEgcXVlcmllcyBoZWxwZXJzIGNsYXNzZXMgOlxuXHRcdFx0XHRAaWYgJGdlbmVyYXRlLWhlbHBlcnMtY2xhc3NlcyA9PSB0cnVlIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBfZ3JpZGxlX2dlbmVyYXRlX2hlbHBlcl9jbGFzc2VzKCRzdGF0ZU5hbWUsICR3aGF0KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHwgQ29tbW9uIG1peGluc1xuLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gX2dyaWRsZV9jb250YWluZXJfY29tbW9uKFxuXHQkc3RhdGUgOiBkZWZhdWx0XG4pIHtcblx0QGV4dGVuZCAlZ3JpZGxlLXNpbXBsZS1jbGVhcmZpeDtcblx0QGV4dGVuZCAlZ3JpZGxlLWNvbnRhaW5lci1jb21tb247XG5cdC8vIGRlYnVnIHBhcnRcblx0JGRlYnVnIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLCAkc3RhdGUpO1xuXHRAaWYgKCRkZWJ1ZyA9PSB0cnVlKSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRAZXh0ZW5kICVncmlkbGUtY29udGFpbmVyLWRlYnVnLWNvbW1vbjtcblx0XHR9XG5cdH1cbn1cbiRfZ3JpZGxlLWFscmVhZHktZ2VuZXJhdGVkIDogKCk7XG5AbWl4aW4gX2dyaWRsZV9ncmlkX2NvbW1vbigpIHtcblx0QGV4dGVuZCAlZ3JpZGxlLWdyaWQtY29tbW9uO1xuXG5cdC8vIGRlZmF1bHQgdmFsdWVzXG5cdCRkZWZhdWx0LWd1dHRlci13aWR0aCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShndXR0ZXItd2lkdGgsIGRlZmF1bHQpO1xuXHQkZGVmYXVsdC1kaXJlY3Rpb24gOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGlyZWN0aW9uLCBkZWZhdWx0KTtcblxuXHQvLyBsb29wIG9uIGVhY2ggc3RhdGVzIDpcblx0QGVhY2ggJHN0YXRlTmFtZSwgJHN0YXRlIGluICRfZ3JpZGxlLXN0YXRlc1xuXHR7XG5cdFx0Ly8gc2VsZWN0b3Iga2V5IHRvIGJlIHVzZWQgaW4gbWFwXG5cdFx0JGtleSA6IFwiI3skc3RhdGVOYW1lfSAjeyZ9XCI7XG5cblx0XHQvLyBjaGVjayBpZiBhbHJlYWR5IGdlbmVyYXRlZCBjbGFzc2VzXG5cdFx0JGFscmVhZHktZ2VuZXJhdGVkIDogbWFwLWhhcy1rZXkoJF9ncmlkbGUtYWxyZWFkeS1nZW5lcmF0ZWQsICRrZXkpO1xuXG5cdFx0Ly8gdmFyc1xuXHRcdCRkaXJlY3Rpb24gOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGlyZWN0aW9uLCAkc3RhdGUpO1xuXHRcdCRjbGFzc2VzIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGNsYXNzZXMsICRzdGF0ZSk7XG5cdFx0JGd1dHRlci13aWR0aCA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShndXR0ZXItd2lkdGgsICRzdGF0ZSk7XG5cdFx0JGRlYnVnIDogX2dyaWRsZV9nZXRfdmFyX3ZhbHVlKGRlYnVnLCAkc3RhdGUpO1xuXG5cdFx0QGlmICRhbHJlYWR5LWdlbmVyYXRlZCAhPSB0cnVlIGFuZCAkY2xhc3NlcyBhbmQgKCAoJGRlZmF1bHQtZGlyZWN0aW9uICE9ICRkaXJlY3Rpb24gb3IgJGRlZmF1bHQtZ3V0dGVyLXdpZHRoICE9ICRndXR0ZXItd2lkdGgpIG9yICRzdGF0ZU5hbWUgPT0gZGVmYXVsdClcblx0XHR7XG5cdFx0XHQvLyBzZXQgdGhhdCB3ZSBoYXZlIGFscmVhZHkgZ2VuZXJhdGVkIGNzcyBmb3IgdGhpcyBzZWxlY3RvclxuXHRcdFx0JF9ncmlkbGUtYWxyZWFkeS1nZW5lcmF0ZWQgOiBtYXAtc2V0KCRfZ3JpZGxlLWFscmVhZHktZ2VuZXJhdGVkLCAka2V5LCB0cnVlKSAhZ2xvYmFsO1xuXHRcdFx0XG5cdFx0XHQvLyBnZW5lcmF0ZSB0aGUgY3NzIGZvciB0aGlzIGVsZW1lbnRcblx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSgkc3RhdGUpIHtcblx0XHRcdFx0QGlmICRkaXJlY3Rpb24gIT0gJGRlZmF1bHQtZGlyZWN0aW9uIG9yICRzdGF0ZU5hbWUgPT0gZGVmYXVsdCB7XG5cdFx0XHRcdFx0Ly8gY29udGVudCA6IFwiI3ska2V5fVwiO1xuXHRcdFx0XHRcdEBpZiAkZGlyZWN0aW9uID09IHJ0bCB7XG5cdFx0XHRcdFx0XHRmbG9hdDpyaWdodDtcblx0XHRcdFx0XHRcdGRpcmVjdGlvbjpydGw7XG5cdFx0XHRcdFx0fSBAZWxzZSB7XG5cdFx0XHRcdFx0XHRmbG9hdDpsZWZ0O1xuXHRcdFx0XHRcdFx0ZGlyZWN0aW9uOmx0cjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0QGlmICRndXR0ZXItd2lkdGggIT0gJGRlZmF1bHQtZ3V0dGVyLXdpZHRoIG9yICRzdGF0ZU5hbWUgPT0gZGVmYXVsdCB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiRndXR0ZXItd2lkdGgvMjtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiRndXR0ZXItd2lkdGgvMjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaWYgJGRlYnVnID09IHRydWUge1xuXHRcdFx0XHQjeyRncmlkbGUtZGVidWctc2VsZWN0b3J9IHtcblx0XHRcdFx0XHRAZXh0ZW5kICVncmlkbGUtZ3JpZC1kZWJ1Zy1jb21tb247XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3BhcmVudF9jb21tb24oKSB7XG5cdEBleHRlbmQgJWdyaWRsZS1jbGVhcmZpeDtcblx0QGV4dGVuZCAlZ3JpZGxlLXBhcmVudC1jb21tb247XG59XG5AbWl4aW4gX2dyaWRsZV9wdXNoX2NvbW1vbihcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdCRkZWJ1ZyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkZWJ1ZywgJHN0YXRlKTtcblxuXHQvLyBleHRlbmQgY29tbW9uIDpcblx0QGV4dGVuZCAlZ3JpZGxlLXB1c2gtcHVsbC1jb21tb247XG5cdEBpZiAkZGVidWcgPT0gdHJ1ZSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRAZXh0ZW5kICVncmlkbGUtcHVzaC1wdWxsLWRlYnVnLWJhY2tncm91bmQtY29tbW9uO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjojZjRlZmRmICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5AbWl4aW4gX2dyaWRsZV9wdWxsX2NvbW1vbihcblx0JHN0YXRlIDogZGVmYXVsdFxuKSB7XG5cdCRkZWJ1ZyA6IF9ncmlkbGVfZ2V0X3Zhcl92YWx1ZShkZWJ1ZywgJHN0YXRlKTtcblxuXHRAZXh0ZW5kICVncmlkbGUtcHVzaC1wdWxsLWNvbW1vbjtcblx0QGlmICRkZWJ1ZyA9PSB0cnVlIHtcblx0XHQjeyRncmlkbGUtZGVidWctc2VsZWN0b3J9IHtcblx0XHRcdEBleHRlbmQgJWdyaWRsZS1wdXNoLXB1bGwtZGVidWctYmFja2dyb3VuZC1jb21tb247XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiNjZmU0ZDUgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3ByZWZpeF9jb21tb24oXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHQkZGVidWcgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWcsICRzdGF0ZSk7XG5cdEBpZiAkZGVidWcgPT0gdHJ1ZSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRAZXh0ZW5kICVncmlkbGUtcHJlZml4LWRlYnVnLWNvbW1vbjtcblx0XHR9XG5cdH1cbn1cbkBtaXhpbiBfZ3JpZGxlX3N1ZmZpeF9jb21tb24oXG5cdCRzdGF0ZSA6IGRlZmF1bHRcbikge1xuXHQkZGVidWcgOiBfZ3JpZGxlX2dldF92YXJfdmFsdWUoZGVidWcsICRzdGF0ZSk7XG5cdEBpZiAkZGVidWcgPT0gdHJ1ZSB7XG5cdFx0I3skZ3JpZGxlLWRlYnVnLXNlbGVjdG9yfSB7XG5cdFx0XHRAZXh0ZW5kICVncmlkbGUtc3VmZml4LWRlYnVnLWNvbW1vbjtcblx0XHR9XG5cdH1cbn0iLCIvLyBUbyBvdmVycmlkZSBwYWRkaW5nXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICRyZWQ7IC8qIFdlYktpdC9CbGluayBCcm93c2VycyAqL1xufVxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICRyZWQ7IC8qIEdlY2tvIEJyb3dzZXJzICovXG59XG46Zm9jdXN7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5cbi8vIEJvZHlcbmJvZHkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LWZhbWlseTogJHNhbnM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgIH1cbn1cblxucCB7XG4gICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgJi5zbWFsbC1kZXNjIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAmLnNtYWxsLWRlc2Mge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi5sYWJlbCB7XG4gICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuaDEsIGgyLCBoMywgaDQsIC5pbnRybyB7XG4gICAgY29sb3I6ICRncmV5X2RrO1xufVxuXG4uaW50cm8ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxNWVtO1xuICAgIG1hcmdpbjogMCAwIDQwcHg7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuXG4gICAgLnRlbXBsYXRlLWxpc3RpbmcgJiB7XG4gICAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuXG4gICAgfVxuXG59XG5cbmgxIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXG4gICAgJi5sZWFkLWluLXRleHQge1xuICAgICAgICBtYXJnaW46IDAgMCA3cHg7XG4gICAgfVxuXG4gICAgLnRlbXBsYXRlLWFydGljbGUgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnRlbXBsYXRlLWxpc3RpbmcgJiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICl7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgLnRlbXBsYXRlLWFydGljbGUgJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcC13aWRlciApe1xuXG4gICAgfVxuXG59XG5cbmgyIHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDE1ZW07XG4gICAgbWFyZ2luOiAyMHB4IDAgMjBweDtcblxuICAgICYubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgN3B4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICl7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIG1hcmdpbjogNDBweCAwIDQwcHg7XG5cbiAgICAgICAgJi5sZWFkLWluLXRleHQge1xuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDAgN3B4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuXG4gICAgfVxuXG59XG5cbmgzIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMTVlbTtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gICAgJi5sZWFkLWluLXRleHQge1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIH1cblxuICAgICYuZmVhdHVyZS1oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICl7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKXtcblxuICAgIH1cblxufVxuXG5oNCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgIC5mYWN0ZmlsZSAmLCAudm9pY2VzIHVsIGxpICYsIC5jdGFfbWFpbiAmLCAudm9pY2VzLXNtYWxsICYsIC5tYXAtd3JhcHBlciAmLCAubW9kYWwgJiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICl7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKXtcblxuICAgIH1cblxufVxuXG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDQwcHggMCA0MHB4O1xuICAgIHdpZHRoOiA5NSU7XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkYmxhY2ssLTEwcHggMCAwICRibGFjaztcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5tZXRhIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICB9XG5cbiAgICAuYnRuX3NtIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBtYXJnaW46IDYwcHggNjBweCA2MHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAmLnJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTYwcHggNjBweCA2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBNZXRhIChtb24gZm9udClcbi5tZXRhIHtcbiAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogJGdyZXlfbWlkO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLnByaW1hcnktbGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYud2l0aF9zdmcge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgZmlsbDogJGJsYWNrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1sYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAudGVydGlhcnktbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJy8nO1xuICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgbGVmdDogLTE1cHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBmaWxsOiAkZ3JleV9taWQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbn1cblxuLy8gTGlua3NcbmEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJHJlZDtcbn1cblxuYTpob3ZlcixcbmE6Zm9jdXMge1xuICAgIGNvbG9yOiAkdGVhbDtcbn1cblxuXG4vLyBMaXN0c1xudWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLm5vcm1hbC11bCB7XG4gICAgbWFyZ2luOiAyMHB4IDAgNDBweCAyMHB4O1xuXG4gICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgIGxlZnQ6IC0xNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIEJ1dHRvbnNcbi5idG4ge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAmLmJ0bl9zbSB7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgcGFkZGluZzogNnB4IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAmLmJ0bl9hbHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYzczNmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuYnRuX3RpY2tib3gge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDQ1cHg7XG5cbiAgICAgICAgJi5idG5fc2Vjb25kYXJ5LmJ0bl9zbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA0NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpY2tib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssMC4yKTtcbiAgICAgICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgICBsZWZ0OiA3cHg7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0OWExMzE7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAudGlja2JveCB7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuYnRuX3NlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgIGxlZnQ6IDdweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmJ0bl9zbSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuICAgIH1cblxufVxuXG4vLyBJbnB1dCBmaWVsZHNcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuXG59XG5cbi8vIEltYWdlc1xuaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGJsYWNrO1xufVxuXG4vLyBwYXJhbGxheFxuI29zMSAge1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG59XG5cblxuIiwiLy8gRm9udHMgXG4kcHQ6ICdQVCBTYW5zJywgc2Fucy1zZXJpZjtcbiRpbmNvOiAnSW5jb25zb2xhdGEnLCA7XG5cbiRzYW5zOiAkcHQ7XG4kbW9ubzogJHB0O1xuXG4vLyBDb2xvdXJzXG4kZ3JleV9kazogIzIyMjtcbiRncmV5X2RrLW1pZDogIzMzMztcbiRncmV5X21pZDogIzQ0NDtcbiRncmV5X2x0OiAjNjY2O1xuJHJlZDogI2VlMDAwMDtcbiRyZWRfbHQ6ICNGOTY2NjQ7XG4kZ3JleV93YXJtOiAjZWFlY2U2O1xuJGdyZXlfd2FybV9sdDogI2YyZjRmMDtcbiRibGFjazogIzIzMUYyMDtcbiR0ZWFsOiAjMzFhMTlhO1xuJHdoaXRlOiAjZmZmO1xuXG4vLyBTdHlsZWd1aWRlXG4kc2c6ICRyZWQ7IiwiLy8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4vLyBSZXRpbmEgaW1hZ2VzXG4vLyBodHRwczovL3NpZ25hbHZub2lzZS5jb20vcG9zdHMvMzI3MS1lYXN5LXJldGluYS1yZWFkeS1pbWFnZXMtdXNpbmctc2Nzc1xuQG1peGluIGltYWdlLTJ4KCRpbWFnZSwgJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIEBtZWRpYSAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjMpLFxuICAgICAgICAgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIuNi8yKSxcbiAgICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMyksXG4gICAgICAgICAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS4zKSxcbiAgICAgICAgIChtaW4tcmVzb2x1dGlvbjogMS4zZHBweCkge1xuICAgIC8qIG9uIHJldGluYSwgdXNlIGltYWdlIHRoYXRzIHNjYWxlZCBieSAyICovXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRpbWFnZSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGggJGhlaWdodDtcbiAgfVxufVxuXG4vLyBIaWRlIHRleHRcbkBtaXhpbiBoaWRkZW4ge1xuICAgIGhlaWdodDogMXB4OyAvKiBTb21lIG9sZGVyIGJyb3dzZXJzIGRvbid0IHN1cHBvcnQgMHB4IGhpZ2ggYmxvY2sgZWxlbWVudHMgKi9cbiAgICBoZWlnaHQ6IDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OSU7XG59XG5cbi8vIFdlYmtpdCBzdHlsZSBmb2N1c1xuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgICAvLyBEZWZhdWx0XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMztcbiAgICAvLyBXZWJraXRcbiAgICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cbi8vIFRyYW5zaXRpb25zIFxuQG1peGluIHRyYW5zaXRpb24gKCR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjsgIFxuICAgIC1tb3otdHJhbnNpdGlvbjogICAgJHRyYW5zaXRpb247XG4gICAgLW1zLXRyYW5zaXRpb246ICAgICAkdHJhbnNpdGlvbjsgXG4gICAgLW8tdHJhbnNpdGlvbjogICAgICAkdHJhbnNpdGlvbjsgIFxufVxuXG4vLyBHcmFkaWVudHNcbkBtaXhpbiBncmFkaWVudCAoJHN0YXJ0Q29sb3I6ICM0NDQsICRlbmRDb2xvcjogIzU1NSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGFydENvbG9yO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oJHN0YXJ0Q29sb3IpLCB0bygkZW5kQ29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0Q29sb3IsICRlbmRDb2xvcik7XG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydENvbG9yLCAkZW5kQ29sb3IpO1xufVxuXG5AbWl4aW4gaWNvbi1yZXBsYWNlLWZpbGwoJHNyYywgJGZpbGwtZGVmYXVsdCwgJGZpbGwtbmV3KSB7XG4gICRlc2NhcGUtZmlsbC1kZWZhdWx0OiBlc2NhcGUoJGZpbGwtZGVmYXVsdCk7XG4gICRlc2NhcGUtZmlsbC1uZXc6IGVzY2FwZSgkZmlsbC1uZXcpO1xuICAkZGF0YS11cmk6IGRhdGEtdXJpKCdpbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgnLCBcIkB7c3JjfVwiKTtcbiAgJHJlcGxhY2Utc3JjOiByZXBsYWNlKFwiQHtkYXRhLXVyaX1cIiwgXCJAe2VzY2FwZS1maWxsLWRlZmF1bHR9XCIsIFwiQHtlc2NhcGUtZmlsbC1uZXd9XCIsIFwiZ1wiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTplKCRyZXBsYWNlLXNyYyk7XG59XG4iLCIvLyBDb250YWluZXJcbi5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApIHtcbiAgICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgIH1cblxufVxuXG4vLyBTa2lwIGxpbmtzXG4uc2tpcGxpbmtzIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC03ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxNGVtO1xuICAgIHotaW5kZXg6IDk5OTk7XG5cbiAgICAuc2tpcGxpbmt7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBwYWRkaW5nOiAwLjI1ZW0gMWVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxNGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICAgICAgICAmOmZvY3Vze1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMC4yNWVtIDFlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5za2lwYW5jaG9ye1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA1MHB4OyAvKnNhbWUgaGVpZ2h0IGFzIGhlYWRlciovXG4gIG1hcmdpbi10b3A6IC01MHB4OyAvKnNhbWUgaGVpZ2h0IGFzIGhlYWRlciovXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZvY3VzYWJsZXtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY2xpcDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuLy8gTWFpblxuLm1haW4ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICAgIHBhZGRpbmc6IDUwcHggMCAwO1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIC8vcGFkZGluZzogOTBweCAwIDA7XG4gICAgfVxuXG59XG5cbmhlYWRlciB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAxKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAzMDtcbiAgICB0b3A6IDA7XG5cbiAgICAmLmZpeGVkIHtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoIzAwMCwgMC4xKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLDAuMSk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgIH1cblxufVxuXG4uc3RpY2t5LWJ0bnMge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMnMgZWFzZSAwcyk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogLTQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgei1pbmRleDogMjAwO1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgLmZyb250ICYsIC50ZW1wbGF0ZS1yZXFzICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuZml4ZWQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5kb25hdGUtYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAuc2hhcmUtYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgIC5zd2FwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAmLnN3YXAge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgYm90dG9tOiAtNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gTWVudSBidXR0b25cbi5tZW51LWJ0biB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDhweCAwIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogNDA7XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmlsbDogJGJsYWNrO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB0b3A6IDJweDtcblxuICAgICAgICAmLmNsb3NlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICYuY2xvc2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuZGl2aWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIGxlZnQ6IC04cHg7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgZmlsbDogJGJsYWNrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxufVxuXG4vLyBTZWFyY2hiYXJcbi5zZWFyY2gtYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOTUpO1xuICAgIGhlaWdodDogNTBweDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1MDtcbiAgICBkaXNwbGF5OiBub25lO1xuXG5cdFx0LnNlYXJjaC1mb3Jte1xuXG5cdFx0XHQvLyBkaXNwbGF5OiBub25lO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdC5pbnB1dC1sYWJlbCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIC5jbG9zZS1wYW5lbCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbWlkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBsZWZ0OiAxNnB4O1xuICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC05MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3NlLXBhbmVsIHtcbiAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLmxvZ28tY29udGFpbmVye1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4vLyBMb2dvIGxpbmtcbi5sb2dvIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luOiA1cHggMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB6LWluZGV4OiAzMjtcbiAgICBsZWZ0OiAtMTBweDtcblxuICAgIHN2ZyB7XG5cbiAgICAgICAgLmxpbmUsIC53b3JkMSwgLndvcmQyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAuZXh0cmFiaXQge1xuICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZXh0cmFiaXQtY3V0b2ZmIHtcbiAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuZml4ZWQgJiB7XG4gICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBtYXJnaW46IDVweCAwIDA7XG5cbiAgICAgICAgc3ZnIHtcblxuICAgICAgICAgICAgLmxpbmUsIC53b3JkMSwgLndvcmQyLCAuZXh0cmFiaXQtY3V0b2ZmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5leHRyYWJpdCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBtYXJnaW46IDE4cHggMCAwO1xuICAgICAgICBsZWZ0OiAtMzBweDtcblxuICAgICAgICBzdmcge1xuXG4gICAgICAgICAgICAubGluZSwgLndvcmQxLCAud29yZDIsIC5leHRyYWJpdC1jdXRvZmYge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5leHRyYWJpdCB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmZpeGVkICYge1xuICAgICAgICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xuXG4gICAgICAgICAgICBzdmcge1xuXG4gICAgICAgICAgICAgICAgLmxpbmUsIC53b3JkMSwgLndvcmQyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSBhbmQgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgICB3aWR0aDogMTMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgICBsZWZ0OiAtNDBweDtcbiAgICAgIHRvcDogMjVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgbWFyZ2luOiAxMnB4IDAgMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbn1cblxuQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKGRlc2t0b3Atd2lkZSBkZXNrdG9wKSB7XG4gICAgLmxvZ28ge1xuICAgICAgICAuZml4ZWQgJiB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIC53b3JkMSwgLndvcmQyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZvb3RlciB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW1nX21hc2sge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjgpO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICBjb2xvcjogJGdyZXlfbWlkO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRncmV5X21pZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNvY2lhbCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpdGVieXRieCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuY3JlZGl0cyB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG5cbiAgICAgICAgLmJyYW5kaW5nIHtcbiAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYubWFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4IDAgMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRibGFjaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubWFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwO1xuXG4gICAgICAgICAgICAuYnJhbmRpbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcblxuICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogLTI1cHggMCAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5mb290ZXItbGlua3Mge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbjogMDtcblx0XHRcdFx0bWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICNlZTAwMDA7XG5cdFx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiAjMzFhMTlhO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbn1cblxuLy8gTW9iaWxlIG5hdlxuLm1vYmlsZS1uYXYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuM3MgZWFzZS1pbi1vdXQgMC4xcyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB0b3A6IC00MDBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcblxuICAgIGEge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICYuZG9uYXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuZG9uYXRlOmhvdmVyLFxuICAgICAgICAmLmRvbmF0ZTpmb2N1c3tcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgbGk6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoIzAwMCwgMC40KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgLnRlbXBsYXRlLW5vLWltYWdlICYge1xuICAgICAgICAgICAgdG9wOiA0OXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbn1cblxuLmtleWJvYXJkIC5tb2JpbGUtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5vcGVue1xuICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgIH1cbn1cblxuLy8gTmF2XG4ubmF2IHtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1NXB4O1xuXG4gICAgLmRyb3Bkb3duX21hc2sge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDMxO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKCR3aGl0ZSwwLjIpO1xuXG4gICAgICAgIC5maXhlZCAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZW1wbGF0ZS1saXN0aW5nICYge1xuICAgICAgICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG4gICAgICAgIH1cblxuXG5cbiAgICAgICAgLmZpeGVkICYge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICB1bC5wcmltYXJ5X25hdiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAucHJpbWFyeV9saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB6LWluZGV4OiAzMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRvbmF0ZV9saW5rIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDAgMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgICAgICAvL2xlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC04cHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5nbG9iYWxfbGluayB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDEwcHggMDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWFyY2hfbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG5cbiAgICAgICAgJi5kb25hdGVfZHJvcGRvd24ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBsaSBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDcwcHggMTBweCAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCA1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywxKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmludHJvIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3AtY3RhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGdyZXlfd2FybSwgMC45NSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogLTM0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4yKTtcblxuICAgICAgICAgICAgJi5mbGlwcGVkIHtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMzQwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywwLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA3NXB4IDEwcHggMjVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X21pZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgLmRyb3Bkb3duX21hc2sge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB1bC5wcmltYXJ5X25hdiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpbWFyeV9saW5rIHtcbiAgICAgICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG5cbiAgICAgICAgICAgIC5maXhlZCAmIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZG9uYXRlX2xpbmsge1xuXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZml4ZWQgJiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWFyY2hfbGluayB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdsb2JhbF9saW5rIHtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogLThweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpeGVkICYge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAubWVnYV9kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UtaW4tb3V0IDAuMXMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX2NvbnRhaW5lcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDEpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB0b3A6IC03MDBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDMwO1xuXG4gICAgICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjRzIGVhc2UtaW4tb3V0IDAuM3MpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSB7XG5cbiAgICAgICAgICAgICAgICAucHJpbWFyeV9saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5kb25hdGVfbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubWVnYV9kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpeGVkICYge1xuXG4gICAgICAgICAgICAgICAgICAgIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDlweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAmIHtcblxuICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgICAgICAubWVnYV9kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDg5cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAudGVtcGxhdGUtbm8taW1hZ2UgLmZpeGVkICYge1xuXG4gICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgICAgIC5tZWdhX2Ryb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNDlweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKXtcblxuICAgICAgICAucHJpbWFyeV9saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIGxpc3RpbmdzXG4uZmxvYXRlZC1sYWJlbHMge1xuICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5rZXlfbGlua3Mge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDQwcHg7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBOZXdzIGZlZWRcbi5uZXdzLWZlZWQtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDIwMDBweDtcbiAgICAgICAgcmlnaHQ6IC0yMDAwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE0MHB4O1xuICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgIH1cblxufVxuXG4ubmV3cy1mZWVkIHtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxOHB4IDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gTGF1bmNoIHBhbmVsIGJ1dHRvbnNcbi5sYXVuY2hfcGFuZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXG4gICAgJi5zaW1wbGUge1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICByaWdodDogOHB4O1xuICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxufVxuXG4vLyBTdG9yeSB0ZWFzZXJcbi5zdG9yeS10ZWFzZXIge1xuXG4gICAgLnN0b3J5LXBlcnNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDQwcHggMCAwO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMzBweCByZ2JhKCMwMDAsIDAuMyk7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5zdG9yeS1saW5rIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAuc3RvcnktcGVyc29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vLyBBdWRpbyBwbGF5ZXJcbi5hdWRpby1wbGF5ZXIge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDAwLDAuNSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgNnB4IDZweCA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cbiAgICAubWV0YSB7XG4gICAgICAgIGNvbG9yOiAkdGVhbDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIC5wcmltYXJ5LWxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHRvcDogNHB4O1xuICAgICAgICBmaWxsOiAkdGVhbDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIHBhZGRpbmc6IDAgNnB4IDZweCA4cHg7XG4gICAgfVxuXG59XG5cbi8vIEJyZWFkY3J1bWJcbi5icmVhZGNydW1iIHtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC50ZW1wbGF0ZS1sYW5kaW5nLXBhZ2UgJiwgLnRlbXBsYXRlLWluZGV4LXBhZ2UgJiwgLnRlbXBsYXRlLWNvdW50cmllcyAmIHtcblxuICAgICAgICBsaSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLnRlbXBsYXRlLWxhbmRpbmctcGFnZSwgLnRlbXBsYXRlLXN0b3J5IHtcbiAgICAucGFnaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5wYWdlX2FuY2hvcnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA1MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMjBweCAtNHB4IHJnYmEoMCwwLDAsMCk7XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgdG9wOiAyNXB4O1xuICAgIH1cblxuICAgIC5kb3duLWFycm93IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYnJhbmRpbmcge1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHRvcDogNnB4O1xuICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC50b3BfbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBjb250ZW50OiAnWWVtZW4nO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2hvd19hbmNob3JzX2xpbmsge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgJjpmb2N1c3tcbiAgICAgICAgICAgIGJvcmRlcjogJHdoaXRlIHRoaW4gZG90dGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICl7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAucGFnZV9hbmNob3JzX2NvbnRhaW5lclthcmlhLWV4cGFuZGVkPSd0cnVlJ10ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAucGFnZV9hbmNob3JzX2NvbnRhaW5lclthcmlhLWV4cGFuZGVkPSdmYWxzZSddIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mbG9hdGVkLWxhYmVscyB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBjb2xvcjogJHJlZC1sdDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKCR3aGl0ZSwgMC4yKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcblxuICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC04cHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrICwgMC45NSk7XG4gICAgfVxuXG4gICAgJi5maXhlZCB7XG4gICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrICwgMC45NSk7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjA1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDNweCAyMHB4IC00cHggcmdiYSgwLDAsMCwwLjg1KTtcblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDs7XG5cbiAgICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmJyYW5kaW5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogOTBweDtcblxuICAgICAgICAuZG93bi1hcnJvdyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3dfYW5jaG9yc19saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxvYXRlZC1sYWJlbHMge1xuXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5maXhlZCB7XG5cbiAgICAgICAgICAgIC50b3BfbGluayB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5cbi8vIEhlcm9cbi5oZXJvIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMTMwMG1zIGN1YmljLWJlemllcigwLjE1NSwuNTc1LC44NywuODcpO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDkwcHgpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAwIDA7XG5cbiAgICAuc3ViLW5hdi13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5pbnRybyB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cblxuICAgICYuaGVyby1ob21lcGFnZSB7XG5cbiAgICAgICAgaDEge1xuXG4gICAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLm1haW4tcGFnZS10aXRsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgcGFkZGluZzogMjBweCAxNXB4IDUwcHggMDtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICRyZWQsLTEwcHggMCAwICRyZWQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiA5NSU7XG4gICAgICAgIH1cblxuICAgICAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAudGVtcGxhdGUtc3RvcnkgJiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZW1wbGF0ZS1pbmRleC1wYWdlICYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW50cm8ge1xuICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZyb250ICYge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4IDQwcHggMDtcblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICRyZWQsLTEwcHggMCAwICRyZWQ7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHRlYWwsLTEwcHggMCAwICR0ZWFsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmF1ZGlvLXBsYXllciAubWV0YSB7XG4gICAgICAgICAgICBjb2xvcjogJHRlYWw7XG4gICAgICAgIH1cblxuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKXtcbiAgICAgICAgcGFkZGluZzogMzgwcHggMCAwO1xuXG4gICAgICAgIC5tYWluLXBhZ2UtdGl0bGUge1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcbiAgICAgICAgcGFkZGluZzogNDgwcHggMCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgICAgLnRlbXBsYXRlLWluZGV4LXBhZ2UgJiB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAyMjBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAuc3ViLW5hdi13cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5zdWItbmF2IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAuaW4tdGhpcy1zZWN0aW9uLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLXBhZ2UtdGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDgwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZyb250ICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuXG4gICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGVtcGxhdGUtaW5kZXgtcGFnZSAmIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRlbXBsYXRlLXN0b3J5ICYge1xuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcC13aWRlciApe1xuXG4gICAgICAgIC5tYWluLXBhZ2UtdGl0bGUge1xuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZnJvbnQgJiB7XG5cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRlbXBsYXRlLXN0b3J5ICYge1xuXG4gICAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIFBhZ2UgYW5jaG9yc1xuLmFuY2hvci1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwMHB4O1xufVxuXG4vLyBTZWN0aW9uIGhlYXNkaW5nXG4uc2VjdGlvbi1oZWFkaW5nIHtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIG1hcmdpbjogNDBweCAwIDQwcHg7XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X2RrO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICRncmV5X2RrLC0xMHB4IDAgMCAkZ3JleV9kaztcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gRmFjdGZpbGVcbi5mYWN0ZmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1ncmV5LXRvcC1sZWZ0LnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV93YXJtX2x0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xNjBweDtcbiAgICAgICAgei1pbmRleDogNDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAyMDAwcHg7XG4gICAgICAgICAgICByaWdodDogLTIwMDBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4ubWFwLXdyYXBwZXIge1xuXG59XG5cbi5tYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAwO1xufVxuXG4uZGF0YSB7XG4gICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG5cbiAgICAuc3RhdCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLm51bWJlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC53b3JkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzYW5zO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIC5zdGF0IHtcblxuICAgICAgICAgICAgLm51bWJlciB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29yZCB7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBTaXRlIC0gZ3JvdXAgZXZlcnl0aGluZyBlbHNlIGluIGEgZGl2IHRvIG1vdmUgd2hlbiB0aGUgbXNmIGdsb2JhbCBwYW5lbCBzbGlkZXMgZG93blxuLnNpdGUge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJi5pbmFjdGl2ZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICB9XG5cbn1cblxuLy8gTVNGIGdsb2JhbFxuLm1zZl9nbG9iYWwge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV9kaztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogNDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGgyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuaW50cm8ge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR0ZWFsO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJHdoaXRlLDAuMSk7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5vcGVuIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDBweDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIENMb3NlIHBhbmVsIGJ1dHRvblxuLmNsb3NlLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X21pZDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAyO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuXG5cbiAgICBzdmcge1xuICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxM3B4O1xuICAgICAgICBsZWZ0OiAxM3B4O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICAgIH1cblxufVxuXG4vLyBGZWF0dXJlcy13cmFwcGVyXG4uZmVhdHVyZXMtd3JhcHBlciB7XG4gICAgbWFyZ2luOiA2MHB4IDAgMDtcblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuICAgIH1cblxufVxuXG4vLyBGZWF0dXJlXG4uZmVhdHVyZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgbWFyZ2luOiAwIDAgNDBweDtcblxuICAgIC50ZXh0X2FyZWEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICAgICAgd2lkdGg6IDk1JTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJGJsYWNrLC0xMHB4IDAgMCAkYmxhY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICR0ZWFsLC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkcmVkLC0xMHB4IDAgMCAkcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc21hbGwtZGVzYyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5sYXVuY2hfcGFuZWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgdG9wOiAxM3B4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgbWFyZ2luOiAwIDAgNjBweDtcbiAgICB9XG5cbn1cblxuLy8gVm9pY2VzIHNtYWxsIChyaWdodCBjb2wpXG4udm9pY2VzLXNtYWxsIHtcblxuICAgIC52b2ljZXMtaGVhZGluZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC52b2ljZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC13aGl0ZS5qcGcnKSBuby1yZXBlYXQgbGVmdCB0b3AgJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAzMHB4IHJnYmEoIzAwMCwgMC4wNCk7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggNDBweCA2MHB4IDQwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4xKTtcblxuICAgICAgICAucHJvZmlsZV9waWMge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxNXB4O1xuXG4gICAgICAgIH1cblxuICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gSW1wYWN0IGFuZCBsaXN0aW5nc1xuLmltcGFjdCB7XG4gICAgcGFkZGluZzogMCAwIDEyMHB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X2RrO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5zZWN0aW9uLWhlYWRpbmcge1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAud29ybGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgICAgICBmaWxsOiAjNDM0YTRhO1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtbGluayB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHJlZCwgMSk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDZweCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAgICAgLnRleHQtbGluayB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDZweCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc21hbGwtZGVzYyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cblxuICAgIC5zdGF0IHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5saXN0aW5nLWJsb2NrIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX2NvbnRhaW5lcjtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLnNob3ctYWxsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAubGlzdGluZy1ibG9jayB7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gU3RhdHMgYmxvY2tcbi5zdGF0cyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LWdyZXktd2FybS5qcGcnKSBuby1yZXBlYXQgbGVmdCB0b3AgJGdyZXlfd2FybTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmlubGluZS1zdGF0cyB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogMTVweCAwIDMwcHg7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgfVxuXG4gICAgJi5zdGF0cy1iaWcge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDIxLjIlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1JTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDA7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuKzQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5pbmxpbmUtc3RhdHMge1xuXG4gICAgICAgICAgICB3aWR0aDogMTMwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTUlO1xuXG4gICAgICAgICAgICAuZnJvbnQgJiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMyU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNG4rNCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTE1JTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuY2VudGVyLWJ1dHRvbiBhLmJ0bi5idG5fc2Vjb25kYXJ5e1xuICAgICAgICBjb2xvcjogI2QyMDAwMDtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3Vze1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuXG59XG5cbi8vIFN0YXRcbi5zdGF0IHtcblxuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgY29sb3I6ICR0ZWFsO1xuXG4gICAgICAgICYuY291bnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5udW1iZXIge1xuICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgY29sb3I6ICMyMjcwNmI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAud29yZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICBjb2xvcjogIzIyNzA2YjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5pbmxpbmUtc3RhdHMgJiB7XG5cbiAgICAgICAgLm51bWJlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgIH1cblxuICAgIH1cblxuXG4gICAgLnN0YXRzLWJpZyAmIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoJHdoaXRlLDAuMik7XG5cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5udW1iZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNmVtO1xuXG4gICAgICAgICAgICAuc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAud29yZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzYyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICAgICAgLnN0YXRzLWJpZyAmIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkd2hpdGUsMC4yKTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cblxuLy8gVGFnXG4udGFnIHtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBjb2xvcjogJGdyZXlfbWlkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLmNvdW50cnktdGFnIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4XG4gICAgfVxuXG4gICAgLmZlYXR1cmVkICYge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXI6IDFweCBkb3R0ZWQgcmdiYSgkd2hpdGUsIDAuMik7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgZmlsbDogJGdyZXlfbWlkO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDNweDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMnB4O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5X21pZDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgfVxuXG59XG5cbi8vXG4ubGF0ZXN0X2ZlZWQge1xuICAgIC5mZWVkIHtcbiAgICAgICAgLmxhdGVzdF9mZWF0dXJlLnZpZGVvIC50ZXh0X2FyZWEge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTGF0ZXN0IGZlZWRcbi5sYXRlc3RfZmVlZCB7XG4gICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LXdoaXRlLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIH1cblxuICAgICYubGlzdGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgLnRlbXBsYXRlLWluZGV4LXBhZ2UgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuXG4gICAgICAgIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnRvcC1sZWZ0LXRleCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAubGF0ZXN0X2ZlYXR1cmUge1xuICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wIGRlc2t0b3Atd2lkZSApIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIH1cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAmLnRleHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9sdCwgMC4xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEubWFpbl9pbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTMwMG1zIGN1YmljLWJlemllcigwLjE1NSwuNTc1LC44NywuODcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi52aWRlbyB7XG4gICAgICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgIC50YWcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0ZWFsO1xuICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogZG90dGVkO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJHRlYWw7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0ZWFsO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0ZWFsO1xuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHRfYXJlYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZmlsZV90aHVtYiB7XG4gICAgICAgICAgICB3aWR0aDogNzBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG5fdHlwZSB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgZGVza3RvcC13aWRlICkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5uZXdzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAudHlwZSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wIGRlc2t0b3Atd2lkZSApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgfVxuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICAgICBsZWZ0OiAtNTBweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0IHtcblxuICAgICAgICAgICAgLmNvbnRlbnRfdHlwZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjcpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDAgMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHJlZCwtMTBweCAwIDAgJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZlYXR1cmVfYXV0aG9yIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE5ld3MgY3VzdG9taXNhdGlvblxuICAgICAgICAmLm5ld3Mge1xuXG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEluc3RhZ3JhbSBjdXN0b21pc2F0aW9uXG4gICAgICAgICYuaW5zdGFncmFtIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1saWdodC1ib3R0b20ucG5nJykgbm8tcmVwZWF0IGxlZnQgYm90dG9tICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoIzAwMCwgMC4xKTtcblxuICAgICAgICAgICAgLm1haW5faW1nIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDEwcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGF1bmNoX3BhbmVsIHtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0X2FyZWEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZmlsZV90aHVtYiB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRleHQgLmZlYXR1cmVfYXV0aG9yIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMCAwO1xuXG4gICAgICAgICAgICAgICAgLnByaW1hcnktbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgaDMgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICR0ZWFsLC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR5cGUge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50eXBlIHtcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLmxpc3Rpbmcge1xuXG4gICAgICAgIC5sYXRlc3RfZmVhdHVyZSB7XG5cbiAgICAgICAgICAgIC5idG5fdHlwZSwgLnR5cGUge1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmVhdHVyZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcblxuICAgICAgICAgICAgICAgIC50ZXh0X2FyZWEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogODAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGgzIGEsIC5tZXRhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMyBhOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkLWx0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApe1xuXG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgICYubGlzdGluZyB7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAubWFpbl9pbWcge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3JVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG5fdHlwZSwgLnR5cGUge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHRfYXJlYSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTglO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZXh0IGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5idG4tdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGF0ZXN0X2ZlYXR1cmUuZmVhdHVyZWQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIC5tYWluX2ltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRleHRfYXJlYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgMCAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG5cbiAgICAgICAgLmZyb250ICYge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAudG9wLWxlZnQtdGV4IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMjYuNSU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwJTtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzbiszKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAubGF0ZXN0X2ZlYXR1cmUge1xuXG4gICAgICAgICAgICAucHJvZmlsZV90aHVtYiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIC5sYXRlc3RfZmVhdHVyZSB7XG5cbiAgICAgICAgICAgIC50ZXh0IHtcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcHggMCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR5cGUge1xuXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIEludHJvLXdyYXBwZXJcbi5pbnRyby13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmcnKSBuby1yZXBlYXQgbGVmdCB0b3AgJGdyZXlfd2FybV9sdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDIwcHg7XG4gICAgfVxuXG59XG5cbi8vIFBhZ2luZ1xuLnBhZ2luZyB7XG4gICAgbWFyZ2luOiAxMHB4IDAgNDBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgfVxufVxuXG4vLyBNYWluIGN0YXNcbi5jdGFzIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV9kaztcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcGFkZGluZzogNDBweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgIH1cbn1cblxuLy8gU2ltcGxlIGN0YXNcbi5jdGEtc2ltcGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogNDBweCAwIDQwcHg7XG5cbiAgICAuZGl2aWRlciB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMDRkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTA2ZGVnKTtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTEyMHB4O1xuICAgICAgICBsZWZ0OiA0MCU7XG4gICAgfVxuXG4gICAgLmludHJvIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxufVxuXG4vLyBJbmxpbmUgQ1RBXG4uaW5saW5lLWN0YSB7XG4gICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAwIDAgMCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGhlaWdodDogMTVweDtcbiAgICB9XG5cbn1cblxuLy8gU21hbGwgY3Rhc1xuLmN0YS1zbWFsbCB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBtYXJnaW46IDAgYXV0byA0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogOTUlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsZWZ0OiAxMHB4O1xuXG4gICAgLmJvdHRvbS10ZXh0dXJlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLndpdGh2b2ljZXMge1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmRpdmlkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICAgIG1hcmdpbjogM3B4IDAgMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV9kaztcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkYmxhY2ssLTEwcHggMCAwICRibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICR0ZWFsLC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5saWdodCB7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjM2EzYTNhO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgIzNhM2EzYSwtMTBweCAwIDAgIzNhM2EzYTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDMwcHggcmdiYSgjMDAwLCAwLjA0KTtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHJlZCwtMTNweCAwIDAgJHJlZDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmludHJvIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLmRpdmlkZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMjYwcHg7XG4gICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICB0b3A6IC0xNTBweDtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA0NXB4KTtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICBmaWxsOiAjMjMxRjIwO1xuICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMDVkZWcpO1xuXG4gICAgICAgICYuYm90dG9tIHtcbiAgICAgICAgICAgIGJvdHRvbTogLTE1MHB4O1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwOGRlZyk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBtYXJnaW46IDAgYXV0byA0MHB4O1xuXG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTYwcHggNjBweCA2MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWlkZGxlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gQm90dG9tIHRleHR1cmVcbi5ib3R0b20tdGV4dHVyZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5jdGFfbWFpbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkd2hpdGUsMC4yKTtcbiAgICBwYWRkaW5nOiAwIDAgMzBweDtcblxuICAgIC5kaXZpZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtNjBweDtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgZm9udC1zaXplOiAzNHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgJjpmb2N1c3tcbiAgICAgICAgb3V0bGluZS1jb2xvcjogJHJlZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIFNoYXJlIGJhclxuLnNoYXJlX2JhciB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm90dG9tOiAtMzAwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywgMC4yKTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLCAwLjIpO1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjZweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjZweCAtNXB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssIDAuMik7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuXG4gICAgLnNoYXJlX2ludHJvIHtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuaW50cm8ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNoYXJlX29wdGlvbnMge1xuXG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtOXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvcHlfbGluayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJde1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LWdyZXktd2FybS5qcGcnKSBuby1yZXBlYXQgbGVmdCB0b3AgJGdyZXlfd2FybTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1hcmdpbjogMCA4MHB4O1xuXG4gICAgICAgIC5zaGFyZV9pbnRybyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDcwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAuc2hhcmVfb3B0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cbiAgICAgICAgICAgIC5jb3B5X2xpbmsge1xuXG4gICAgICAgICAgICAgICAgLmJ0biB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBTb2NpYWxcbi5zb2NpYWwge1xuXG4gICAgLmxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgfVxuXG4gICAgYSB7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGZpbGw6ICRncmV5X21pZDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogN3B4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZiIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjM2I1OTk4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnR3IHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjNTVhY2VlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxpIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjMDA3YmI1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdvIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjZGQ0YjM5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmVtIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkdGVhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJHRlYWw7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgZm9vdGVyICYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMSk7XG5cbiAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJi5oaWRlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjNzIGVhc2UgMHMpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmIge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiRmFjZWJvb2sgLSBKb2luIHRoZSBkZWJhdGVcIjtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbG9yOiAjM2I1OTk4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnR3IHtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAvLyBjb250ZW50OiBcIlR3aXR0ZXIgLSBUd2VldHMgZnJvbSB0aGUgZnJvbnRsaW5lXCI7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogIzU1YWNlZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pbnN0IHtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAvLyBjb250ZW50OiBcIkluc3RhZ3JhbSAtIHBob3RvcyBmcm9tIHRoZSBmaWVsZFwiO1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICNlOTU5NTA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYud2Ege1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiV2hhdHNBcHAgLSBTdGF5IGNvbm5lY3RlZCB3aXRoIE1TRlwiO1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICM0ZGMyNDc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYucGkge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiUGludGVyZXN0IC0gTVNGIFN0b3JpZXMgYnJvdWdodCB0byBsaWZlXCI7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogI2NiMjAyNztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5saSB7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29udGVudDogXCJMaW5rZWRpbiAtIEpvaW4gb3VyIG5ldHdvcmtcIjtcbiAgICAgICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbG9yOiAjY2IyMDI3O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdvIHtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAvLyBjb250ZW50OiBcIkdvb2dsZSsgLSBKb2luIHRoZSBNU0YgbmV0d29ya1wiO1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICNkZDRiMzk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudHUge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiVHVtYmxyIC0gTVNGIGJsb2cgU25pcHBldHMgXCI7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAvLyBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogIzMyNTA2ZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5yc3Mge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiUlNTIC0gTVNGIHVwZGF0ZXMgdG8geW91ciBpbmJveFwiO1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICNmZjY2MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc24ge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiU25hcGNoYXQgLSBNU0YgdXBkYXRlcyBpbiB2aWRlb1wiO1xuICAgICAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy8gb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICNmZjY2MDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAzNXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMXB4IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRncmV5X21pZDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgJi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfZmFjZWJvb2sge1xuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAjM2I1OTk4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmJzY21zX3NvY2lhbF9uZXR3b3Jrc190d2l0dGVyIHtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogIzU1YWNlZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfaW5zdGFncmFtIHtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogI2U5NTk1MDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5ic2Ntc19zb2NpYWxfbmV0d29ya3Nfd2hhdHNhcHAge1xuXG4gICAgICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAjNGRjMjQ3O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnBpIHtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogI2NiMjAyNztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfZ29vZ2xlcGx1cyB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNkZDRiMzk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYnNjbXNfc29jaWFsX25ldHdvcmtzX3R1bWJsciB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICMzMjUwNmQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYnNjbXNfc29jaWFsX25ldHdvcmtzX3JzcyB7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZjY2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywwLjIpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuXG4gICAgICAgICAgICAubGFiZWwge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIExpc3RpbmcgZmlsdGVyc1xuLmxpc3RpbmctZmlsdGVycyB7XG4gICAgbWFyZ2luOiAwIDAgMDtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG5cbiAgICAuZmlsdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfd2FybV9sdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICBib3JkZXI6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4yKTtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjA0KTtcblxuICAgICAgICAuZmlsdGVyLWxhYmVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGxlZnQ6IC0xcHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoIzAwMCwgMC4xKTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4yKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbWlkO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG5cblxuICAgICAgICAuZmlsdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywwLjIpO1xuICAgICAgICAgICAgd2lkdGg6IDI2JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gRmlsdGVyc1xuLmZpbHRlcnMge1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleV9taWQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDVweDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBDYXB0aW9uXG4uY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNXB4O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgei1pbmRleDogMTA7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjY7XG5cbiAgICAudGl0bGUtYmFubmVyICYge1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHRvcDogNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbn1cblxuLmNhcHRpb24tbWFpbiB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LWdyZXktd2FybS1sdC5wbmcnKSBuby1yZXBlYXQgbGVmdCB0b3AgJGdyZXlfd2FybV9sdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2hvd19jYXB0aW9uIHtcblxuICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGRyb3Atc2hhZG93KCAwIDAgNXB4IHJnYmEoIzAwMCwgMC41KSApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogNnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi5ncmFkLW1hc2sge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2dyYWQtbWFzay5wbmcnKSBuby1yZXBlYXQgcmlnaHQgYm90dG9tO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAyNTBweDtcblxuICAgIC50aXRsZS1iYW5uZXIgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxufVxuXG4uZ3JhZC1tYXNrLXRvcCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZ3JhZC1tYXNrLXRvcC5wbmcnKSBuby1yZXBlYXQgcmlnaHQgdG9wO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiAyNTBweDtcblxuICAgIC50aXRsZS1iYW5uZXIgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxufVxuXG5cbi5ncmFkLW1hc2stYmlnIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9ncmFkLW1hc2stYmlnLnBuZycpIG5vLXJlcGVhdCBib3R0b20gbGVmdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxNTAlO1xuICAgIGhlaWdodDogMTUwJTtcblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxufVxuXG4vLyBUaXRsZSBiYW5uZXJcbi50aXRsZS1iYW5uZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1ncmV5LXdhcm0uanBnJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X3dhcm07XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRvcDogNTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICByaWdodDogMDtcblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICB0b3A6IDkwcHg7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgfVxuXG59XG5cbi8vIFJpY2ggdGV4dFxuLnJpY2gtdGV4dCB7XG4gICAgcGFkZGluZzogMTVweCAwIDE1cHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW4tdG9wOiAyMjBweDtcbiAgICBtYXgtd2lkdGg6IDg2MHB4O1xuXG4gICAgLnRlbXBsYXRlLXN0b3J5ICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICAudGVtcGxhdGUtc3RhbmRhcmQgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cblxuICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICBsZWZ0OiAtMjAwMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKXtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4IDE1cHggMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMzIwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICl7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggNDBweCAzMHB4IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBtYXJnaW4tdG9wOiA3NXZoO1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDQwcHggNDBweCAwO1xuXG4gICAgICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uYXV0aG9ybmFtZSB7XG4gICAgY29sb3I6ICRyZWQ7XG59XG5cbi8vIE1haW4gY29udGVudCB0eXBlIG1ldGFcbi5tZXRhLW1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjkpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDEwcHggMTBweCAwO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAuc2Vjb25kYXJ5LWxhYmVsLCAudGVydGlhcnktbGFiZWwge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIH1cbiAgICAgICAgJi5saW5rIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICR0ZWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZW1wbGF0ZS1uby1pbWFnZSAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgICYubWV0YS1tYWluLWJsb2cge1xuICAgICAgICB0b3A6IC00NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG5cbiAgICAgICAgLmZlYXR1cmVfYXV0aG9yIHtcblxuICAgICAgICAgICAgLnNlY29uZGFyeS1sYWJlbCwgLnRlcnRpYXJ5LWxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuXG4gICAgLnRlbXBsYXRlLXN0b3J5ICYge1xuXG4gICAgICAgICYubWV0YS1tYWluLWJsb2cge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnN0b3J5LXBlcnNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICAgIGxlZnQ6IC0xMTBweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICBsZWZ0OiAtMjAwMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC45KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgdG9wOiAtNDBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTBweCAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgJi5tZXRhLW1haW4tYmxvZyB7XG4gICAgICAgICAgICB0b3A6IC02NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuXG4gICAgICAgICAgICAuZmVhdHVyZV9hdXRob3Ige1xuXG4gICAgICAgICAgICAgICAgLnNlY29uZGFyeS1sYWJlbCwgLnRlcnRpYXJ5LWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAudGVtcGxhdGUtc3RvcnkgJiB7XG5cbiAgICAgICAgICAgICYubWV0YS1tYWluLWJsb2cge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICAmLmluY2x1ZGVzLWJ1dHRvbiB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjU7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yNyU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC44O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIElubG5lIGltYWdlIHdpdGggZXhwYW5kXG4uaW1nLWlubGluZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCAwIDQwcHg7XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG5cbiAgICAgICAgJi5pbWctcmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtNjBweCA2MHB4IDYwcHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBTVWIgbmF2XG4uc3ViLW5hdiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMTJweCAyMHB4IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZ3JleV93YXJtX2x0LCAwLjcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTMwcHg7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAzO1xuXG4gICAgJi5vcGVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZ3JleV93YXJtX2x0LCAxKTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAxNTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoIzAwMCwgMC40KTtcbiAgICB9XG5cbiAgICAuaW4tdGhpcy1zZWN0aW9uLWxpbmsge1xuXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIGg0IHtcblxuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHVsIHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssIDAuMTUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcblxuICAgICAgICAgICAgJi5hY3RpdmUtcGFnZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXlfbWlkO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleV9taWQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzYW5zO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAyNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcbiAgICAgICAgcGFkZGluZzogMTJweCA0MHB4IDEycHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAwO1xuICAgICAgICAvLyBBZGQgYm90dG9tIG1hcmdpbiB0byBhbGxvdyBicmVhdGhpbmcgc3BjZSBmb3IgcmVsYXRlZCBjb250ZW50IGJlbG93IGluIHNpZGUgY29sdW1uXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwdmg7XG4gICAgICAgIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGp1c3QgZm9yIGRpc3BsYXkgcHVycG9zZXMgaW4gY29tcG9uZW50cyBsaWJyYXJ5XG4gICAgICAgICYud2l0aG91dC1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAuaW4tdGhpcy1zZWN0aW9uLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBSZWxhdGVkIGNvbnRlbnRcbi5yZWxhdGVkLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyNTtcblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAmLmZpeGVkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIFJlbGF0ZWQgZmVlZCAoc2lkZSBjb2wgbmV3cy9ibG9ncyBldGMpXG4ucmVsYXRlZC1mZWVkIHtcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xuXG4gICAgLnJlbGF0ZWQtY29udGVudCAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubGF0ZXN0X2ZlYXR1cmUge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIH1cblxuICAgIC5tYWluX2ltZyB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLnByb2ZpbGVfdGh1bWIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tZXRhIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIC5yZWxhdGVkLWNvbnRlbnQgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0X2FyZWEge1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIEJsb2cgdGFnc1xuLnRhZ3Mge1xuICAgIG1hcmdpbjogNjBweCAwIDYwcHg7XG5cbiAgICAucmVsYXRlZC1jb250ZW50ICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgkYmxhY2ssMC4xKTtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAucmVsYXRlZC1jb250ZW50ICYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBJbmxpbmUgaW1hZ2Vcbi5pbmxpbmUtaW1nIHtcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pbWctYXJlYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbn1cblxuLy8gUmVsYXRlZCB0b3BpY3MgY2FyZHNcbi5yZWxhdGVkLXRvcGljcyB7XG4gICAgcGFkZGluZzogNDBweCAwIDA7XG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgNDBweDtcblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAudGVtcGxhdGUtY291bnRyaWVzICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtd2hpdGUuanBnJykgbm8tcmVwZWF0IGxlZnQgdG9wICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuXG4gICAgICAgIC5yZWxhdGVkLXRvcGljIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAudGVtcGxhdGUtY291bnRyaWVzICYge1xuXG4gICAgICAgICAgICAucmVsYXRlZC10b3BpYyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgNzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyOC42JTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDclO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoM24rMykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi5yZWxhdGVkLXRvcGljIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtbGlnaHQtYm90dG9tLnBuZycpIG5vLXJlcGVhdCBsZWZ0IGJvdHRvbSAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgJiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuaW1nLXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTMwMG1zIGN1YmljLWJlemllcigwLjE1NSwuNTc1LC44NywuODcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC50ZXh0LXdyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV93YXJtX2x0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAyMHB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAubGF0ZXN0X2ZlYXR1cmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMSk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cblxuICAgIC5jb250ZW50X3R5cGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tYWluX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMzBweDtcblxuICAgICAgICAuaW1nLXdyYXBwZXIge1xuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cblxuLy8gU3Ryb25nIGxhYmVsXG4uc3Ryb25nLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuXG4vLyBNb2RhbFxuLm1vZGFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywwLjYpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICAmLm1hcCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLm1vZGFsLWJveCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDAuMSk7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICAubW9kYWwtYm94IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggNjBweCAyMHB4IDYwcHg7XG4gICAgfVxuXG4gICAgLm1vZGFsLWJveCB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC4xNTUsLjU3NSwuODcsLjg3KTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGV4LXdoaXRlLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDQwcHggcmdiYSgjMDAwLCAwLjQpO1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gNDAlKTtcbiAgICAgICAgdG9wOiAxNDBweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpO1xuICAgIH1cblxuICAgICYub3BlbiB7XG5cbiAgICAgICAgei1pbmRleDogNTAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC5tb2RhbC1ib3gge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmJsb2ctc2l0ZS1saW5rIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleV93YXJtO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDJweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4udmlzaXQtYmxvZyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAkZ3JleV93YXJtO1xuICAgIHBhZGRpbmc6IDMwcHggMCAwO1xuICAgIC5idG4ge1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFByb2ZpbGUgaW4gbW9kYWxcbi5wcm9maWxlLWltZy13cmFwcGVyIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdG9wOiAtNThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZmlsZS10ZXh0LXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIH1cblxuICAgIC5tZXRhLnByb2ZpbGUtbWV0YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgNDBweDtcbiAgICB9XG5cbiAgICAucmVsYXRlZC1mZWVkIC50ZXh0X2FyZWEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubGF0ZXN0X2ZlYXR1cmUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywwLjIpO1xuXG4gICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIENhcm91c2VsIGN1c3RvbWlzYXRpb25cbi52b2ljZXMtY2Fyb3VzZWwtd2lkZSB7XG4gICAgei1pbmRleDogMjtcblxuICAgIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIG1hcmdpbjogNXB4IDVweDtcbiAgICAgICAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTUwKTtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JleV9taWQ7XG4gICAgfVxuXG59XG5cbi52b2ljZXMtY2Fyb3VzZWwtd2lkZSAgLm93bC1pdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXYge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm90dG9tOiAwO1xufVxuXG4vKiBCdXR0b25zICovXG4ub3dsLXByZXYsIC5vd2wtbmV4dCB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMzUwcHg7XG5cbiAgICAudm9pY2VzLWNhcm91c2VsLXdpZGUgJiB7XG4gICAgICAgIHRvcDogLTI1MHB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52b2ljZXMtY2Fyb3VzZWwtd2lkZSAmIHtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuLm93bC1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcnJvdy1sZWZ0LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgLnZvaWNlcy1jYXJvdXNlbC13aWRlICYge1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAudm9pY2VzLWNhcm91c2VsLXdpZGUgJiB7XG4gICAgICAgICAgICBsZWZ0OiAtNjBweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi5vd2wtbmV4dCB7XG4gICAgcmlnaHQ6IDMwcHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2Fycm93LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgLnZvaWNlcy1jYXJvdXNlbC13aWRlICYge1xuICAgICAgICByaWdodDogMTBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAudm9pY2VzLWNhcm91c2VsLXdpZGUgJiB7XG4gICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBIb21lcGFnZSBzdHJhcGxpbmVcbi5wb3Mtc3RhdGVtZW50IHtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIHBhZGRpbmc6IDQwcHggMCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHdoaXRlLC0xMHB4IDAgMCAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMCAzMHB4O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDRweDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIExpc3RpbmcgYnRuc1xuLmxpc3RpbmctYnRucyB7XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgIH1cblxufVxuXG4vLyBNYXAgd3JhcHBlclxuLndvcmxkLW1hcC13cmFwcGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJGJsYWNrLDAuMik7XG59XG5cbi8vIE1hcHNcbiNtYXAge1xuICAgIGhlaWdodDogMjgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGYwICFpbXBvcnRhbnQ7XG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgaGVpZ2h0OiA2NTBweDtcbiAgICB9XG5cbn1cblxuXG4vLyBCaWcgZHJvcGRvd25zXG4uYmlnLWRyb3BzIHtcblxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDUlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxufVxuXG4uaW5saW5lLWZlYXR1cmUtcmlnaHQge1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luOiAwIC03MHB4IDYwcHggNDBweDtcbiAgICAgICAgd2lkdGg6IDM1JTtcblxuICAgICAgICAudGVtcGxhdGUtYXJ0aWNsZSAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtNDBweCA2MHB4IDYwcHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5cbi8vIENhbGxvdXRcbi5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMDBweCAyMHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwIDAgNDBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmdyYWQtbWFzay1iaWcge1xuICAgICAgICB3aWR0aDogMzAwJTtcbiAgICB9XG5cbiAgICAmLm5vLXRodW1iIHtcblxuICAgICAgICAucXVvdGUge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgIC5xdW90ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgbWluLWhlaWdodDogOTBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgfVxuXG4gICAgLm1ldGEge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB9XG5cbiAgICAuYXVkaW8tcGxheWVyIHtcblxuICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICBjb2xvcjogJHRlYWw7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBwYWRkaW5nOiA0MDBweCAzMHB4IDIwcHg7XG5cbiAgICAgICAgLmdyYWQtbWFzay1iaWcge1xuICAgICAgICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAucXVvdGUge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA5MHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZXRhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmxpbmUtZmVhdHVyZS1yaWdodCAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwMHB4IDIwcHggMjBweDtcblxuICAgICAgICAgICAgLmdyYWQtbWFzay1iaWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5cbi5jdGEtcGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zIGVhc2UgMG1zLCB0cmFuc2Zvcm0gNTAwbXMgZWFzZSAwbXM7XG4gICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICBwYWRkaW5nOiAzNTBweCAyMHB4IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZWFsO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblxuICAgIC5pbnRybyB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgfVxuXG4gICAgLmdyYWRpZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoYmxhY2ssMSkgMCUscmdiYShibGFjaywwKSAxMDAlKTtcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIH1cblxuICAgIC50ZXh0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5hY3Rpb25zIHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgcGFkZGluZzogMzQwcHggMjAwcHggMjIwcHg7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDEwMHB4LCAwICk7XG4gICAgICAgIC8vIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgJi5vbi1zY3JlZW4ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCggMCwgMHB4LCAwICk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmludHJvIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aW9ucyB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcmVkLCA1JSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuX2FsdCB7XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCR0ZWFsLCA1JSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4uY3RhLXBhbmVsMiB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBlYXNlIDBtcywgdHJhbnNmb3JtIDUwMG1zIGVhc2UgMG1zO1xuICAgIG1hcmdpbjogMzBweCAwIDUwcHg7XG4gICAgcGFkZGluZzogMjUwcHggNDBweCA0MHB4IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuXG4gICAgLmludHJvIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJGJsYWNrLC0xMHB4IDAgMCAkYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTU7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYWN0aW9ucyB7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkcmVkLC0xMHB4IDAgMCAkcmVkO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuXG4gICAgICAgICAgICAmLmJ0bl9hbHQge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICR0ZWFsLC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkdGVhbCwtMTBweCAwIDAgJHRlYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIHBhZGRpbmc6IDMwMHB4IDUwJSA3MHB4IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDEwMHB4LCAwICk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgICAgJi5vbi1zY3JlZW4ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCggMCwgMHB4LCAwICk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmludHJvIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aW9ucyB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIFN0b3JpZXMgc3RyaXBcbi5zdG9yaWVzLXN0cmlwIHtcbiAgICBwYWRkaW5nOiAwIDAgNDBweDtcblxuICAgIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgfVxuXG4gICAgJi5wZW9wbGUge1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAubWFpbl9pbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNSU7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tYWluX2ltZyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1JVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5wZW9wbGUge1xuXG4gICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgLm1haW5faW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCVcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbi8vLyBMaXN0aW5nIHBhZ2VzIGJvZHlcbi5saXN0aW5nLWJvZHkge1xuICAgIG1hcmdpbjogNTBweCAwIDA7XG5cbiAgICAudGVtcGxhdGUtY291bnRyaWVzICYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIG1hcmdpbjogMzNweCAwIDA7XG4gICAgfVxuXG59XG5cbi8vIFJvbGVzXG4ucm9sZXMge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1ncmV5LXdhcm0tbHQucG5nJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X3dhcm1fbHQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogMjUwcHg7XG5cbiAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRtb25vO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBWb2ljZXNcbi52b2ljZXMge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL3RleC1ncmV5LXdhcm0tbHQucG5nJykgbm8tcmVwZWF0IGxlZnQgdG9wICRncmV5X3dhcm1fbHQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMCA0MHB4O1xuXG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkbW9ubztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAudm9pY2Utd2lkZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5wcm9maWxlX3BpYyB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNHB4O1xuXG4gICAgICAgICAgICBhOmZvY3Vze1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDMwcHggMDtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAkcmVkLC0xMHB4IDAgMCAkcmVkO1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICR0ZWFsLC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHRlYWw7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuXG4gICAgICAgIC52b2ljZS13aWRlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDAgMjBweCA1MHB4O1xuXG4gICAgICAgICAgICAucHJvZmlsZV9waWMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG5cbiAgICB9XG5cbn1cblxuXG4vLyBSb2xlIHJlcXVpcmVtZW50c1xuLnJlcXMge1xuICAgIG1hcmdpbjogMCAwIDIwcHggMTBweDtcblxuICAgIGxpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBlYXNlIDBtcywgdHJhbnNmb3JtIDUwMG1zIGVhc2UgMG1zO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV93YXJtX2x0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBtYXJnaW46IDAgMCAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgIC5udW0ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTE4cHg7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JleV93YXJtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXlfbWlkO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG5fdGlja2JveCB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9sbG93b25saW5rIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJGJsYWNrLC0xMHB4IDAgMCAkYmxhY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtZ3JleS13YXJtLmpwZycpIG5vLXJlcGVhdCBsZWZ0IHRvcCAkZ3JleV93YXJtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5udW0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0OWExMzE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLnJlcXMtZXh0ZW5kZWQge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDA7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMzVweCAzMHB4IDM1cHggNDBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDEwMHB4LCAwICk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAubnVtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogN3B4O1xuICAgICAgICAgICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5vbi1zY3JlZW4ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDBweCwgMCApO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJi5yZXFzLWV4dGVuZGVkIHtcblxuICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cblxuICAgIH1cblxufVxuXG4vLyBTdGlja3kgYWN0aW9ucyBiYXJcbi5hY3Rpb25zLWJhciB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAtOTBweDtcbiAgICBoZWlnaHQ6IDE4MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgIH1cblxuICAgICYubm90LWZpeGVkIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgLm5leHQtc3RlcCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGdyZXlfbWlkLCAwLjQpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWxwdGV4dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAuaGVscHRleHQsXG4gICAgICAgICAgICAuZnJlbmNoLWhlbHB0ZXh0e1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5oZWxwdGV4dHtcbiAgICAgICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZnJlbmNoLWhlbHB0ZXh0e1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDlhMTMxO1xuXG4gICAgICAgICAgICAuaGVscHRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgIC5oZWxwdGV4dCxcbiAgICAgICAgICAgIC5mcmVuY2gtaGVscHRleHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZzogMjBweCAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICR0ZWFsO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICYuZml4ZWQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi5ub3QtZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAuc2Vjb25kYXJ5LWFjdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG59XG5cbi8vIEZvbGxvdyBvbiBsaW5rXG4uZm9sbG93b25saW5rIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLm11bHRpcGxlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICBmaWxsOiAkcmVkO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICR0ZWFsO1xuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gVmlkZW9zXG4udmlkZW9XcmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLyogMTY6OSAqL1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xufVxuXG4udmlkZW9XcmFwcGVyIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuXG4vLyBBcHBseVxuLmFwcGx5LWJhciB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW46IDAgMCA0MHB4O1xuXG4gICAgaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBXaWRlIGxpc3RzIC0gNCBjb2xzIG9uIGRlc2t0b3AgKGVnIGNvdW50cmllcy9pc3N1ZXMpXG4ud2lkZS1saXN0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAxcyBlYXNlIDBzKTtcbiAgICAvLyBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXgtd2hpdGUucG5nJykgbm8tcmVwZWF0IGxlZnQgdG9wICR3aGl0ZTtcbiAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICAgIG1hcmdpbjogMCAwIDQwcHg7XG4gICAgbWF4LWhlaWdodDogNDAwcHg7XG5cbiAgICAuZ3JhZC1tYXNrLXdoaXRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIwMDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG5cbiAgICAgICAgLmdyYWQtbWFzay13aGl0ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmdyYWQtbWFzay13aGl0ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgLy9wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkd2hpdGUsIDApIDAlLHJnYmEoJHdoaXRlLCAxKSA1MSUscmdiYSgkd2hpdGUsIDEpIDEwMCUpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5wYWdpbmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfY29udGFpbmVyO1xuICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoJHdoaXRlLDAuMik7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkcmVkLWx0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoYmxhY2ssIDAuMyk7XG5cbiAgICAgICAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQtbHQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKXtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDUwcHg7XG4gICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDUwcHg7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiA1MHB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkLWNvbHVtbjtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNTBweDtcbiAgICAgICAgICAgIC1tb3otY29sdW1uLWdhcDogNTBweDtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDUwcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNTBweDtcbiAgICAgICAgICAgIC1tb3otY29sdW1uLWdhcDogNTBweDtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDUwcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cblxuLy8gSW50ZXJhdGl2ZSB3b3JsZCBtYXBcbi53b3JsZC1tYXAtaW50ZXJhY3RpdmUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC50ZW1wbGF0ZS1jb3VudHJpZXMgJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmZpbHRlcnMge1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAucG9wdXAge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgjMDAwLCAwLjEpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDE1cHg7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3BpY3Mge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgICAgICAmLmxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMTVweCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudG9waWMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCByZ2JhKCRibGFjaywgMC4yKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcblxuICAgICAgICAudGVtcGxhdGUtY291bnRyaWVzICYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG4vLyBDb3VudHJpZXMgdG9wXG4uY291bnRyaWVzLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5ncmFkLW1hc2std2hpdGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIC8vcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoJGJsYWNrLCAwKSAwJSxyZ2JhKCRibGFjaywgMSkgNTElLHJnYmEoJGJsYWNrLCAxKSAxMDAlKTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICBoMSwgLmludHJvIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbn1cblxuLy8gSmFtZXNcbi8vY291bnRyaWVzLWxhbmRpbmctcGFnZSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmNvdW50cmllcy1sYW5kaW5nLXBhZ2Uge1xuICAgIC8vIGhlcm9cbiAgICAuaGVybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDE2MHB4IDAgNTBweDtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgcGFkZGluZzogNDAwcHggMCA2MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDU1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJyZWFkY3J1bWIge1xuICAgICAgICAgICAgbGksIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gJjphZnRlciB7XG4gICAgICAgIC8vICAgICBjb250ZW50OiAnJztcbiAgICAgICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy8gICAgIGxlZnQ6IDA7XG4gICAgICAgIC8vICAgICB0b3A6IDA7XG4gICAgICAgIC8vICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gICAgIGJhY2tncm91bmQ6IHJnYmEoJGdyZXlfZGssIDAuNyk7XG4gICAgICAgIC8vICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgIC8vIH1cbiAgICB9XG4gICAgLnNlYXJjaCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMTBweDtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC4yNSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHdoaXRlLCAwLjUpO1xuICAgICAgICB9XG4gICAgICAgIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJy4uL2ltZy9nbGFzcy1pY29uLXdoaXRlLnBuZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIH1cbiAgICAgICAgLmhpZGRlbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNDlweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleV9kaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYm90dG9tLW5vbmUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi55ZW1lbi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ub3QtaGVyZSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5oaWRkZW47XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaGlkZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hbmNob3Ige1xuICAgICAgICBjb2xvcjogJHJlZF9sdDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAuc3ZnIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgICAgZmlsbDogJHJlZF9sdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBzcG90bGlnaHRcbiAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAub3ZlcnZpZXcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAxMHB4O1xuICAgICAgICBtYXJnaW46IDYwcHggMCAzMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAwIDcwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAwLjA1KTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQwMHB4O1xuXG4gICAgICAgIH1cbiAgICAgICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiAyN3B4O1xuICAgICAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDUwcHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3LXZvaWNlcyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAucHJvZmlsZV9waWMge1xuICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDMsIHAge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAtNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgZmlsbDogJHJlZF9sdDtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICAgIC5tZXRhIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAwLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHJlZF9sdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBvdmVydmlldyAvLyByZXNwb25zaXZlIHRhYmxlXG4ucndkLXRhYmxlIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBtYXJnaW46IDIwcHggMCAwO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEod2hpdGUsIDAuMyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgfVxuICB0ciB7XG4gICAgdGQge1xuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gIH1cbiAgdGgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICBtYXJnaW46IC41ZW0gMWVtO1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAuNWVtO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGgpXCI6IFwiO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHRoLCB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgcGFkZGluZzogM3B4IDI1cHg7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gYWxsIGNvdW50cmllc1xuLmNvbHVtbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwIDE1cHggNDBweDtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDcwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICB9XG59XG5cbi5hbGwtY291bnRyaWVzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgMzBweDtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDAgNjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL21hcC1qLnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBvcGFjaXR5OiAwLjA1O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIHJlZ2lvbnNcbi5yZWdpb25zIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoYmxhY2ssIDAuMik7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBjb2xvcjogJHRlYWw7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICB0b3A6IDEzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9wbHVzLWljb24ucG5nXCIpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnR3aXN0OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIH1cbiAgICAubWV0YSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9kaywgMC43KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gaXNzdWVzLWxhbmRpbmctcGFnZSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5pc3N1ZXMtbGFuZGluZy1wYWdlIHtcbiAgICAvL2hlcm9cbiAgICAuaGVybyB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcbiAgICAgICAgLm1haW4tcGFnZS10aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBsaSwgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZ3JpZC0xMi5ncmlkLWRlc2t0b3AtNyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5vdmVydmlldyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDEwcHg7XG4gICAgICAgIG1hcmdpbjogNjBweCAwIDMwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1ncmV5LXdhcm0tbHQucG5nXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcDtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAwIDcwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC41KTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTQwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXlfZGs7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICRncmV5X2RrLCAtMTBweCAwIDAgJGdyZXlfZGs7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1MHB4O1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgICAgIH1cbiAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5yZWdpb25zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoYmxhY2ssIDAuMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZ3JleV9kaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMjVzIGVhc2UgMHM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEod2hpdGUsIDAuNyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIGFsbCBtZWRpY2FsIGlzc3Vlc1xuICAgIC5hbGwtY291bnRyaWVzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4NSU7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi5jcmlzaXMtcmVzcG9uc2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMHB4IDAgMTBweDtcbiAgICBtYXJnaW46IC0yMHB4IDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvNy5qcGdcIikgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgNTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X2RrLCAwLjcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgY29sb3I6ICRncmV5X2RrO1xuICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCB3aGl0ZSwgLTEwcHggMCAwIHdoaXRlO1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleV9kaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZ3JpZC0xMi5ncmlkLWRlc2t0b3AtNCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgd2lkdGg6IDI0LjUlO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgICAvLyBtYWdpYyBudW1iZXJcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCByZ2JhKHdoaXRlLCAwLjc1KTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9kaywgMC43NSk7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgJi50YWItb25lLCAmLnRhYi10d28ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY291bnRyaWVzIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEod2hpdGUsIDAuMyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAwLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKHdoaXRlLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZmFjdHMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEycHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogM3B4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZnJvbS1maWVsZCB7XG4gICAgICAgIC5wcm9maWxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgLnByb2ZpbGUtcGljIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMsIC5tZXRhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEod2hpdGUsIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBhLnBhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRlYWw7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGxpc3RpbmctcGFnZVxuLmxpc3RpbmctcGFnZSB7XG4gICAgLmhlcm8ge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNTBweCAwIDYwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG4gICAgLy8gLmxhdGVzdF9mZWVkIHtcbiAgICAvLyAgICAgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICAvLyAgICAgICAgIG1hcmdpbjogMDtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgICAmLmxpc3Rpbmcge1xuICAgIC8vICAgICAgICAgbGkge1xuICAgIC8vICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgLy8gICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgIC8vICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X2RrLCAwLjA1KTtcbiAgICAvLyAgICAgICAgICAgICAgICAgd2lkdGg6IDQ4LjUlO1xuICAgIC8vICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAvLyAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDMlIDMwcHggMCAhaW1wb3J0YW50O1xuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIC8vICAgICAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgfVxuICAgIC8vICAgICAgICAgICAgIC5tYWluX2ltZyB7XG4gICAgLy8gICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgLy8gICAgICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICAvLyBzb3JyeSBlYXNpZXIgdGhhbiBjcm9wcGluZyBpbWFnZXNcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIC8vICAgICAgICAgICAgICAgICAgICAgfVxuICAgIC8vICAgICAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgfVxuICAgIC8vICAgICAgICAgfVxuICAgIC8vICAgICB9XG4gICAgLy8gICAgIC50ZXh0X2FyZWEge1xuICAgIC8vICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAvLyAgICAgfVxuICAgIC8vICAgICAudGV4dCB7XG4gICAgLy8gICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgLy8gICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgIC8vICAgICAgICAgICAgIGxlZnQ6IDcwJTtcbiAgICAvLyAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAvLyAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgIC8vICAgICAgICAgfVxuICAgIC8vICAgICAgICAgLmhlYWRpbmcge1xuICAgIC8vICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgIH1cbiAgICAvLyAgICAgfVxuICAgIC8vICAgICAmLmZlYXR1cmVkIHtcbiAgICAvLyAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgLy8gICAgICAgICB1bCB7XG4gICAgLy8gICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuICAgIC8vICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgIH1cbiAgICAvLyAgICAgICAgIGxpIHtcbiAgICAvLyAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIHdpZHRoOiAzMSU7XG4gICAgLy8gICAgICAgICAgICAgICAgIG1hcmdpbjogMCAzJSAzMHB4IDAgIWltcG9ydGFudDtcbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXlfZGs7XG4gICAgLy8gICAgICAgICAgICAgLm1haW5faW1nIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAvLyAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIC8vICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAvLyAgICAgICAgICAgICAgICAgfVxuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIG1hcmdpbjogMCAzJSAzMHB4IDAgIWltcG9ydGFudDtcbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgIC8vICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuICAgIC8vICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLy8gICAgICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgLnRleHRfYXJlYSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICAudGV4dCB7XG4gICAgLy8gICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgLy8gICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgLy8gICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgLy8gICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSB0cmFuc2xhdGVYKDApO1xuICAgIC8vICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMzBweDtcbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICAgICAgaDMsIGEsIHtcbiAgICAvLyAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgIC8vICAgICAgICAgICAgIH1cbiAgICAvLyAgICAgICAgICAgICAubWV0YSB7XG4gICAgLy8gICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKHdoaXRlLCAwLjc1KTtcbiAgICAvLyAgICAgICAgICAgICB9XG4gICAgLy8gICAgICAgICB9XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG4gICAgLmxhdGVzdF9mZWVkLnNpZGUtYnktc2lkZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDcuNSU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxhdGVzdF9mZWF0dXJlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X3dhcm0sIDAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGV4dF9hcmVhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmlsdGVyLWRyb3AtZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMDtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweCAxM3B4O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHdoaXRlLCAwLjIpO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X2RrLCAwLjI1KTtcbiAgICAgICAgLy8gdHlwZVxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMik7XG4gICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEod2hpdGUsIDAuMik7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X2RrLCAwLjc1KTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmV5X2RrLCAwLjc1KTtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzdmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBmaWxsOiAkZ3JleV9kaztcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxufVxuXG4uZmlsdGVyLWRyb3AtZG93bi1vcGVuIHtcbiAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNDVzIGVhc2UgMHM7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9kaywgMC45KTtcbiAgICB1bCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHdoaXRlLCAwLjIpO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgLy8gdHlwZVxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRlYWw7XG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRlYWw7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpbHRlci1jaG9zZW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAzMHB4IDVweCA1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogJHRlYWw7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGRpcmVjdGlvbnMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uZGlyZWN0aW9ucyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3RleC1kYXJrLWZ1bGwuanBnXCIpIG5vLXJlcGVhdCBsZWZ0IHRvcCAjMjIyO1xuICAgICNtYXAge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIGg0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGNvbG9yOiByZ2JhKHdoaXRlLCAwLjcpO1xuICAgIH1cbn1cblxuLmNlbnRlci1idXR0b24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gc3RvcnktaHViID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5zdG9yeS1odWIge1xuICAgIC5wYWdlX2FuY2hvcnMge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4xKTtcbiAgICAgICAgJi5tb3ZlLXVwIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTBweCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5maXhlZCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmhlcm8ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICB1cmwoJy4uL2ltZy9jdGEtcGFuZWwzLmpwZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNTBweCk7XG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwIHdoaXRlLCAtMTBweCAwIDAgd2hpdGU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1NXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZWQtYXJ0aWNsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZlYXR1cmVkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHJlZCwgLTEwcHggMCAwICRyZWQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJ2ZlYXR1cmVkJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgICB9Ki9cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlYWw7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHRlYWwsIC0xMHB4IDAgMCAkdGVhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyAmLndoaXRlLWNlbnRlciB7XG4gICAgICAgIC8vICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAvLyAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIC8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgLy8gICAgICAgICB0b3A6IDc1JTtcbiAgICAgICAgLy8gICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgLy8gICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgICAgICAmLndpdGgtYW5jaG9ycyB7XG4gICAgICAgICAgICAubWFpbi1wYWdlLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBoMSB7XG4gICAgICAgIC8vICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIC8vICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIC8vICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgLy8gICAgICAgICBmb250LXNpemU6IDU1cHg7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vICAgICBzcGFuIHtcbiAgICAgICAgLy8gICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICAgICAgLy8gLmZlYXR1cmVkLWNvbnRlbnQge1xuICAgICAgICAvLyAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgLy8gICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAvLyAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuNSk7XG4gICAgICAgIC8vICAgICBoMiB7XG4gICAgICAgIC8vICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAvLyAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vICAgICBwIHtcbiAgICAgICAgLy8gICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICAgICAgLmJyZWFkY3J1bWIge1xuICAgICAgICAgICAgbGksIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGdyZXlfZGssIDAuMSk7XG4gICAgICAgICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgIH1cbiAgICAgICAgLmFuY2hvciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICAgICAgLy8gbWFnaWNcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDYwcHg7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAvLyAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMTUpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgLy8gJjpiZWZvcmUge1xuICAgICAgICAgICAgLy8gICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIC8vICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAvLyAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIC8vICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAvLyAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvLyAgICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9kaywgMC4yNSk7XG4gICAgICAgICAgICAvLyAgICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRjk2NjY0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtOHB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0Y5NjY2NDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm92ZXJ2aWV3IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMTBweDtcbiAgICAgICAgbWFyZ2luOiA2MHB4IDAgMzBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWRhcmstZnVsbC5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDcwcHggMCA3MHB4O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleV9kaztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwIHdoaXRlLCAtMTBweCAwIDAgd2hpdGU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCA1MHB4O1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgICAmLnNtbC1idG4ge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZsZXgge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICAuYmFja2dyb3VuZC1sdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgcGFkZGluZzogNTBweCAwIDYwcHg7XG4gICAgICAgIG1hcmdpbjogNzBweCAwIDA7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAubGF0ZXN0X2ZlZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgfVxuICAgICB9XG59XG5cbi8vIHRha2UgYWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4udGFrZS1hY3Rpb24ge1xuICAgIEBleHRlbmQgLnN0b3J5LWh1YjtcbiAgICAuY3RhLXBhbmVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICB9XG4gICAgLmhlcm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9tZWQuanBnJyk7XG4gICAgICAgIC5pbnRybyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgJHJlZCwtMTBweCAwIDAgJHJlZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuICAgIC5kYXJrLWJhY2tncm91bmQge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bi1jZW50ZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuLXNlY29uZGFyeSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHJlZDtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3RhdGlzdGljcyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnN0YXQge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICB9XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnRuLXNlY29uZGFyeSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGVhbDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0ZWFsO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5uZXctdm9pY2VzIHtcbiAgICAgICAgICAgIC50ZXh0X2FyZWEge1xuICAgICAgICAgICAgICAgIGgzLCAubWV0YSwgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdGF0XG4gICAgLy8gLnN0YXQge1xuICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIC8vICAgICBzcGFuIHtcbiAgICAvLyAgICAgICAgIGNvbG9yOiAkdGVhbDtcbiAgICAvLyAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgLy8gICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG4gICAgLmludHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIH1cbiAgICAuZG9uYXRpb24ge1xuICAgICAgICAuY2xlYXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjbGVhcjogYWxsO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKHdoaXRlLCAwLjUpO1xuICAgICAgICB9XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC4yNSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHdoaXRlLCAwLjI1KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRlYWw7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGVhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAub3ZlcnZpZXcge1xuICAgICAgICAubGF0ZXN0X2ZlZWQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSh3aGl0ZSwgMC43KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNlbnRlci12b2ljZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAubmV3LXZvaWNlcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWV0YSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoJGdyZXlfZGssIDAuNyk7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkZ3JleV9kaywgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JleV9kaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucmVsYXRlZC10b3BpY3MuZGFyayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICB9XG4gICAgLm90aGVyLXdheXMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjlweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gaG9yaXpvbnRhbC1saXN0aW5nXG4uaG9yaXpvbnRhbC1saXN0aW5nIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBpbWcge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICAgIHAge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gYmFja2dyb3VuZC1mZWF0dXJlXG4uYmFja2dyb3VuZC1mZWF0dXJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZmVhdHVyZS1oZXJvLmpwZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE1MHB4IDA7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIHBhZGRpbmc6IDI1MHB4IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDcwcHg7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGdyZXlfZGssIDAuNik7XG4gICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGljb24tdGV4dFxuLmljb24tdGV4dC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMCAyMHB4O1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG59XG5cbi5pY29uLXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBzdmcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcmVkO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuXG4vL1xuLnNtYWxsLWxpbmsge1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkcmVkX2x0O1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBmaWxsOiAkcmVkX2x0O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICB9XG59XG5cbi8vIGRhcmstYmFja2dyb3VuZFxuLmRhcmstYmFja2dyb3VuZCB7XG4gICAgcGFkZGluZzogMzBweCAwIDEwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGV4LWRhcmstZnVsbC5qcGdcIikgbm8tcmVwZWF0IGxlZnQgdG9wICMyMjI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAgMTAwJTtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMCA3MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgYm94LXNoYWRvdzogMTBweCAwIDAgd2hpdGUsIC0xMHB4IDAgMCB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkZ3JleV9kaztcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXlfZGs7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIH1cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG59XG5cbi5saWdodC1iYWNrZ3JvdW5kIHtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZGFyay1mdWxsLmpwZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMCA3MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAubGF0ZXN0X2ZlZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL1xuLmxpZ2h0LWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtZ3JleS13YXJtLWx0LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AgIzIyMjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmc6IDUwcHggMCA2MHB4O1xuICAgIG1hcmdpbjogNzBweCAwIDMwcHg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIGZyb250LWxpbmUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5mcm9udGxpbmUge1xuICAgIEBleHRlbmQgLnN0b3J5LWh1YjtcbiAgICAuaGVybyB7XG4gICAgICAgIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZWJvbGEuanBnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgICAgICAgcGFkZGluZzogNzBweCAwIDUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1MHB4IDAgMTMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRhcmstYmFja2dyb3VuZCB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgICAgfVxuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hbGwtY291bnRyaWVzIHtcbiAgICAgICAgLnJlZ2lvbnMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1ldGEge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAubGlnaHQtYmFja2dyb3VuZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5iYWNrZ3JvdW5kLWZlYXR1cmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICAuY291bnRyaWVzLXNlY3Rpb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9tYXAtai5wbmdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgb3BhY2l0eTogMC4wNTtcbiAgICAgICAgfVxuICAgICAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gbXNmLWJyZWFkdGggPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5tc2YtYnJlYWR0aCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE0MHB4IDA7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9tYXAtai13aGl0ZS5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgIH1cbiAgICAuYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGgxIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cbiAgICAubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLmludHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIH1cbiAgICAubGluayB7XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgZmlsbDogcmdiYSh3aGl0ZSwgMC4yNSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG1zZi12YWx1ZXMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4ubXNmLXZhbHVlcyB7XG4gICAgLmhlcm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9tZWQyLmpwZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmludHJvIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDVweCAwIDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1haW4tcGFnZS10aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGV4dC10b3Age1xuICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyZXlfZGs7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW50cm8ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52YWx1ZXMtYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy90ZXgtd2hpdGUuanBnXCIpIGxlZnQgdG9wIC8gMTAwJSBuby1yZXBlYXQgcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgIH1cbiAgICAudmFsdWVzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gNTBweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgICAgIC8vICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAvLyAgICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG4gICAgICAgICAgICAvLyB9XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdmcsIGltZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgICAgICAgICAgICBmaWxsOiAkdGVhbDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmV5X2RrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMjAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc2VhcmNoLXJlc3VsdCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gZXZlbnRzLXBhZ2UgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5ldmVudHMtcGFnZSB7XG4gICAgLnJpY2gtdGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwdmg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mcm9udCB7XG4gICAgLm1zZi1icmVhZHRoIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMzVweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDAgNzBweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIG1vYmlsZSApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgICAgICAgfVxuICAgICAgICAubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmludHJvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3RhdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gYXJyb3ctc2Nyb2xsID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5hcnJvdy1zY3JvbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3R0b206IC0xNXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAyNSU7XG4gICAgICAgIHRvcDogMjAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICBhbmltYXRpb246IGRvd24tZmFkZSAxLjVzIGluZmluaXRlO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42MjUsIDAuMDc1LCAwLjExMCwgMS4xNjUpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBkb3duLWZhZGUge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLy9cbi5jZW50ZXItZnJvbnQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAubGVhZC1pbi10ZXh0IHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG59XG5cbi5sYXRlc3RfZmVlZCAuZmVlZCAubGF0ZXN0X2ZlYXR1cmUudmlkZW8gLnRleHRfYXJlYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cblxuI3VzZXItbG9naW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IDEwJTtcbiAgICBpbnB1dCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgfVxufVxuXG4ucG9pbnRlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ua3J1bW8tZm9vdG5vdGUge1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cbi8vIEVYVFJBU1xuXG4ub2VtYmVkLXByb3ZpZGVyLXlvdXR1YmUge1xuICAgIEBleHRlbmQgLnZpZGVvV3JhcHBlcjtcbn1cblxuLnBhZ2Utbm9kZS1hZGQge1xuICAgIC5ja2VkaXRvci10d2VldC10aGlzIHtcbiAgICB9XG59XG5cbi5tZWRpYS1lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgLmZpbGUtaW1hZ2Uge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi50aXRsZS1iYW5uZXIge1xuICAgIC5maWVsZC10eXBlLWltYWdlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbiNwYWdlLWFuY2hvcnMge1xuICAgIGxpIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY3RhcyB7XG4gICAgZGl2Om50aC1jaGlsZCgzKSB7XG4gICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ucmVnaW9uLXVuZGVyLWNvbnRlbnQtbGV2ZWwtMixcbi5yZWdpb24tdW5kZXItY29udGVudC1sZXZlbC0xIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbn1cbi5jb250ZW50IHtcbiAgICAuYnRuIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAuY29weV9saW5rIHtcbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5wOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmVtYmVkZGVkQ29udGVudCB7XG4gICAgaWZyYW1lIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ubWVkaWEtZWxlbWVudCB7XG4gICAgJi5maWxlLXd5c2l3eWctZnVsbC13aWR0aCB7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuI3NoYXJlYmFyIHtcbiAgICAuZGlyZWN0X2xpbmsge1xuICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIG1vYmlsZSApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHhcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2Jsb2NrLWJzY21zLWNvbW1vbi1ibG9ja3MtYnNjbXMtY2ItbWFpbm1lbnUge1xuICAgIC5zdGlja3ktYnRucyB7XG4gICAgICAgIC5zaGFyZS1idG4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBtb2JpbGUgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcC13aWRlICkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgLnNoYXJlLWJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBtb2JpbGUgKSB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTkwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpZWxkLW5hbWUtYm9keSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGluaXRpYWw7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuI2Jsb2NrLWJzY21zLWNvbnRlbnQtdHlwZS1hcnRpY2xlLWJzY21zLWNvbnRlbnQtdHlwZS1hcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogdW5zZXQ7XG59XG51bCB7XG4gICAgJi50YWJzIHtcbiAgICAgICAgJi5wcmltYXJ5IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMHB4IDBweCAxMDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgJi50YWJzLnByaW1hcnkgbGk6bm90KC5hY3RpdmUpIGF7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxufVxuXG4ubmF2YmFyLWFkbWluaXN0cmF0aW9uIHtcbiAgICAubXNmX2dsb2JhbC5vcGVuIHtcbiAgICAgICAgdG9wOiAzOHB4O1xuICAgIH1cbiAgICAmLm5hdmJhci10cmF5LW9wZW4ge1xuICAgICAgICAubXNmX2dsb2JhbC5vcGVuIHtcbiAgICAgICAgICAgIHRvcDogNzhweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5ub2RlLXR5cGUtcGFnZS50ZW1wbGF0ZS1uby1pbWFnZSxcbi5ub2RlLXR5cGUtYXJ0aWNsZS50ZW1wbGF0ZS1uby1pbWFnZSB7XG4gICAgLnNpdGUge1xuICAgICAgICAjYmxvY2stc3lzdGVtLW1haW4ge1xuICAgICAgICAgIHBhZGRpbmc6IDUwcHggMCAwO1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICl7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDkwcHggMCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuICAgICAgICAgICAgcGFkZGluZzogOTBweCAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnRlbXBsYXRlLWluZGV4LXBhZ2Uge1xuICAmLnRlbXBsYXRlLW5vLWltYWdlIHtcbiAgICAmLnRlbXBsYXRlLWxpc3Rpbmcge1xuICAgICAgLnNpdGUge1xuICAgICAgICAjYmxvY2stc3lzdGVtLW1haW4ge1xuICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi50ZW1wbGF0ZS1uby1pbWFnZSB7XG4gIC5zaXRlIHtcbiAgICAjYmxvY2stc3lzdGVtLW1haW4ge1xuICAgICAgLmNvbnRlbnQge1xuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmltYWdlLWNlbnRlciB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uaW1hZ2UtZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuLmNrZV9lZGl0YWJsZSB7XG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICB0ZXh0LWluZGVudDogLTE1cHg7XG4gICAgICBsaXN0LXN0eWxlOiBpbnNpZGU7XG4gICAgfVxuICB9XG4gIC5pbWFnZS1jZW50ZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5pbWFnZS1mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4uc3RhdHMge1xuICB1bCB7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5tYXJnaW4tdG9wLTMwIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgbWFyZ2luLXRvcDogNWVtO1xuICBpbnB1dCB7XG4gICAgJiNlZGl0LWtleXMge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgfVxuICB9XG4gICNlZGl0LXN1Ym1pdCB7XG4gICAgQGV4dGVuZCAuYnRuO1xuICB9XG59XG4uc2VhcmNoLXJlc3VsdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgc3ZnIHtcbiAgICB3aWR0aDogMTBweDtcbiAgICBmaWxsOiB3aGl0ZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA0cHg7XG4gIH1cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKXtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LWxhbmRzY2FwZSApe1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKXtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICB9XG5cbiAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG59XG4uY3Jpc2lzLXJlc3BvbnNlcyB7XG4gIC5jb3VudHJpZXMtbGlzdCB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuICB9XG59XG4ucGFnZXIge1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5yZWdpb24tYmlncGhvdG8ge1xuICBwYWRkaW5nOiA1MHB4IDAgMDtcbiAgaGVpZ2h0OiBjYWxjKDY1dmgpO1xuICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcbiAgICBoZWlnaHQ6IGNhbGMoOTB2aCk7XG4gIH1cbiAgLmhlcm8ge1xuICAgIGhlaWdodDogY2FsYyg2NXZoKTtcbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKXtcbiAgICAgIGhlaWdodDogY2FsYyg5MHZoKTtcbiAgICB9XG5cbiAgfVxufVxuLy8gQm9vdHN0cmFwIHNtYWxsIGNvbnZlcnNpb246XG5cbi5jb2wtbWQtMSB7XG4gIEBleHRlbmQgLmdyaWQtZGVza3RvcC0xO1xufVxuLmNvbC1tZC0yIHtcbiAgQGV4dGVuZCAuZ3JpZC1kZXNrdG9wLTI7XG59XG4uY29sLW1kLTMge1xuICBAZXh0ZW5kIC5ncmlkLWRlc2t0b3AtMztcbn1cbi5jb2wtbWQtNCB7XG4gIEBleHRlbmQgLmdyaWQtZGVza3RvcC00O1xuICBAZXh0ZW5kIC5ncmlkLTEyO1xufVxuLmNvbC1tZC01IHtcbiAgQGV4dGVuZCAuZ3JpZC1kZXNrdG9wLTU7XG59XG4uY29sLW1kLTYge1xuICBAZXh0ZW5kIC5ncmlkLWRlc2t0b3AtNjtcbiAgQGV4dGVuZCAuZ3JpZC0xMjtcbn1cbi5jb2wtbWQtNyB7XG4gIEBleHRlbmQgLmdyaWQtZGVza3RvcC03O1xufVxuLmNvbC1tZC04IHtcbiAgQGV4dGVuZCAuZ3JpZC1kZXNrdG9wLTg7XG59XG4uY29sLW1kLTkge1xuICBAZXh0ZW5kIC5ncmlkLWRlc2t0b3AtOTtcbn1cbi5jb2wtbWQtMTAge1xuICBAZXh0ZW5kIC5ncmlkLWRlc2t0b3AtMTA7XG59XG4uY29sLW1kLTExIHtcbiAgQGV4dGVuZCAuZ3JpZC1kZXNrdG9wLTExO1xufVxuLmNvbC1tZC0xMiB7XG4gIEBleHRlbmQgLmdyaWQtZGVza3RvcC0xMjtcbn1cbi5jb3VudHJpZXMtbGFuZGluZy1wYWdlIHtcbiAgLnJlZ2lvbi1iaWdwaG90byB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5oZXJvIHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy83LmpwZ1wiKSBuby1yZXBlYXQgbGVmdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIHRvcDogLTEwdmg7XG4gICAgfVxuICB9XG59XG4uc2VjdGlvbi1oZWFkaW5nIHtcbiAgJi5jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuI2Jsb2NrLWJzY21zLWNvbnRlbnQtdHlwZS1pbmRleC1ic2Ntcy1jdC1pbmRleC1hbGwtcm9sZXMge1xuICAudm9pY2VzIHtcbiAgICBmbG9hdDpsZWZ0O1xuICB9XG4gIC5icmVhZGNydW1iIHtcbiAgICBsaSB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICMyMzFGMjAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5hbmNob3Jyb2xlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4jYmxvY2stYnNjbXMtY29udGVudC10eXBlLWluZGV4LWJzY21zLWN0LWluZGV4LWFsbC1yb2xlcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgei1pbmRleDogOTtcbn1cblt2LWNsb2FrXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50ZW1wbGF0ZS1yZXFzIHtcbiAgLnJlZ2lvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA5MHB4IDAgMDtcbiAgfVxufVxuLmZpZWxkLW5hbWUtZmllbGQtbm1ldGFkYXRhLWNhcHRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1lZGlhLWltYWdlLXdyYXBwZXIge1xuICBiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1jb3B5cmlnaHQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxufVxuI3BhZ2UtbWVudSB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcC13aWRlICl7XG4gICAgbWFyZ2luLXRvcDogOTBweDtcbiAgfVxuICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3Atd2lkZSApe1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gIH1cbn1cblxuLnNjcm9sbGVkIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgaGVpZ2h0OiA0NXZoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8vIElFIDEwK1xuICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLW5vbmU7IC8vIEZpcmVmb3hcbn1cbi5zY3JvbGxlZDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7ICAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuLmNvdW50cmllcy1sYW5kaW5nLXBhZ2Uge1xuICAjc2VhcmNoY291bnRyaWVzIHtcbiAgICAuaGlkZGVuLmFjdGl2ZSB7XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8vIElFIDEwK1xuICAgICAgb3ZlcmZsb3c6IC1tb3otc2Nyb2xsYmFycy1ub25lOyAvLyBGaXJlZm94XG4gICAgfVxuICAgIC5oaWRkZW4uYWN0aXZlOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBTYWZhcmkgYW5kIENocm9tZVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vLyBMYXVuY2ggcGFuZWwgYnV0dG9uc1xuI2ZhY3RzLW5vZGUge1xuICAgIHVsIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLnBhZ2luZyB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuI3F1ZXJ5IHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzNCwgMzQsIDM0LCAwLjI1KTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcC13aWRlIGRlc2t0b3AgKXtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG59XG4ucmVzdWx0c2ZvdW5kIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucGFnZS12dWVzZWFyY2gge1xuICAuaGVybyB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvbGlzdGluZy5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG4gIC5wYWdpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuI21haW4taGVhZGVyIHtcbiAgICB1bCB7XG4gICAgICAgICYucHJpbWFyeV9uYXYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqIEZpeCBtZW51IGdldHRpbmcgaW50byBibG9ncG9zdCBpbWFnZSAqKi9cbi5pcy1ibG9ncG9zdCB7XG4gICAgLnN0b3J5LXBlcnNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcbiAgICAgICAgLm1ldGEtbWFpbi1ibG9nIHtcbiAgICAgICAgICAgIGxlZnQ6IDkwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnN0b3J5LXBlcnNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG4gICAgICAgIC5tZXRhLW1haW4tYmxvZyB7XG4gICAgICAgICAgICBsZWZ0OiA5MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5zdG9yeS1wZXJzb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKiBJbWFnZSBjb3B5cmlnaHQgKiovXG5cbi5tZWRpYS1lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgJi5tZWRpYS1kZWZhdWx0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLW1lZGlhdHlwZSxcbiAgICAgICAgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtY2FwdGlvbixcbiAgICAgICAgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtYXJ0aXN0LFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1hcnRpc3RzaG9ydGlkLFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1tYXh3aWR0aCxcbiAgICAgICAgLmZpZWxkLW5hbWUtZmllbGQtbWV0YWRhdGEtbWF4aGVpZ2h0LFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1vc3QsXG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLXdpZHRoLFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1oZWlnaHQsXG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLXRpdGxlLFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1zeXN0ZW1pZGVudGlmaWVyLFxuICAgICAgICAuZmllbGQtbmFtZS1maWVsZC1tZXRhZGF0YS1tZWRpYWRhdGUsXG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLWNvdW50cnkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLWNvcHlyaWdodCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3R0b206IDM1cHg7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIC5maWVsZC1pdGVtcyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWVsZC1uYW1lLWZpZWxkLW1ldGFkYXRhLWNhcHRpb24ge1xuICAgICAgICAgICAgQGV4dGVuZCAuY2FwdGlvbi1tYWluO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAtMzBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqKiBGaXggaGVybyBsaW5lLWhlaWdodCAqKi9cblxuLmhlcm8ge1xuICAgIGgyIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuOHJlbTtcbiAgICB9XG59XG5cbi8qKiBOb2RlIHVucHVibGlzaGVkICoqL1xuLm5vZGUtdW5wdWJsaXNoZWTvo78ge1xuICAgIC5yaWNoLXRleHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGY0O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGY0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qKiBIb21lIHN0YXRzICoqL1xuI2N0YWhvbWUge1xuICAgIC5pbmxpbmUtc3RhdHMuc3RhdHMtYmlnIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgZGVza3RvcC13aWRlICkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKiBTbGlkaW5nIHBvcHVwIGZvciBldSBjb29raWUgKi9cbiNzbGlkaW5nLXBvcHVwIHtcbiAgICAucG9wdXAtY29udGVudCB7XG4gICAgICAgICNwb3B1cC10ZXh0IHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTGFuZ3VhZ2VcblxuI2Jsb2NrLWxvY2FsZS1sYW5ndWFnZXtcbiAgICBjbGVhcjogYm90aDtcbn1cblxuLmhpZGRlbi1sYWJlbCB7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuLy8ucGFnZS1ub2RlLTQ2MDAge1xuICAucGFnZS1ub2RlLTI1MjYge1xuICAvLy52aWV3LW5vZGUtY29udGVudC1pbmRleCB7XG4gIC52aWV3LW5vZGUtY29udGVudC1ldmVudHMtaW5kZXgge1xuXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cbiAgICAvLy5zdG9yaWVzLWltYWdlIGEgaW1nIHtcbiAgICAvLyAgd2lkdGg6IGF1dG87XG4gICAgLy99XG5cbiAgICAudmlld3Mtdmlldy1ncmlkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC52aWV3cy1maWVsZC10aXRsZSAgLmZpZWxkLWNvbnRlbnQge1xuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBib3gtc2hhZG93OiAxMHB4IDAgMCAjZWUwMDAwLCAtMTBweCAwIDAgI2VlMDAwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnZpZXdzLWZpZWxkLXRpdGxlIC5maWVsZC1jb250ZW50IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTtcbiAgICAgIGJveC1zaGFkb3c6IDEwcHggMCAwICMzMWExOWEsIC0xMHB4IDAgMCAjMzFhMTlhO1xuICAgIH1cblxuICAgIC52aWV3cy1maWVsZC5ib2R5IC5maWVsZC1jb250ZW50IHAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIHdpZHRoOiAyMGVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgdHIsIHRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGFnZS1ub2RlLTI1MjEsIC5wYWdlLW5vZGUtMjU2NiwgLnBhZ2Utbm9kZS01MDA2LCAucGFnZS1ub2RlLTUwMTEgIHtcblxuICAgIC8vZml4IG92ZXJsYXAgaXNzdWVcbiAgICAuY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgICAgICAgLmZpZWxkLW5hbWUtZmllbGQtaW1hZ2V7XG4gICAgICAgICAgICAuZmllbGQtaXRlbSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MDAwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTEwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblx0Ly8gZGlzcGxheTogbm9uZTtcblxuLy8ucGFnZS1ub2RlLTQ1OTgge1xuICAudmlldy1pbmRleC1yZWxhdGVkLXN0b3JpZXMge1xuXG4gICAgcGFkZGluZzogMCAyMHB4IDAgMjBweDtcblxuICAgIC52aWV3cy1yb3ctb2RkIHtcbiAgICAgIHdpZHRoOiA0Ny41JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzQsMjM2LDIzMCwwLjUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIC8vIHBhZGRpbmctbGVmdDogMzBweDtcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHR9XG4gICAgfVxuXG4gICAgLnZpZXdzLXJvdy1ldmVuIHtcbiAgICAgIHdpZHRoOiA0Ny41JTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjM0LDIzNiwyMzAsMC41KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAvLyBwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXHRcdFx0fVxuICAgIH1cblxuICAgIC52aWV3LXN0b3JpZXMtbGVmdC13cmFwIHtcblxuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDQlO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiA0NzlweCkge1xuXHQgICAgICBmbG9hdDogbGVmdDtcblx0ICAgICAgbWFyZ2luLXJpZ2h0OiA0JTtcblx0ICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblx0ICAgICAgbWF4LXdpZHRoOiA1MiU7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAyLjVlbTtcblx0XHRcdH1cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiA0NzlweCkge1xuXHRcdFx0XHQvLyBmbG9hdDogbGVmdDtcblx0XHRcdFx0Ly8gbWFyZ2luLXJpZ2h0OiA0JTtcblx0XHRcdFx0Ly8gb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0Ly8gbWF4LXdpZHRoOiA2MCU7XG5cdFx0XHRcdC8vIHdpZHRoOiBhdXRvO1xuXHRcdFx0XHQvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdC8vIHBhZGRpbmctYm90dG9tOiAyLjVlbTtcblx0XHRcdH1cblxuXG5cbiAgICB9XG5cbiAgICAudmlldy1zdG9yaWVzLXJpZ2h0LXdyYXAge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cblxuICAgIC52aWV3cy1maWVsZC10aXRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgICAgLmZpZWxkLWNvbnRlbnQgYSB7XG4gICAgICAgIGNvbG9yOiAjMjMxRjIwO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3cy1maWVsZC1jcmVhdGVkIC5maWVsZC1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG5cbiAgICAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCAsXG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDlweDtcblx0XHRcdHBhZGRpbmctbGVmdDogMjVweDtcblxuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXI6IDFweCBkb3R0ZWQgIzMxYTE5YTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogMjhweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cblx0XHQudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50IHtcblxuXHRcdFx0Ly8gQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG5cblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHQvLyBtaW4taGVpZ2h0OiAyOHB4O1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogOXB4O1xuXHRcdFx0XHRjb2xvcjogIzMxYTE5YTtcblx0XHRcdFx0Ly8gbWF4LWhlaWdodDogNDlweDtcblx0XHRcdFx0Ly8gbWF4LXdpZHRoOiA5NyU7XG5cdFx0XHQvLyB9XG5cblx0XHR9XG5cblx0XHQudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCB7XG5cblx0XHRcdC8vIEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuXG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0Ly8gbWluLWhlaWdodDogMjhweDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDlweDtcblx0XHRcdFx0Y29sb3I6ICMzMWExOWE7XG5cdFx0XHQvLyB9XG5cblx0XHR9XG5cbiAgICAudmlld3MtZmllbGQtZmllbGQtY29udHJ5LXJlZ2lvbiAuZmllbGQtY29udGVudCBzdmcge1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAzcHg7XG4gICAgICB0b3A6IDdweDtcbiAgICAgIGZpbGw6ICMzMWExOWE7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgfVxuXG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLWNvbnRyeS1yZWdpb24gLmZpZWxkLWNvbnRlbnQgYSAsXG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLWlzc3VlcyAuZmllbGQtY29udGVudCBhIHtcbiAgICAgIGNvbG9yOiAjMzFhMTlhO1xuICAgIH1cblxuICAgIC52aWV3cy1maWVsZC1maWVsZC1jb250cnktcmVnaW9uIC5maWVsZC1jb250ZW50OmhvdmVyICxcbiAgICAudmlld3MtZmllbGQtZmllbGQtaXNzdWVzIC5maWVsZC1jb250ZW50OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMWExOWE7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzFhMTlhO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3Rvcmllcy1pbWFnZSB7XG5cbiAgICAgIC8vYSB7XG4gICAgICAvLyAgZmxvYXQ6IGxlZnQ7XG4gICAgICAvLyAgbWFyZ2luLXJpZ2h0OiA3JTtcbiAgICAgIC8vICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLy8gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgLy8gIG1heC13aWR0aDogNjAlO1xuICAgICAgLy99XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNmZmY7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgfVxuICAgICAgLnN2Zy13cmFwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlBUIFNhbnNcIixzYW5zLXNlcmlmO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUwMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5zdmctd3JhcCAudHlwZSB7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlMDAwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcbiAgICAgIH1cblxuICAgICAgaW1nIHtcblxuICAgICAgICAvL2Zsb2F0OiBsZWZ0O1xuICAgICAgICAvL21hcmdpbjogOHB4O1xuXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiA0NzlweCkge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogYXV0b1xuXHRcdFx0XHR9XG5cblxuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAgIFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgLnZpZXdzLXJvdy1vZGQsIC52aWV3cy1yb3ctZXZlbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3cy1yb3ctb2RkOmhvdmVyLFxuICAgIC52aWV3cy1yb3ctZXZlbjpob3ZlciB7XG5cbiAgICAgIC5zdmctd3JhcCAudHlwZSB7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICB9XG4gICAgICAudmlld3MtZmllbGQtdGl0bGUgYSB7XG4gICAgICAgIGNvbG9yOiAjZWUwMDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuXG4vLyBMYW5ndWFnZSBUb2dnbGVcblxuXG5cbi5sYW5ndWFnZS10b2dnbGUsXG4ubS1sYW5ndWFnZS10b2dnbGV7XG5cbiAgLmxhbmd1YWdlLXN3aXRjaGVyLWxvY2FsZS11cmx7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgbGl7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAmOm50aC1vZi10eXBlKDEpe1xuICAgICAgJjphZnRlcntcbiAgICAgICAgY29udGVudDogJyBcXDAwMmYgJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAyMHB4O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3Vze1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSBhe1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4ubS1sYW5ndWFnZS10b2dnbGV7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCByZ2JhKDM1LCAzMSwgMzIsIDAuMik7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmxhbmd1YWdlLXRvZ2dsZXtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjNweCkge1xuICAubGFuZ3VhZ2UtdG9nZ2xle1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgIGxpOm50aC1vZi10eXBlKDEpOmFmdGVye1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMzI7XG4gICAgICBwYWRkaW5nOiAzcHg7XG4gICAgfVxuXG4gICAgYXtcbiAgICAgIGhlaWdodDogOTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA5MHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgei1pbmRleDogMzI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXN7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5maXhlZC1zY3JvbGwge1xuXG5cdG1hcmdpbi10b3A6IC0yMHB4O1xuXG59XG5cbi5zb2NpYWwgLmxhYmVsIHtcblx0Zm9udC1zaXplOjE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5mYiB7XG5cdFx0Y29sb3I6ICMzYjU5OTg7XG59XG5cbi50dyB7XG5cdFx0Y29sb3I6ICM1NWFjZWU7XG59XG5cbi5saSB7XG5cdFx0Y29sb3I6ICMwMDdiYjU7XG59XG5cbi5nbyB7XG5cdFx0Y29sb3I6ICNkZDRiMzk7XG59XG5cbi5lbSB7XG5cdFx0Y29sb3I6ICR0ZWFsO1xufVxuXG4udHUge1xuXHRjb2xvcjojMzI1MDZkO1xufVxuXG4uc24ge1xuXHRjb2xvcjogI2ZmNjYwMDtcbn1cbi5pbnN0IHtcblxuXHRjb2xvcjogI2U5NTk1MDtcbn1cbiIsIi5ub2RlLXR5cGUtd2ViZm9ybSB7XG5cblx0LnN1Ym1pdHRlZCB7XG5cdFx0Ly8gZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC53ZWJmb3JtLWNsaWVudC1mb3JtIHtcblx0XHRtYXJnaW4tdG9wOiA2MHB4O1xuXHR9XG5cblx0Lm5vZGUtd2ViZm9ybSB7XG5cblx0XHQud2ViZm9ybS1wcm9ncmVzc2Jhci1vdXRlciBzcGFuOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC53ZWJmb3JtLWNvbXBvbmVudC1tYXJrdXAge1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDkwcHg7XG5cdFx0XHR9XG5cblx0XHRcdC5tZWRpYS1lbGVtZW50IHtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdHAsIGgyLCBoNCwgaDMsIHVsIHtcblx0XHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdFx0bWF4LXdpZHRoOiA5NiU7XG5cdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKSB7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAxMjk1cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0aWZyYW1lIHtcblxuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0Ly8gaGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcblx0XHRcdFx0XHQvLyB3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRtaW4taGVpZ2h0OiA0NTBweDtcblx0XHRcdFx0XHQvLyBkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtbGFuZHNjYXBlICkge1xuXHRcdFx0XHRcdG1pbi13aWR0aDogNTYwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIGRlc2t0b3AgKSB7XG5cdFx0XHRcdFx0bWluLWhlaWdodDogNjI1cHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wLXdpZGUgKSB7XG5cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC53ZWJmb3JtLXByb2dyZXNzYmFyIHtcblxuICAgIFx0bWFyZ2luLXRvcDogOTdweDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEyMHB4O1xuXG5cblx0XHR9XG5cblxuXHRcdC8vRk9STSBFTEVNRU5UIFNUWUxJTkdcblx0XHQud2ViZm9ybS1jb21wb25lbnQtcmFkaW9zLCAud2ViZm9ybS1jb21wb25lbnQtdGV4dGZpZWxkLCAud2ViZm9ybS1jb21wb25lbnQtZW1haWwsIC53ZWJmb3JtLWNvbXBvbmVudC1zZWxlY3QsIC5mb3JtLWFjdGlvbnMsXG5cdFx0LndlYmZvcm0tY29tcG9uZW50LWNoZWNrYm94ZXMsIC53ZWJmb3JtLWNvbXBvbmVudC1maWVsZHNldCwgLndlYmZvcm0tY29tcG9uZW50LWRhdGUsIC53ZWJmb3JtLWNvbXBvbmVudC10aW1lLCAud2ViZm9ybS1jb21wb25lbnQtdGV4dGFyZWEge1xuXHRcdFx0cGFkZGluZzogMjBweDtcblxuXG5cdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1sYW5kc2NhcGUgKSB7XG5cdFx0XHRcdG1heC13aWR0aDogNTAlO1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0Y0RjNGMjtcblx0XHRcdH1cblxuXHRcdFx0LmZvcm0tdGV4dCwgLmZvcm0tc2VsZWN0LCAud2ViZm9ybS1zdWJtaXR7XG5cdFx0XHRcdGJvcmRlcjogM3B4IHNvbGlkICNlMmUyZTI7XG5cdFx0XHRcdGhlaWdodDogNDBweDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0XHQuZm9ybS1jaGVja2JveCB7XG5cdFx0XHRcdGhlaWdodDogNDVweDtcblx0XHRcdFx0d2lkdGg6IGluaGVyaXQ7XG5cdFx0XHR9XG5cblx0XHRcdC5mb3JtLXNlbGVjdCB7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdH1cblxuXHRcdFx0LmZvcm0tcmFkaW8ge1xuXHRcdFx0XHR3aWR0aDppbmhlcml0O1xuXHRcdFx0fVxuXG5cdFx0XHQud2ViZm9ybS1jYWxlbmRhciB7XG5cdFx0XHRcdHdpZHRoOiBpbmhlcml0O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdH1cblxuXHRcdFx0LndlYmZvcm0tc3VibWl0LCAuZm9ybS1zdWJtaXQge1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjZTJlMmUyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjYzkyNDFlO1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb247XG5cdFx0XHRcdCY6aG92ZXIge1xuXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzMxYTE5YTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cblx0XHR9XG5cblx0XHQuZmllbGRzZXQtd3JhcHBlciB7XG5cblx0XHRcdC53ZWJmb3JtLWNvbXBvbmVudC1yYWRpb3MsIC53ZWJmb3JtLWNvbXBvbmVudC10ZXh0ZmllbGQsIC53ZWJmb3JtLWNvbXBvbmVudC1lbWFpbCwgLndlYmZvcm0tY29tcG9uZW50LXNlbGVjdCwgLmZvcm0tYWN0aW9ucyxcblx0XHRcdC53ZWJmb3JtLWNvbXBvbmVudC1jaGVja2JveGVzLCAud2ViZm9ybS1jb21wb25lbnQtZmllbGRzZXQsIC53ZWJmb3JtLWNvbXBvbmVudC1kYXRlLCAud2ViZm9ybS1jb21wb25lbnQtdGltZSwgLndlYmZvcm0tY29tcG9uZW50LXRleHRhcmVhIHtcblx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0fVxuXG5cdH1cblxuXHQuZm9ybS10ZXh0YXJlYSB7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgIzllOWU5ZTtcblx0fVxuXG5cdCNub2RlLTQ1NzUge1xuXHRcdC5jb250ZW50IHtcblx0XHRcdHBhZGRpbmctdG9wOjcwcHg7XG5cdFx0fVxuXG5cdH1cblxufVxuXG4jY3JtV2ViVG9FbnRpdHlGb3Jte1xuXHRjbGVhcjogYm90aDtcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCB0YWJsZXQtcG9ydHJhaXQgKSB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0fVxuXHRmb3Jte1xuXHRcdHRhYmxle1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2VhZWNlNiAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6IDEwNSUgIWltcG9ydGFudDtcblx0XHRcdHRib2R5e1xuXHRcdFx0XHR0cntcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDMwcmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0dGR7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6MTVweDtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBtb2JpbGUgKSB7XG5cblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGlucHV0LCBzZWxlY3R7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOjE2cmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggbW9iaWxlICkge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxNHJlbSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXBvcnRyYWl0ICkge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxOXJlbSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggdGFibGV0LXdpZGUgKSB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDI0cmVtICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICkge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAzNnJlbSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0XHRcdFx0XHRib3JkZXI6IDJweCBibGFjaztcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0c2VsZWN0e1xuXHRcdFx0XHRcdFx0XHRoZWlnaHQ6IDNyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRzZWxlY3RbbXVsdGlwbGU9XCJtdWx0aXBsZVwiXXtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA2cmVtO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRpbnB1dFt0eXBlPXN1Ym1pdF0sIGlucHV0W3R5cGU9cmVzZXRde1xuXHRcdFx0XHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAxNXB4IDIwcHg7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNlZTAwMDA7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA1MHB4O1xuXHRcdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAyMnB4O1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMnB4O1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICMzMWExOWE7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHR3aWR0aDoxNHJlbSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIG1vYmlsZSApIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTRyZW0gIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMTJyZW0gIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC13aWRlICkge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxNnJlbSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDogMjByZW0gIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLy8gU3R5bGVndWlkZSBzcGVjaWZpYyBlbGVtZW50c1xuXG4ubWFpbi5zZyB7XG4gICAgQGluY2x1ZGUgZ3JpZGxlX3N0YXRlKCBkZXNrdG9wICl7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOTBweDtcbiAgICB9XG59XG5cblxuLnNnLWhlYWRpbmcge1xuICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDQwcHggMDtcbiAgICBmb250LWZhbWlseTogJG1vbm87XG4gICAgb3BhY2l0eTogMC44O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC40KTtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIGxlZnQ6IC03MHB4O1xuICAgIH1cbn1cblxuLnNnLXJvdyB7XG4gIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbiAgcGFkZGluZzogNDBweCAwIDA7XG59XG5cbi5zZy1tZW51LWJ0biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2c7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gICAgY29sb3I6IHdoaXRlO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC5zZy1oYW1idXJnZXIge1xuICAgICAgICAgICAgJjphZnRlciwgJjpiZWZvcmUsIHNwYW4ge1xuICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZDogJHNnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vY29sb3I6ICRzZztcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgICYub3BlbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRzZztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNnLWhhbWJ1cmdlciB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAvL2dlbmVyYWwgc3R5bGVzXG4gICAgLy9iYWNrZ3JvdW5kOiAkcGluaztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL3RoZSBidXNpbmVzc1xuICAgICAgICAmOmFmdGVyLCAmOmJlZm9yZSwgc3BhbiB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgdG9wOiAxMXB4O1xuICAgICAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogMjdweDtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDNweDtcbiAgICAgICAgICAgIHRvcDogMTlweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiAkcGluaztcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoNXB4LDVweCwwKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCg3cHgsLTZweCwwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyLCAmOmJlZm9yZSwgc3BhbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbi5zZy1tZW51IHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogLTMwMHB4O1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHBhZGRpbmc6IDQwcHggMCA0MHB4IDA7XG4gICAgYSB7IFxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiA3cHggMjBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkc2c7XG4gICAgICAgICAgICBjb2xvcjogJHNnO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShibGFjaywwLjUpO1xuICAgICAgICB9XG4gICAgfVxuICAgICYub3BlbiB7XG4gICAgICAgIHJpZ2h0OiAwOyAgIFxuICAgIH1cbn1cblxuLy8gQ29sb3Vyc1xuLmNvbG91cnMge1xuICAgIEBpbmNsdWRlIGdyaWRsZV9jb250YWluZXI7XG59XG4uY29sb3VyIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgICB3aWR0aDogNDMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIEBpbmNsdWRlIGdyaWRsZV9zdGF0ZSggZGVza3RvcCApe1xuICAgICAgICB3aWR0aDogMTglO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG59XG4uY29sb3VyLXJlZCB7XG4gICAgYmFja2dyb3VuZDogJHJlZDtcbn1cbi5jb2xvdXItcmVkX2x0IHtcbiAgICBiYWNrZ3JvdW5kOiAkcmVkX2x0O1xufVxuLmNvbG91ci1ibGFjayB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xufVxuLmNvbG91ci10ZWFsIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGVhbDtcbn1cbi5jb2xvdXItZ3JleSB7XG4gICAgYmFja2dyb3VuZDogJGdyZXlfd2FybTtcbn1cbi5jb2xvdXItZ3JleV9kayB7XG4gICAgYmFja2dyb3VuZDogJGdyZXlfZGs7XG59XG4uY29sb3VyLWdyZXlfZGstbWlkIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleV9kay1taWQ7XG59XG4uY29sb3VyLWdyZXlfbWlkIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JleV9taWQ7XG59XG4uY29sb3VyLWdyZXlfbHQge1xuICAgIGJhY2tncm91bmQ6ICRncmV5X2x0O1xufVxuXG4uaW1nLWZvcm1hdHMge1xuICAgIGRpdiB7XG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgfVxufVxuXG4ubm90c3RhcnRlZCB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIC8vY29sb3I6ICRkYXJrO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn0iLCIuYnNjbXNfc29jaWFsX25ldHdvcmtzX2ZhY2Vib29rIHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tc2Ytc3ByaXRlLnN2ZyNmYWNlYm9va1wiKSAwIDAgbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfZ29vZ2xlX3BsdXMge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21zZi1zcHJpdGUuc3ZnI2dvb2dsZV9wbHVzXCIpIDAgMCBuby1yZXBlYXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xufVxuLmJzY21zX3NvY2lhbF9uZXR3b3Jrc19pbnN0YWdyYW0ge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21zZi1zcHJpdGUuc3ZnI2luc3RhZ3JhbVwiKSAwIDAgbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfbGlua2VkaW4ge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21zZi1zcHJpdGUuc3ZnI2xpbmtlZGluXCIpIDAgMCBuby1yZXBlYXQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xufVxuLmJzY21zX3NvY2lhbF9uZXR3b3Jrc19waW50ZXJlc3Qge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21zZi1zcHJpdGUuc3ZnI3BpbnRlcmVzdFwiKSAwIDAgbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfcnNzIHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tc2Ytc3ByaXRlLnN2ZyNyc3NcIikgMCAwIG5vLXJlcGVhdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3NuYXBjaGF0IHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tc2Ytc3ByaXRlLnN2ZyNzbmFwY2hhdFwiKSAwIDAgbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbi5ic2Ntc19zb2NpYWxfbmV0d29ya3NfdHVtYmxyIHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tc2Ytc3ByaXRlLnN2ZyN0dW1ibHJcIikgMCAwIG5vLXJlcGVhdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3R3aXR0ZXIge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21zZi1zcHJpdGUuc3ZnI3R3aXR0ZXJcIikgMCAwIG5vLXJlcGVhdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG4uYnNjbXNfc29jaWFsX25ldHdvcmtzX3doYXRzYXBwIHtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tc2Ytc3ByaXRlLnN2ZyN3aGF0c2FwcFwiKSAwIDAgbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbn1cbiIsIi5wb3B1cC1tZXNzYWdlcy5tb2RhbCB7XG4gIG9wYWNpdHk6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuY2xvc2UtbW9kYWwge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxuICBwIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogcmVkO1xuICAgIH1cbiAgfVxufVxuLmpxdWVyeS1tb2RhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB6LWluZGV4OiA5ICFpbXBvcnRhbnQ7XG59XG4jYmxvY2stYnNjbXMtZnJvbnRwYWdlLWJzY21zLXBvcHVwLCAjYmxvY2stdmlld3MtZnJvbnRwYWdlLWJsb2Nrcy1ibG9jay1wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIudmlkZW8tanMge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cbi5iYWNrZ3JvdW5kLXZpZGVvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBncmlkbGVfc3RhdGUoIHRhYmxldC1wb3J0cmFpdCApe1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC52aWRlby1saW5rIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbn1cbi5iYWNrZ3JvdW5kLXZpZGVvLXdyYXBwZXIuaGFzLW5vLXZpZGVvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi52anMtdGVjaCB7XG4gIC8vIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuIl19 */
