@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/******* End Drupal Defaults *******/
/**
 * Foundation for Sites by ZURB
 * Version 6.3.0
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
@import url("https://fonts.googleapis.com/css?family=Poppins:200,400,500, 600");
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0; }

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1, .paragraph--type--compound-hero-banner .field--name-field-title {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0; }

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none; }

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible; }

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto; }

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block; }

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item; }

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=48em&large=64em&large-desktop=75em&xlarge=75em&xxlarge=90em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: "Poppins", "Arial", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #7f7f7f;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
.paragraph--type--compound-hero-banner .field--name-field-title,
h2,
.paragraph--type--services .field--name-field-title,
h3,
.stay-in-touch-block > h2,
.paragraph--type--services .stay-in-touch-block > .field--name-field-title,
.paragraph--type--compound-cta-section .field--name-field-title,
.paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title,
.paragraph--type--news-section .news-header .field--name-field-title,
.paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter,
.paragraph--type--columns-layout > .container > .field--name-field-title,
.paragraph--type--page-separator .field--name-field-title,
.paragraph--type--location-map .field--name-field-title,
h4,
footer h2,
footer .paragraph--type--services .field--name-field-title,
.paragraph--type--services footer .field--name-field-title,
.block-views-blocknews-archive-news-archive > h2,
.paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title,
.paragraph--type--compound-cta-section .field--name-field-subtitle,
.paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle,
.paragraph--type--services .field--name-field-select-service.field__items h2,
.paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
.paragraph--type--services .field--name-field-select-service .field__items h2,
.paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title,
.paragraph--type--compound-leadership-team .header-leadership .field--name-field-name,
.page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
h5,
.paragraph--type--location-map .field--name-field-maps .airports-location h2,
.paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title,
.paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.5;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: 700;
  line-height: inherit; }

small {
  font-size: 0.875rem;
  line-height: inherit; }

h1, .paragraph--type--compound-hero-banner .field--name-field-title, .h1,
h2,
.paragraph--type--services .field--name-field-title, .h2,
h3,
.stay-in-touch-block > h2,
.paragraph--type--services .stay-in-touch-block > .field--name-field-title,
.paragraph--type--compound-cta-section .field--name-field-title,
.paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title,
.paragraph--type--news-section .news-header .field--name-field-title,
.paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter,
.paragraph--type--columns-layout > .container > .field--name-field-title,
.paragraph--type--page-separator .field--name-field-title,
.paragraph--type--location-map .field--name-field-title, .h3,
h4,
footer h2,
footer .paragraph--type--services .field--name-field-title,
.paragraph--type--services footer .field--name-field-title,
.block-views-blocknews-archive-news-archive > h2,
.paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title,
.paragraph--type--compound-cta-section .field--name-field-subtitle,
.paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle,
.paragraph--type--services .field--name-field-select-service.field__items h2,
.paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
.paragraph--type--services .field--name-field-select-service .field__items h2,
.paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title,
.paragraph--type--compound-leadership-team .header-leadership .field--name-field-name,
.page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .h4,
h5,
.paragraph--type--location-map .field--name-field-maps .airports-location h2,
.paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title,
.paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title, .h5,
h6, .h6 {
  font-family: "Poppins", "Arial", sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #fff;
  text-rendering: optimizeLegibility; }
  h1 small, .paragraph--type--compound-hero-banner .field--name-field-title small, .h1 small,
  h2 small, .paragraph--type--services .field--name-field-title small, .h2 small,
  h3 small, .stay-in-touch-block > h2 small, .paragraph--type--services .stay-in-touch-block > .field--name-field-title small, .paragraph--type--compound-cta-section .field--name-field-title small, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title small, .paragraph--type--news-section .news-header .field--name-field-title small, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter small, .paragraph--type--columns-layout > .container > .field--name-field-title small, .paragraph--type--page-separator .field--name-field-title small, .paragraph--type--location-map .field--name-field-title small, .h3 small,
  h4 small, footer h2 small, footer .paragraph--type--services .field--name-field-title small, .paragraph--type--services footer .field--name-field-title small, .block-views-blocknews-archive-news-archive > h2 small, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title small, .paragraph--type--compound-cta-section .field--name-field-subtitle small, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle small, .paragraph--type--services .field--name-field-select-service.field__items h2 small, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title small,
  .paragraph--type--services .field--name-field-select-service .field__items h2 small, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title small, .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name small, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p small,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p small, .h4 small,
  h5 small, .paragraph--type--location-map .field--name-field-maps .airports-location h2 small, .paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title small, .paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #7f7f7f; }

h1, .paragraph--type--compound-hero-banner .field--name-field-title, .h1 {
  font-size: 2.25rem;
  line-height: 1.22222;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .paragraph--type--services .field--name-field-title, .h2 {
  font-size: 1.875rem;
  line-height: 0.76667;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--columns-layout > .container > .field--name-field-title, .paragraph--type--page-separator .field--name-field-title, .paragraph--type--location-map .field--name-field-title, .h3 {
  font-size: 1.5rem;
  line-height: 1.33333;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, footer h2, footer .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .field--name-field-title, .block-views-blocknews-archive-news-archive > h2, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
.paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .h4 {
  font-size: 1rem;
  line-height: 1.375;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .paragraph--type--location-map .field--name-field-maps .airports-location h2, .paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title, .paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title, .h5 {
  font-size: 1rem;
  line-height: 1.75;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 0.875rem;
  line-height: 1.71429;
  margin-top: 0;
  margin-bottom: 0.375rem; }

@media print, screen and (min-width: 48em) {
  h1, .paragraph--type--compound-hero-banner .field--name-field-title, .h1 {
    font-size: 4.5rem;
    line-height: 1.20833; }
  h2, .paragraph--type--services .field--name-field-title, .h2 {
    font-size: 3.75rem;
    line-height: 0.93333; }
  h3, .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--columns-layout > .container > .field--name-field-title, .paragraph--type--page-separator .field--name-field-title, .paragraph--type--location-map .field--name-field-title, .h3 {
    font-size: 3rem;
    line-height: 1.16667; }
  h4, footer h2, footer .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .field--name-field-title, .block-views-blocknews-archive-news-archive > h2, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
  .paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .h4 {
    font-size: 1.5rem;
    line-height: 1.33333; }
  h5, .paragraph--type--location-map .field--name-field-maps .airports-location h2, .paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title, .paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title, .h5 {
    font-size: 1.125rem;
    line-height: 1.77778; }
  h6, .h6 {
    font-size: 0.875rem;
    line-height: 1.71429;
    margin-bottom: 0.375rem; } }

@media print, screen and (min-width: 64em) {
  h1, .paragraph--type--compound-hero-banner .field--name-field-title, .h1 {
    font-size: 4.5rem;
    line-height: 1.20833; }
  h2, .paragraph--type--services .field--name-field-title, .h2 {
    font-size: 3.75rem;
    line-height: 0.93333; }
  h3, .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--columns-layout > .container > .field--name-field-title, .paragraph--type--page-separator .field--name-field-title, .paragraph--type--location-map .field--name-field-title, .h3 {
    font-size: 3rem;
    line-height: 1.16667; }
  h4, footer h2, footer .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .field--name-field-title, .block-views-blocknews-archive-news-archive > h2, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
  .paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .h4 {
    font-size: 1.5rem;
    line-height: 1.33333; }
  h5, .paragraph--type--location-map .field--name-field-maps .airports-location h2, .paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title, .paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title, .h5 {
    font-size: 1.125rem;
    line-height: 1.77778; }
  h6, .h6 {
    font-size: 0.875rem;
    line-height: 1.71429;
    margin-bottom: 0.375rem; } }

a {
  line-height: inherit;
  color: #1e355f;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #1a2e52; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #474e51;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.5; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #474e51; }
  blockquote, blockquote p {
    line-height: 1.5;
    color: #474e51; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #474e51; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #474e51;
  background-color: #7f7f7f;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: 400;
  color: #000; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #7f7f7f;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: #474e51; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

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

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

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

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 48em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  .paragraph--type--services .field--name-field-title,
  h3,
  .stay-in-touch-block > h2,
  .paragraph--type--services .stay-in-touch-block > .field--name-field-title,
  .paragraph--type--compound-cta-section .field--name-field-title,
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title,
  .paragraph--type--news-section .news-header .field--name-field-title,
  .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter,
  .paragraph--type--columns-layout > .container > .field--name-field-title,
  .paragraph--type--page-separator .field--name-field-title,
  .paragraph--type--location-map .field--name-field-title {
    orphans: 3;
    widows: 3; }
  h2, .paragraph--type--services .field--name-field-title,
  h3,
  .stay-in-touch-block > h2,
  .paragraph--type--services .stay-in-touch-block > .field--name-field-title,
  .paragraph--type--compound-cta-section .field--name-field-title,
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title,
  .paragraph--type--news-section .news-header .field--name-field-title,
  .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter,
  .paragraph--type--columns-layout > .container > .field--name-field-title,
  .paragraph--type--page-separator .field--name-field-title,
  .paragraph--type--location-map .field--name-field-title {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #474e51; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

.is-invalid-input:not(:focus) {
  border-color: #8a6d3b;
  background-color: #f3f0eb; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #8a6d3b; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #8a6d3b; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #8a6d3b; }

.is-invalid-label {
  color: #8a6d3b; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #8a6d3b; }
  .form-error.is-visible {
    display: block; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead, tbody, tfoot {
    border: 1px solid #f2f2f2;
    background-color: #fff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700; }
  thead {
    background: #f9f9f9;
    color: #7f7f7f; }
  tfoot {
    background: #f2f2f2;
    color: #7f7f7f; }
  thead tr, tfoot tr {
    background: transparent; }
  thead th, thead td, tfoot th, tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700;
    text-align: left; }
  tbody th, tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #fff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #fff; }

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f4f4f4; }

table.hover tfoot tr:hover {
  background-color: #ededed; }

table.hover tbody tr:hover {
  background-color: #fafafa; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed; }

.table-scroll {
  overflow-x: auto; }
  .table-scroll table {
    width: auto; }

@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon/fonts/icomoon.eot#iefix") format("embedded-opentype"), url("../fonts/icomoon/fonts/icomoon.woff") format("woff"), url("../fonts/icomoon/fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon/fonts/icomoon.svg#3xl") format("svg");
  font-weight: normal;
  font-style: normal; }

form .submit-btn:after, .jq-has-icon:before, .jq-icon-warning:before, .jq-icon-error:before, .jq-icon-success:before, .menu--main .menu-item--expanded > a:after, .menu--quick-links .menu a:before,
.menu--partners .menu a:before, [id='block-questionsorcomments'] a:after,
[id='block-lookingforacareer'] a:after, footer .block-webform-block form .submit-btn:after, .stay-in-touch-block .contact-address h4 + *:before, .stay-in-touch-block .contact-address footer h2 + *:before, footer .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address footer .paragraph--type--services .field--name-field-title + *:before, footer .paragraph--type--services .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--services footer .field--name-field-title + *:before, .paragraph--type--services footer .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .block-views-blocknews-archive-news-archive > h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .paragraph--type--services .stay-in-touch-block .contact-address .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--compound-cta-section .field--name-field-subtitle + *:before, .paragraph--type--compound-cta-section .stay-in-touch-block .contact-address .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-address .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *:before, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .contact-address .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service.field__items h2 + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address
.paragraph--type--services .field--name-field-select-service .field__items h2 + *:before,
.paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *:before, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .contact-address .field--name-field-name + *:before, .stay-in-touch-block .contact-address .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-address p + *:before, .stay-in-touch-block .contact-address
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before,
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-address p + *:before, .stay-in-touch-block .contact-phone-number h4 + *:before, .stay-in-touch-block .contact-phone-number footer h2 + *:before, footer .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number footer .paragraph--type--services .field--name-field-title + *:before, footer .paragraph--type--services .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services footer .field--name-field-title + *:before, .paragraph--type--services footer .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .block-views-blocknews-archive-news-archive > h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .paragraph--type--services .stay-in-touch-block .contact-phone-number .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--compound-cta-section .field--name-field-subtitle + *:before, .paragraph--type--compound-cta-section .stay-in-touch-block .contact-phone-number .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *:before, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .contact-phone-number .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service.field__items h2 + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number
.paragraph--type--services .field--name-field-select-service .field__items h2 + *:before,
.paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *:before, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .contact-phone-number .field--name-field-name + *:before, .stay-in-touch-block .contact-phone-number .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-phone-number p + *:before, .stay-in-touch-block .contact-phone-number
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before,
.page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-phone-number p + *:before, .news-archive-block .view-grouping-header:after, .news-archive-block .news-archive-month:after, .news-archive-block .month-archive-content .views-field-title a:before,
.news-archive-block .airport-location-content .views-field-title a:before, .news-other-more:after, .airports-location .views-field-field-airport-address:before, .airports-location .airport-contact-info:before, .paragraph--type--compound-slider .slick-next .icon-arrow:before, .paragraph--type--compound-slider .slick-prev .icon-arrow:before, .paragraph--type--compound-cta-section .field--name-field-link a:after, .paragraph--type--simple-cta .field--name-field-link a:after, .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:after, .paragraph--type--services .field--name-field-link a:after, .paragraph--type--news-section .news-header .field--name-field-link a:after, .paragraph--type--news-section .node .right .link-more:after, .paragraph--type--compound-hero-banner .field--name-field-button-link a:after, .paragraph--type--compound-leadership-team .header-leadership:after, .paragraph--type--compound-leadership-team .header-leadership:not(.active):after, .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:after, .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:after, .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:after, .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:after {
  font-family: "icomoon";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1; }

body {
  overflow-x: hidden;
  font-size: 1rem;
  line-height: 1.875rem;
  color: #1e3046; }

.embedded-entity:not(:last-child) {
  margin-bottom: 1rem; }

.embedded-entity.caption {
  display: block;
  width: 100%; }
  .embedded-entity.caption > figcaption {
    display: block;
    letter-spacing: 0.10812rem;
    padding: 0.5rem 0;
    font-size: 0.875rem;
    line-height: 1.5; }

.embedded-entity .media-image, .embedded-entity .media-image img {
  width: 100%; }

@media print, screen and (min-width: 48em) {
  .embedded-entity:not(:first-child) {
    margin-top: 2.5rem; } }

h1, .paragraph--type--compound-hero-banner .field--name-field-title {
  color: #fff; }

h2, .paragraph--type--services .field--name-field-title {
  color: #1e3046; }

.h2 {
  font-family: "Poppins", "Arial", sans-serif;
  line-height: 1.1; }
  .h2 p {
    line-height: inherit;
    font-weight: inherit; }
  @media screen and (max-width: 47.9375em) {
    .h2 {
      font-size: 1rem; } }

h3, .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--columns-layout > .container > .field--name-field-title, .paragraph--type--page-separator .field--name-field-title, .paragraph--type--location-map .field--name-field-title {
  color: #1e3046;
  font-family: "Poppins", "Arial", sans-serif; }

h6 {
  text-transform: uppercase;
  font-family: "Poppins", "Arial", sans-serif; }

.subheading {
  font-family: "Poppins", "Arial", sans-serif;
  color: #29abe2; }

strong,
b {
  font-weight: 600; }

p {
  line-height: 1.875rem; }

form input[type='text'],
form input[type='email'],
form input[type='tel'],
form input[type='password'],
form textarea {
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #e5e5e5;
  background: transparent;
  outline: none;
  padding: 0 11px;
  font-size: 0.875rem;
  line-height: 1.875rem;
  color: #1e3046;
  height: 30px; }
  form input[type='text']:focus,
  form input[type='email']:focus,
  form input[type='tel']:focus,
  form input[type='password']:focus,
  form textarea:focus {
    box-shadow: none; }
  form input[type='text']::-webkit-input-placeholder,
  form input[type='email']::-webkit-input-placeholder,
  form input[type='tel']::-webkit-input-placeholder,
  form input[type='password']::-webkit-input-placeholder,
  form textarea::-webkit-input-placeholder {
    color: #b0b7be; }
  form input[type='text']:-ms-input-placeholder,
  form input[type='email']:-ms-input-placeholder,
  form input[type='tel']:-ms-input-placeholder,
  form input[type='password']:-ms-input-placeholder,
  form textarea:-ms-input-placeholder {
    color: #b0b7be; }
  form input[type='text']::placeholder,
  form input[type='email']::placeholder,
  form input[type='tel']::placeholder,
  form input[type='password']::placeholder,
  form textarea::placeholder {
    color: #b0b7be; }
  form input[type='text']:-ms-input-placeholder,
  form input[type='email']:-ms-input-placeholder,
  form input[type='tel']:-ms-input-placeholder,
  form input[type='password']:-ms-input-placeholder,
  form textarea:-ms-input-placeholder {
    color: #b0b7be; }
  form input[type='text']::-ms-input-placeholder,
  form input[type='email']::-ms-input-placeholder,
  form input[type='tel']::-ms-input-placeholder,
  form input[type='password']::-ms-input-placeholder,
  form textarea::-ms-input-placeholder {
    color: #b0b7be; }
  form input[type='text']:disabled,
  form input[type='email']:disabled,
  form input[type='tel']:disabled,
  form input[type='password']:disabled,
  form textarea:disabled {
    background: #f9f8f8;
    pointer-events: none; }

form .form-item,
form .form-actions {
  margin: 0 0 30px; }
  @media print, screen and (min-width: 48em) {
    form .form-item,
    form .form-actions {
      margin-bottom: 45px; } }
  form .form-item .form-item,
  form .form-actions .form-item {
    margin-bottom: 0; }
  form .form-item label,
  form .form-actions label {
    color: #1e3046;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.875rem;
    padding: 0;
    margin-bottom: 10px;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      form .form-item label,
      form .form-actions label {
        font-size: 1rem; } }
    form .form-item label::after,
    form .form-actions label::after {
      position: relative;
      top: 6px;
      background: none;
      color: #85a9c3; }

form textarea {
  height: 160px; }
  @media (min-width: 1025px) {
    form textarea {
      height: 40px; } }
  @media screen and (max-width: 63.9375em) {
    form textarea {
      resize: none; } }

form .submit-btn {
  display: inline-block;
  position: relative;
  line-height: 1;
  font-family: "Poppins", "Arial", sans-serif;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid transparent;
  border-width: 0 0 0 4px;
  background: transparent;
  margin-left: 0;
  font-weight: 700;
  -webkit-tap-highlight-color: transparent;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  font-weight: 400;
  padding: 0 0 0 9px;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  position: relative;
  padding-left: 12px;
  transition: 0.5s;
  color: #1e3046;
  border-color: #1e3046; }
  [data-whatinput='mouse'] form .submit-btn {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    form .submit-btn {
      border-left-width: 6px; } }
  @media print, screen and (min-width: 48em) {
    form .submit-btn {
      padding: 0 0 0 18px;
      font-size: 0.875rem; } }
  form .submit-btn:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    form .submit-btn {
      padding-left: 25px; } }
  form .submit-btn::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: -20px;
    margin-top: -1px;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    transition: 0.5s; }
    @media print, screen and (min-width: 48em) {
      form .submit-btn::after {
        right: -23px;
        font-size: 1.4375rem; } }
  @media print, screen and (min-width: 64em) {
    form .submit-btn:hover {
      padding-left: 18px;
      padding-right: 25px; }
      form .submit-btn:hover::after {
        right: 0; } }
  form .submit-btn:hover, form .submit-btn:focus, form .submit-btn:active {
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: transparent;
    background-color: transparent; }
  form .submit-btn:hover, form .submit-btn:active, form .submit-btn:focus {
    color: #1e3046;
    border-color: #1e3046; }
  form .submit-btn input {
    border: none;
    background: transparent;
    box-shadow: none;
    outline: none; }

form .form-checkboxes .form-item,
form .form-radios .form-item {
  margin-top: 0; }

form .form-type-radio {
  position: relative;
  margin-top: 0; }
  form .form-type-radio input {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none; }
    form .form-type-radio input:checked + label::after {
      opacity: 1; }
    form .form-type-radio input:disabled + label {
      pointer-events: none; }
      form .form-type-radio input:disabled + label::before {
        background: #f9f8f8; }
  form .form-type-radio label {
    padding-left: 50px;
    margin-bottom: 0;
    cursor: pointer;
    font-size: 0.875rem;
    text-transform: none; }
    form .form-type-radio label::before, form .form-type-radio label::after {
      content: '';
      position: absolute;
      border-radius: 50%;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
    form .form-type-radio label::before {
      width: 29px;
      height: 29px;
      border: 1px solid #e5e5e5;
      background: transparent;
      left: 0; }
    form .form-type-radio label::after {
      width: 9px;
      height: 9px;
      left: 10px;
      background: #85a9c3;
      opacity: 0; }

@media screen and (max-width: 47.9375em) {
  form .resize-vertical {
    resize: none; } }

header {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  background: #fff;
  z-index: 10; }
  header .region {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 75rem;
    padding-left: 25px;
    padding-right: 25px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 65px; }
    @media print, screen and (min-width: 64em) {
      header .region {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 64em) {
      header .region {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 48em) {
      header .region {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        min-height: 130px; } }
  header .nav-icon {
    position: absolute;
    display: block;
    top: 50%;
    right: 25px;
    width: 16px;
    height: 10px;
    font-size: 0;
    -webkit-transform: rotate(0deg) translateY(-50%);
            transform: rotate(0deg) translateY(-50%);
    transition: .5s ease-in-out; }
    @media print, screen and (min-width: 48em) {
      header .nav-icon {
        width: 32px;
        height: 19px; } }
    @media (min-width: 1024px) and (max-width: 1025px) {
      header .nav-icon {
        right: 15px; } }
    header .nav-icon span {
      display: block;
      position: absolute;
      height: 2px;
      width: 50%;
      background: #1e3046;
      opacity: 1;
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
      transition: .25s ease-in-out; }
      header .nav-icon span:nth-child(even) {
        left: 50%;
        border-radius: 0 4px 4px 0; }
        @media print, screen and (min-width: 48em) {
          header .nav-icon span:nth-child(even) {
            border-radius: 0 9px 9px 0; } }
      header .nav-icon span:nth-child(odd) {
        left: 0;
        border-radius: 4px 0 0 4px; }
        @media print, screen and (min-width: 48em) {
          header .nav-icon span:nth-child(odd) {
            border-radius: 9px 0 0 9px; } }
      header .nav-icon span:nth-child(1), header .nav-icon span:nth-child(2) {
        top: 0; }
      header .nav-icon span:nth-child(3), header .nav-icon span:nth-child(4) {
        top: 4px; }
        @media print, screen and (min-width: 48em) {
          header .nav-icon span:nth-child(3), header .nav-icon span:nth-child(4) {
            top: 8px; } }
      header .nav-icon span:nth-child(5), header .nav-icon span:nth-child(6) {
        top: 8px; }
        @media print, screen and (min-width: 48em) {
          header .nav-icon span:nth-child(5), header .nav-icon span:nth-child(6) {
            top: 16px; } }
    header .nav-icon.open span:nth-child(1), header .nav-icon.open span:nth-child(6) {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    header .nav-icon.open span:nth-child(2), header .nav-icon.open span:nth-child(5) {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
    header .nav-icon.open span:nth-child(1) {
      left: 1px;
      top: 0; }
      @media print, screen and (min-width: 48em) {
        header .nav-icon.open span:nth-child(1) {
          left: 2px; } }
    header .nav-icon.open span:nth-child(2) {
      left: calc(50% - 2px);
      top: 0; }
      @media print, screen and (min-width: 48em) {
        header .nav-icon.open span:nth-child(2) {
          left: calc(50% - 4px); } }
    header .nav-icon.open span:nth-child(3) {
      left: -50%;
      opacity: 0; }
    header .nav-icon.open span:nth-child(4) {
      left: 100%;
      opacity: 0; }
    header .nav-icon.open span:nth-child(5) {
      left: 1px;
      top: 5px; }
      @media print, screen and (min-width: 48em) {
        header .nav-icon.open span:nth-child(5) {
          left: 2px;
          top: 10px; } }
    header .nav-icon.open span:nth-child(6) {
      left: calc(50% - 2px);
      top: 5px; }
      @media print, screen and (min-width: 48em) {
        header .nav-icon.open span:nth-child(6) {
          left: calc(50% - 4px);
          top: 10px; } }
    @media (min-width: 1025px) {
      header .nav-icon {
        display: none; } }

footer {
  background: #1e3046;
  color: #fff;
  min-height: 100%;
  font-size: 0.75rem;
  line-height: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    footer {
      font-size: 0.875rem;
      line-height: 1.875rem; } }
  footer .container {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 75rem;
    padding-left: 25px;
    padding-right: 25px; }
    @media print, screen and (min-width: 64em) {
      footer .container {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 64em) {
      footer .container {
        padding-left: 15px;
        padding-right: 15px; } }
  footer .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 24px 0 0; }
    @media print, screen and (min-width: 64em) {
      footer .wrap {
        padding-right: 35px;
        padding-left: 35px; } }
    @media screen and (min-width: 75em) {
      footer .wrap {
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        padding: 100px 8.33333333% 75px; } }
  footer .region {
    width: 100%;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    border-bottom: 1px solid rgba(170, 176, 186, 0.45); }
    @media screen and (min-width: 75em) {
      footer .region {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto;
        width: auto;
        max-width: inherit;
        border: none;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; } }
    footer .region .block {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%;
      padding: 22px 0; }
      @media screen and (min-width: 75em) {
        footer .region .block {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 300px;
                  flex: 0 0 300px;
          max-width: 300px;
          padding: 0; } }
      footer .region .block:nth-child(1) {
        padding-right: 15px; }
        @media screen and (min-width: 75em) {
          footer .region .block:nth-child(1) {
            padding-right: 0; } }
      footer .region .block:nth-child(2) {
        padding-left: 15px;
        border-left: 1px solid rgba(170, 176, 186, 0.45); }
        @media screen and (min-width: 75em) {
          footer .region .block:nth-child(2) {
            padding: 0;
            border: none; } }
      footer .region .block[id='block-copyright'] {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        max-width: 100%;
        padding-bottom: 20px;
        padding-right: 0;
        border: none; }
        @media print, screen and (min-width: 64em) {
          footer .region .block[id='block-copyright'] {
            padding-left: 35px;
            padding-right: 35px;
            padding-bottom: 40px; } }
        @media screen and (min-width: 75em) {
          footer .region .block[id='block-copyright'] {
            padding: 0; } }
    footer .region-footer, footer .region-footersecond {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
    footer .region-copyright {
      padding-bottom: 15px;
      border: none; }
      @media print, screen and (min-width: 48em) {
        footer .region-copyright {
          margin-bottom: 0; } }
      @media (min-width: 1025px) {
        footer .region-copyright {
          margin-bottom: 30px; } }
      @media screen and (min-width: 75em) {
        footer .region-copyright {
          padding-right: 8.33333333%;
          padding-left: 8.33333333%; } }
    @media screen and (min-width: 75em) {
      footer .region-footersecond {
        display: block; } }
    @media screen and (min-width: 75em) {
      footer .region-footersecond .block + .block {
        margin-top: 65px; } }
    @media screen and (max-width: 74.9375em) {
      footer .region-footersecond h2, footer .region-footersecond .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .region-footersecond .field--name-field-title {
        margin-bottom: 12px; } }
    footer .region-footerbottom {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding: 35px 0 50px; }
      @media screen and (max-width: 47.9375em) {
        footer .region-footerbottom {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          padding: 15px 0 15px; } }
      footer .region-footerbottom .block {
        border: none !important;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 200px;
                flex: 0 0 200px;
        max-height: 100px;
        margin-bottom: 50px;
        padding: 0 50px !important; }
        @media screen and (max-width: 47.9375em) {
          footer .region-footerbottom .block {
            padding: 0 !important;
            max-width: 200px; } }
        footer .region-footerbottom .block .field--name-field-media-image {
          text-align: center; }
          footer .region-footerbottom .block .field--name-field-media-image img {
            width: auto;
            height: auto;
            max-width: 200px;
            max-height: 100px; }
  footer h2, footer .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .field--name-field-title {
    margin-bottom: 22px; }
    @media print, screen and (min-width: 64em) {
      footer h2, footer .paragraph--type--services .field--name-field-title, .paragraph--type--services footer .field--name-field-title {
        margin-bottom: 35px; } }
  @media screen and (min-width: 75em) {
    footer.four-col .wrap {
      padding-left: 0;
      padding-right: 0; } }
  @media screen and (min-width: 75em) and (min-width: 75em) {
    footer.four-col .wrap > .region-footer {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 calc(100% - 300px);
              flex: 0 0 calc(100% - 300px);
      max-width: calc(100% - 300px);
      padding-right: 50px;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      footer.four-col .wrap > .region-footer .block {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0px;
                flex: 1 0 0;
        max-width: 100%; }
        footer.four-col .wrap > .region-footer .block.block-menu {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 250px;
                  flex: 0 0 250px;
          max-width: 250px;
          padding-right: 50px; }
        footer.four-col .wrap > .region-footer .block[id="block-stayintouch"]:not(:last-child) {
          margin-right: 50px;
          min-width: 300px; }
          footer.four-col .wrap > .region-footer .block[id="block-stayintouch"]:not(:last-child)::after {
            right: 0; } }
  @media screen and (max-width: 74.9375em) {
    footer.four-col .wrap .region-footer {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      footer.four-col .wrap .region-footer .block {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0px;
                flex: 1 0 0;
        max-width: 100%; }
        footer.four-col .wrap .region-footer .block:nth-child(3) {
          padding-left: 15px;
          border-left: 1px solid rgba(170, 176, 186, 0.45); } }
  @media (max-width: 640px) {
    footer.four-col .wrap .region-footer {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      footer.four-col .wrap .region-footer .block {
        -webkit-box-flex: 1;
            -ms-flex: 1 0 0px;
                flex: 1 0 0;
        max-width: 100%; }
        footer.four-col .wrap .region-footer .block[id='block-stayintouch'] {
          padding-bottom: 0; }
          footer.four-col .wrap .region-footer .block[id='block-stayintouch']:not(:last-child) {
            padding-bottom: 22px;
            -webkit-box-flex: 1;
                -ms-flex: 1 0 0px;
                    flex: 1 0 0;
            max-width: 100%; }
        footer.four-col .wrap .region-footer .block:nth-child(3) {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 100%;
                  flex: 0 0 100%;
          max-width: 100%;
          padding-left: 0;
          border-left: 0;
          border-top: 1px solid rgba(170, 176, 186, 0.45); }
          footer.four-col .wrap .region-footer .block:nth-child(3) h2, footer.four-col .wrap .region-footer .block:nth-child(3) .paragraph--type--services .field--name-field-title, .paragraph--type--services footer.four-col .wrap .region-footer .block:nth-child(3) .field--name-field-title {
            text-align: center; }
          footer.four-col .wrap .region-footer .block:nth-child(3) .field--name-body {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                    justify-content: space-between; }
            footer.four-col .wrap .region-footer .block:nth-child(3) .field--name-body p {
              -ms-flex-preferred-size: 0;
                  flex-basis: 0;
              -webkit-box-flex: 1;
                  -ms-flex-positive: 1;
                      flex-grow: 1;
              max-width: 100%;
              padding-bottom: 22px;
              margin-bottom: 0; }
              footer.four-col .wrap .region-footer .block:nth-child(3) .field--name-body p:nth-child(1) {
                padding-right: 15px; }
            footer.four-col .wrap .region-footer .block:nth-child(3) .field--name-body p + p {
              padding-left: 15px;
              border-left: 1px solid rgba(170, 176, 186, 0.45); } }
  @media screen and (min-width: 75em) {
    footer.four-col .region-copyright {
      padding-left: 0;
      padding-right: 0; } }
  @media screen and (min-width: 75em) {
    footer.four-col .region-footersecond .block {
      width: 300px; } }

[id='skip-link'] {
  margin: 0; }
  [id='skip-link'] a, [id='skip-link'] a:visited {
    display: block;
    width: 100%;
    padding: 2px 0 3px;
    text-align: center;
    background-color: #666;
    color: #fff; }

ul.primary {
  font-size: 14px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  position: relative;
  z-index: 2;
  background: #fafafa;
  border-bottom: 1px solid #efefef;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px; }
  @media print, screen and (min-width: 64em) {
    ul.primary {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    ul.primary {
      padding-left: 15px;
      padding-right: 15px; } }
  ul.primary li {
    list-style: none;
    float: left;
    margin-bottom: 0; }
    ul.primary li a {
      padding: 8px 18px;
      background: #efefef;
      border-top: 5px solid #ffd204;
      display: block;
      color: #251923;
      font-weight: normal;
      text-decoration: none; }
      ul.primary li a:hover, ul.primary li a:active {
        background: #251923;
        color: #fff; }
  ul.primary li:nth-child(4n + 1) a {
    border-top: 5px solid #b6c4c5; }
    ul.primary li:nth-child(4n + 1) a:hover, ul.primary li:nth-child(4n + 1) a:active {
      background: #b6c4c5;
      color: #fff; }
  ul.primary li:nth-child(4n + 2) a {
    border-top: 5px solid #575642; }
    ul.primary li:nth-child(4n + 2) a:hover, ul.primary li:nth-child(4n + 2) a:active {
      background: #575642;
      color: #fff; }
  ul.primary li:nth-child(4n + 3) a {
    border-top: 5px solid #4c4650; }
    ul.primary li:nth-child(4n + 3) a:hover, ul.primary li:nth-child(4n + 3) a:active {
      background: #4c4650;
      color: #fff; }
  ul.primary li:nth-child(4n + 4) a {
    border-top: 5px solid #251923; }
    ul.primary li:nth-child(4n + 4) a:hover, ul.primary li:nth-child(4n + 4) a:active {
      background: #251923;
      color: #fff; }
  @media screen and (max-width: 47.9375em) {
    ul.primary {
      padding: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      ul.primary li {
        margin: 0;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1; }
        ul.primary li a {
          padding: 8px 10px;
          text-align: center; } }
  @media print, screen and (min-width: 48em) {
    ul.primary {
      font-size: 16px; } }

.messages {
  color: #7f7f7f;
  margin: 6px 0;
  padding: 8px 10px;
  position: relative;
  text-align: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-image: none;
  font-size: 1rem;
  display: none; }

.messages--ok,
.messages--status {
  color: #2b542c;
  border-color: #cce5cc; }
  .messages--ok a,
  .messages--status a {
    color: #cce5cc; }

.messages--status:before {
  color: #81b564; }

.messages--ok:before {
  color: #81b564; }

.messages--warning:before {
  color: #e2be6c; }

.messages--error {
  background-color: #a94442;
  border-color: #843534;
  color: #fff; }
  .messages--error a {
    color: #f9f1f1; }

.messages ul {
  list-style: none;
  margin: 0;
  /* LTR */
  padding: 0; }

.messages ul li {
  border-bottom: 1px solid #fff;
  list-style-image: none;
  margin-bottom: 4px;
  padding-bottom: 5px; }
  .messages ul li:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0; }

.page-section-messages {
  margin-bottom: 40px; }
  .page-section-messages .messages {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .page-section-messages .container {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 75rem;
    padding-left: 25px;
    padding-right: 25px; }
    @media print, screen and (min-width: 64em) {
      .page-section-messages .container {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 64em) {
      .page-section-messages .container {
        padding-left: 15px;
        padding-right: 15px; } }

.krumo-element,
.krumo-footnote,
.krumo-call,
.krumo-preview {
  color: #231f20; }

/**
 * jQuery toast plugin created by Kamran Ahmed copyright MIT license 2014
 */
.jq-toast-wrap {
  display: block;
  position: fixed;
  width: 320px;
  max-width: 50vw;
  pointer-events: none;
  margin: 0;
  padding: 0;
  letter-spacing: normal;
  z-index: 500; }
  @media screen and (max-width: 47.9375em) {
    .jq-toast-wrap {
      right: 10px;
      left: 10px;
      width: auto;
      max-width: none;
      max-height: 70vh; }
      .jq-toast-wrap.top-right {
        top: auto;
        bottom: 10px; } }
  .jq-toast-wrap * {
    margin: 0;
    padding: 0; }
  .jq-toast-wrap.bottom-left {
    bottom: 20px;
    left: 20px; }
  .jq-toast-wrap.bottom-right {
    bottom: 20px;
    right: 40px; }
  @media print, screen and (min-width: 48em) {
    .jq-toast-wrap.top-left {
      top: 20px;
      left: 20px; }
    .jq-toast-wrap.top-right {
      top: 90px;
      right: 20px; }
      body.adminimal-admin-toolbar .jq-toast-wrap.top-right {
        top: 130px; }
      body.adminimal-admin-toolbar.toolbar-horizontal.toolbar-tray-open .jq-toast-wrap.top-right {
        top: 170px; } }

.jq-toast-single {
  display: block;
  width: 100%;
  padding: 10px 15px;
  margin: 0 0 5px;
  border-radius: 2px;
  font-size: 0.75rem;
  font-weight: 300;
  position: relative;
  pointer-events: all;
  background-color: #313131;
  box-shadow: 0 2px 4px 1px rgba(0, 0, 0, 0.3);
  color: #fff; }
  .jq-toast-single h2, .jq-toast-single .paragraph--type--services .field--name-field-title, .paragraph--type--services .jq-toast-single .field--name-field-title {
    font-family: "Poppins", "Arial", sans-serif;
    font-size: 0.875rem;
    margin: 0 0 7px;
    background: none;
    color: #fff;
    line-height: inherit;
    letter-spacing: normal; }
  .jq-toast-single a {
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    border-bottom: 1px solid #fff; }
    .jq-toast-single a:hover, .jq-toast-single a:focus, .jq-toast-single a:active {
      border-bottom: 1px solid transparent; }
  .jq-toast-single ul {
    margin: 0 0 0 15px;
    background: none;
    padding: 0; }
    .jq-toast-single ul li {
      list-style-type: disc;
      line-height: 1.125rem;
      background: none;
      margin: 0;
      padding: 0;
      letter-spacing: normal; }

.close-jq-toast-single {
  position: absolute;
  top: 2px;
  right: 2px;
  font-size: 1.5rem;
  width: 1.5rem;
  cursor: pointer;
  line-height: 1;
  text-align: center; }
  .close-jq-toast-single:hover, .close-jq-toast-single:focus, .close-jq-toast-single:active {
    color: #fff; }

.jq-toast-loader {
  display: block;
  position: absolute;
  top: -2px;
  height: 5px;
  width: 0;
  left: 0;
  border-radius: 5px;
  background: #f00; }

.jq-toast-loaded {
  width: 100%; }

.jq-has-icon {
  position: relative; }
  .jq-has-icon .jq-toast-heading {
    padding-left: 26px;
    padding-top: 2px; }
  .jq-has-icon:before {
    content: "info";
    position: absolute;
    display: block;
    color: #fff;
    top: 8px;
    left: 12px;
    font-size: 1.375rem; }

.jq-icon-info {
  color: #d8e9f2;
  background-color: #31708f; }

.jq-icon-warning {
  color: #f1eade;
  background-color: #8a6d3b; }
  .jq-icon-warning:before {
    content: "info"; }

.jq-icon-error {
  color: #fcf8f8;
  background-color: #a94442; }
  .jq-icon-error:before {
    content: "error"; }

.jq-icon-success {
  color: #d3e8d3;
  background-color: #3c763d; }
  .jq-icon-success:before {
    content: "check_circle"; }

.cssanimations .ajax-progress.ajax-progress-fullscreen {
  height: 44px;
  width: 44px;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background: #fff;
  z-index: 7000;
  opacity: .9;
  border: 2px solid #1e355f; }
  .cssanimations .ajax-progress.ajax-progress-fullscreen:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background: url("../../images/svg/loader.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    -webkit-animation: rotate 700ms linear infinite normal;
            animation: rotate 700ms linear infinite normal; }

.no-cssanimations .ajax-progress.ajax-progress-fullscreen {
  background: url("../../images/gif-loader.gif");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center; }

.content-moderation-entity-moderation-form {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px;
  margin-top: 2rem; }
  @media print, screen and (min-width: 64em) {
    .content-moderation-entity-moderation-form {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    .content-moderation-entity-moderation-form {
      padding-left: 15px;
      padding-right: 15px; } }
  .content-moderation-entity-moderation-form ul.entity-moderation-form {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0;
    background: #efefef;
    border-bottom: 0; }
    .content-moderation-entity-moderation-form ul.entity-moderation-form .form-item label {
      border-bottom: 1px solid #000; }
    .content-moderation-entity-moderation-form ul.entity-moderation-form .form-item input,
    .content-moderation-entity-moderation-form ul.entity-moderation-form .form-item select {
      margin-top: .5rem;
      margin-bottom: 0; }
    .content-moderation-entity-moderation-form ul.entity-moderation-form .form-submit {
      box-sizing: border-box;
      display: inline-block;
      position: relative;
      text-align: center;
      line-height: normal;
      cursor: pointer;
      padding: 4px 1.5em;
      border: 1px solid #0071b8;
      text-decoration: none;
      font-size: 14px;
      margin-top: 1.75rem;
      margin-bottom: 0;
      color: #fff;
      font-weight: 700;
      background-image: none;
      text-shadow: none;
      background: #0071b8; }
      .content-moderation-entity-moderation-form ul.entity-moderation-form .form-submit:hover {
        background-image: none;
        background-color: #1f86c7;
        border-color: #1f86c7;
        box-shadow: 0 1px 2px rgba(23, 26, 28, 0.25); }
    .content-moderation-entity-moderation-form ul.entity-moderation-form li {
      padding-left: 2rem; }
      .content-moderation-entity-moderation-form ul.entity-moderation-form li:last-child {
        -ms-flex-item-align: center;
            -ms-grid-row-align: center;
            align-self: center; }

.region-content .diff-header,
.region-content .diff-controls,
.region-content .diffmod.entity-moderation-form {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px; }
  @media print, screen and (min-width: 64em) {
    .region-content .diff-header,
    .region-content .diff-controls,
    .region-content .diffmod.entity-moderation-form {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    .region-content .diff-header,
    .region-content .diff-controls,
    .region-content .diffmod.entity-moderation-form {
      padding-left: 15px;
      padding-right: 15px; } }

.region-content .diff-responsive-table-wrapper h2, .region-content .diff-responsive-table-wrapper .paragraph--type--services .field--name-field-title, .paragraph--type--services .region-content .diff-responsive-table-wrapper .field--name-field-title {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px; }
  @media print, screen and (min-width: 64em) {
    .region-content .diff-responsive-table-wrapper h2, .region-content .diff-responsive-table-wrapper .paragraph--type--services .field--name-field-title, .paragraph--type--services .region-content .diff-responsive-table-wrapper .field--name-field-title {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    .region-content .diff-responsive-table-wrapper h2, .region-content .diff-responsive-table-wrapper .paragraph--type--services .field--name-field-title, .paragraph--type--services .region-content .diff-responsive-table-wrapper .field--name-field-title {
      padding-left: 15px;
      padding-right: 15px; } }

body.toolbar-horizontal.toolbar-tray-open {
  margin-top: 79px; }
  @media screen and (max-width: 63.9375em) {
    body.toolbar-horizontal.toolbar-tray-open .menu--main {
      top: 144px; } }
  body.toolbar-horizontal.toolbar-tray-open header {
    top: 79px; }
  @media print, screen and (min-width: 48em) {
    body.toolbar-horizontal.toolbar-tray-open main .node__content > .field:first-child .paragraph--type--compound-slider {
      margin-top: -209px; } }

body.toolbar-vertical,
body.toolbar-horizontal {
  padding-top: 0 !important;
  margin-top: 39px; }
  @media only screen and (max-device-height: 475px) and (orientation: landscape) {
    body.toolbar-vertical .menu--main > .menu,
    body.toolbar-horizontal .menu--main > .menu {
      height: calc(100vh - 130px); } }
  @media only screen and (max-device-height: 475px) and (orientation: landscape) {
    body.toolbar-vertical .menu--main > .menu,
    body.toolbar-horizontal .menu--main > .menu {
      height: calc(100vh - 104px); } }
  @media screen and (max-width: 63.9375em) {
    body.toolbar-vertical .menu--main,
    body.toolbar-horizontal .menu--main {
      top: 130px; } }
  @media screen and (max-width: 47.9375em) {
    body.toolbar-vertical .menu--main,
    body.toolbar-horizontal .menu--main {
      top: 65px; } }
  body.toolbar-vertical header,
  body.toolbar-horizontal header {
    top: 39px; }
  @media print, screen and (min-width: 48em) {
    body.toolbar-vertical main .node__content > .field:first-child .paragraph--type--compound-slider,
    body.toolbar-horizontal main .node__content > .field:first-child .paragraph--type--compound-slider {
      margin-top: -169px; } }

ul.menu {
  margin: 0;
  padding: 0;
  list-style: none; }
  ul.menu .menu-item {
    padding: 0; }

.menu--main {
  position: absolute;
  top: 65px;
  left: 0;
  width: 100%;
  height: auto;
  background: #eee; }
  @media print, screen and (min-width: 48em) {
    .menu--main {
      top: 130px; } }
  .menu--main.open {
    display: block !important; }
  @media (max-width: 1024px) {
    .menu--main {
      opacity: 0;
      pointer-events: none;
      transition: opacity .1s linear; }
      .menu--main.open-menu {
        opacity: 1;
        pointer-events: auto; } }
  @media (min-width: 1025px) {
    .menu--main {
      display: block !important;
      position: static;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      max-width: 100%;
      padding: 42px 0 0 53px;
      background: transparent; }
      .menu--main.open {
        display: block !important; } }
  @media (min-width: 1025px) {
    .menu--main > .menu {
      overflow: visible; } }
  @media only screen and (max-device-height: 475px) and (orientation: landscape) {
    .menu--main > .menu {
      height: calc(100vh - 130px); } }
  @media only screen and (max-device-height: 475px) and (orientation: landscape) {
    .menu--main > .menu {
      height: calc(100vh - 65px); } }
  .menu--main .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow: auto; }
    @media (min-width: 1025px) {
      .menu--main .menu {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        overflow: visible; } }
    .menu--main .menu a {
      font-size: 0.75rem;
      font-weight: 500;
      line-height: 2.5rem;
      letter-spacing: 0.02375rem;
      color: #1e3046;
      text-transform: uppercase; }
      @media print, screen and (min-width: 48em) {
        .menu--main .menu a {
          line-height: 3.75rem;
          font-size: 0.9375rem; } }
      @media (min-width: 1025px) {
        .menu--main .menu a {
          line-height: 5.375rem; } }
      .menu--main .menu a.is-active, .menu--main .menu a:active {
        color: #85a9c3; }
    .menu--main .menu > li {
      position: relative;
      width: 100%;
      border: solid #fff;
      border-width: 1px 0;
      text-align: center;
      display: block;
      color: #1e3046; }
      .menu--main .menu > li + li {
        border-top: none; }
      @media (min-width: 1025px) {
        .menu--main .menu > li {
          width: auto;
          border: none;
          text-align: left; } }
      .menu--main .menu > li.is-active > a:hover {
        color: #1e3046; }
      .menu--main .menu > li > a:hover,
      .menu--main .menu > li > a:active {
        color: #85a9c3; }
    @media (min-width: 1025px) {
      .menu--main .menu .is-active a::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        height: 3px;
        width: 100%;
        background: #1388df;
        -webkit-transform: none;
                transform: none; } }
  .menu--main .menu-level-0 > .menu-item {
    position: relative;
    display: inline-block;
    margin: 0 10px; }
  .menu--main .menu-level-1 {
    display: block; }
  .menu--main .menu-item--expanded {
    list-style: none; }
    .menu--main .menu-item--expanded > a {
      display: inline-block;
      position: relative; }
      .menu--main .menu-item--expanded > a:after {
        content: ""; }
      .menu--main .menu-item--expanded > a::after {
        position: absolute;
        display: block;
        top: 11px;
        right: -20px;
        font-size: 1.125rem;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg); }
        @media print, screen and (min-width: 48em) {
          .menu--main .menu-item--expanded > a::after {
            top: 19px;
            right: -24px;
            font-size: 1.375rem; } }
        @media (min-width: 1025px) {
          .menu--main .menu-item--expanded > a::after {
            content: '';
            -webkit-transform: none;
                    transform: none;
            top: auto; } }
    .menu--main .menu-item--expanded.open-sub {
      background: #fff; }
      .menu--main .menu-item--expanded.open-sub a::after {
        top: 10px;
        -webkit-transform: rotate(-90deg);
                transform: rotate(-90deg); }
        @media print, screen and (min-width: 48em) {
          .menu--main .menu-item--expanded.open-sub a::after {
            top: 18px; } }
        @media (min-width: 1025px) {
          .menu--main .menu-item--expanded.open-sub a::after {
            top: auto;
            -webkit-transform: none;
                    transform: none; } }
      .menu--main .menu-item--expanded.open-sub > .menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
    .menu--main .menu-item--expanded > .menu {
      background: #fff;
      display: none;
      padding-bottom: 12px; }
      @media (min-width: 1025px) {
        .menu--main .menu-item--expanded > .menu {
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          position: absolute;
          min-width: 282px;
          padding: 24px 40px 16px;
          top: 100%;
          left: 0;
          background: #eee;
          z-index: 10; } }
      .menu--main .menu-item--expanded > .menu a {
        line-height: 1.875rem;
        color: #1e3046; }
        @media print, screen and (min-width: 48em) {
          .menu--main .menu-item--expanded > .menu a {
            line-height: 2.5rem;
            text-transform: none; }
            .menu--main .menu-item--expanded > .menu a:hover {
              color: #85a9c3; } }
        .menu--main .menu-item--expanded > .menu a::after {
          display: none; }
        .menu--main .menu-item--expanded > .menu a:hover, .menu--main .menu-item--expanded > .menu a:active, .menu--main .menu-item--expanded > .menu a.is-active {
          color: #85a9c3; }

.menu--quick-links .menu li,
.menu--partners .menu li {
  line-height: 0.9375rem;
  margin-bottom: 7px; }
  @media print, screen and (min-width: 48em) {
    .menu--quick-links .menu li,
    .menu--partners .menu li {
      line-height: 1.875rem;
      margin-bottom: 15px; } }
  .menu--quick-links .menu li:last-child,
  .menu--partners .menu li:last-child {
    margin-bottom: 0; }

.menu--quick-links .menu a,
.menu--partners .menu a {
  display: block;
  color: #fff;
  font-size: 0.625rem;
  line-height: 1.125rem;
  padding-left: 15px;
  position: relative; }
  .menu--quick-links .menu a:before,
  .menu--partners .menu a:before {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    .menu--quick-links .menu a,
    .menu--partners .menu a {
      font-size: 0.875rem;
      padding-left: 28px; } }
  .menu--quick-links .menu a:hover, .menu--quick-links .menu a:active, .menu--quick-links .menu a.is-active,
  .menu--partners .menu a:hover,
  .menu--partners .menu a:active,
  .menu--partners .menu a.is-active {
    color: #fff; }
  @media (min-width: 1025px) {
    .menu--quick-links .menu a:hover::before,
    .menu--partners .menu a:hover::before {
      left: 5px; } }
  .menu--quick-links .menu a::before,
  .menu--partners .menu a::before {
    position: absolute;
    display: inline-block;
    top: 5px;
    left: 0;
    color: #f5b433;
    font-size: 0.5rem;
    transition: left .2s linear; }
    @media print, screen and (min-width: 48em) {
      .menu--quick-links .menu a::before,
      .menu--partners .menu a::before {
        top: 4px;
        font-size: 0.6875rem; } }

#backtotop {
  margin-left: -35px; }

html, body {
  height: 100%; }
  html .layout-container, body .layout-container {
    min-height: 100%;
    margin-bottom: -1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    overflow-x: hidden; }
  html .dialog-off-canvas-main-canvas, body .dialog-off-canvas-main-canvas {
    height: 100%; }
  html main, body main {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding-top: 65px; }
    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      html main, body main {
        height: 100%; } }
    @media print, screen and (min-width: 48em) {
      html main, body main {
        padding-top: 130px; } }
    @media print, screen and (min-width: 48em) {
      html main .node__content > .field:first-child .paragraph--type--compound-slider, body main .node__content > .field:first-child .paragraph--type--compound-slider {
        margin-top: -130px; } }

.form-item {
  margin-bottom: 20px; }
  .form-item label, .form-item .description {
    display: block;
    line-height: 1;
    color: #fff; }
  .form-item label {
    padding: 8px 10px;
    font-size: 0.875rem; }
    .form-item label.form-required:after {
      content: '*'; }
  .form-item .description {
    font-size: 0.75rem;
    padding: 4px 10px; }

[type="text"], [type="password"], [type="date"], [type="datetime"], [type="datetime-local"], [type="month"], [type="week"], [type="email"], [type="number"], [type="search"], [type="tel"], [type="time"], [type="url"], [type="color"], textarea {
  border: 0;
  width: 100%;
  font-size: 1rem;
  line-height: 1.25rem;
  padding: 10px;
  color: rgba(74, 74, 74, 0.63);
  transition: color .2s linear;
  border-radius: 2px; }
  [type="text"]:focus, [type="password"]:focus, [type="date"]:focus, [type="datetime"]:focus, [type="datetime-local"]:focus, [type="month"]:focus, [type="week"]:focus, [type="email"]:focus, [type="number"]:focus, [type="search"]:focus, [type="tel"]:focus, [type="time"]:focus, [type="url"]:focus, [type="color"]:focus, textarea:focus {
    outline: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.21);
    color: #4a4a4a; }
  [type="text"]:-webkit-autofill, [type="password"]:-webkit-autofill, [type="date"]:-webkit-autofill, [type="datetime"]:-webkit-autofill, [type="datetime-local"]:-webkit-autofill, [type="month"]:-webkit-autofill, [type="week"]:-webkit-autofill, [type="email"]:-webkit-autofill, [type="number"]:-webkit-autofill, [type="search"]:-webkit-autofill, [type="tel"]:-webkit-autofill, [type="time"]:-webkit-autofill, [type="url"]:-webkit-autofill, [type="color"]:-webkit-autofill, textarea:-webkit-autofill {
    box-shadow: 0 0 0 30px #fff inset; }

.custom-block .container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px; }
  @media print, screen and (min-width: 64em) {
    .custom-block .container {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    .custom-block .container {
      padding-left: 15px;
      padding-right: 15px; } }

.custom-block .custom-block > .container {
  width: 100%;
  max-width: inherit;
  padding: 0; }

.block-system-branding-block {
  width: 96px; }
  @media print, screen and (min-width: 48em) {
    .block-system-branding-block {
      width: 192px; } }

[id='block-stayintouch'] {
  position: relative; }
  @media screen and (min-width: 75em) {
    [id='block-stayintouch']::before, [id='block-stayintouch']::after {
      content: '';
      position: absolute;
      width: 1px;
      top: 5px;
      bottom: 8px;
      background: rgba(170, 176, 186, 0.45); } }
  [id='block-stayintouch']::before {
    left: 8px; }
  [id='block-stayintouch']::after {
    right: -15px; }
  @media screen and (min-width: 75em) {
    [id='block-stayintouch'] > * {
      padding-left: 65px; } }
  [id='block-stayintouch'] a {
    color: #fff; }
  [id='block-stayintouch'] .field--name-body p {
    margin-bottom: 20px;
    font-size: 0.75rem;
    line-height: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      [id='block-stayintouch'] .field--name-body p {
        font-size: 0.875rem;
        line-height: 1.875rem; } }
    @media screen and (min-width: 75em) {
      [id='block-stayintouch'] .field--name-body p {
        margin-bottom: 30px;
        font-size: 0.875rem; } }
    [id='block-stayintouch'] .field--name-body p:last-child {
      margin-bottom: 0; }

@media screen and (min-width: 75em) {
  footer.four-col [id='block-stayintouch'] > * {
    padding-right: 45px; } }

[id='block-copyright'] p {
  font-size: 0.75rem;
  margin-bottom: 0; }

[id='block-questionsorcomments'] a,
[id='block-lookingforacareer'] a {
  display: inline-block;
  position: relative;
  line-height: 1;
  font-family: "Poppins", "Arial", sans-serif;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid transparent;
  border-width: 0 0 0 4px;
  background: transparent;
  margin-left: 0;
  font-weight: 700;
  -webkit-tap-highlight-color: transparent;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  font-weight: 400;
  padding: 0 0 0 9px;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  position: relative;
  padding-left: 12px;
  transition: 0.5s;
  color: #fff;
  border-color: #fff; }
  [data-whatinput='mouse'] [id='block-questionsorcomments'] a, [data-whatinput='mouse']
  [id='block-lookingforacareer'] a {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    [id='block-questionsorcomments'] a,
    [id='block-lookingforacareer'] a {
      border-left-width: 6px; } }
  @media print, screen and (min-width: 48em) {
    [id='block-questionsorcomments'] a,
    [id='block-lookingforacareer'] a {
      padding: 0 0 0 18px;
      font-size: 0.875rem; } }
  [id='block-questionsorcomments'] a:after,
  [id='block-lookingforacareer'] a:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    [id='block-questionsorcomments'] a,
    [id='block-lookingforacareer'] a {
      padding-left: 25px; } }
  [id='block-questionsorcomments'] a::after,
  [id='block-lookingforacareer'] a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: -20px;
    margin-top: -1px;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    transition: 0.5s; }
    @media print, screen and (min-width: 48em) {
      [id='block-questionsorcomments'] a::after,
      [id='block-lookingforacareer'] a::after {
        right: -23px;
        font-size: 1.4375rem; } }
  @media print, screen and (min-width: 64em) {
    [id='block-questionsorcomments'] a:hover,
    [id='block-lookingforacareer'] a:hover {
      padding-left: 18px;
      padding-right: 25px; }
      [id='block-questionsorcomments'] a:hover::after,
      [id='block-lookingforacareer'] a:hover::after {
        right: 0; } }
  [id='block-questionsorcomments'] a:hover, [id='block-questionsorcomments'] a:focus, [id='block-questionsorcomments'] a:active,
  [id='block-lookingforacareer'] a:hover,
  [id='block-lookingforacareer'] a:focus,
  [id='block-lookingforacareer'] a:active {
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: transparent;
    background-color: transparent; }
  [id='block-questionsorcomments'] a:hover, [id='block-questionsorcomments'] a:active, [id='block-questionsorcomments'] a:focus,
  [id='block-lookingforacareer'] a:hover,
  [id='block-lookingforacareer'] a:active,
  [id='block-lookingforacareer'] a:focus {
    color: #fff;
    border-color: #fff; }

footer .block-webform-block form .form-item label {
  color: #fff; }

footer .block-webform-block form input[type='text'], footer .block-webform-block form input[type='email'], footer .block-webform-block form input[type='password'] {
  color: #fff; }

footer .block-webform-block form .submit-btn {
  display: inline-block;
  position: relative;
  line-height: 1;
  font-family: "Poppins", "Arial", sans-serif;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid transparent;
  border-width: 0 0 0 4px;
  background: transparent;
  margin-left: 0;
  font-weight: 700;
  -webkit-tap-highlight-color: transparent;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  font-weight: 400;
  padding: 0 0 0 9px;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  position: relative;
  padding-left: 12px;
  transition: 0.5s;
  color: #fff;
  border-color: #fff; }
  [data-whatinput='mouse'] footer .block-webform-block form .submit-btn {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    footer .block-webform-block form .submit-btn {
      border-left-width: 6px; } }
  @media print, screen and (min-width: 48em) {
    footer .block-webform-block form .submit-btn {
      padding: 0 0 0 18px;
      font-size: 0.875rem; } }
  footer .block-webform-block form .submit-btn:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    footer .block-webform-block form .submit-btn {
      padding-left: 25px; } }
  footer .block-webform-block form .submit-btn::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: -20px;
    margin-top: -1px;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    transition: 0.5s; }
    @media print, screen and (min-width: 48em) {
      footer .block-webform-block form .submit-btn::after {
        right: -23px;
        font-size: 1.4375rem; } }
  @media print, screen and (min-width: 64em) {
    footer .block-webform-block form .submit-btn:hover {
      padding-left: 18px;
      padding-right: 25px; }
      footer .block-webform-block form .submit-btn:hover::after {
        right: 0; } }
  footer .block-webform-block form .submit-btn:hover, footer .block-webform-block form .submit-btn:focus, footer .block-webform-block form .submit-btn:active {
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: transparent;
    background-color: transparent; }
  footer .block-webform-block form .submit-btn:hover, footer .block-webform-block form .submit-btn:active, footer .block-webform-block form .submit-btn:focus {
    color: #fff;
    border-color: #fff; }

.parallax-background {
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 0;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }
  @media screen and (max-width: 63.9375em) {
    .parallax-background {
      background-position: 30% 0 !important; } }

.stay-in-touch-block {
  margin-bottom: 45px; }
  .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title {
    position: relative;
    color: #1e3046;
    margin-bottom: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media print, screen and (min-width: 48em) {
      .stay-in-touch-block > h2, .paragraph--type--services .stay-in-touch-block > .field--name-field-title {
        margin-bottom: 55px; } }
    .stay-in-touch-block > h2 span, .paragraph--type--services .stay-in-touch-block > .field--name-field-title span {
      position: relative;
      padding-right: 30px;
      z-index: 2; }
    .stay-in-touch-block > h2::after, .paragraph--type--services .stay-in-touch-block > .field--name-field-title::after {
      content: '';
      display: block;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      max-width: 100%;
      width: 100%;
      height: 1px;
      background: #1e3046; }
      @media print, screen and (min-width: 64em) {
        .stay-in-touch-block > h2::after, .paragraph--type--services .stay-in-touch-block > .field--name-field-title::after {
          right: 60px; } }
  .stay-in-touch-block .field--name-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media (min-width: 481px) {
      .stay-in-touch-block .field--name-body {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    @media (min-width: 481px) and (max-width: 767px) {
      .stay-in-touch-block .field--name-body {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
    .stay-in-touch-block .field--name-body > div {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
      @media (min-width: 481px) and (max-width: 767px) {
        .stay-in-touch-block .field--name-body > div {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 50%;
                  flex: 0 0 50%;
          max-width: 50%; } }
      @media print, screen and (min-width: 48em) {
        .stay-in-touch-block .field--name-body > div {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 41.66666667%;
                  flex: 0 0 41.66666667%;
          max-width: 41.66666667%; } }
      .stay-in-touch-block .field--name-body > div > * {
        max-width: 216px; }
      .stay-in-touch-block .field--name-body > div p {
        margin-bottom: 0;
        padding-left: 30px; }
  .stay-in-touch-block h4, .stay-in-touch-block footer h2, footer .stay-in-touch-block h2, .stay-in-touch-block footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .block-views-blocknews-archive-news-archive > h2, .stay-in-touch-block .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .stay-in-touch-block .block-views-blocknews-archive-news-archive > .field--name-field-title, .stay-in-touch-block .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .stay-in-touch-block .field--name-field-subtitle, .stay-in-touch-block .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .field--name-field-subtitle, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block h2, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .field--name-field-title, .stay-in-touch-block
  .paragraph--type--services .field--name-field-select-service .field__items h2,
  .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block h2, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .field--name-field-name, .stay-in-touch-block .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p, .stay-in-touch-block
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p {
    color: #1e3046;
    margin-bottom: 20px; }
    @media print, screen and (min-width: 48em) {
      .stay-in-touch-block h4, .stay-in-touch-block footer h2, footer .stay-in-touch-block h2, .stay-in-touch-block footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .block-views-blocknews-archive-news-archive > h2, .stay-in-touch-block .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .stay-in-touch-block .block-views-blocknews-archive-news-archive > .field--name-field-title, .stay-in-touch-block .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .stay-in-touch-block .field--name-field-subtitle, .stay-in-touch-block .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .field--name-field-subtitle, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block h2, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .field--name-field-title, .stay-in-touch-block
      .paragraph--type--services .field--name-field-select-service .field__items h2,
      .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block h2, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .field--name-field-title, .stay-in-touch-block .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .field--name-field-name, .stay-in-touch-block .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p, .stay-in-touch-block
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p {
        margin-bottom: 40px; } }
    .stay-in-touch-block h4 + *, .stay-in-touch-block footer h2 + *, footer .stay-in-touch-block h2 + *, .stay-in-touch-block footer .paragraph--type--services .field--name-field-title + *, footer .paragraph--type--services .stay-in-touch-block .field--name-field-title + *, .stay-in-touch-block .paragraph--type--services footer .field--name-field-title + *, .paragraph--type--services footer .stay-in-touch-block .field--name-field-title + *, .stay-in-touch-block .block-views-blocknews-archive-news-archive > h2 + *, .stay-in-touch-block .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *, .paragraph--type--services .stay-in-touch-block .block-views-blocknews-archive-news-archive > .field--name-field-title + *, .stay-in-touch-block .paragraph--type--compound-cta-section .field--name-field-subtitle + *, .paragraph--type--compound-cta-section .stay-in-touch-block .field--name-field-subtitle + *, .stay-in-touch-block .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .field--name-field-subtitle + *, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items h2 + *, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block h2 + *, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .field--name-field-title + *, .stay-in-touch-block
    .paragraph--type--services .field--name-field-select-service .field__items h2 + *,
    .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block h2 + *, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .field--name-field-title + *, .stay-in-touch-block .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .field--name-field-name + *, .stay-in-touch-block .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p + *, .stay-in-touch-block
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *,
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p + * {
      position: relative; }
      .stay-in-touch-block h4 + *::before, .stay-in-touch-block footer h2 + *::before, footer .stay-in-touch-block h2 + *::before, .stay-in-touch-block footer .paragraph--type--services .field--name-field-title + *::before, footer .paragraph--type--services .stay-in-touch-block .field--name-field-title + *::before, .stay-in-touch-block .paragraph--type--services footer .field--name-field-title + *::before, .paragraph--type--services footer .stay-in-touch-block .field--name-field-title + *::before, .stay-in-touch-block .block-views-blocknews-archive-news-archive > h2 + *::before, .stay-in-touch-block .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *::before, .paragraph--type--services .stay-in-touch-block .block-views-blocknews-archive-news-archive > .field--name-field-title + *::before, .stay-in-touch-block .paragraph--type--compound-cta-section .field--name-field-subtitle + *::before, .paragraph--type--compound-cta-section .stay-in-touch-block .field--name-field-subtitle + *::before, .stay-in-touch-block .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *::before, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .field--name-field-subtitle + *::before, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items h2 + *::before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block h2 + *::before, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *::before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .field--name-field-title + *::before, .stay-in-touch-block
      .paragraph--type--services .field--name-field-select-service .field__items h2 + *::before,
      .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block h2 + *::before, .stay-in-touch-block .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *::before, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .field--name-field-title + *::before, .stay-in-touch-block .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *::before, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .field--name-field-name + *::before, .stay-in-touch-block .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *::before, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p + *::before, .stay-in-touch-block
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *::before,
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block p + *::before {
        display: block;
        position: absolute;
        top: 7px;
        left: 0;
        font-size: 1rem;
        color: #b0b7be; }
  @media screen and (max-width: 47.9375em) {
    .stay-in-touch-block .contact-address {
      margin-bottom: 40px; } }
  @media (min-width: 481px) and (max-width: 767px) {
    .stay-in-touch-block .contact-address {
      padding-right: 15px; } }
  .stay-in-touch-block .contact-address h4 + *:before, .stay-in-touch-block .contact-address footer h2 + *:before, footer .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address footer .paragraph--type--services .field--name-field-title + *:before, footer .paragraph--type--services .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--services footer .field--name-field-title + *:before, .paragraph--type--services footer .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .block-views-blocknews-archive-news-archive > h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .paragraph--type--services .stay-in-touch-block .contact-address .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--compound-cta-section .field--name-field-subtitle + *:before, .paragraph--type--compound-cta-section .stay-in-touch-block .contact-address .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-address .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *:before, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .contact-address .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service.field__items h2 + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address
  .paragraph--type--services .field--name-field-select-service .field__items h2 + *:before,
  .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-address h2 + *:before, .stay-in-touch-block .contact-address .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-address .field--name-field-title + *:before, .stay-in-touch-block .contact-address .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *:before, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .contact-address .field--name-field-name + *:before, .stay-in-touch-block .contact-address .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-address p + *:before, .stay-in-touch-block .contact-address
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-address p + *:before {
    content: ""; }
  .stay-in-touch-block .contact-phone-number h4 + *:before, .stay-in-touch-block .contact-phone-number footer h2 + *:before, footer .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number footer .paragraph--type--services .field--name-field-title + *:before, footer .paragraph--type--services .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services footer .field--name-field-title + *:before, .paragraph--type--services footer .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .block-views-blocknews-archive-news-archive > h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .paragraph--type--services .stay-in-touch-block .contact-phone-number .block-views-blocknews-archive-news-archive > .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--compound-cta-section .field--name-field-subtitle + *:before, .paragraph--type--compound-cta-section .stay-in-touch-block .contact-phone-number .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle + *:before, .paragraph--type--simple-cta.paragraph--view-mode--default .stay-in-touch-block .contact-phone-number .field--name-field-subtitle + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service.field__items h2 + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service.field__items .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number
  .paragraph--type--services .field--name-field-select-service .field__items h2 + *:before,
  .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-phone-number h2 + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title + *:before, .paragraph--type--services .field--name-field-select-service .field__items .stay-in-touch-block .contact-phone-number .field--name-field-title + *:before, .stay-in-touch-block .contact-phone-number .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name + *:before, .paragraph--type--compound-leadership-team .header-leadership .stay-in-touch-block .contact-phone-number .field--name-field-name + *:before, .stay-in-touch-block .contact-phone-number .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-phone-number p + *:before, .stay-in-touch-block .contact-phone-number
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p + *:before,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .stay-in-touch-block .contact-phone-number p + *:before {
    content: ""; }
  @media (min-width: 481px) and (max-width: 767px) {
    .stay-in-touch-block .contact-phone-number {
      text-align: right;
      padding-left: 15px; }
      .stay-in-touch-block .contact-phone-number > * {
        text-align: left; } }

@media print, screen and (min-width: 48em) {
  .block-views-blocknews-archive-news-archive {
    padding-top: 30px; } }

.block-views-blocknews-archive-news-archive > h2, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 15px;
  padding-bottom: 15px;
  color: #1e3046; }
  .block-views-blocknews-archive-news-archive > h2.active, .paragraph--type--services .block-views-blocknews-archive-news-archive > .active.field--name-field-title {
    border-bottom-color: transparent; }
  @media print, screen and (min-width: 48em) {
    .block-views-blocknews-archive-news-archive > h2, .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title {
      margin-bottom: 25px;
      padding-bottom: 25px; } }

.news-archive-block {
  margin-bottom: 75px; }
  .news-archive-block .view-grouping {
    margin-bottom: 15px; }
    @media print, screen and (min-width: 48em) {
      .news-archive-block .view-grouping {
        margin-bottom: 25px; } }
    .news-archive-block .view-grouping:last-child {
      margin-bottom: 0; }
  .news-archive-block .view-grouping-header {
    border-bottom: 1px solid #e5e5e5;
    position: relative;
    cursor: pointer;
    transition: border-bottom-color .8s linear;
    padding-bottom: 10px;
    font-size: 1rem;
    text-transform: uppercase; }
    .news-archive-block .view-grouping-header.active {
      border-bottom-color: transparent; }
    .news-archive-block .view-grouping-header:after {
      content: ""; }
    .news-archive-block .view-grouping-header::after {
      position: absolute;
      top: 10px;
      right: 17px;
      font-size: 0.5rem;
      color: #1e3046;
      display: table; }
    .news-archive-block .view-grouping-header.active::after {
      -webkit-transform: rotate(-180deg);
              transform: rotate(-180deg); }
    .news-archive-block .view-grouping-header.active {
      transition: none; }
    @media print, screen and (min-width: 48em) {
      .news-archive-block .view-grouping-header {
        position: relative;
        cursor: pointer;
        font-size: 1.375rem;
        padding-bottom: 20px; }
        .news-archive-block .view-grouping-header:after {
          content: ""; }
        .news-archive-block .view-grouping-header::after {
          position: absolute;
          top: 9px;
          right: 17px;
          font-size: 0.5rem;
          color: #1e3046;
          display: table; }
        .news-archive-block .view-grouping-header.active::after {
          -webkit-transform: rotate(-180deg);
                  transform: rotate(-180deg); } }
  .news-archive-block .view-grouping-content {
    display: none; }
  .news-archive-block .news-archive-month,
  .news-archive-block .month-archive-content {
    border-bottom: 1px solid #e5e5e5;
    padding: 0 10px 0 15px; }
    .news-archive-block .news-archive-month.active,
    .news-archive-block .month-archive-content.active {
      border-bottom-color: transparent; }
  .news-archive-block .news-archive-month {
    position: relative;
    cursor: pointer;
    transition: border-bottom-color .8s linear;
    font-size: 0.875rem;
    font-weight: 500;
    color: #1e3046;
    text-transform: uppercase;
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 17px; }
    .news-archive-block .news-archive-month:after {
      content: ""; }
    .news-archive-block .news-archive-month::after {
      position: absolute;
      top: 23px;
      right: 17px;
      font-size: 0.5rem;
      color: #1e3046;
      display: table; }
    .news-archive-block .news-archive-month.active::after {
      -webkit-transform: rotate(-180deg);
              transform: rotate(-180deg); }
    .news-archive-block .news-archive-month.active {
      transition: none; }
    @media print, screen and (min-width: 48em) {
      .news-archive-block .news-archive-month {
        position: relative;
        cursor: pointer;
        font-size: 1rem;
        padding-top: 32px;
        padding-bottom: 22px; }
        .news-archive-block .news-archive-month:after {
          content: ""; }
        .news-archive-block .news-archive-month::after {
          position: absolute;
          top: 37px;
          right: 17px;
          font-size: 0.5rem;
          color: #1e3046;
          display: table; }
        .news-archive-block .news-archive-month.active::after {
          -webkit-transform: rotate(-180deg);
                  transform: rotate(-180deg); } }
    .news-archive-block .news-archive-month:first-child {
      margin-top: -20px; }
  .news-archive-block .month-archive-content,
  .news-archive-block .airport-location-content {
    display: none; }
    .news-archive-block .month-archive-content > .views-row,
    .news-archive-block .airport-location-content > .views-row {
      position: relative;
      margin-bottom: 10px;
      padding-top: 5px; }
      @media print, screen and (min-width: 48em) {
        .news-archive-block .month-archive-content > .views-row,
        .news-archive-block .airport-location-content > .views-row {
          margin-bottom: 22px;
          padding-top: 10px; } }
      @media screen and (max-width: 47.9375em) {
        .news-archive-block .month-archive-content > .views-row,
        .news-archive-block .airport-location-content > .views-row {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: baseline;
              -ms-flex-align: baseline;
                  align-items: baseline;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between; } }
    .news-archive-block .month-archive-content .views-field-title,
    .news-archive-block .airport-location-content .views-field-title {
      max-width: 80%;
      margin-top: -10px;
      padding-right: 25px; }
      @media print, screen and (min-width: 48em) {
        .news-archive-block .month-archive-content .views-field-title,
        .news-archive-block .airport-location-content .views-field-title {
          max-width: 225px;
          padding-right: 50px; } }
      .news-archive-block .month-archive-content .views-field-title a,
      .news-archive-block .airport-location-content .views-field-title a {
        font-size: 0.8125rem;
        line-height: 1.125rem;
        position: relative; }
        .news-archive-block .month-archive-content .views-field-title a:before,
        .news-archive-block .airport-location-content .views-field-title a:before {
          content: ""; }
        @media (min-width: 1025px) {
          .news-archive-block .month-archive-content .views-field-title a:hover::before,
          .news-archive-block .airport-location-content .views-field-title a:hover::before {
            left: -12px; } }
        .news-archive-block .month-archive-content .views-field-title a::before,
        .news-archive-block .airport-location-content .views-field-title a::before {
          position: absolute;
          display: inline-block;
          top: 5px;
          left: -16px;
          font-size: 0.625rem;
          color: #f5b433;
          transition: left .2s linear; }
      .news-archive-block .month-archive-content .views-field-title ~ div,
      .news-archive-block .airport-location-content .views-field-title ~ div {
        font-size: 0.8125rem;
        color: #85a9c3; }
        @media print, screen and (min-width: 48em) {
          .news-archive-block .month-archive-content .views-field-title ~ div,
          .news-archive-block .airport-location-content .views-field-title ~ div {
            position: absolute;
            top: 0;
            right: 0; } }
    .news-archive-block .month-archive-content div[class*='views-field views-field-created'],
    .news-archive-block .airport-location-content div[class*='views-field views-field-created'] {
      top: 1px; }

.js-view-dom-id-ajax-news > .view-content,
.news-latest {
  transition: height .2s linear;
  margin-bottom: 50px; }
  @media print, screen and (min-width: 48em) {
    .js-view-dom-id-ajax-news > .view-content,
    .news-latest {
      margin-bottom: 70px; } }

.news-latest-images {
  display: block;
  margin-bottom: 35px; }
  @media print, screen and (min-width: 48em) {
    .news-latest-images {
      margin-bottom: 70px; } }
  .news-latest-images img {
    width: 100%;
    height: auto; }

.news-latest-title {
  position: relative; }
  @media screen and (max-width: 47.9375em) {
    .news-latest-title {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .news-latest-title h3, .news-latest-title .stay-in-touch-block > h2, .news-latest-title .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--services .news-latest-title .stay-in-touch-block > .field--name-field-title, .news-latest-title .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--compound-cta-section .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--news-section .news-header .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .news-latest-title .field--name-field-counter, .news-latest-title .paragraph--type--columns-layout > .container > .field--name-field-title, .news-latest-title .paragraph--type--page-separator .field--name-field-title, .paragraph--type--page-separator .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--location-map .field--name-field-title, .paragraph--type--location-map .news-latest-title .field--name-field-title {
    max-width: 665px;
    margin-bottom: 25px;
    color: #1e3046; }
    @media screen and (max-width: 47.9375em) {
      .news-latest-title h3, .news-latest-title .stay-in-touch-block > h2, .news-latest-title .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--services .news-latest-title .stay-in-touch-block > .field--name-field-title, .news-latest-title .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--compound-cta-section .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--news-section .news-header .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .news-latest-title .field--name-field-counter, .news-latest-title .paragraph--type--columns-layout > .container > .field--name-field-title, .news-latest-title .paragraph--type--page-separator .field--name-field-title, .paragraph--type--page-separator .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--location-map .field--name-field-title, .paragraph--type--location-map .news-latest-title .field--name-field-title {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2; } }
    @media print, screen and (min-width: 48em) {
      .news-latest-title h3, .news-latest-title .stay-in-touch-block > h2, .news-latest-title .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--services .news-latest-title .stay-in-touch-block > .field--name-field-title, .news-latest-title .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--compound-cta-section .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title, .paragraph--type--simple-cta.paragraph--view-mode--default .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--news-section .news-header .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .news-latest-title .field--name-field-counter, .news-latest-title .paragraph--type--columns-layout > .container > .field--name-field-title, .news-latest-title .paragraph--type--page-separator .field--name-field-title, .paragraph--type--page-separator .news-latest-title .field--name-field-title, .news-latest-title .paragraph--type--location-map .field--name-field-title, .paragraph--type--location-map .news-latest-title .field--name-field-title {
        margin-bottom: 35px; } }
  .news-latest-title a:hover {
    color: #85a9c3; }

.news-latest-date {
  font-size: 1rem;
  color: #85a9c3; }
  @media print, screen and (min-width: 48em) {
    .news-latest-date {
      position: absolute;
      top: 15px;
      right: 0; } }
  @media screen and (max-width: 47.9375em) {
    .news-latest-date {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      margin-bottom: 10px;
      font-size: 13px; } }

.news-latest-summary {
  color: #1e3046;
  font-weight: 200;
  margin-bottom: 25px; }
  @media print, screen and (min-width: 48em) {
    .news-latest-summary {
      margin-bottom: 35px; } }

.news-latest-body p {
  margin-bottom: 25px; }
  @media print, screen and (min-width: 48em) {
    .news-latest-body p {
      margin-bottom: 35px; } }
  .news-latest-body p:last-child {
    margin-bottom: 0; }

.news-other {
  margin-bottom: 45px; }
  @media (min-width: 481px) {
    .news-other .month-archive-content,
    .news-other .airport-location-content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      border-top: 1px solid #e5e5e5; }
      .news-other .month-archive-content > .views-row,
      .news-other .airport-location-content > .views-row {
        width: 50%; }
        .news-other .month-archive-content > .views-row:nth-of-type(1n),
        .news-other .airport-location-content > .views-row:nth-of-type(1n) {
          clear: none; }
        .news-other .month-archive-content > .views-row:nth-of-type(2n+1),
        .news-other .airport-location-content > .views-row:nth-of-type(2n+1) {
          clear: both; }
        .news-other .month-archive-content > .views-row:last-child,
        .news-other .airport-location-content > .views-row:last-child {
          float: left; } }
  .news-other .views-row {
    border-bottom: 1px solid #e5e5e5;
    padding-top: 25px;
    padding-bottom: 20px; }
    .news-other .views-row.active {
      border-bottom-color: transparent; }
    @media (min-width: 1200px) {
      .news-other .views-row:nth-last-child(1) {
        border-bottom: none; } }
    .news-other .views-row:nth-child(even) {
      padding-left: 0; }
    .news-other .views-row:nth-child(odd) {
      padding-right: 0; }
    @media (min-width: 1200px) {
      .news-other .views-row:nth-last-child(1), .news-other .views-row:nth-last-child(2) {
        border-bottom: none; } }
    @media (min-width: 481px) {
      .news-other .views-row:nth-child(even) {
        border-left: 1px solid #e5e5e5; } }
    @media (min-width: 481px) and (max-width: 767px) {
      .news-other .views-row:nth-child(even) {
        padding-left: 25px; }
      .news-other .views-row:nth-child(odd) {
        padding-right: 25px; } }
    @media print, screen and (min-width: 48em) {
      .news-other .views-row {
        padding-top: 50px;
        padding-bottom: 40px; }
        .news-other .views-row:nth-child(even) {
          padding-left: 25px; }
        .news-other .views-row:nth-child(odd) {
          padding-right: 25px; } }
    @media print, screen and (min-width: 64em) {
      .news-other .views-row:nth-child(even) {
        padding-left: 49px; }
      .news-other .views-row:nth-child(odd) {
        padding-right: 50px; } }
  .news-other-images {
    display: block;
    margin-bottom: 25px; }
    @media print, screen and (min-width: 48em) {
      .news-other-images {
        margin-bottom: 35px; } }
    .news-other-images img {
      width: 100%;
      height: auto; }
  .news-other-title {
    position: relative; }
    @media screen and (max-width: 47.9375em) {
      .news-other-title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .news-other-title a:hover {
      color: #85a9c3; }
    .news-other-title h4, .news-other-title footer h2, footer .news-other-title h2, .news-other-title footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .news-other-title .field--name-field-title, .news-other-title .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .news-other-title .field--name-field-title, .news-other-title .block-views-blocknews-archive-news-archive > h2, .news-other-title .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .news-other-title .block-views-blocknews-archive-news-archive > .field--name-field-title, .news-other-title .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .news-other-title .field--name-field-subtitle, .news-other-title .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .news-other-title .field--name-field-subtitle, .news-other-title .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .news-other-title h2, .news-other-title .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .news-other-title .field--name-field-title, .news-other-title
    .paragraph--type--services .field--name-field-select-service .field__items h2,
    .paragraph--type--services .field--name-field-select-service .field__items .news-other-title h2, .news-other-title .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .news-other-title .field--name-field-title, .news-other-title .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .news-other-title .field--name-field-name, .news-other-title .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .news-other-title p, .news-other-title
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .news-other-title p {
      margin-bottom: 15px;
      width: 80%; }
      @media screen and (max-width: 47.9375em) {
        .news-other-title h4, .news-other-title footer h2, footer .news-other-title h2, .news-other-title footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .news-other-title .field--name-field-title, .news-other-title .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .news-other-title .field--name-field-title, .news-other-title .block-views-blocknews-archive-news-archive > h2, .news-other-title .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .news-other-title .block-views-blocknews-archive-news-archive > .field--name-field-title, .news-other-title .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .news-other-title .field--name-field-subtitle, .news-other-title .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .news-other-title .field--name-field-subtitle, .news-other-title .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .news-other-title h2, .news-other-title .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .news-other-title .field--name-field-title, .news-other-title
        .paragraph--type--services .field--name-field-select-service .field__items h2,
        .paragraph--type--services .field--name-field-select-service .field__items .news-other-title h2, .news-other-title .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .news-other-title .field--name-field-title, .news-other-title .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .news-other-title .field--name-field-name, .news-other-title .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .news-other-title p, .news-other-title
        .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
        .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .news-other-title p {
          width: 100%;
          -webkit-box-ordinal-group: 3;
              -ms-flex-order: 2;
                  order: 2; } }
  .news-other-date {
    font-size: 0.8125rem;
    color: #85a9c3; }
    @media print, screen and (min-width: 48em) {
      .news-other-date {
        position: absolute;
        top: 1px;
        right: 0; } }
    @media screen and (max-width: 47.9375em) {
      .news-other-date {
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1; } }
  .news-other-body {
    margin-bottom: 20px; }
    .news-other-body p {
      font-size: 1rem; }
  .news-other-more {
    display: inline-block;
    position: relative;
    line-height: 1;
    font-family: "Poppins", "Arial", sans-serif;
    text-align: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: solid transparent;
    border-width: 0 0 0 4px;
    background: transparent;
    margin-left: 0;
    font-weight: 700;
    -webkit-tap-highlight-color: transparent;
    text-transform: uppercase;
    color: #fff;
    background-color: transparent;
    font-weight: 400;
    padding: 0 0 0 9px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    position: relative;
    padding-left: 12px;
    transition: 0.5s;
    color: #1e3046;
    border-color: #1e3046; }
    [data-whatinput='mouse'] .news-other-more {
      outline: 0; }
    @media print, screen and (min-width: 48em) {
      .news-other-more {
        border-left-width: 6px; } }
    @media print, screen and (min-width: 48em) {
      .news-other-more {
        padding: 0 0 0 18px;
        font-size: 0.875rem; } }
    .news-other-more:after {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .news-other-more {
        padding-left: 25px; } }
    .news-other-more::after {
      position: absolute;
      display: inline-block;
      vertical-align: middle;
      top: 50%;
      right: -20px;
      margin-top: -1px;
      font-size: 1.25rem;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: 0.5s; }
      @media print, screen and (min-width: 48em) {
        .news-other-more::after {
          right: -23px;
          font-size: 1.4375rem; } }
    @media print, screen and (min-width: 64em) {
      .news-other-more:hover {
        padding-left: 18px;
        padding-right: 25px; }
        .news-other-more:hover::after {
          right: 0; } }
    .news-other-more:hover, .news-other-more:focus, .news-other-more:active {
      outline: none;
      cursor: pointer;
      text-decoration: none;
      color: transparent;
      background-color: transparent; }
    .news-other-more:hover, .news-other-more:active, .news-other-more:focus {
      color: #1e3046;
      border-color: #1e3046; }

.airports-location {
  margin-bottom: 15px; }
  @media print, screen and (min-width: 48em) {
    .airports-location {
      margin-bottom: 85px; } }
  .airports-location .airports-group-title {
    border-bottom: 2px solid #e5e5e5; }
  .airports-location .month-archive-content,
  .airports-location .airport-location-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem; }
    .airports-location .month-archive-content > .views-row,
    .airports-location .airport-location-content > .views-row {
      width: 100%;
      padding: 0.9375rem; }
      .airports-location .month-archive-content > .views-row:nth-of-type(1n),
      .airports-location .airport-location-content > .views-row:nth-of-type(1n) {
        clear: none; }
      .airports-location .month-archive-content > .views-row:nth-of-type(1n+1),
      .airports-location .airport-location-content > .views-row:nth-of-type(1n+1) {
        clear: both; }
      .airports-location .month-archive-content > .views-row:last-child,
      .airports-location .airport-location-content > .views-row:last-child {
        float: left; }
    @media (min-width: 481px) {
      .airports-location .month-archive-content,
      .airports-location .airport-location-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; }
        .airports-location .month-archive-content > .views-row,
        .airports-location .airport-location-content > .views-row {
          width: 50%;
          padding: 0.9375rem; }
          .airports-location .month-archive-content > .views-row:nth-of-type(1n),
          .airports-location .airport-location-content > .views-row:nth-of-type(1n) {
            clear: none; }
          .airports-location .month-archive-content > .views-row:nth-of-type(2n+1),
          .airports-location .airport-location-content > .views-row:nth-of-type(2n+1) {
            clear: both; }
          .airports-location .month-archive-content > .views-row:last-child,
          .airports-location .airport-location-content > .views-row:last-child {
            float: left; } }
    @media print, screen and (min-width: 48em) {
      .airports-location .month-archive-content,
      .airports-location .airport-location-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        margin-left: -1.375rem;
        margin-right: -1.375rem; }
        .airports-location .month-archive-content > .views-row,
        .airports-location .airport-location-content > .views-row {
          width: 33.33333%;
          padding: 1.375rem; }
          .airports-location .month-archive-content > .views-row:nth-of-type(1n),
          .airports-location .airport-location-content > .views-row:nth-of-type(1n) {
            clear: none; }
          .airports-location .month-archive-content > .views-row:nth-of-type(3n+1),
          .airports-location .airport-location-content > .views-row:nth-of-type(3n+1) {
            clear: both; }
          .airports-location .month-archive-content > .views-row:last-child,
          .airports-location .airport-location-content > .views-row:last-child {
            float: left; } }
    @media print, screen and (min-width: 64em) {
      .airports-location .month-archive-content,
      .airports-location .airport-location-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        margin-left: -2.0625rem;
        margin-right: -2.0625rem; }
        .airports-location .month-archive-content > .views-row,
        .airports-location .airport-location-content > .views-row {
          width: 25%;
          padding: 2.0625rem; }
          .airports-location .month-archive-content > .views-row:nth-of-type(1n),
          .airports-location .airport-location-content > .views-row:nth-of-type(1n) {
            clear: none; }
          .airports-location .month-archive-content > .views-row:nth-of-type(4n+1),
          .airports-location .airport-location-content > .views-row:nth-of-type(4n+1) {
            clear: both; }
          .airports-location .month-archive-content > .views-row:last-child,
          .airports-location .airport-location-content > .views-row:last-child {
            float: left; } }
    .airports-location .month-archive-content .views-row,
    .airports-location .airport-location-content .views-row {
      padding-top: 0;
      padding-bottom: 0;
      margin-bottom: 35px; }
      .airports-location .month-archive-content .views-row > .node,
      .airports-location .airport-location-content .views-row > .node {
        padding: 0 14px 30px 4px;
        border-bottom: 1px solid #e5e5e5; }
      .airports-location .month-archive-content .views-row > .airport-contact-info,
      .airports-location .airport-location-content .views-row > .airport-contact-info {
        border-bottom: 1px solid #e5e5e5; }
      @media screen and (max-width: 47.9375em) {
        .airports-location .month-archive-content .views-row:last-child > .node,
        .airports-location .airport-location-content .views-row:last-child > .node {
          border-bottom: 0; } }
      .airports-location .month-archive-content .views-row p,
      .airports-location .airport-location-content .views-row p {
        margin-bottom: 10px; }
  .airports-location h4, .airports-location footer h2, footer .airports-location h2, .airports-location footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .airports-location .field--name-field-title, .airports-location .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .airports-location .field--name-field-title, .airports-location .block-views-blocknews-archive-news-archive > h2, .airports-location .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .airports-location .block-views-blocknews-archive-news-archive > .field--name-field-title, .airports-location .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .airports-location .field--name-field-subtitle, .airports-location .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .airports-location .field--name-field-subtitle, .airports-location .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .airports-location h2, .airports-location .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .airports-location .field--name-field-title, .airports-location
  .paragraph--type--services .field--name-field-select-service .field__items h2,
  .paragraph--type--services .field--name-field-select-service .field__items .airports-location h2, .airports-location .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .airports-location .field--name-field-title, .airports-location .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .airports-location .field--name-field-name, .airports-location .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .airports-location p, .airports-location
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .airports-location p {
    color: #1e3046;
    margin-bottom: 25px; }
    @media print, screen and (min-width: 48em) {
      .airports-location h4, .airports-location footer h2, footer .airports-location h2, .airports-location footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .airports-location .field--name-field-title, .airports-location .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .airports-location .field--name-field-title, .airports-location .block-views-blocknews-archive-news-archive > h2, .airports-location .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .airports-location .block-views-blocknews-archive-news-archive > .field--name-field-title, .airports-location .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .airports-location .field--name-field-subtitle, .airports-location .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .airports-location .field--name-field-subtitle, .airports-location .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .airports-location h2, .airports-location .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .airports-location .field--name-field-title, .airports-location
      .paragraph--type--services .field--name-field-select-service .field__items h2,
      .paragraph--type--services .field--name-field-select-service .field__items .airports-location h2, .airports-location .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .airports-location .field--name-field-title, .airports-location .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .airports-location .field--name-field-name, .airports-location .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .airports-location p, .airports-location
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .airports-location p {
        min-height: 124px; } }
  .airports-location .views-field-field-airport-address {
    margin-bottom: 10px; }
    .airports-location .views-field-field-airport-address:before {
      content: ""; }
    @media (max-width: 480px) {
      .airports-location .views-field-field-airport-address p {
        display: inline-block; } }
  .airports-location .airport-contact-info:before {
    content: ""; }
  @media (max-width: 480px) {
    .airports-location .airport-contact-info .airport-contact-info p {
      display: inline-block; } }
  .airports-location .views-field-field-airport-address,
  .airports-location .airport-contact-info,
  .airports-location .views-field-field-airport-address + div {
    padding-left: 25px;
    position: relative; }
    .airports-location .views-field-field-airport-address::before,
    .airports-location .airport-contact-info::before,
    .airports-location .views-field-field-airport-address + div::before {
      position: absolute;
      top: 7px;
      left: 0;
      font-size: 1rem;
      color: #b0b7be; }

.slick-slider {
  position: relative; }
  .slick-slider .slick-list {
    overflow: hidden;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .slick-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .slick-slider .slick-slide {
    border: 0;
    outline: none; }
  .slick-slider .slick-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1; }
    .slick-slider .slick-arrow.slick-disabled {
      pointer-events: none;
      opacity: .7; }
  .slick-slider .slick-dots {
    margin: 0;
    position: absolute;
    left: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .slick-slider .slick-dots li {
      display: block;
      padding: 0 5px; }
      @media print, screen and (min-width: 48em) {
        .slick-slider .slick-dots li {
          padding: 0 10px; } }
      .slick-slider .slick-dots li button {
        font: 0 / 0 a;
        color: transparent;
        text-shadow: none;
        height: 8px;
        width: 8px;
        border-radius: 50%;
        background-color: rgba(255, 255, 255, 0.25);
        transition: background-color .3s linear;
        display: block; }
        .slick-slider .slick-dots li button:hover, .slick-slider .slick-dots li button:focus, .slick-slider .slick-dots li button:active {
          outline: none;
          cursor: pointer;
          background-color: rgba(255, 255, 255, 0.75); }
        @media print, screen and (min-width: 48em) {
          .slick-slider .slick-dots li button {
            height: 14px;
            width: 14px; } }
      .slick-slider .slick-dots li.slick-active button {
        background-color: #fff; }

@media screen and (max-width: 47.9375em) {
  .gm-bundled-control {
    display: none !important; } }

.paragraph--type--compound-slider {
  margin-bottom: 25px;
  position: relative;
  background: url("../images/PF-gradient.png") no-repeat left top/cover; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-slider {
      margin-bottom: 160px; } }
  .paragraph--type--compound-slider .shadow-bg {
    height: 100%;
    width: 100%;
    background: url("../images/PF-gradient.png") no-repeat left top/cover; }
  .paragraph--type--compound-slider > .container {
    width: 100%;
    max-width: inherit;
    padding: 0; }
  .paragraph--type--compound-slider .field__items {
    color: #1e3046; }
    .paragraph--type--compound-slider .field__items:not(.slick-initialized) .field__item {
      display: none; }
      .paragraph--type--compound-slider .field__items:not(.slick-initialized) .field__item:first-child {
        display: block; }
    .paragraph--type--compound-slider .field__items > .field__item,
    .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item {
      height: 435px;
      position: relative; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-slider .field__items > .field__item,
        .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item {
          height: 740px; } }
      .paragraph--type--compound-slider .field__items > .field__item > div,
      .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item > div {
        height: inherit;
        background-size: cover;
        background-position: center center; }
      .paragraph--type--compound-slider .field__items > .field__item .container,
      .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .container {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        max-width: 75rem;
        padding-left: 25px;
        padding-right: 25px;
        height: inherit;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding-top: 60px; }
        @media print, screen and (min-width: 64em) {
          .paragraph--type--compound-slider .field__items > .field__item .container,
          .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .container {
            padding-left: 15px;
            padding-right: 15px; } }
        @media print, screen and (min-width: 64em) {
          .paragraph--type--compound-slider .field__items > .field__item .container,
          .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .container {
            padding-left: 15px;
            padding-right: 15px; } }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-slider .field__items > .field__item .container,
          .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .container {
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            padding-top: 0; } }
      .paragraph--type--compound-slider .field__items > .field__item .field--name-field-subtitle,
      .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .field--name-field-subtitle {
        font-size: 0.875rem;
        text-transform: uppercase;
        margin-bottom: 25px; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-slider .field__items > .field__item .field--name-field-subtitle,
          .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .field--name-field-subtitle {
            font-size: 1rem;
            margin-bottom: 55px; } }
      .paragraph--type--compound-slider .field__items > .field__item .field--name-field-title,
      .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .field--name-field-title {
        height: 90px;
        margin-bottom: 20px;
        overflow: hidden;
        color: #1e3046; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-slider .field__items > .field__item .field--name-field-title,
          .paragraph--type--compound-slider .field__items .slick-slide > div > .field__item .field--name-field-title {
            height: 175px;
            margin-bottom: 42px; } }
  .paragraph--type--compound-slider .arrows-wrap,
  .paragraph--type--compound-slider .slick-arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .paragraph--type--compound-slider .arrows-wrap {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 75rem;
    padding-left: 25px;
    padding-right: 25px;
    position: absolute;
    top: 245px;
    right: 0;
    left: 28px;
    margin: 0 auto;
    padding-left: 60px; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-slider .arrows-wrap {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-slider .arrows-wrap {
        padding-left: 15px;
        padding-right: 15px; } }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-slider .arrows-wrap {
        padding-left: 116px;
        top: 585px;
        left: 43px; } }
  .paragraph--type--compound-slider .slick-arrow {
    position: static;
    text-align: left;
    -webkit-transform: none;
            transform: none;
    outline: none;
    color: #00224d;
    overflow: hidden; }
    .paragraph--type--compound-slider .slick-arrow span {
      text-transform: uppercase;
      line-height: 0.75rem; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-slider .slick-arrow span {
          line-height: 1.4375rem; } }
      .paragraph--type--compound-slider .slick-arrow span:not(.icon-arrow) {
        position: absolute;
        top: 10px;
        left: 0;
        padding: 0 10px 0 20px;
        border-left: 3px solid #00224d;
        opacity: 0;
        pointer-events: none; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-slider .slick-arrow span:not(.icon-arrow) {
            padding: 0 22px 0 40px;
            border-left-width: 6px; } }
  .paragraph--type--compound-slider .icon-arrow {
    font-size: 2rem;
    opacity: .4;
    cursor: pointer;
    transition: opacity .2s linear; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-slider .icon-arrow {
        font-size: 2.625rem; } }
    @media (min-width: 1025px) {
      .paragraph--type--compound-slider .icon-arrow:hover {
        opacity: 1; }
        .paragraph--type--compound-slider .icon-arrow:hover + span:not(.icon-arrow) {
          opacity: 1; } }
  .paragraph--type--compound-slider .slick-next .icon-arrow {
    margin-left: -3px; }
    .paragraph--type--compound-slider .slick-next .icon-arrow:before {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-slider .slick-next .icon-arrow {
        margin-left: -7px; } }
  .paragraph--type--compound-slider .slick-next span:not(.icon-arrow) {
    opacity: 1; }
  .paragraph--type--compound-slider .slick-prev .icon-arrow {
    margin-right: -3px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
    .paragraph--type--compound-slider .slick-prev .icon-arrow:before {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-slider .slick-prev .icon-arrow {
        margin-right: -7px; } }
  .paragraph--type--compound-slider .slick-dots {
    bottom: 25px; }
    .paragraph--type--compound-slider .slick-dots li button {
      width: 15px;
      height: 15px;
      background-color: rgba(30, 53, 95, 0.25); }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-slider .slick-dots li button {
          width: 20px;
          height: 20px; } }
      .paragraph--type--compound-slider .slick-dots li button:focus, .paragraph--type--compound-slider .slick-dots li button:active, .paragraph--type--compound-slider .slick-dots li button:hover {
        background-color: rgba(30, 53, 95, 0.5); }
    .paragraph--type--compound-slider .slick-dots li.slick-active button {
      background-color: rgba(30, 53, 95, 0.75); }
  .paragraph--type--compound-slider .paragraph--type--simple-slide {
    height: inherit; }

.paragraph--type--compound-cta-section {
  margin-bottom: 50px;
  margin-top: 50px; }
  .paragraph--type--compound-cta-section .content-wrap {
    position: relative;
    z-index: 3; }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--compound-cta-section.paragraph-style--image-left .content-wrap {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%;
      min-width: 470px;
      padding-left: calc(8.333333% + 15px); } }
  .paragraph--type--compound-cta-section .paragraph-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-cta-section .paragraph-content {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
  .paragraph--type--compound-cta-section .field--name-field-p-media-images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center; }
    .paragraph--type--compound-cta-section .field--name-field-p-media-images > .field__item {
      width: 100%; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-cta-section .field--name-field-p-media-images {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 0; } }
    .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image {
      position: relative;
      overflow: hidden;
      width: 100%; }
      @media screen and (max-width: 63.9375em) {
        .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner > .container > div {
          margin: 0 0 1px 1px; } }
      .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner::after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        line-height: 0;
        border-style: solid;
        z-index: 2; }
        @media screen and (max-width: 63.9375em) {
          .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner::after {
            left: -19px;
            bottom: -2px;
            border-width: 182px 0 0 182px;
            border-color: transparent transparent transparent #fff; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner--top-right::after {
          top: 0;
          right: 0;
          border-width: 0 184px 147px 0;
          border-color: transparent #fff transparent transparent; } }
      .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner--top-left::after {
        display: block; }
        @media print, screen and (min-width: 64em) {
          .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner--top-left::after {
            top: 0;
            left: 0;
            border-width: 147px 184px 0 0;
            border-color: #fff transparent transparent transparent; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner--bottom-right::after {
          right: 0;
          bottom: 0;
          border-width: 0 0 184px 147px;
          border-color: transparent transparent #fff transparent; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image.image-corner--bottom-left::after {
          left: 0;
          bottom: 0;
          border-width: 184px 0 0 147px;
          border-color: transparent transparent transparent #fff; } }
      .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image img {
        width: 100%;
        height: auto; }
      @media screen and (max-width: 47.9375em) {
        .paragraph--type--compound-cta-section .field--name-field-p-media-images .paragraph--type--simple-media-image:not(.image-corner) {
          margin-bottom: 45px; } }
  .paragraph--type--compound-cta-section .field--name-field-title,
  .paragraph--type--compound-cta-section .field--name-field-subtitle {
    color: #00224d; }
  .paragraph--type--compound-cta-section .field--name-field-title {
    margin-bottom: 25px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-cta-section .field--name-field-title {
        margin-bottom: 60px; } }
    @media screen and (max-width: 47.9375em) {
      .paragraph--type--compound-cta-section .field--name-field-title {
        width: 150px;
        margin-top: -25px; } }
  .paragraph--type--compound-cta-section .field--name-field-subtitle {
    margin-bottom: 30px; }
  .paragraph--type--compound-cta-section .field--name-field-intro-text p {
    margin-bottom: 18px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-cta-section .field--name-field-intro-text p {
        margin-bottom: 35px; } }
    .paragraph--type--compound-cta-section .field--name-field-intro-text p:last-child {
      margin-bottom: 0; }
  .paragraph--type--compound-cta-section .field--name-field-link {
    line-height: 1;
    margin-top: 18px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-cta-section .field--name-field-link {
        margin-top: 35px; } }
    .paragraph--type--compound-cta-section .field--name-field-link a {
      display: inline-block;
      position: relative;
      line-height: 1;
      font-family: "Poppins", "Arial", sans-serif;
      text-align: center;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      border: solid transparent;
      border-width: 0 0 0 4px;
      background: transparent;
      margin-left: 0;
      font-weight: 700;
      -webkit-tap-highlight-color: transparent;
      text-transform: uppercase;
      color: #fff;
      background-color: transparent;
      font-weight: 400;
      padding: 0 0 0 9px;
      font-size: 0.75rem;
      line-height: 1.25rem;
      text-transform: uppercase;
      position: relative;
      padding-left: 12px;
      transition: 0.5s;
      color: #1e3046;
      border-color: #1e3046; }
      [data-whatinput='mouse'] .paragraph--type--compound-cta-section .field--name-field-link a {
        outline: 0; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-cta-section .field--name-field-link a {
          border-left-width: 6px; } }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-cta-section .field--name-field-link a {
          padding: 0 0 0 18px;
          font-size: 0.875rem; } }
      .paragraph--type--compound-cta-section .field--name-field-link a:after {
        content: ""; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-cta-section .field--name-field-link a {
          padding-left: 25px; } }
      .paragraph--type--compound-cta-section .field--name-field-link a::after {
        position: absolute;
        display: inline-block;
        vertical-align: middle;
        top: 50%;
        right: -20px;
        margin-top: -1px;
        font-size: 1.25rem;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        transition: 0.5s; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-cta-section .field--name-field-link a::after {
            right: -23px;
            font-size: 1.4375rem; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-cta-section .field--name-field-link a:hover {
          padding-left: 18px;
          padding-right: 25px; }
          .paragraph--type--compound-cta-section .field--name-field-link a:hover::after {
            right: 0; } }
      .paragraph--type--compound-cta-section .field--name-field-link a:hover, .paragraph--type--compound-cta-section .field--name-field-link a:focus, .paragraph--type--compound-cta-section .field--name-field-link a:active {
        outline: none;
        cursor: pointer;
        text-decoration: none;
        color: transparent;
        background-color: transparent; }
      .paragraph--type--compound-cta-section .field--name-field-link a:hover, .paragraph--type--compound-cta-section .field--name-field-link a:active, .paragraph--type--compound-cta-section .field--name-field-link a:focus {
        color: #1e3046;
        border-color: #1e3046; }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--compound-cta-section.paragraph-style--image-right .field--name-field-p-media-images {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; }
      .paragraph--type--compound-cta-section.paragraph-style--image-right .field--name-field-p-media-images .paragraph--type--simple-media-image {
        position: relative; } }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--compound-cta-section.paragraph-style--image-right .content-wrap {
      padding-right: calc(8.333333% + 15px);
      padding-left: 0; } }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--compound-cta-section.paragraph-style--image-right .paragraph--type--compound-multiple-images {
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1; } }

.paragraph--type--simple-cta.paragraph--view-mode--preview .field--name-field-intro-text a, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text a {
  border-bottom: 1px solid #1e3046; }
  .paragraph--type--simple-cta.paragraph--view-mode--preview .field--name-field-intro-text a:hover, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text a:hover {
    border-bottom-color: transparent; }

.paragraph--type--simple-cta.paragraph--view-mode--preview .field--name-field-intro-text p:last-child, .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text p:last-child {
  margin-bottom: 0; }

.paragraph--type--simple-cta.paragraph--view-mode--preview {
  margin-bottom: 50px; }
  .paragraph--type--simple-cta.paragraph--view-mode--preview p {
    margin-bottom: 18px; }
    .paragraph--type--simple-cta.paragraph--view-mode--preview p:last-child {
      margin-bottom: 0; }

.paragraph--type--simple-cta.paragraph--view-mode--default {
  color: #1e3046;
  padding-top: 40px;
  margin-bottom: 30px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--simple-cta.paragraph--view-mode--default {
      margin-bottom: 100px; } }
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title {
    position: relative;
    margin-bottom: 40px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title {
        margin-bottom: 60px; } }
    .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title .field__item {
      position: relative;
      display: inline-block;
      z-index: 2; }
    .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title.title-with-line {
      padding-right: 15px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title.title-with-line {
          padding-right: 30px; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title.title-with-line {
          padding-right: 66px; } }
      .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title.title-with-line::after {
        content: '';
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
        max-width: 100%;
        display: block;
        width: 100%;
        height: 1px;
        background: #e5e5e5;
        margin-left: 10px; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title.title-with-line::after {
            margin-left: 20px; } }
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle {
    margin-bottom: 25px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle {
        margin-bottom: 35px; } }
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text a {
    border-bottom: 1px solid #1e3046; }
    .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text a:hover {
      border-bottom-color: transparent; }
  .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-intro-text p:last-child {
    margin-bottom: 0; }

.paragraph--type--simple-cta .field--name-field-link {
  margin-top: 18px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--simple-cta .field--name-field-link {
      margin-top: 35px; } }
  .paragraph--type--simple-cta .field--name-field-link a {
    display: inline-block;
    position: relative;
    line-height: 1;
    font-family: "Poppins", "Arial", sans-serif;
    text-align: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: solid transparent;
    border-width: 0 0 0 4px;
    background: transparent;
    margin-left: 0;
    font-weight: 700;
    -webkit-tap-highlight-color: transparent;
    text-transform: uppercase;
    color: #fff;
    background-color: transparent;
    font-weight: 400;
    padding: 0 0 0 9px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    position: relative;
    padding-left: 12px;
    transition: 0.5s;
    color: #1e3046;
    border-color: #1e3046; }
    [data-whatinput='mouse'] .paragraph--type--simple-cta .field--name-field-link a {
      outline: 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--simple-cta .field--name-field-link a {
        border-left-width: 6px; } }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--simple-cta .field--name-field-link a {
        padding: 0 0 0 18px;
        font-size: 0.875rem; } }
    .paragraph--type--simple-cta .field--name-field-link a:after {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--simple-cta .field--name-field-link a {
        padding-left: 25px; } }
    .paragraph--type--simple-cta .field--name-field-link a::after {
      position: absolute;
      display: inline-block;
      vertical-align: middle;
      top: 50%;
      right: -20px;
      margin-top: -1px;
      font-size: 1.25rem;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: 0.5s; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--simple-cta .field--name-field-link a::after {
          right: -23px;
          font-size: 1.4375rem; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--simple-cta .field--name-field-link a:hover {
        padding-left: 18px;
        padding-right: 25px; }
        .paragraph--type--simple-cta .field--name-field-link a:hover::after {
          right: 0; } }
    .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph--type--simple-cta .field--name-field-link a:focus, .paragraph--type--simple-cta .field--name-field-link a:active {
      outline: none;
      cursor: pointer;
      text-decoration: none;
      color: transparent;
      background-color: transparent; }
    .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph--type--simple-cta .field--name-field-link a:active, .paragraph--type--simple-cta .field--name-field-link a:focus {
      color: #1e3046;
      border-color: #1e3046; }

.paragraph--type--simple-cta iframe {
  width: 100%; }

@media screen and (max-width: 47.9375em) {
  .paragraph--type--compound-multiple-images {
    margin-bottom: 50px; } }

.paragraph--type--compound-multiple-images .field--name-field-p-images .field__items,
.paragraph--type--compound-multiple-images .field--name-field-p-images.field__items {
  margin: -55px -10px 0 -20px;
  padding: 55px 0 0 20px;
  background: url("../images/join-us-small-bg.png") no-repeat 0 0; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items,
    .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items {
      margin: 0 -1px;
      padding: 125px 27px 0 85px;
      margin-left: 4px;
      white-space: nowrap;
      background: url("../images/join-us-bg.png") no-repeat 0 0/contain; } }
  @media screen and (max-width: 47.9375em) {
    .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items,
    .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items > div,
  .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items > div {
    display: inline-block;
    vertical-align: top; }
    @media screen and (max-width: 47.9375em) {
      .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items > div,
      .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items > div {
        max-width: 89px;
        padding: 0 1px; }
        .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items > div img,
        .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items > div img {
          width: 100%; }
        .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items > div:last-child,
        .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items > div:last-child {
          display: none; } }
    @media (min-width: 1024px) and (max-width: 1199px) {
      .paragraph--type--compound-multiple-images .field--name-field-p-images .field__items > div:last-child,
      .paragraph--type--compound-multiple-images .field--name-field-p-images.field__items > div:last-child {
        display: none; } }

.paragraph-style--dark-blue {
  background-color: #1e3046; }
  .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner::after {
    border-color: transparent transparent transparent #1e3046; }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-right::after {
      border-color: transparent #1e3046 transparent transparent; } }
  .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-left::after {
    display: block; }
    @media print, screen and (min-width: 64em) {
      .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-left::after {
        border-color: #1e3046 transparent transparent transparent; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--bottom-right::after {
      border-color: transparent transparent #1e3046 transparent; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--dark-blue .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--bottom-left::after {
      border-color: transparent transparent transparent #1e3046; } }

.paragraph-style--grey {
  background-color: #aab0ba; }
  .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner::after {
    border-color: transparent transparent transparent #aab0ba; }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-right::after {
      border-color: transparent #aab0ba transparent transparent; } }
  .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-left::after {
    display: block; }
    @media print, screen and (min-width: 64em) {
      .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--top-left::after {
        border-color: #aab0ba transparent transparent transparent; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--bottom-right::after {
      border-color: transparent transparent #aab0ba transparent; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--grey .paragraph--type--compound-cta-section .paragraph--type--simple-media-image.image-corner--bottom-left::after {
      border-color: transparent transparent transparent #aab0ba; } }

.paragraph-style--color {
  padding: 1px 0 50px; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--color {
      padding: 50px 0 100px; } }
  .paragraph-style--color .paragraph--type--compound-cta-section {
    margin: 50px 0 0; }
    .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a {
      display: inline-block;
      position: relative;
      line-height: 1;
      font-family: "Poppins", "Arial", sans-serif;
      text-align: center;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      border: solid transparent;
      border-width: 0 0 0 4px;
      background: transparent;
      margin-left: 0;
      font-weight: 700;
      -webkit-tap-highlight-color: transparent;
      text-transform: uppercase;
      color: #fff;
      background-color: transparent;
      font-weight: 400;
      padding: 0 0 0 9px;
      font-size: 0.75rem;
      line-height: 1.25rem;
      text-transform: uppercase;
      position: relative;
      padding-left: 12px;
      transition: 0.5s;
      color: #fff;
      border-color: #fff; }
      [data-whatinput='mouse'] .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a {
        outline: 0; }
      @media print, screen and (min-width: 48em) {
        .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a {
          border-left-width: 6px; } }
      @media print, screen and (min-width: 48em) {
        .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a {
          padding: 0 0 0 18px;
          font-size: 0.875rem; } }
      .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:after {
        content: ""; }
      @media print, screen and (min-width: 48em) {
        .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a {
          padding-left: 25px; } }
      .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a::after {
        position: absolute;
        display: inline-block;
        vertical-align: middle;
        top: 50%;
        right: -20px;
        margin-top: -1px;
        font-size: 1.25rem;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        transition: 0.5s; }
        @media print, screen and (min-width: 48em) {
          .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a::after {
            right: -23px;
            font-size: 1.4375rem; } }
      @media print, screen and (min-width: 64em) {
        .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:hover {
          padding-left: 18px;
          padding-right: 25px; }
          .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:hover::after {
            right: 0; } }
      .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:hover, .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:focus, .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:active {
        outline: none;
        cursor: pointer;
        text-decoration: none;
        color: transparent;
        background-color: transparent; }
      .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:hover, .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:active, .paragraph-style--color .paragraph--type--compound-cta-section .field--name-field-link a:focus {
        color: #fff;
        border-color: #fff; }

.paragraph-style--empty-content {
  height: 175px; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--empty-content {
      height: 350px; } }

.paragraph-style--bg-image {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover !important; }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--bg-image {
      background-size: 100% auto; } }
  @media screen and (max-width: 63.9375em) {
    .paragraph-style--bg-image {
      background-position: center center !important; } }
  .paragraph-style--bg-image .paragraph--type--simple-cta.paragraph--view-mode--default {
    margin-bottom: 0;
    padding-bottom: 30px; }
    @media print, screen and (min-width: 48em) {
      .paragraph-style--bg-image .paragraph--type--simple-cta.paragraph--view-mode--default {
        padding-bottom: 100px; } }

.paragraph--type--services {
  padding: 45px 0 40px;
  margin-bottom: 25px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--services {
      padding-top: 65px;
      margin-bottom: 150px; } }
  .paragraph--type--services .field--name-field-title {
    color: #fff;
    margin-bottom: 35px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--services .field--name-field-title {
        margin-bottom: 95px; } }
  .paragraph--type--services .field--name-field-link a {
    display: inline-block;
    position: relative;
    line-height: 1;
    font-family: "Poppins", "Arial", sans-serif;
    text-align: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: solid transparent;
    border-width: 0 0 0 4px;
    background: transparent;
    margin-left: 0;
    font-weight: 700;
    -webkit-tap-highlight-color: transparent;
    text-transform: uppercase;
    color: #fff;
    background-color: transparent;
    font-weight: 400;
    padding: 0 0 0 9px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    position: relative;
    padding-left: 12px;
    transition: 0.5s;
    color: #fff;
    border-color: #fff;
    margin-top: 15px; }
    [data-whatinput='mouse'] .paragraph--type--services .field--name-field-link a {
      outline: 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--services .field--name-field-link a {
        border-left-width: 6px; } }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--services .field--name-field-link a {
        padding: 0 0 0 18px;
        font-size: 0.875rem; } }
    .paragraph--type--services .field--name-field-link a:after {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--services .field--name-field-link a {
        padding-left: 25px; } }
    .paragraph--type--services .field--name-field-link a::after {
      position: absolute;
      display: inline-block;
      vertical-align: middle;
      top: 50%;
      right: -20px;
      margin-top: -1px;
      font-size: 1.25rem;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: 0.5s; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--services .field--name-field-link a::after {
          right: -23px;
          font-size: 1.4375rem; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--services .field--name-field-link a:hover {
        padding-left: 18px;
        padding-right: 25px; }
        .paragraph--type--services .field--name-field-link a:hover::after {
          right: 0; } }
    .paragraph--type--services .field--name-field-link a:hover, .paragraph--type--services .field--name-field-link a:focus, .paragraph--type--services .field--name-field-link a:active {
      outline: none;
      cursor: pointer;
      text-decoration: none;
      color: transparent;
      background-color: transparent; }
    .paragraph--type--services .field--name-field-link a:hover, .paragraph--type--services .field--name-field-link a:active, .paragraph--type--services .field--name-field-link a:focus {
      color: #fff;
      border-color: #fff; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--services .field--name-field-link a {
        margin-top: 30px; } }
  .paragraph--type--services .field--name-field-select-service.field__items,
  .paragraph--type--services .field--name-field-select-service .field__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    .paragraph--type--services .field--name-field-select-service.field__items > .field__item,
    .paragraph--type--services .field--name-field-select-service .field__items > .field__item {
      width: 50%;
      padding: 0.625rem; }
      .paragraph--type--services .field--name-field-select-service.field__items > .field__item:nth-of-type(1n),
      .paragraph--type--services .field--name-field-select-service .field__items > .field__item:nth-of-type(1n) {
        clear: none; }
      .paragraph--type--services .field--name-field-select-service.field__items > .field__item:nth-of-type(2n+1),
      .paragraph--type--services .field--name-field-select-service .field__items > .field__item:nth-of-type(2n+1) {
        clear: both; }
      .paragraph--type--services .field--name-field-select-service.field__items > .field__item:last-child,
      .paragraph--type--services .field--name-field-select-service .field__items > .field__item:last-child {
        float: left; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--services .field--name-field-select-service.field__items,
      .paragraph--type--services .field--name-field-select-service .field__items {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        margin-left: -0.9375rem;
        margin-right: -0.9375rem;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        flex-wrap: wrap; }
        .paragraph--type--services .field--name-field-select-service.field__items > .field__item,
        .paragraph--type--services .field--name-field-select-service .field__items > .field__item {
          width: 33.33333%;
          padding: 0.9375rem; }
          .paragraph--type--services .field--name-field-select-service.field__items > .field__item:nth-of-type(1n),
          .paragraph--type--services .field--name-field-select-service .field__items > .field__item:nth-of-type(1n) {
            clear: none; }
          .paragraph--type--services .field--name-field-select-service.field__items > .field__item:nth-of-type(3n+1),
          .paragraph--type--services .field--name-field-select-service .field__items > .field__item:nth-of-type(3n+1) {
            clear: both; }
          .paragraph--type--services .field--name-field-select-service.field__items > .field__item:last-child,
          .paragraph--type--services .field--name-field-select-service .field__items > .field__item:last-child {
            float: left; } }
    .paragraph--type--services .field--name-field-select-service.field__items > .field__item,
    .paragraph--type--services .field--name-field-select-service .field__items > .field__item {
      padding-top: 0;
      padding-bottom: 0;
      margin-bottom: 30px; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--services .field--name-field-select-service.field__items > .field__item,
        .paragraph--type--services .field--name-field-select-service .field__items > .field__item {
          margin-bottom: 65px; } }
    .paragraph--type--services .field--name-field-select-service.field__items .node--type-services,
    .paragraph--type--services .field--name-field-select-service .field__items .node--type-services {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
    .paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title {
      min-width: 85px;
      max-width: 85px;
      min-height: 40px;
      margin-bottom: 0;
      padding-left: 10px;
      border-left: 2px solid #d9ecfa;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      transition: all .2s linear; }
      @media screen and (max-width: 47.9375em) {
        .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
        .paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title {
          font-size: 0.75rem; } }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title,
        .paragraph--type--services .field--name-field-select-service .field__items h2, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title {
          min-height: 80px;
          min-width: 210px;
          max-width: 210px;
          padding-left: 20px;
          border-left-width: 3px; } }
      .paragraph--type--services .field--name-field-select-service.field__items h2:hover, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title:hover,
      .paragraph--type--services .field--name-field-select-service .field__items h2:hover, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title:hover {
        background: #d9ecfa; }
        .paragraph--type--services .field--name-field-select-service.field__items h2:hover a, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title:hover a,
        .paragraph--type--services .field--name-field-select-service .field__items h2:hover a, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title:hover a {
          color: #1e3046; }
      .paragraph--type--services .field--name-field-select-service.field__items h2 a, .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title a,
      .paragraph--type--services .field--name-field-select-service .field__items h2 a, .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title a {
        color: #fff; }
    .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-service-logo,
    .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-service-logo {
      margin-right: 5px; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-service-logo,
        .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-service-logo {
          margin-right: 15px; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-service-logo,
        .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-service-logo {
          margin-right: 30px; } }
      .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-service-logo img,
      .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-service-logo img {
        min-width: 32px;
        height: 32px; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-service-logo img,
          .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-service-logo img {
            min-width: 75px;
            height: 75px; } }

.paragraph--type--news-section {
  margin-bottom: 40px; }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--news-section {
      margin-bottom: 150px; } }
  .paragraph--type--news-section .news-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 22px; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--news-section .news-header {
        -webkit-box-align: baseline;
            -ms-flex-align: baseline;
                align-items: baseline;
        margin-bottom: 45px; } }
    .paragraph--type--news-section .news-header .field--name-field-title {
      color: #1e3046;
      line-height: 1; }
    .paragraph--type--news-section .news-header .field--name-field-link {
      margin-right: 18px; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .news-header .field--name-field-link {
          min-width: 150px;
          margin-right: 0; } }
      .paragraph--type--news-section .news-header .field--name-field-link a {
        display: inline-block;
        position: relative;
        line-height: 1;
        font-family: "Poppins", "Arial", sans-serif;
        text-align: center;
        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;
        border: solid transparent;
        border-width: 0 0 0 4px;
        background: transparent;
        margin-left: 0;
        font-weight: 700;
        -webkit-tap-highlight-color: transparent;
        text-transform: uppercase;
        color: #fff;
        background-color: transparent;
        font-weight: 400;
        padding: 0 0 0 9px;
        font-size: 0.75rem;
        line-height: 1.25rem;
        text-transform: uppercase;
        position: relative;
        padding-left: 12px;
        transition: 0.5s;
        color: #1e3046;
        border-color: #1e3046; }
        [data-whatinput='mouse'] .paragraph--type--news-section .news-header .field--name-field-link a {
          outline: 0; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--news-section .news-header .field--name-field-link a {
            border-left-width: 6px; } }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--news-section .news-header .field--name-field-link a {
            padding: 0 0 0 18px;
            font-size: 0.875rem; } }
        .paragraph--type--news-section .news-header .field--name-field-link a:after {
          content: ""; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--news-section .news-header .field--name-field-link a {
            padding-left: 25px; } }
        .paragraph--type--news-section .news-header .field--name-field-link a::after {
          position: absolute;
          display: inline-block;
          vertical-align: middle;
          top: 50%;
          right: -20px;
          margin-top: -1px;
          font-size: 1.25rem;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          transition: 0.5s; }
          @media print, screen and (min-width: 48em) {
            .paragraph--type--news-section .news-header .field--name-field-link a::after {
              right: -23px;
              font-size: 1.4375rem; } }
        @media print, screen and (min-width: 64em) {
          .paragraph--type--news-section .news-header .field--name-field-link a:hover {
            padding-left: 18px;
            padding-right: 25px; }
            .paragraph--type--news-section .news-header .field--name-field-link a:hover::after {
              right: 0; } }
        .paragraph--type--news-section .news-header .field--name-field-link a:hover, .paragraph--type--news-section .news-header .field--name-field-link a:focus, .paragraph--type--news-section .news-header .field--name-field-link a:active {
          outline: none;
          cursor: pointer;
          text-decoration: none;
          color: transparent;
          background-color: transparent; }
        .paragraph--type--news-section .news-header .field--name-field-link a:hover, .paragraph--type--news-section .news-header .field--name-field-link a:active, .paragraph--type--news-section .news-header .field--name-field-link a:focus {
          color: #1e3046;
          border-color: #1e3046; }
  .paragraph--type--news-section .node {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--news-section .node {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--news-section .node .left,
      .paragraph--type--news-section .node .right {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%;
        max-width: 50%; } }
    @media screen and (max-width: 63.9375em) {
      .paragraph--type--news-section .node .left {
        margin-bottom: 22px; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--news-section .node .right {
        padding-left: calc(45px + 8.333333%); } }
    .paragraph--type--news-section .node .right .link-more {
      display: inline-block;
      position: relative;
      line-height: 1;
      font-family: "Poppins", "Arial", sans-serif;
      text-align: center;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      border: solid transparent;
      border-width: 0 0 0 4px;
      background: transparent;
      margin-left: 0;
      font-weight: 700;
      -webkit-tap-highlight-color: transparent;
      text-transform: uppercase;
      color: #fff;
      background-color: transparent;
      font-weight: 400;
      padding: 0 0 0 9px;
      font-size: 0.75rem;
      line-height: 1.25rem;
      text-transform: uppercase;
      position: relative;
      padding-left: 12px;
      transition: 0.5s;
      color: #1e3046;
      border-color: #1e3046; }
      [data-whatinput='mouse'] .paragraph--type--news-section .node .right .link-more {
        outline: 0; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .node .right .link-more {
          border-left-width: 6px; } }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .node .right .link-more {
          padding: 0 0 0 18px;
          font-size: 0.875rem; } }
      .paragraph--type--news-section .node .right .link-more:after {
        content: ""; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .node .right .link-more {
          padding-left: 25px; } }
      .paragraph--type--news-section .node .right .link-more::after {
        position: absolute;
        display: inline-block;
        vertical-align: middle;
        top: 50%;
        right: -20px;
        margin-top: -1px;
        font-size: 1.25rem;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        transition: 0.5s; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--news-section .node .right .link-more::after {
            right: -23px;
            font-size: 1.4375rem; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--news-section .node .right .link-more:hover {
          padding-left: 18px;
          padding-right: 25px; }
          .paragraph--type--news-section .node .right .link-more:hover::after {
            right: 0; } }
      .paragraph--type--news-section .node .right .link-more:hover, .paragraph--type--news-section .node .right .link-more:focus, .paragraph--type--news-section .node .right .link-more:active {
        outline: none;
        cursor: pointer;
        text-decoration: none;
        color: transparent;
        background-color: transparent; }
      .paragraph--type--news-section .node .right .link-more:hover, .paragraph--type--news-section .node .right .link-more:active, .paragraph--type--news-section .node .right .link-more:focus {
        color: #1e3046;
        border-color: #1e3046; }
    .paragraph--type--news-section .node .right h4, .paragraph--type--news-section .node .right footer h2, footer .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .block-views-blocknews-archive-news-archive > h2, .paragraph--type--news-section .node .right .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .paragraph--type--news-section .node .right .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .paragraph--type--news-section .node .right .field--name-field-subtitle, .paragraph--type--news-section .node .right .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .paragraph--type--news-section .node .right .field--name-field-subtitle, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right
    .paragraph--type--services .field--name-field-select-service .field__items h2,
    .paragraph--type--services .field--name-field-select-service .field__items .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .paragraph--type--news-section .node .right .field--name-field-name, .paragraph--type--news-section .node .right .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .paragraph--type--news-section .node .right p, .paragraph--type--news-section .node .right
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
    .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .paragraph--type--news-section .node .right p {
      margin-bottom: 15px;
      color: #1e3046; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .node .right h4, .paragraph--type--news-section .node .right footer h2, footer .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right footer .paragraph--type--services .field--name-field-title, footer .paragraph--type--services .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--services footer .field--name-field-title, .paragraph--type--services footer .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .block-views-blocknews-archive-news-archive > h2, .paragraph--type--news-section .node .right .paragraph--type--services .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--services .paragraph--type--news-section .node .right .block-views-blocknews-archive-news-archive > .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--compound-cta-section .field--name-field-subtitle, .paragraph--type--compound-cta-section .paragraph--type--news-section .node .right .field--name-field-subtitle, .paragraph--type--news-section .node .right .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-subtitle, .paragraph--type--simple-cta.paragraph--view-mode--default .paragraph--type--news-section .node .right .field--name-field-subtitle, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service.field__items h2, .paragraph--type--services .field--name-field-select-service.field__items .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service.field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service.field__items .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right
        .paragraph--type--services .field--name-field-select-service .field__items h2,
        .paragraph--type--services .field--name-field-select-service .field__items .paragraph--type--news-section .node .right h2, .paragraph--type--news-section .node .right .paragraph--type--services .field--name-field-select-service .field__items .field--name-field-title, .paragraph--type--services .field--name-field-select-service .field__items .paragraph--type--news-section .node .right .field--name-field-title, .paragraph--type--news-section .node .right .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name, .paragraph--type--compound-leadership-team .header-leadership .paragraph--type--news-section .node .right .field--name-field-name, .paragraph--type--news-section .node .right .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p, .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text .paragraph--type--news-section .node .right p, .paragraph--type--news-section .node .right
        .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
        .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text .paragraph--type--news-section .node .right p {
          margin-bottom: 30px; } }
    .paragraph--type--news-section .node .right .field--name-body {
      margin-bottom: 15px; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--news-section .node .right .field--name-body {
          margin-bottom: 45px; } }
      .paragraph--type--news-section .node .right .field--name-body p {
        margin-bottom: 0; }

.paragraph--type--compound-hero-banner {
  position: relative;
  min-height: 350px;
  height: 100%;
  overflow: hidden;
  margin-bottom: 25px;
  display: table;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-hero-banner {
      margin-bottom: 100px;
      min-height: 400px; } }
  .paragraph--type--compound-hero-banner .shadow-bg {
    height: 100%;
    width: 100%;
    background: url("../images/PF-gradient.png") no-repeat left top/cover; }
    .paragraph--type--compound-hero-banner .shadow-bg > div {
      min-height: 350px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-hero-banner .shadow-bg > div {
          min-height: inherit; } }
  .paragraph--type--compound-hero-banner .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .container {
        height: inherit; } }
  .paragraph--type--compound-hero-banner .content-wrap {
    max-width: 465px;
    padding: 25px 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .content-wrap {
        padding: 50px 0; } }
    .paragraph--type--compound-hero-banner .content-wrap p {
      font-weight: 200; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-hero-banner .content-wrap p {
          font-size: 1rem;
          margin-bottom: 30px; } }
      .paragraph--type--compound-hero-banner .content-wrap p:last-child {
        margin-bottom: 0; }
  .paragraph--type--compound-hero-banner .field--name-field-title {
    color: #1e3046;
    margin-bottom: 35px;
    position: relative;
    z-index: 2; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .field--name-field-title {
        margin-bottom: 50px; } }
  .paragraph--type--compound-hero-banner .field--name-field-button-link a {
    display: inline-block;
    position: relative;
    line-height: 1;
    font-family: "Poppins", "Arial", sans-serif;
    text-align: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: solid transparent;
    border-width: 0 0 0 4px;
    background: transparent;
    margin-left: 0;
    font-weight: 700;
    -webkit-tap-highlight-color: transparent;
    text-transform: uppercase;
    color: #fff;
    background-color: transparent;
    font-weight: 400;
    padding: 0 0 0 9px;
    font-size: 0.75rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    position: relative;
    padding-left: 12px;
    transition: 0.5s;
    color: #1e3046;
    border-color: #1e3046;
    margin-top: 18px; }
    [data-whatinput='mouse'] .paragraph--type--compound-hero-banner .field--name-field-button-link a {
      outline: 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .field--name-field-button-link a {
        border-left-width: 6px; } }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .field--name-field-button-link a {
        padding: 0 0 0 18px;
        font-size: 0.875rem; } }
    .paragraph--type--compound-hero-banner .field--name-field-button-link a:after {
      content: ""; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .field--name-field-button-link a {
        padding-left: 25px; } }
    .paragraph--type--compound-hero-banner .field--name-field-button-link a::after {
      position: absolute;
      display: inline-block;
      vertical-align: middle;
      top: 50%;
      right: -20px;
      margin-top: -1px;
      font-size: 1.25rem;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: 0.5s; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-hero-banner .field--name-field-button-link a::after {
          right: -23px;
          font-size: 1.4375rem; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-hero-banner .field--name-field-button-link a:hover {
        padding-left: 18px;
        padding-right: 25px; }
        .paragraph--type--compound-hero-banner .field--name-field-button-link a:hover::after {
          right: 0; } }
    .paragraph--type--compound-hero-banner .field--name-field-button-link a:hover, .paragraph--type--compound-hero-banner .field--name-field-button-link a:focus, .paragraph--type--compound-hero-banner .field--name-field-button-link a:active {
      outline: none;
      cursor: pointer;
      text-decoration: none;
      color: transparent;
      background-color: transparent; }
    .paragraph--type--compound-hero-banner .field--name-field-button-link a:hover, .paragraph--type--compound-hero-banner .field--name-field-button-link a:active, .paragraph--type--compound-hero-banner .field--name-field-button-link a:focus {
      color: #1e3046;
      border-color: #1e3046; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-hero-banner .field--name-field-button-link a {
        margin-top: 35px; } }
  .paragraph--type--compound-hero-banner .field--name-field-intro-text > * {
    color: #1e3046; }
    .paragraph--type--compound-hero-banner .field--name-field-intro-text > *:last-child {
      margin-bottom: 0; }
  @media screen and (max-width: 47.9375em) {
    .paragraph--type--compound-hero-banner .parallax-background {
      background-position: center center !important; } }

.field--name-field-p-hero-banner + .page-section-messages + .field--name-field-page-section .field__item:first-child .paragraph--type--simple-cta.paragraph--view-mode--default {
  margin-top: -40px; }

.field--name-field-p-hero-banner + .page-section-messages + .field--name-field-page-section .field__item:first-child .paragraph-style--bg-image .paragraph--type--simple-cta.paragraph--view-mode--default {
  margin-top: 0; }

.field--name-field-p-hero-banner + .page-section-messages + .field--name-field-page-section .field__item:last-child > .paragraph-style--color {
  margin-bottom: 0; }

.paragraph--type--compound-counters-box {
  margin-bottom: 55px;
  margin-top: -40px;
  overflow: hidden; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-counters-box {
      margin-top: -100px;
      margin-bottom: 145px; } }
  @media (max-width: 480px) {
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        width: 100%; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(1n) {
          clear: none; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(1n+1) {
          clear: both; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:last-child {
          float: left; } }
  @media (min-width: 481px) and (max-width: 767px) {
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        width: 50%; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(1n) {
          clear: none; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(2n+1) {
          clear: both; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:last-child {
          float: left; } }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        width: 50%; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(1n) {
          clear: none; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(2n+1) {
          clear: both; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:last-child {
          float: left; } }
  @media print, screen and (min-width: 64em) {
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        width: 25%; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(1n) {
          clear: none; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:nth-of-type(4n+1) {
          clear: both; }
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item:last-child {
          float: left; } }
  .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
    position: relative;
    padding: 25px 0 1px 36px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        padding: 70px 0 25px 36px; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item {
        padding-bottom: 0; } }
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item::before {
      content: '';
      position: absolute;
      background: #e5e5e5;
      height: auto;
      width: 1px;
      top: -4px;
      bottom: 20px;
      left: 1px; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items > .field__item::before {
          top: 0;
          left: 2px; } }
  .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-title {
    font-weight: 500;
    font-size: 0.875rem;
    text-transform: uppercase; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-title {
        font-size: 1rem;
        margin-bottom: 15px; } }
  .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter {
    position: relative;
    color: #1e3046;
    margin-bottom: 0; }
    @media screen and (max-width: 47.9375em) {
      .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter {
        font-size: 2.25rem; } }
    .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter::before {
      content: '';
      position: absolute;
      width: 4px;
      height: 23px;
      bottom: 4px;
      left: -36px;
      background: #1e3046; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter::before {
          width: 6px;
          height: 33px;
          bottom: 12px; } }

.paragraph--type--compound-webform {
  margin-bottom: 50px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-webform {
      margin-bottom: 140px; } }
  .paragraph--type--compound-webform .webform-submission-contact-form {
    margin-top: 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-webform .webform-submission-contact-form {
        margin-top: -35px; } }
  .paragraph--type--compound-webform form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .paragraph--type--compound-webform form > .form-item {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-webform form > .form-item {
          -webkit-box-flex: 0;
              -ms-flex: 0 0 50%;
                  flex: 0 0 50%;
          max-width: 50%;
          padding-right: 30px; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-webform form > .form-item {
          padding-right: 60px; } }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-webform form > .form-item:nth-child(even) {
          padding-left: 30px;
          padding-right: 0; } }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-webform form > .form-item:nth-child(even) {
          padding-right: 60px; } }
    .paragraph--type--compound-webform form > .form-actions .submit-btn {
      border: none;
      color: #fff;
      background: #1e3046;
      text-align: center;
      padding: 0; }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-webform form > .form-actions .submit-btn {
          margin-right: 60px; } }
      .paragraph--type--compound-webform form > .form-actions .submit-btn input {
        height: 45px;
        padding: 0 44px 0 34px;
        border: 1px solid #1e3046;
        transition-duration: 0.3s;
        transition-property: color, background-color; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-webform form > .form-actions .submit-btn input {
            padding: 0 54px 0 44px; } }
      .paragraph--type--compound-webform form > .form-actions .submit-btn::after {
        right: 20px;
        transition-duration: 0.3s;
        transition-property: color, background-color; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-webform form > .form-actions .submit-btn::after {
            right: 30px; } }
      .paragraph--type--compound-webform form > .form-actions .submit-btn:hover input {
        background: #fff;
        color: #1e3046; }
      .paragraph--type--compound-webform form > .form-actions .submit-btn:hover::after {
        color: #1e3046; }
    .paragraph--type--compound-webform form > fieldset.form-item {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto;
      max-width: inherit;
      padding-right: 0;
      padding-left: 0; }
      @media print, screen and (min-width: 48em) {
        .paragraph--type--compound-webform form > fieldset.form-item {
          margin-top: 80px; } }
      .paragraph--type--compound-webform form > fieldset.form-item .fieldset-legend {
        color: #1e3046;
        font-size: 0.875rem;
        font-weight: 500;
        line-height: 1.875rem;
        padding: 0;
        margin-bottom: 10px;
        text-transform: uppercase;
        display: block;
        margin-bottom: 20px;
        color: #1e3046; }
        @media print, screen and (min-width: 48em) {
          .paragraph--type--compound-webform form > fieldset.form-item .fieldset-legend {
            font-size: 1rem; } }
      .paragraph--type--compound-webform form > fieldset.form-item .fieldset-wrapper > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        @media screen and (max-width: 47.9375em) {
          .paragraph--type--compound-webform form > fieldset.form-item .fieldset-wrapper > div {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column; } }
        .paragraph--type--compound-webform form > fieldset.form-item .fieldset-wrapper > div > div + div {
          margin-top: 15px; }
          @media print, screen and (min-width: 48em) {
            .paragraph--type--compound-webform form > fieldset.form-item .fieldset-wrapper > div > div + div {
              margin: 0 0 0 40px; } }
    .paragraph--type--compound-webform form > fieldset.form-item:nth-child(even) {
      padding-left: 0; }
    .paragraph--type--compound-webform form > .form-type-textarea.form-item {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%;
      padding-right: 0; }
      @media print, screen and (min-width: 64em) {
        .paragraph--type--compound-webform form > .form-type-textarea.form-item {
          padding-right: 60px; } }

.paragraph--type--columns-layout {
  margin-bottom: 115px; }
  .paragraph--type--columns-layout > .container > .field--name-field-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 15px; }
    .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item {
      width: 100%; }
      .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:nth-of-type(1n) {
        clear: none; }
      .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:nth-of-type(1n+1) {
        clear: both; }
      .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:last-child {
        float: left; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--columns-layout > .container > .field--name-field-column {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        margin-left: -1.5625rem;
        margin-right: -1.5625rem; }
        .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item {
          width: 50%;
          padding: 1.5625rem; }
          .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:nth-of-type(1n) {
            clear: none; }
          .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:nth-of-type(2n+1) {
            clear: both; }
          .paragraph--type--columns-layout > .container > .field--name-field-column > .field__item:last-child {
            float: left; } }
  .paragraph--type--columns-layout > .container > .field--name-field-title {
    color: #1e3046;
    margin-bottom: 35px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--columns-layout > .container > .field--name-field-title {
        margin-bottom: 50px; } }

.paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership {
  margin-bottom: 15px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership {
      margin: 0 0 30px; } }
  .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item {
    position: relative;
    padding-top: 0;
    padding-bottom: 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item:nth-child(even) {
        padding-right: 0; }
      .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item:nth-child(odd) {
        padding-left: 0; }
      .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item:nth-last-child(1) .paragraph {
        border-bottom-color: transparent; } }
    .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item .paragraph {
      border-bottom: 1px solid #e5e5e5;
      transition: border-bottom-color .7s linear; }
      .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item .paragraph.active {
        border-bottom-color: #f5f5f5;
        transition: none; }

.paragraph--type--compound-leadership-team .header-leadership {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 40px 15px 20px;
  cursor: pointer;
  transition: background .1s linear; }
  .paragraph--type--compound-leadership-team .header-leadership:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--compound-leadership-team .header-leadership {
      padding: 35px 75px 30px 20px; } }
  .paragraph--type--compound-leadership-team .header-leadership::after {
    position: absolute;
    top: 37%;
    right: 8px;
    font-size: 1.5rem;
    color: #1e3046; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-leadership-team .header-leadership::after {
        font-size: 2.25rem;
        top: 35%;
        right: 13px; } }
  .paragraph--type--compound-leadership-team .header-leadership:not(.active):after {
    content: ""; }
  .paragraph--type--compound-leadership-team .header-leadership:not(.active)::after {
    font-size: 2.25rem;
    top: 33%;
    right: 20px;
    color: rgba(0, 34, 77, 0.4);
    -webkit-transform: rotate(90deg) translateY(-50%);
            transform: rotate(90deg) translateY(-50%); }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-leadership-team .header-leadership:not(.active)::after {
        font-size: 3rem;
        top: 34%;
        right: 31px; } }
  .paragraph--type--compound-leadership-team .header-leadership .field--name-field-m-image {
    margin-right: 15px; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--compound-leadership-team .header-leadership .field--name-field-m-image {
        margin-right: 30px; } }
    @media screen and (max-width: 47.9375em) {
      .paragraph--type--compound-leadership-team .header-leadership .field--name-field-m-image img {
        max-width: 80px; } }
  .paragraph--type--compound-leadership-team .header-leadership .field--name-field-name {
    color: #1e3046; }
  .paragraph--type--compound-leadership-team .header-leadership .field--name-field-title {
    line-height: 1; }
  .paragraph--type--compound-leadership-team .header-leadership.active,
  .paragraph--type--compound-leadership-team .header-leadership.active ~ .leadership-member, .paragraph--type--compound-leadership-team .header-leadership:hover {
    background: #f5f5f5; }

.paragraph--type--compound-leadership-team .leadership-member {
  position: static;
  display: none;
  border-bottom: 1px solid #e5e5e5;
  transition: background .5s linear; }
  .paragraph--type--compound-leadership-team .leadership-member .field--name-field-intro-text {
    padding: 10px 25px 25px; }
    @media (min-width: 640px) and (max-width: 767px) {
      .paragraph--type--compound-leadership-team .leadership-member .field--name-field-intro-text {
        margin-left: 150px; } }
    @media print, screen and (min-width: 64em) {
      .paragraph--type--compound-leadership-team .leadership-member .field--name-field-intro-text {
        max-width: 300px;
        margin-left: 170px;
        margin-bottom: 75px;
        padding-right: 0;
        padding-left: 0; } }

@media screen and (max-width: 47.9375em) {
  .paragraph--type--columns-layout .field--name-field-column > .field__item:nth-last-child(1) .paragraph--type--compound-leadership-team .field--name-field-p-collection-leadership > .field__item:nth-last-child(1) .paragraph {
    border-bottom-color: transparent; } }

.paragraph--type--page-separator .field--name-field-title {
  color: #1e3046;
  margin-bottom: 40px; }
  @media print, screen and (min-width: 48em) {
    .paragraph--type--page-separator .field--name-field-title {
      margin-bottom: 80px; } }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-intro-text a {
  color: #fff;
  border-bottom: 1px solid #fff; }
  .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-intro-text a:hover {
    border-bottom-color: transparent; }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-intro-text p:last-child {
  margin-bottom: 0; }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-intro-text .field__item > * {
  color: #fff; }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a {
  display: inline-block;
  position: relative;
  line-height: 1;
  font-family: "Poppins", "Arial", sans-serif;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid transparent;
  border-width: 0 0 0 4px;
  background: transparent;
  margin-left: 0;
  font-weight: 700;
  -webkit-tap-highlight-color: transparent;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  font-weight: 400;
  padding: 0 0 0 9px;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  position: relative;
  padding-left: 12px;
  transition: 0.5s;
  color: #fff;
  border-color: #fff; }
  [data-whatinput='mouse'] .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a {
      border-left-width: 6px; } }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a {
      padding: 0 0 0 18px;
      font-size: 0.875rem; } }
  .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a {
      padding-left: 25px; } }
  .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: -20px;
    margin-top: -1px;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    transition: 0.5s; }
    @media print, screen and (min-width: 48em) {
      .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a::after {
        right: -23px;
        font-size: 1.4375rem; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:hover {
      padding-left: 18px;
      padding-right: 25px; }
      .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:hover::after {
        right: 0; } }
  .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:focus, .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:active {
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: transparent;
    background-color: transparent; }
  .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:active, .paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-link a:focus {
    color: #fff;
    border-color: #fff; }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-subtitle,
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-intro-text,
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--type-text-long,
.paragraph-style--text-color--white .paragraph--type--simple-cta h3,
.paragraph-style--text-color--white .paragraph--type--simple-cta .stay-in-touch-block > h2,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--services .stay-in-touch-block > .field--name-field-title, .paragraph--type--services
.paragraph-style--text-color--white .paragraph--type--simple-cta .stay-in-touch-block > .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--compound-cta-section .field--name-field-title, .paragraph--type--compound-cta-section
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--news-section .news-header .field--name-field-title, .paragraph--type--news-section .news-header
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items .field--name-field-counter, .paragraph--type--compound-counters-box .field--name-field-p-counters > .field__items
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-counter,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--columns-layout > .container > .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--page-separator .field--name-field-title, .paragraph--type--page-separator
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title,
.paragraph-style--text-color--white .paragraph--type--simple-cta .paragraph--type--location-map .field--name-field-title, .paragraph--type--location-map
.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title {
  color: #fff; }

.paragraph-style--text-color--white .paragraph--type--simple-cta .field--name-field-title.title-with-line::after {
  background: #fff; }

.paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-title.title-with-line,
.paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-subtitle {
  color: #1e3046; }

.paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a {
  display: inline-block;
  position: relative;
  line-height: 1;
  font-family: "Poppins", "Arial", sans-serif;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: solid transparent;
  border-width: 0 0 0 4px;
  background: transparent;
  margin-left: 0;
  font-weight: 700;
  -webkit-tap-highlight-color: transparent;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  font-weight: 400;
  padding: 0 0 0 9px;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  position: relative;
  padding-left: 12px;
  transition: 0.5s;
  color: #1e3046;
  border-color: #1e3046; }
  [data-whatinput='mouse'] .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a {
    outline: 0; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a {
      border-left-width: 6px; } }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a {
      padding: 0 0 0 18px;
      font-size: 0.875rem; } }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:after {
    content: ""; }
  @media print, screen and (min-width: 48em) {
    .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a {
      padding-left: 25px; } }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: -20px;
    margin-top: -1px;
    font-size: 1.25rem;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    transition: 0.5s; }
    @media print, screen and (min-width: 48em) {
      .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a::after {
        right: -23px;
        font-size: 1.4375rem; } }
  @media print, screen and (min-width: 64em) {
    .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:hover {
      padding-left: 18px;
      padding-right: 25px; }
      .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:hover::after {
        right: 0; } }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:focus, .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:active {
    outline: none;
    cursor: pointer;
    text-decoration: none;
    color: transparent;
    background-color: transparent; }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:hover, .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:active, .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-link a:focus {
    color: #1e3046;
    border-color: #1e3046; }

.paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-intro-text {
  color: #1e3046; }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-intro-text a {
    color: #1e3046;
    border-bottom: 1px solid #1e3046; }
    .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-intro-text a:hover {
      border-bottom-color: transparent; }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-intro-text p:last-child {
    margin-bottom: 0; }
  .paragraph-style--text-color--blue .paragraph--type--simple-cta .field--name-field-intro-text .field__item > * {
    color: #1e3046; }

.paragraph--type--location-map .field--name-field-title {
  margin-bottom: 25px; }

.paragraph--type--location-map .field--name-field-maps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -15px; }
  @media screen and (max-width: 47.9375em) {
    .paragraph--type--location-map .field--name-field-maps {
      margin: 0 -25px; } }
  .paragraph--type--location-map .field--name-field-maps .airports-location {
    margin-bottom: 30px;
    border: solid #d8d8d8;
    border-width: 1px 0; }
    @media print, screen and (min-width: 48em) {
      .paragraph--type--location-map .field--name-field-maps .airports-location {
        border-width: 1px; } }
    .paragraph--type--location-map .field--name-field-maps .airports-location h2, .paragraph--type--location-map .field--name-field-maps .airports-location .paragraph--type--services .field--name-field-title, .paragraph--type--services .paragraph--type--location-map .field--name-field-maps .airports-location .field--name-field-title {
      color: #1e3046; }
    .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw {
      width: 240px !important; }
      .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .airport-city-and-state {
        font-size: 12pt; }
      .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .airport-code {
        font-size: 16pt; }
      .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .location-title {
        font-size: 18pt; }
      .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor {
        height: 23px; }
        .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a {
          display: inline-block;
          position: relative;
          line-height: 1;
          font-family: "Poppins", "Arial", sans-serif;
          text-align: center;
          -webkit-appearance: none;
             -moz-appearance: none;
                  appearance: none;
          border: solid transparent;
          border-width: 0 0 0 4px;
          background: transparent;
          margin-left: 0;
          font-weight: 700;
          -webkit-tap-highlight-color: transparent;
          text-transform: uppercase;
          color: #fff;
          background-color: transparent;
          font-weight: 400;
          padding: 0 0 0 9px;
          font-size: 0.75rem;
          line-height: 1.25rem;
          text-transform: uppercase;
          position: relative;
          padding-left: 12px;
          transition: 0.5s;
          color: #1e3046;
          border-color: #1e3046; }
          [data-whatinput='mouse'] .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a {
            outline: 0; }
          @media print, screen and (min-width: 48em) {
            .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a {
              border-left-width: 6px; } }
          @media print, screen and (min-width: 48em) {
            .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a {
              padding: 0 0 0 18px;
              font-size: 0.875rem; } }
          .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:after {
            content: ""; }
          @media print, screen and (min-width: 48em) {
            .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a {
              padding-left: 25px; } }
          .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a::after {
            position: absolute;
            display: inline-block;
            vertical-align: middle;
            top: 50%;
            right: -20px;
            margin-top: -1px;
            font-size: 1.25rem;
            -webkit-transform: translateY(-50%);
                    transform: translateY(-50%);
            transition: 0.5s; }
            @media print, screen and (min-width: 48em) {
              .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a::after {
                right: -23px;
                font-size: 1.4375rem; } }
          @media print, screen and (min-width: 64em) {
            .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:hover {
              padding-left: 18px;
              padding-right: 25px; }
              .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:hover::after {
                right: 0; } }
          .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:hover, .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:focus, .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:active {
            outline: none;
            cursor: pointer;
            text-decoration: none;
            color: transparent;
            background-color: transparent; }
          .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:hover, .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:active, .paragraph--type--location-map .field--name-field-maps .airports-location .gm-style-iw .learn-more-anchor a:focus {
            color: #1e3046;
            border-color: #1e3046; }
  .paragraph--type--location-map .field--name-field-maps > .field__item {
    max-width: 33.333333%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 33.333333%;
            flex: 0 0 33.333333%;
    padding: 0 15px; }
    @media screen and (max-width: 47.9375em) {
      .paragraph--type--location-map .field--name-field-maps > .field__item {
        max-width: 100%;
        -webkit-box-flex: 0;
            -ms-flex: 0 0 100%;
                flex: 0 0 100%;
        padding: 0; } }
    .paragraph--type--location-map .field--name-field-maps > .field__item .geolocation-common-map-container {
      width: 100% !important;
      height: 250px !important; }
    .paragraph--type--location-map .field--name-field-maps > .field__item:first-child {
      width: 100%;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
      .paragraph--type--location-map .field--name-field-maps > .field__item:first-child .geolocation-common-map-container {
        height: 545px !important; }
        @media screen and (max-width: 47.9375em) {
          .paragraph--type--location-map .field--name-field-maps > .field__item:first-child .geolocation-common-map-container {
            height: 400px !important; } }

.path-frontpage .paragraph--type--compound-cta-section {
  margin-bottom: 40px; }
  @media print, screen and (min-width: 48em) {
    .path-frontpage .paragraph--type--compound-cta-section {
      margin-bottom: 75px; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section {
      margin-bottom: 150px; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section .paragraph-content {
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section .content-wrap {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 36.33333333%;
              flex: 0 0 36.33333333%;
      max-width: 36.33333333%;
      padding: 30px 0 0 8.33333333%; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section.paragraph-style--image-right .field--name-field-p-media-images {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 58.33333333%;
              flex: 0 0 58.33333333%;
      max-width: 58.33333333%;
      padding: 30px 8.33333333% 0 15px; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section.paragraph-style--image-right .content-wrap {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 41.66666667%;
              flex: 0 0 41.66666667%;
      max-width: 41.66666667%;
      padding: 0 13.33333333% 0 0; } }
  @media print, screen and (min-width: 64em) {
    .path-frontpage .paragraph--type--compound-cta-section.paragraph-style--image-right .paragraph--type--compound-multiple-images {
      margin-left: -15px;
      margin-right: -13.33333333%; } }
  @media screen and (min-width: 75em) {
    .path-frontpage .paragraph--type--compound-cta-section.paragraph-style--image-right .paragraph--type--compound-multiple-images {
      margin-right: -21%; } }
  .path-frontpage .paragraph--type--compound-cta-section.paragraph-style--image-right .paragraph--type--compound-multiple-images .paragraph--type--simple-media-image::after {
    display: none; }

.user-login-form {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 75rem;
  padding-left: 25px;
  padding-right: 25px;
  padding-top: 50px;
  padding-bottom: 50px; }
  @media print, screen and (min-width: 64em) {
    .user-login-form {
      padding-left: 15px;
      padding-right: 15px; } }
  @media print, screen and (min-width: 64em) {
    .user-login-form {
      padding-left: 15px;
      padding-right: 15px; } }
  .user-login-form input[type='text'], .user-login-form input[type='email'], .user-login-form input[type='password'] {
    border-bottom: 2px solid #1e3046;
    box-shadow: none; }

.page--404 main,
.page--403 main {
  margin-bottom: -40px; }

.page--404 .paragraph--type--compound-hero-banner,
.page--403 .paragraph--type--compound-hero-banner {
  margin-bottom: 0;
  height: 410px; }
  @media (min-height: 960px) and (max-height: 1280px) {
    .page--404 .paragraph--type--compound-hero-banner,
    .page--403 .paragraph--type--compound-hero-banner {
      height: 665px; } }
  @media print, screen and (min-width: 64em) {
    .page--404 .paragraph--type--compound-hero-banner,
    .page--403 .paragraph--type--compound-hero-banner {
      height: 650px; } }
  @media print, screen and (min-width: 64em) {
    .page--404 .paragraph--type--compound-hero-banner,
    .page--403 .paragraph--type--compound-hero-banner {
      height: 1080px; } }
  .page--404 .paragraph--type--compound-hero-banner .field--name-field-title,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-title {
    margin-bottom: 35px;
    font-size: 3rem;
    line-height: 1.2; }
    @media print, screen and (min-width: 64em) {
      .page--404 .paragraph--type--compound-hero-banner .field--name-field-title,
      .page--403 .paragraph--type--compound-hero-banner .field--name-field-title {
        font-size: 7.5rem; } }
  .page--404 .paragraph--type--compound-hero-banner .field--name-field-intro-text p,
  .page--403 .paragraph--type--compound-hero-banner .field--name-field-intro-text p {
    color: #1e3046; }

@media (min-width: 1200px) {
  .page-type--news-archive .paragraph--type--page-section > .container > .field {
    position: relative; }
    .page-type--news-archive .paragraph--type--page-section > .container > .field > .field__item {
      width: 100%;
      padding-right: 360px; }
      .page-type--news-archive .paragraph--type--page-section > .container > .field > .field__item:last-child {
        position: absolute;
        width: 280px;
        top: 0;
        right: 0;
        padding-right: 0; } }

.page-type--location-page .paragraph--type--simple-media-image {
  margin-bottom: 40px; }

.page-type--location-page .paragraph-style--bg-image {
  padding: 75px 0;
  margin-bottom: 65px; }
  @media print, screen and (min-width: 48em) {
    .page-type--location-page .paragraph-style--bg-image {
      padding: 95px 0; } }

.page-type--location-page .paragraph--type--simple-cta {
  margin-bottom: 0; }
  .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default {
    padding: 0; }
    .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default > .container .field {
      color: #fff; }
    .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title {
      margin-bottom: 40px; }
      .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-title .field__item {
        background: transparent; }
    .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a {
      display: inline-block;
      position: relative;
      line-height: 1;
      font-family: "Poppins", "Arial", sans-serif;
      text-align: center;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      border: solid transparent;
      border-width: 0 0 0 4px;
      background: transparent;
      margin-left: 0;
      font-weight: 700;
      -webkit-tap-highlight-color: transparent;
      text-transform: uppercase;
      color: #fff;
      background-color: transparent;
      font-weight: 400;
      padding: 0 0 0 9px;
      font-size: 0.75rem;
      line-height: 1.25rem;
      text-transform: uppercase;
      position: relative;
      padding-left: 12px;
      transition: 0.5s;
      color: #fff;
      border-color: #fff; }
      [data-whatinput='mouse'] .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a {
        outline: 0; }
      @media print, screen and (min-width: 48em) {
        .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a {
          border-left-width: 6px; } }
      @media print, screen and (min-width: 48em) {
        .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a {
          padding: 0 0 0 18px;
          font-size: 0.875rem; } }
      .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:after {
        content: ""; }
      @media print, screen and (min-width: 48em) {
        .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a {
          padding-left: 25px; } }
      .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a::after {
        position: absolute;
        display: inline-block;
        vertical-align: middle;
        top: 50%;
        right: -20px;
        margin-top: -1px;
        font-size: 1.25rem;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        transition: 0.5s; }
        @media print, screen and (min-width: 48em) {
          .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a::after {
            right: -23px;
            font-size: 1.4375rem; } }
      @media print, screen and (min-width: 64em) {
        .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:hover {
          padding-left: 18px;
          padding-right: 25px; }
          .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:hover::after {
            right: 0; } }
      .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:hover, .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:focus, .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:active {
        outline: none;
        cursor: pointer;
        text-decoration: none;
        color: transparent;
        background-color: transparent; }
      .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:hover, .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:active, .page-type--location-page .paragraph--type--simple-cta.paragraph--view-mode--default .field--name-field-link a:focus {
        color: #fff;
        border-color: #fff; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiYmFzZS9fc2V0dGluZ3Muc2NzcyIsImJhc2UvX2FwcC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCJiYXNlL19mb250cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiZnJhbWV3b3JrL3V0aWxzL19pY29ucy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiYmFzZS9fZm9ybS5zY3NzIiwiZnJhbWV3b3JrL19idXR0b25zLnNjc3MiLCJiYXNlL19jb25maWcuc2NzcyIsImZyYW1ld29yay91dGlscy9faGVscGVycy5zY3NzIiwicmVnaW9ucy9faGVhZGVyLnNjc3MiLCJmcmFtZXdvcmsvX2xheW91dC5zY3NzIiwicmVnaW9ucy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19kcnVwYWwuc2NzcyIsImZyYW1ld29yay91dGlscy9fc3R5bGUuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2xheW91dC5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS1lbGVtZW50cy5zY3NzIiwiY29tcG9uZW50cy9fY3VzdG9tLWJsb2Nrcy5zY3NzIiwiY29tcG9uZW50cy9fc2xpY2suc2NzcyIsImNvbXBvbmVudHMvX21hcC5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIuc2NzcyIsInBhcmFncmFwaHMvX3BhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24uc2NzcyIsInBhcmFncmFwaHMvX3BhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS1kZWZhdWx0LnNjc3MiLCJwYXJhZ3JhcGhzL19wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcy5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLXN0eWxlLnNjc3MiLCJwYXJhZ3JhcGhzL19wYXJhZ3JhcGgtc3R5bGUtLWJnLWltYWdlLnNjc3MiLCJwYXJhZ3JhcGhzL19wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzLnNjc3MiLCJwYXJhZ3JhcGhzL19wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbi5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lci5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3guc2NzcyIsInBhcmFncmFwaHMvX3BhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybS5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dC5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0uc2NzcyIsInBhcmFncmFwaHMvX3BhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3Iuc2NzcyIsInBhcmFncmFwaHMvX3BhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci5zY3NzIiwicGFyYWdyYXBocy9fcGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAuc2NzcyIsInBhZ2VzL19mcm9udHBhZ2Uuc2NzcyIsInBhZ2VzL191c2VyLXBhZ2VzLnNjc3MiLCJwYWdlcy9fbmV3cy1hcmNoaXZlLnNjc3MiLCJwYWdlcy9fbG9jYXRpb25zLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDcUpILHFDQUFxQztBQzFKckM7Ozs7O0dBS0c7QUN3Q0QsaUVBQWlFO0FBRy9EO29GQUNnRjtBQUVoRjs7Ozs7T0FLRztBQ3hEUCxnRkFBWTtBRDBEUjtFQUNFLHdCRTFDdUI7RUYwQ1MsT0FBTztFQVFyQyxrQkFB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MVA2QztFRGlRN0MscUJDdE0wQjtFRGdOMUIsY0FBYTtFQU9iLHNCUnhLZ0IsRVEwS25COztBQWpDRDtFQU9JLGtCQzFQNkM7RURpUTdDLHFCQ3RNMEI7RURnTjFCLGNBQWE7RUFPYixzQlJ4S2dCLEVRMEtuQjs7QUFqQ0Q7OztFQU9JLGdCQzFQNkM7RURpUTdDLG1CQ3RNMEI7RURnTjFCLGNBQWE7RUFPYixzQlJ4S2dCLEVRMEtuQjs7QUFqQ0Q7RUFPSSxnQkMxUDZDO0VEaVE3QyxrQkN0TTBCO0VEZ04xQixjQUFhO0VBT2Isc0JSeEtnQixFUTBLbkI7O0FBakNEO0VBT0ksb0JDMVA2QztFRGlRN0MscUJDdE0wQjtFRGdOMUIsY0FBYTtFQUtiLHdCQ2hSNkMsRURvUmhEOztBRXpNSDtFRndLRTtJQU9JLGtCQzFQNkM7SURpUTdDLHFCQ3RNMEIsRUR5TjdCO0VBakNEO0lBT0ksbUJDMVA2QztJRGlRN0MscUJDdE0wQixFRHlON0I7RUFqQ0Q7SUFPSSxnQkMxUDZDO0lEaVE3QyxxQkN0TTBCLEVEeU43QjtFQWpDRDs7O0lBT0ksa0JDMVA2QztJRGlRN0MscUJDdE0wQixFRHlON0I7RUFqQ0Q7SUFPSSxvQkMxUDZDO0lEaVE3QyxxQkN0TTBCLEVEeU43QjtFQWpDRDtJQU9JLG9CQzFQNkM7SURpUTdDLHFCQ3RNMEI7SURxTjFCLHdCQ2hSNkMsRURvUmhELEVBQUE7O0FFek1IO0VGd0tFO0lBT0ksa0JDMVA2QztJRGlRN0MscUJDdE0wQixFRHlON0I7RUFqQ0Q7SUFPSSxtQkMxUDZDO0lEaVE3QyxxQkN0TTBCLEVEeU43QjtFQWpDRDtJQU9JLGdCQzFQNkM7SURpUTdDLHFCQ3RNMEIsRUR5TjdCO0VBakNEOzs7SUFPSSxrQkMxUDZDO0lEaVE3QyxxQkN0TTBCLEVEeU43QjtFQWpDRDtJQU9JLG9CQzFQNkM7SURpUTdDLHFCQ3RNMEIsRUR5TjdCO0VBakNEO0lBT0ksb0JDMVA2QztJRGlRN0MscUJDdE0wQjtJRHFOMUIsd0JDaFI2QyxFRG9SaEQsRUFBQTs7QUFNUDtFQUNFLHFCQUFvQjtFQUNwQixlUi9UZ0I7RVFnVWhCLHNCUjlFeUI7RVFnRnpCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZVJyRjJELEVReUY1RDtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QUFJSDtFQUNFLFlBQVc7RUFFWCxpQkNsVHFEO0VEbVRyRCxVQUFTO0VBQ1QscUJSakd5QjtFUW1HekIsY0FBYTtFQUNiLGdCQUFlO0VBQ2YsaUNScFVhO0VRcVViLGVBQWMsRUFDZjs7QUFHRDs7O0VBR0Usb0JSM0gwQjtFUTRIMUIsNkJSMUd5QjtFUTJHekIsaUJSOUhzQixFUStIdkI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxxQlJwSHNCO0VRcUh0QixzQlJ2SGtCLEVRd0huQjs7QUFHRDtFQUNFLHFCUjFIc0IsRVEySHZCOztBQUdEO0VBRUkscUJSL0gyQjtFUWdJM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JSckl5QixFUTJJMUI7RUFQRDtJQUlJLHNCUnRJNkI7SVF1STdCLGlCUmpUa0IsRVFrVG5COztBQUlIO0VBQ0UsaUJScEswQjtFUXFLMUIsdUNDMVdxRDtFRDJXckQsK0JSdlhhLEVRNlhkO0VBVEQ7SUFNSSxpQlIxS29CO0lRMktwQixlUjNYVyxFUTRYWjs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQkN0WHFEO0VEdVhyRCxlUm5ZYSxFUXdZZDtFQVJEO0lBTUksY1J4SmdCLEVBQWE7O0FRNkpqQztFQUNFLCtCUmhXUTtFUWlXUixhQUFZO0VBQ1osc0JBQXFCLEVBQ3RCOztBQUdEO0VBQ0UsVUFBUyxFQUNWOztBQUdEO0VBQ0Usc0NDNVlxRDtFRDhZckQsMEJSMVphO0VRMlpiLDBCUjdaZ0I7RVErWmhCLDZEUjFTbUU7RVEyU25FLGlCUm5Xc0I7RVFvV3RCLFlSblhRLEVRb1hUOztBQUdEO0VBQ0UsVUFBUztFQUNULDRCQ3BaUztFRHNaVCwwQlJ6YWdCO0VRMmFoQiw2RFJ0VG1FO0VRdVRuRSxZUjlYUSxFUW1ZVDs7QUc1Y0Q7RUFDRSxtQlgwUndCO0VXelJ4QixzQlgwUjJCO0VXeFIzQixpQlhvRnNCO0VXbkZ0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UWpDZ0ZNLG1CQUFrQjtRQUNsQixzQkFBcUI7UUFDckIsdUJBQXNCO1FBQ3RCLFNBQVE7UUFDUixhQUFZO1FBQ1osaUJBQWdCO1FBQ2hCLG1CWkVtRDtRWURuRCxvQ0FBMkI7Z0JBQTNCLDRCQUEyQjtRQUMzQixpQkFBZ0IsRUFNakI7UVhxRUM7VTRDbktOO1lqQzJGUSxhQUFZO1lBQ1oscUJaSmlELEVZTXBELEVBQUE7TVhxRUM7UTRDbktOO1VqQ2tHUSxtQkFBa0I7VUFDbEIsb0JBQW1CLEVBS3BCO1VpQ3hHUDtZakNzR1UsU0FBUSxFQUNULEVBQUE7TWlDdkdUO1FqQzZHSSxjQUFhO1FBQ2IsZ0JBQWU7UUFDZixzQkFBcUI7UUFDckIsbUJDcEN3QjtRRDJDdEIsOEJDNUMyQixFQzhEOUI7TStCeklIO1FqQzBJTSxZckJqQk07UXFCa0JOLG1CckJsQk0sRXFCbUJQIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjQuM1xuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qKioqKioqIEVuZCBEcnVwYWwgRGVmYXVsdHMgKioqKioqKi9cbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMFxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Qb3BwaW5zOjIwMCw0MDAsNTAwLCA2MDBcIik7XG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuaDEsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00OGVtJmxhcmdlPTY0ZW0mbGFyZ2UtZGVza3RvcD03NWVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbmgyLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuaDMsXG4uc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlcixcbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG5oNCxcbmZvb3RlciBoMixcbmZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMixcbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLFxuLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuaDUsXG4ucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIGgyLFxuLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmgxLFxuaDIsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5oMixcbmgzLFxuLnN0YXktaW4tdG91Y2gtYmxvY2sgPiBoMixcbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIsXG4ucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDMsXG5oNCxcbmZvb3RlciBoMixcbmZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMixcbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLFxuLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLCAuaDQsXG5oNSxcbi5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsXG4ucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cbiAgaDEgc21hbGwsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIgc21hbGwsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCBmb290ZXIgaDIgc21hbGwsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiBoMiBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgc21hbGwsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCBzbWFsbCxcbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwIHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIGgyIHNtYWxsLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzbWFsbCwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgc21hbGwsIC5oNSBzbWFsbCxcbiAgaDYgc21hbGwsIC5oNiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICM3ZjdmN2Y7IH1cblxuaDEsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmgxIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yMjIyMjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5oMiB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjc2NjY3O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciwgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4zMzMzMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg0LCBmb290ZXIgaDIsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsXG4ucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDUsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS43MTQyOTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDEsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yMDgzMzsgfVxuICBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMy43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMC45MzMzMzsgfVxuICBoMywgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyLCAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmgzIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTY2Njc7IH1cbiAgaDQsIGZvb3RlciBoMiwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7IH1cbiAgaDUsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc3Nzc4OyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjIwODMzOyB9XG4gIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5oMiB7XG4gICAgZm9udC1zaXplOiAzLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjkzMzMzOyB9XG4gIGgzLCAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xNjY2NzsgfVxuICBoNCwgZm9vdGVyIGgyLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsXG4gIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zMzMzMzsgfVxuICBoNSwgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiBoMiwgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNzc3Nzg7IH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43MTQyOTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTsgfSB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMxZTM1NWY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMWEyZTUyOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQ3NGU1MTtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0NzRlNTE7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjNDc0ZTUxOyB9XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjNDc0ZTUxOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzAwMDtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNDc0ZTUxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y3ZjdmO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDA7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZjdmN2Y7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzAwMDsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjNDc0ZTUxOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgaDMsXG4gIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlcixcbiAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIGgzLFxuICAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLFxuICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNDc0ZTUxOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogIzhhNmQzYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjBlYjsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjOGE2ZDNiOyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICM4YTZkM2I7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjOGE2ZDNiOyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsIHRib2R5LCB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAgIGNvbG9yOiAjN2Y3ZjdmOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgIGNvbG9yOiAjN2Y3ZjdmOyB9XG4gIHRoZWFkIHRyLCB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsIHRoZWFkIHRkLCB0Zm9vdCB0aCwgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGJvZHkgdGgsIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IH1cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgdGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgdGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uL2ZvbnRzL2ljb21vb24uZW90I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uL2ZvbnRzL2ljb21vb24ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uL2ZvbnRzL2ljb21vb24udHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uL2ZvbnRzL2ljb21vb24uc3ZnIzN4bFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5mb3JtIC5zdWJtaXQtYnRuOmFmdGVyLCAuanEtaGFzLWljb246YmVmb3JlLCAuanEtaWNvbi13YXJuaW5nOmJlZm9yZSwgLmpxLWljb24tZXJyb3I6YmVmb3JlLCAuanEtaWNvbi1zdWNjZXNzOmJlZm9yZSwgLm1lbnUtLW1haW4gLm1lbnUtaXRlbS0tZXhwYW5kZWQgPiBhOmFmdGVyLCAubWVudS0tcXVpY2stbGlua3MgLm1lbnUgYTpiZWZvcmUsXG4ubWVudS0tcGFydG5lcnMgLm1lbnUgYTpiZWZvcmUsIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGE6YWZ0ZXIsXG5baWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYTphZnRlciwgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46YWZ0ZXIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDQgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBmb290ZXIgaDIgKyAqOmJlZm9yZSwgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3Ncbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyICsgKjpiZWZvcmUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAgKyAqOmJlZm9yZSwgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIHAgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzc1xuLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwICsgKjpiZWZvcmUsXG4ucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgcCArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgaDQgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIGZvb3RlciBoMiArICo6YmVmb3JlLCBmb290ZXIgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXJcbi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyICsgKjpiZWZvcmUsXG4ucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAgKyAqOmJlZm9yZSwgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgcCArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXJcbi5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCArICo6YmVmb3JlLFxuLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgcCArICo6YmVmb3JlLCAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlcjphZnRlciwgLm5ld3MtYXJjaGl2ZS1ibG9jayAubmV3cy1hcmNoaXZlLW1vbnRoOmFmdGVyLCAubmV3cy1hcmNoaXZlLWJsb2NrIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgLnZpZXdzLWZpZWxkLXRpdGxlIGE6YmVmb3JlLFxuLm5ld3MtYXJjaGl2ZS1ibG9jayAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSBhOmJlZm9yZSwgLm5ld3Mtb3RoZXItbW9yZTphZnRlciwgLmFpcnBvcnRzLWxvY2F0aW9uIC52aWV3cy1maWVsZC1maWVsZC1haXJwb3J0LWFkZHJlc3M6YmVmb3JlLCAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtY29udGFjdC1pbmZvOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1uZXh0IC5pY29uLWFycm93OmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1wcmV2IC5pY29uLWFycm93OmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphZnRlciwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyLCAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZTphZnRlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXA6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXA6bm90KC5hY3RpdmUpOmFmdGVyLCAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIsIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAubGVhcm4tbW9yZS1hbmNob3IgYTphZnRlciwgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIge1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3BlYWs6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB3aWR0aDogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gIGNvbG9yOiAjMWUzMDQ2OyB9XG5cbi5lbWJlZGRlZC1lbnRpdHk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmVtYmVkZGVkLWVudGl0eS5jYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5lbWJlZGRlZC1lbnRpdHkuY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjEwODEycmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4uZW1iZWRkZWQtZW50aXR5IC5tZWRpYS1pbWFnZSwgLmVtYmVkZGVkLWVudGl0eSAubWVkaWEtaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmVtYmVkZGVkLWVudGl0eTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtOyB9IH1cblxuaDEsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbmgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICBjb2xvcjogIzFlMzA0NjsgfVxuXG4uaDIge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAuaDIgcCB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbmgzLCAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgY29sb3I6ICMxZTMwNDY7XG4gIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmOyB9XG5cbmg2IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7IH1cblxuLnN1YmhlYWRpbmcge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMyOWFiZTI7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxucCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTsgfVxuXG5mb3JtIGlucHV0W3R5cGU9J3RleHQnXSxcbmZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXSxcbmZvcm0gaW5wdXRbdHlwZT0ndGVsJ10sXG5mb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG5mb3JtIHRleHRhcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMTFweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICBjb2xvcjogIzFlMzA0NjtcbiAgaGVpZ2h0OiAzMHB4OyB9XG4gIGZvcm0gaW5wdXRbdHlwZT0ndGV4dCddOmZvY3VzLFxuICBmb3JtIGlucHV0W3R5cGU9J2VtYWlsJ106Zm9jdXMsXG4gIGZvcm0gaW5wdXRbdHlwZT0ndGVsJ106Zm9jdXMsXG4gIGZvcm0gaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cyxcbiAgZm9ybSB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICBmb3JtIGlucHV0W3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsXG4gIGZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsXG4gIGZvcm0gaW5wdXRbdHlwZT0ndGVsJ106OnBsYWNlaG9sZGVyLFxuICBmb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ106OnBsYWNlaG9sZGVyLFxuICBmb3JtIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNiMGI3YmU7IH1cbiAgZm9ybSBpbnB1dFt0eXBlPSd0ZXh0J106LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICBmb3JtIGlucHV0W3R5cGU9J2VtYWlsJ106LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICBmb3JtIGlucHV0W3R5cGU9J3RlbCddOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiAgZm9ybSB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjYjBiN2JlOyB9XG4gIGZvcm0gaW5wdXRbdHlwZT0ndGV4dCddOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gIGZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICBmb3JtIGlucHV0W3R5cGU9J3RlbCddOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gIGZvcm0gaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICBmb3JtIHRleHRhcmVhOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjYjBiN2JlOyB9XG4gIGZvcm0gaW5wdXRbdHlwZT0ndGV4dCddOmRpc2FibGVkLFxuICBmb3JtIGlucHV0W3R5cGU9J2VtYWlsJ106ZGlzYWJsZWQsXG4gIGZvcm0gaW5wdXRbdHlwZT0ndGVsJ106ZGlzYWJsZWQsXG4gIGZvcm0gaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTpkaXNhYmxlZCxcbiAgZm9ybSB0ZXh0YXJlYTpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjhmODtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5mb3JtIC5mb3JtLWl0ZW0sXG5mb3JtIC5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW46IDAgMCAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgZm9ybSAuZm9ybS1pdGVtLFxuICAgIGZvcm0gLmZvcm0tYWN0aW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgZm9ybSAuZm9ybS1pdGVtIC5mb3JtLWl0ZW0sXG4gIGZvcm0gLmZvcm0tYWN0aW9ucyAuZm9ybS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGZvcm0gLmZvcm0taXRlbSBsYWJlbCxcbiAgZm9ybSAuZm9ybS1hY3Rpb25zIGxhYmVsIHtcbiAgICBjb2xvcjogIzFlMzA0NjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvcm0gLmZvcm0taXRlbSBsYWJlbCxcbiAgICAgIGZvcm0gLmZvcm0tYWN0aW9ucyBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgZm9ybSAuZm9ybS1pdGVtIGxhYmVsOjphZnRlcixcbiAgICBmb3JtIC5mb3JtLWFjdGlvbnMgbGFiZWw6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGNvbG9yOiAjODVhOWMzOyB9XG5cbmZvcm0gdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE2MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBmb3JtIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIGZvcm0gdGV4dGFyZWEge1xuICAgICAgcmVzaXplOiBub25lOyB9IH1cblxuZm9ybSAuc3VibWl0LWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICBjb2xvcjogIzFlMzA0NjtcbiAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBmb3JtIC5zdWJtaXQtYnRuIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgZm9ybSAuc3VibWl0LWJ0biB7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBmb3JtIC5zdWJtaXQtYnRuIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgZm9ybSAuc3VibWl0LWJ0bjphZnRlciB7XG4gICAgY29udGVudDogXCLupIBcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGZvcm0gLnN1Ym1pdC1idG4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgZm9ybSAuc3VibWl0LWJ0bjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgZm9ybSAuc3VibWl0LWJ0bjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogLTIzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBmb3JtIC5zdWJtaXQtYnRuOmhvdmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgIGZvcm0gLnN1Ym1pdC1idG46aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICBmb3JtIC5zdWJtaXQtYnRuOmhvdmVyLCBmb3JtIC5zdWJtaXQtYnRuOmZvY3VzLCBmb3JtIC5zdWJtaXQtYnRuOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICBmb3JtIC5zdWJtaXQtYnRuOmhvdmVyLCBmb3JtIC5zdWJtaXQtYnRuOmFjdGl2ZSwgZm9ybSAuc3VibWl0LWJ0bjpmb2N1cyB7XG4gICAgY29sb3I6ICMxZTMwNDY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG4gIGZvcm0gLnN1Ym1pdC1idG4gaW5wdXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuZm9ybSAuZm9ybS1jaGVja2JveGVzIC5mb3JtLWl0ZW0sXG5mb3JtIC5mb3JtLXJhZGlvcyAuZm9ybS1pdGVtIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG5mb3JtIC5mb3JtLXR5cGUtcmFkaW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgZm9ybSAuZm9ybS10eXBlLXJhZGlvIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICBmb3JtIC5mb3JtLXR5cGUtcmFkaW8gaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgZm9ybSAuZm9ybS10eXBlLXJhZGlvIGlucHV0OmRpc2FibGVkICsgbGFiZWwge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgICAgIGZvcm0gLmZvcm0tdHlwZS1yYWRpbyBpbnB1dDpkaXNhYmxlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjlmOGY4OyB9XG4gIGZvcm0gLmZvcm0tdHlwZS1yYWRpbyBsYWJlbCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICBmb3JtIC5mb3JtLXR5cGUtcmFkaW8gbGFiZWw6OmJlZm9yZSwgZm9ybSAuZm9ybS10eXBlLXJhZGlvIGxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgZm9ybSAuZm9ybS10eXBlLXJhZGlvIGxhYmVsOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICBoZWlnaHQ6IDI5cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgZm9ybSAuZm9ybS10eXBlLXJhZGlvIGxhYmVsOjphZnRlciB7XG4gICAgICB3aWR0aDogOXB4O1xuICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgYmFja2dyb3VuZDogIzg1YTljMztcbiAgICAgIG9wYWNpdHk6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIGZvcm0gLnJlc2l6ZS12ZXJ0aWNhbCB7XG4gICAgcmVzaXplOiBub25lOyB9IH1cblxuaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiAxMDsgfVxuICBoZWFkZXIgLnJlZ2lvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiA2NXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGhlYWRlciAucmVnaW9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgaGVhZGVyIC5yZWdpb24ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBoZWFkZXIgLnJlZ2lvbiB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWluLWhlaWdodDogMTMwcHg7IH0gfVxuICBoZWFkZXIgLm5hdi1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDI1cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IC41cyBlYXNlLWluLW91dDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBoZWFkZXIgLm5hdi1pY29uIHtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMTlweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEwMjVweCkge1xuICAgICAgaGVhZGVyIC5uYXYtaWNvbiB7XG4gICAgICAgIHJpZ2h0OiAxNXB4OyB9IH1cbiAgICBoZWFkZXIgLm5hdi1pY29uIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWUzMDQ2O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogLjI1cyBlYXNlLWluLW91dDsgfVxuICAgICAgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICBoZWFkZXIgLm5hdi1pY29uIHNwYW46bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgOXB4IDlweCAwOyB9IH1cbiAgICAgIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDlweCAwIDAgOXB4OyB9IH1cbiAgICAgIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoMSksIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgICB0b3A6IDA7IH1cbiAgICAgIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoMyksIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoNCkge1xuICAgICAgICB0b3A6IDRweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoMyksIGhlYWRlciAubmF2LWljb24gc3BhbjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgdG9wOiA4cHg7IH0gfVxuICAgICAgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZCg1KSwgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZCg2KSB7XG4gICAgICAgIHRvcDogOHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZCg1KSwgaGVhZGVyIC5uYXYtaWNvbiBzcGFuOm50aC1jaGlsZCg2KSB7XG4gICAgICAgICAgICB0b3A6IDE2cHg7IH0gfVxuICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCgxKSwgaGVhZGVyIC5uYXYtaWNvbi5vcGVuIHNwYW46bnRoLWNoaWxkKDYpIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCgyKSwgaGVhZGVyIC5uYXYtaWNvbi5vcGVuIHNwYW46bnRoLWNoaWxkKDUpIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgICBoZWFkZXIgLm5hdi1pY29uLm9wZW4gc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgdG9wOiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICBoZWFkZXIgLm5hdi1pY29uLm9wZW4gc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGxlZnQ6IDJweDsgfSB9XG4gICAgaGVhZGVyIC5uYXYtaWNvbi5vcGVuIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMnB4KTtcbiAgICAgIHRvcDogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgaGVhZGVyIC5uYXYtaWNvbi5vcGVuIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDRweCk7IH0gfVxuICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCgzKSB7XG4gICAgICBsZWZ0OiAtNTAlO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCg0KSB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCg1KSB7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICB0b3A6IDVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgaGVhZGVyIC5uYXYtaWNvbi5vcGVuIHNwYW46bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgICAgdG9wOiAxMHB4OyB9IH1cbiAgICBoZWFkZXIgLm5hdi1pY29uLm9wZW4gc3BhbjpudGgtY2hpbGQoNikge1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAycHgpO1xuICAgICAgdG9wOiA1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIGhlYWRlciAubmF2LWljb24ub3BlbiBzcGFuOm50aC1jaGlsZCg2KSB7XG4gICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA0cHgpO1xuICAgICAgICAgIHRvcDogMTBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgaGVhZGVyIC5uYXYtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjMWUzMDQ2O1xuICBjb2xvcjogI2ZmZjtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgZm9vdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICBmb290ZXIgLmNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgZm9vdGVyIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBmb290ZXIgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIGZvb3RlciAud3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMjRweCAwIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgZm9vdGVyIC53cmFwIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBmb290ZXIgLndyYXAge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBwYWRkaW5nOiAxMDBweCA4LjMzMzMzMzMzJSA3NXB4OyB9IH1cbiAgZm9vdGVyIC5yZWdpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTcwLCAxNzYsIDE4NiwgMC40NSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBmb290ZXIgLnJlZ2lvbiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9IH1cbiAgICBmb290ZXIgLnJlZ2lvbiAuYmxvY2sge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMjJweCAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIGZvb3RlciAucmVnaW9uIC5ibG9jayB7XG4gICAgICAgICAgZmxleDogMCAwIDMwMHB4O1xuICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgICBmb290ZXIgLnJlZ2lvbiAuYmxvY2s6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgZm9vdGVyIC5yZWdpb24gLmJsb2NrOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICAgIGZvb3RlciAucmVnaW9uIC5ibG9jazpudGgtY2hpbGQoMikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxNzAsIDE3NiwgMTg2LCAwLjQ1KTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgZm9vdGVyIC5yZWdpb24gLmJsb2NrOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lOyB9IH1cbiAgICAgIGZvb3RlciAucmVnaW9uIC5ibG9ja1tpZD0nYmxvY2stY29weXJpZ2h0J10ge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgZm9vdGVyIC5yZWdpb24gLmJsb2NrW2lkPSdibG9jay1jb3B5cmlnaHQnXSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgZm9vdGVyIC5yZWdpb24gLmJsb2NrW2lkPSdibG9jay1jb3B5cmlnaHQnXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBmb290ZXIgLnJlZ2lvbi1mb290ZXIsIGZvb3RlciAucmVnaW9uLWZvb3RlcnNlY29uZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIGZvb3RlciAucmVnaW9uLWNvcHlyaWdodCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgZm9vdGVyIC5yZWdpb24tY29weXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgZm9vdGVyIC5yZWdpb24tY29weXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgZm9vdGVyIC5yZWdpb24tY29weXJpZ2h0IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4LjMzMzMzMzMzJTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBmb290ZXIgLnJlZ2lvbi1mb290ZXJzZWNvbmQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgZm9vdGVyIC5yZWdpb24tZm9vdGVyc2Vjb25kIC5ibG9jayArIC5ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgICAgZm9vdGVyIC5yZWdpb24tZm9vdGVyc2Vjb25kIGgyLCBmb290ZXIgLnJlZ2lvbi1mb290ZXJzZWNvbmQgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLnJlZ2lvbi1mb290ZXJzZWNvbmQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfSB9XG4gICAgZm9vdGVyIC5yZWdpb24tZm9vdGVyYm90dG9tIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBwYWRkaW5nOiAzNXB4IDAgNTBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAgIGZvb3RlciAucmVnaW9uLWZvb3RlcmJvdHRvbSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweDsgfSB9XG4gICAgICBmb290ZXIgLnJlZ2lvbi1mb290ZXJib3R0b20gLmJsb2NrIHtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXg6IDAgMCAyMDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNTBweCAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgICAgIGZvb3RlciAucmVnaW9uLWZvb3RlcmJvdHRvbSAuYmxvY2sge1xuICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDsgfSB9XG4gICAgICAgIGZvb3RlciAucmVnaW9uLWZvb3RlcmJvdHRvbSAuYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLW1lZGlhLWltYWdlIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgICBmb290ZXIgLnJlZ2lvbi1mb290ZXJib3R0b20gLmJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1tZWRpYS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7IH1cbiAgZm9vdGVyIGgyLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMnB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGZvb3RlciBoMiwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgZm9vdGVyLmZvdXItY29sIC53cmFwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCA+IC5yZWdpb24tZm9vdGVyIHtcbiAgICAgIGZsZXg6IDAgMCBjYWxjKDEwMCUgLSAzMDBweCk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCA+IC5yZWdpb24tZm9vdGVyIC5ibG9jayB7XG4gICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgZm9vdGVyLmZvdXItY29sIC53cmFwID4gLnJlZ2lvbi1mb290ZXIgLmJsb2NrLmJsb2NrLW1lbnUge1xuICAgICAgICAgIGZsZXg6IDAgMCAyNTBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH1cbiAgICAgICAgZm9vdGVyLmZvdXItY29sIC53cmFwID4gLnJlZ2lvbi1mb290ZXIgLmJsb2NrW2lkPVwiYmxvY2stc3RheWludG91Y2hcIl06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogMzAwcHg7IH1cbiAgICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgPiAucmVnaW9uLWZvb3RlciAuYmxvY2tbaWQ9XCJibG9jay1zdGF5aW50b3VjaFwiXTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciAuYmxvY2sge1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciAuYmxvY2s6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDE3MCwgMTc2LCAxODYsIDAuNDUpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgZm9vdGVyLmZvdXItY29sIC53cmFwIC5yZWdpb24tZm9vdGVyIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgZm9vdGVyLmZvdXItY29sIC53cmFwIC5yZWdpb24tZm9vdGVyIC5ibG9jayB7XG4gICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgZm9vdGVyLmZvdXItY29sIC53cmFwIC5yZWdpb24tZm9vdGVyIC5ibG9ja1tpZD0nYmxvY2stc3RheWludG91Y2gnXSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrW2lkPSdibG9jay1zdGF5aW50b3VjaCddOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7XG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNzAsIDE3NiwgMTg2LCAwLjQ1KTsgfVxuICAgICAgICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciAuYmxvY2s6bnRoLWNoaWxkKDMpIGgyLCBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrOm50aC1jaGlsZCgzKSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciAuYmxvY2s6bnRoLWNoaWxkKDMpIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrOm50aC1jaGlsZCgzKSAuZmllbGQtLW5hbWUtYm9keSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrOm50aC1jaGlsZCgzKSAuZmllbGQtLW5hbWUtYm9keSBwIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgICAgIGZvb3Rlci5mb3VyLWNvbCAud3JhcCAucmVnaW9uLWZvb3RlciAuYmxvY2s6bnRoLWNoaWxkKDMpIC5maWVsZC0tbmFtZS1ib2R5IHA6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAgICAgICBmb290ZXIuZm91ci1jb2wgLndyYXAgLnJlZ2lvbi1mb290ZXIgLmJsb2NrOm50aC1jaGlsZCgzKSAuZmllbGQtLW5hbWUtYm9keSBwICsgcCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDE3MCwgMTc2LCAxODYsIDAuNDUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGZvb3Rlci5mb3VyLWNvbCAucmVnaW9uLWNvcHlyaWdodCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGZvb3Rlci5mb3VyLWNvbCAucmVnaW9uLWZvb3RlcnNlY29uZCAuYmxvY2sge1xuICAgICAgd2lkdGg6IDMwMHB4OyB9IH1cblxuW2lkPSdza2lwLWxpbmsnXSB7XG4gIG1hcmdpbjogMDsgfVxuICBbaWQ9J3NraXAtbGluayddIGEsIFtpZD0nc2tpcC1saW5rJ10gYTp2aXNpdGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAycHggMCAzcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgY29sb3I6ICNmZmY7IH1cblxudWwucHJpbWFyeSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZmVmZWY7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICB1bC5wcmltYXJ5IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHVsLnByaW1hcnkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIHVsLnByaW1hcnkgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIHVsLnByaW1hcnkgbGkgYSB7XG4gICAgICBwYWRkaW5nOiA4cHggMThweDtcbiAgICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gICAgICBib3JkZXItdG9wOiA1cHggc29saWQgI2ZmZDIwNDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICMyNTE5MjM7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICB1bC5wcmltYXJ5IGxpIGE6aG92ZXIsIHVsLnByaW1hcnkgbGkgYTphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjUxOTIzO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDEpIGEge1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjYjZjNGM1OyB9XG4gICAgdWwucHJpbWFyeSBsaTpudGgtY2hpbGQoNG4gKyAxKSBhOmhvdmVyLCB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDEpIGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNiNmM0YzU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDIpIGEge1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjNTc1NjQyOyB9XG4gICAgdWwucHJpbWFyeSBsaTpudGgtY2hpbGQoNG4gKyAyKSBhOmhvdmVyLCB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDIpIGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM1NzU2NDI7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDMpIGEge1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjNGM0NjUwOyB9XG4gICAgdWwucHJpbWFyeSBsaTpudGgtY2hpbGQoNG4gKyAzKSBhOmhvdmVyLCB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDMpIGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM0YzQ2NTA7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDQpIGEge1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMjUxOTIzOyB9XG4gICAgdWwucHJpbWFyeSBsaTpudGgtY2hpbGQoNG4gKyA0KSBhOmhvdmVyLCB1bC5wcmltYXJ5IGxpOm50aC1jaGlsZCg0biArIDQpIGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyNTE5MjM7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICB1bC5wcmltYXJ5IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICB1bC5wcmltYXJ5IGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7IH1cbiAgICAgICAgdWwucHJpbWFyeSBsaSBhIHtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIHVsLnByaW1hcnkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLm1lc3NhZ2VzIHtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIG1hcmdpbjogNnB4IDA7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWVzc2FnZXMtLW9rLFxuLm1lc3NhZ2VzLS1zdGF0dXMge1xuICBjb2xvcjogIzJiNTQyYztcbiAgYm9yZGVyLWNvbG9yOiAjY2NlNWNjOyB9XG4gIC5tZXNzYWdlcy0tb2sgYSxcbiAgLm1lc3NhZ2VzLS1zdGF0dXMgYSB7XG4gICAgY29sb3I6ICNjY2U1Y2M7IH1cblxuLm1lc3NhZ2VzLS1zdGF0dXM6YmVmb3JlIHtcbiAgY29sb3I6ICM4MWI1NjQ7IH1cblxuLm1lc3NhZ2VzLS1vazpiZWZvcmUge1xuICBjb2xvcjogIzgxYjU2NDsgfVxuXG4ubWVzc2FnZXMtLXdhcm5pbmc6YmVmb3JlIHtcbiAgY29sb3I6ICNlMmJlNmM7IH1cblxuLm1lc3NhZ2VzLS1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOTQ0NDI7XG4gIGJvcmRlci1jb2xvcjogIzg0MzUzNDtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm1lc3NhZ2VzLS1lcnJvciBhIHtcbiAgICBjb2xvcjogI2Y5ZjFmMTsgfVxuXG4ubWVzc2FnZXMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIC8qIExUUiAqL1xuICBwYWRkaW5nOiAwOyB9XG5cbi5tZXNzYWdlcyB1bCBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgLm1lc3NhZ2VzIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ucGFnZS1zZWN0aW9uLW1lc3NhZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAucGFnZS1zZWN0aW9uLW1lc3NhZ2VzIC5tZXNzYWdlcyB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAucGFnZS1zZWN0aW9uLW1lc3NhZ2VzIC5jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLXNlY3Rpb24tbWVzc2FnZXMgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLXNlY3Rpb24tbWVzc2FnZXMgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG5cbi5rcnVtby1lbGVtZW50LFxuLmtydW1vLWZvb3Rub3RlLFxuLmtydW1vLWNhbGwsXG4ua3J1bW8tcHJldmlldyB7XG4gIGNvbG9yOiAjMjMxZjIwOyB9XG5cbi8qKlxuICogalF1ZXJ5IHRvYXN0IHBsdWdpbiBjcmVhdGVkIGJ5IEthbXJhbiBBaG1lZCBjb3B5cmlnaHQgTUlUIGxpY2Vuc2UgMjAxNFxuICovXG4uanEtdG9hc3Qtd3JhcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAzMjBweDtcbiAgbWF4LXdpZHRoOiA1MHZ3O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB6LWluZGV4OiA1MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmpxLXRvYXN0LXdyYXAge1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXgtaGVpZ2h0OiA3MHZoOyB9XG4gICAgICAuanEtdG9hc3Qtd3JhcC50b3AtcmlnaHQge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMTBweDsgfSB9XG4gIC5qcS10b2FzdC13cmFwICoge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5qcS10b2FzdC13cmFwLmJvdHRvbS1sZWZ0IHtcbiAgICBib3R0b206IDIwcHg7XG4gICAgbGVmdDogMjBweDsgfVxuICAuanEtdG9hc3Qtd3JhcC5ib3R0b20tcmlnaHQge1xuICAgIGJvdHRvbTogMjBweDtcbiAgICByaWdodDogNDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5qcS10b2FzdC13cmFwLnRvcC1sZWZ0IHtcbiAgICAgIHRvcDogMjBweDtcbiAgICAgIGxlZnQ6IDIwcHg7IH1cbiAgICAuanEtdG9hc3Qtd3JhcC50b3AtcmlnaHQge1xuICAgICAgdG9wOiA5MHB4O1xuICAgICAgcmlnaHQ6IDIwcHg7IH1cbiAgICAgIGJvZHkuYWRtaW5pbWFsLWFkbWluLXRvb2xiYXIgLmpxLXRvYXN0LXdyYXAudG9wLXJpZ2h0IHtcbiAgICAgICAgdG9wOiAxMzBweDsgfVxuICAgICAgYm9keS5hZG1pbmltYWwtYWRtaW4tdG9vbGJhci50b29sYmFyLWhvcml6b250YWwudG9vbGJhci10cmF5LW9wZW4gLmpxLXRvYXN0LXdyYXAudG9wLXJpZ2h0IHtcbiAgICAgICAgdG9wOiAxNzBweDsgfSB9XG5cbi5qcS10b2FzdC1zaW5nbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgbWFyZ2luOiAwIDAgNXB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmpxLXRvYXN0LXNpbmdsZSBoMiwgLmpxLXRvYXN0LXNpbmdsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5qcS10b2FzdC1zaW5nbGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbjogMCAwIDdweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7IH1cbiAgLmpxLXRvYXN0LXNpbmdsZSBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjsgfVxuICAgIC5qcS10b2FzdC1zaW5nbGUgYTpob3ZlciwgLmpxLXRvYXN0LXNpbmdsZSBhOmZvY3VzLCAuanEtdG9hc3Qtc2luZ2xlIGE6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuanEtdG9hc3Qtc2luZ2xlIHVsIHtcbiAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmpxLXRvYXN0LXNpbmdsZSB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7IH1cblxuLmNsb3NlLWpxLXRvYXN0LXNpbmdsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIHJpZ2h0OiAycHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB3aWR0aDogMS41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNsb3NlLWpxLXRvYXN0LXNpbmdsZTpob3ZlciwgLmNsb3NlLWpxLXRvYXN0LXNpbmdsZTpmb2N1cywgLmNsb3NlLWpxLXRvYXN0LXNpbmdsZTphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5qcS10b2FzdC1sb2FkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogMDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiAjZjAwOyB9XG5cbi5qcS10b2FzdC1sb2FkZWQge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uanEtaGFzLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmpxLWhhcy1pY29uIC5qcS10b2FzdC1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgcGFkZGluZy10b3A6IDJweDsgfVxuICAuanEtaGFzLWljb246YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImluZm9cIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdG9wOiA4cHg7XG4gICAgbGVmdDogMTJweDtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG5cbi5qcS1pY29uLWluZm8ge1xuICBjb2xvcjogI2Q4ZTlmMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNzA4ZjsgfVxuXG4uanEtaWNvbi13YXJuaW5nIHtcbiAgY29sb3I6ICNmMWVhZGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTZkM2I7IH1cbiAgLmpxLWljb24td2FybmluZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiaW5mb1wiOyB9XG5cbi5qcS1pY29uLWVycm9yIHtcbiAgY29sb3I6ICNmY2Y4Zjg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOTQ0NDI7IH1cbiAgLmpxLWljb24tZXJyb3I6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImVycm9yXCI7IH1cblxuLmpxLWljb24tc3VjY2VzcyB7XG4gIGNvbG9yOiAjZDNlOGQzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2M3NjNkOyB9XG4gIC5qcS1pY29uLXN1Y2Nlc3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImNoZWNrX2NpcmNsZVwiOyB9XG5cbi5jc3NhbmltYXRpb25zIC5hamF4LXByb2dyZXNzLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbiB7XG4gIGhlaWdodDogNDRweDtcbiAgd2lkdGg6IDQ0cHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICBtYXJnaW4tbGVmdDogLTIycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHotaW5kZXg6IDcwMDA7XG4gIG9wYWNpdHk6IC45O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMWUzNTVmOyB9XG4gIC5jc3NhbmltYXRpb25zIC5hamF4LXByb2dyZXNzLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL3N2Zy9sb2FkZXIuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiByb3RhdGUgNzAwbXMgbGluZWFyIGluZmluaXRlIG5vcm1hbDsgfVxuXG4ubm8tY3NzYW5pbWF0aW9ucyAuYWpheC1wcm9ncmVzcy5hamF4LXByb2dyZXNzLWZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvZ2lmLWxvYWRlci5naWZcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuXG4uY29udGVudC1tb2RlcmF0aW9uLWVudGl0eS1tb2RlcmF0aW9uLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50LW1vZGVyYXRpb24tZW50aXR5LW1vZGVyYXRpb24tZm9ybSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0gLmZvcm0taXRlbSBsYWJlbCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDsgfVxuICAgIC5jb250ZW50LW1vZGVyYXRpb24tZW50aXR5LW1vZGVyYXRpb24tZm9ybSB1bC5lbnRpdHktbW9kZXJhdGlvbi1mb3JtIC5mb3JtLWl0ZW0gaW5wdXQsXG4gICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0gLmZvcm0taXRlbSBzZWxlY3Qge1xuICAgICAgbWFyZ2luLXRvcDogLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0gLmZvcm0tc3VibWl0IHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogNHB4IDEuNWVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwNzFiODtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbi10b3A6IDEuNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZDogIzAwNzFiODsgfVxuICAgICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0gLmZvcm0tc3VibWl0OmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFmODZjNztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWY4NmM3O1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgyMywgMjYsIDI4LCAwLjI1KTsgfVxuICAgIC5jb250ZW50LW1vZGVyYXRpb24tZW50aXR5LW1vZGVyYXRpb24tZm9ybSB1bC5lbnRpdHktbW9kZXJhdGlvbi1mb3JtIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICAgICAgLmNvbnRlbnQtbW9kZXJhdGlvbi1lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHVsLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4ucmVnaW9uLWNvbnRlbnQgLmRpZmYtaGVhZGVyLFxuLnJlZ2lvbi1jb250ZW50IC5kaWZmLWNvbnRyb2xzLFxuLnJlZ2lvbi1jb250ZW50IC5kaWZmbW9kLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlZ2lvbi1jb250ZW50IC5kaWZmLWhlYWRlcixcbiAgICAucmVnaW9uLWNvbnRlbnQgLmRpZmYtY29udHJvbHMsXG4gICAgLnJlZ2lvbi1jb250ZW50IC5kaWZmbW9kLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlZ2lvbi1jb250ZW50IC5kaWZmLWhlYWRlcixcbiAgICAucmVnaW9uLWNvbnRlbnQgLmRpZmYtY29udHJvbHMsXG4gICAgLnJlZ2lvbi1jb250ZW50IC5kaWZmbW9kLmVudGl0eS1tb2RlcmF0aW9uLWZvcm0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG5cbi5yZWdpb24tY29udGVudCAuZGlmZi1yZXNwb25zaXZlLXRhYmxlLXdyYXBwZXIgaDIsIC5yZWdpb24tY29udGVudCAuZGlmZi1yZXNwb25zaXZlLXRhYmxlLXdyYXBwZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucmVnaW9uLWNvbnRlbnQgLmRpZmYtcmVzcG9uc2l2ZS10YWJsZS13cmFwcGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVnaW9uLWNvbnRlbnQgLmRpZmYtcmVzcG9uc2l2ZS10YWJsZS13cmFwcGVyIGgyLCAucmVnaW9uLWNvbnRlbnQgLmRpZmYtcmVzcG9uc2l2ZS10YWJsZS13cmFwcGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnJlZ2lvbi1jb250ZW50IC5kaWZmLXJlc3BvbnNpdmUtdGFibGUtd3JhcHBlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlZ2lvbi1jb250ZW50IC5kaWZmLXJlc3BvbnNpdmUtdGFibGUtd3JhcHBlciBoMiwgLnJlZ2lvbi1jb250ZW50IC5kaWZmLXJlc3BvbnNpdmUtdGFibGUtd3JhcHBlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5yZWdpb24tY29udGVudCAuZGlmZi1yZXNwb25zaXZlLXRhYmxlLXdyYXBwZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuXG5ib2R5LnRvb2xiYXItaG9yaXpvbnRhbC50b29sYmFyLXRyYXktb3BlbiB7XG4gIG1hcmdpbi10b3A6IDc5cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgYm9keS50b29sYmFyLWhvcml6b250YWwudG9vbGJhci10cmF5LW9wZW4gLm1lbnUtLW1haW4ge1xuICAgICAgdG9wOiAxNDRweDsgfSB9XG4gIGJvZHkudG9vbGJhci1ob3Jpem9udGFsLnRvb2xiYXItdHJheS1vcGVuIGhlYWRlciB7XG4gICAgdG9wOiA3OXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgYm9keS50b29sYmFyLWhvcml6b250YWwudG9vbGJhci10cmF5LW9wZW4gbWFpbiAubm9kZV9fY29udGVudCA+IC5maWVsZDpmaXJzdC1jaGlsZCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTIwOXB4OyB9IH1cblxuYm9keS50b29sYmFyLXZlcnRpY2FsLFxuYm9keS50b29sYmFyLWhvcml6b250YWwge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAzOXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2UtaGVpZ2h0OiA0NzVweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgYm9keS50b29sYmFyLXZlcnRpY2FsIC5tZW51LS1tYWluID4gLm1lbnUsXG4gICAgYm9keS50b29sYmFyLWhvcml6b250YWwgLm1lbnUtLW1haW4gPiAubWVudSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzBweCk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLWhlaWdodDogNDc1cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIGJvZHkudG9vbGJhci12ZXJ0aWNhbCAubWVudS0tbWFpbiA+IC5tZW51LFxuICAgIGJvZHkudG9vbGJhci1ob3Jpem9udGFsIC5tZW51LS1tYWluID4gLm1lbnUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTA0cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgYm9keS50b29sYmFyLXZlcnRpY2FsIC5tZW51LS1tYWluLFxuICAgIGJvZHkudG9vbGJhci1ob3Jpem9udGFsIC5tZW51LS1tYWluIHtcbiAgICAgIHRvcDogMTMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICBib2R5LnRvb2xiYXItdmVydGljYWwgLm1lbnUtLW1haW4sXG4gICAgYm9keS50b29sYmFyLWhvcml6b250YWwgLm1lbnUtLW1haW4ge1xuICAgICAgdG9wOiA2NXB4OyB9IH1cbiAgYm9keS50b29sYmFyLXZlcnRpY2FsIGhlYWRlcixcbiAgYm9keS50b29sYmFyLWhvcml6b250YWwgaGVhZGVyIHtcbiAgICB0b3A6IDM5cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBib2R5LnRvb2xiYXItdmVydGljYWwgbWFpbiAubm9kZV9fY29udGVudCA+IC5maWVsZDpmaXJzdC1jaGlsZCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIsXG4gICAgYm9keS50b29sYmFyLWhvcml6b250YWwgbWFpbiAubm9kZV9fY29udGVudCA+IC5maWVsZDpmaXJzdC1jaGlsZCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTE2OXB4OyB9IH1cblxudWwubWVudSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICB1bC5tZW51IC5tZW51LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDA7IH1cblxuLm1lbnUtLW1haW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNjVweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZDogI2VlZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tZW51LS1tYWluIHtcbiAgICAgIHRvcDogMTMwcHg7IH0gfVxuICAubWVudS0tbWFpbi5vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWVudS0tbWFpbiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xcyBsaW5lYXI7IH1cbiAgICAgIC5tZW51LS1tYWluLm9wZW4tbWVudSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5tZW51LS1tYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxleDogMTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDQycHggMCAwIDUzcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLm1lbnUtLW1haW4ub3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1lbnUtLW1haW4gPiAubWVudSB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2UtaGVpZ2h0OiA0NzVweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLm1lbnUtLW1haW4gPiAubWVudSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzBweCk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLWhlaWdodDogNDc1cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5tZW51LS1tYWluID4gLm1lbnUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjVweCk7IH0gfVxuICAubWVudS0tbWFpbiAubWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93OiBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLm1lbnUtLW1haW4gLm1lbnUge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cbiAgICAubWVudS0tbWFpbiAubWVudSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDIzNzVyZW07XG4gICAgICBjb2xvcjogIzFlMzA0NjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5tZW51LS1tYWluIC5tZW51IGEge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjc1cmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgLm1lbnUtLW1haW4gLm1lbnUgYSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUuMzc1cmVtOyB9IH1cbiAgICAgIC5tZW51LS1tYWluIC5tZW51IGEuaXMtYWN0aXZlLCAubWVudS0tbWFpbiAubWVudSBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjODVhOWMzOyB9XG4gICAgLm1lbnUtLW1haW4gLm1lbnUgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogc29saWQgI2ZmZjtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjMWUzMDQ2OyB9XG4gICAgICAubWVudS0tbWFpbiAubWVudSA+IGxpICsgbGkge1xuICAgICAgICBib3JkZXItdG9wOiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgIC5tZW51LS1tYWluIC5tZW51ID4gbGkge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIC5tZW51LS1tYWluIC5tZW51ID4gbGkuaXMtYWN0aXZlID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMWUzMDQ2OyB9XG4gICAgICAubWVudS0tbWFpbiAubWVudSA+IGxpID4gYTpob3ZlcixcbiAgICAgIC5tZW51LS1tYWluIC5tZW51ID4gbGkgPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjODVhOWMzOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLm1lbnUtLW1haW4gLm1lbnUgLmlzLWFjdGl2ZSBhOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTM4OGRmO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICAubWVudS0tbWFpbiAubWVudS1sZXZlbC0wID4gLm1lbnUtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAubWVudS0tbWFpbiAubWVudS1sZXZlbC0xIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubWVudS0tbWFpbiAubWVudS1pdGVtLS1leHBhbmRlZCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gYTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qSAXCI7IH1cbiAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gYTo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLm1lbnUtLW1haW4gLm1lbnUtaXRlbS0tZXhwYW5kZWQgPiBhOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDE5cHg7XG4gICAgICAgICAgICByaWdodDogLTI0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gYTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB0b3A6IGF1dG87IH0gfVxuICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkLm9wZW4tc3ViIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkLm9wZW4tc3ViIGE6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLm1lbnUtLW1haW4gLm1lbnUtaXRlbS0tZXhwYW5kZWQub3Blbi1zdWIgYTo6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAxOHB4OyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkLm9wZW4tc3ViIGE6OmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG4gICAgICAubWVudS0tbWFpbiAubWVudS1pdGVtLS1leHBhbmRlZC5vcGVuLXN1YiA+IC5tZW51IHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gLm1lbnUge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAubWVudS0tbWFpbiAubWVudS1pdGVtLS1leHBhbmRlZCA+IC5tZW51IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBtaW4td2lkdGg6IDI4MnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDI0cHggNDBweCAxNnB4O1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gICAgICAgICAgei1pbmRleDogMTA7IH0gfVxuICAgICAgLm1lbnUtLW1haW4gLm1lbnUtaXRlbS0tZXhwYW5kZWQgPiAubWVudSBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gLm1lbnUgYSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgICAgICAgIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gLm1lbnUgYTpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjODVhOWMzOyB9IH1cbiAgICAgICAgLm1lbnUtLW1haW4gLm1lbnUtaXRlbS0tZXhwYW5kZWQgPiAubWVudSBhOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAubWVudS0tbWFpbiAubWVudS1pdGVtLS1leHBhbmRlZCA+IC5tZW51IGE6aG92ZXIsIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gLm1lbnUgYTphY3RpdmUsIC5tZW51LS1tYWluIC5tZW51LWl0ZW0tLWV4cGFuZGVkID4gLm1lbnUgYS5pcy1hY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAjODVhOWMzOyB9XG5cbi5tZW51LS1xdWljay1saW5rcyAubWVudSBsaSxcbi5tZW51LS1wYXJ0bmVycyAubWVudSBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDdweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tZW51LS1xdWljay1saW5rcyAubWVudSBsaSxcbiAgICAubWVudS0tcGFydG5lcnMgLm1lbnUgbGkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG4gIC5tZW51LS1xdWljay1saW5rcyAubWVudSBsaTpsYXN0LWNoaWxkLFxuICAubWVudS0tcGFydG5lcnMgLm1lbnUgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWVudS0tcXVpY2stbGlua3MgLm1lbnUgYSxcbi5tZW51LS1wYXJ0bmVycyAubWVudSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tZW51LS1xdWljay1saW5rcyAubWVudSBhOmJlZm9yZSxcbiAgLm1lbnUtLXBhcnRuZXJzIC5tZW51IGE6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu6khlwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm1lbnUtLXF1aWNrLWxpbmtzIC5tZW51IGEsXG4gICAgLm1lbnUtLXBhcnRuZXJzIC5tZW51IGEge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjhweDsgfSB9XG4gIC5tZW51LS1xdWljay1saW5rcyAubWVudSBhOmhvdmVyLCAubWVudS0tcXVpY2stbGlua3MgLm1lbnUgYTphY3RpdmUsIC5tZW51LS1xdWljay1saW5rcyAubWVudSBhLmlzLWFjdGl2ZSxcbiAgLm1lbnUtLXBhcnRuZXJzIC5tZW51IGE6aG92ZXIsXG4gIC5tZW51LS1wYXJ0bmVycyAubWVudSBhOmFjdGl2ZSxcbiAgLm1lbnUtLXBhcnRuZXJzIC5tZW51IGEuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1lbnUtLXF1aWNrLWxpbmtzIC5tZW51IGE6aG92ZXI6OmJlZm9yZSxcbiAgICAubWVudS0tcGFydG5lcnMgLm1lbnUgYTpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDVweDsgfSB9XG4gIC5tZW51LS1xdWljay1saW5rcyAubWVudSBhOjpiZWZvcmUsXG4gIC5tZW51LS1wYXJ0bmVycyAubWVudSBhOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdG9wOiA1cHg7XG4gICAgbGVmdDogMDtcbiAgICBjb2xvcjogI2Y1YjQzMztcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IC4ycyBsaW5lYXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm1lbnUtLXF1aWNrLWxpbmtzIC5tZW51IGE6OmJlZm9yZSxcbiAgICAgIC5tZW51LS1wYXJ0bmVycyAubWVudSBhOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjY4NzVyZW07IH0gfVxuXG4jYmFja3RvdG9wIHtcbiAgbWFyZ2luLWxlZnQ6IC0zNXB4OyB9XG5cbmh0bWwsIGJvZHkge1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgaHRtbCAubGF5b3V0LWNvbnRhaW5lciwgYm9keSAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgaHRtbCAuZGlhbG9nLW9mZi1jYW52YXMtbWFpbi1jYW52YXMsIGJvZHkgLmRpYWxvZy1vZmYtY2FudmFzLW1haW4tY2FudmFzIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgaHRtbCBtYWluLCBib2R5IG1haW4ge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBwYWRkaW5nLXRvcDogNjVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICBodG1sIG1haW4sIGJvZHkgbWFpbiB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGh0bWwgbWFpbiwgYm9keSBtYWluIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEzMHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgaHRtbCBtYWluIC5ub2RlX19jb250ZW50ID4gLmZpZWxkOmZpcnN0LWNoaWxkIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciwgYm9keSBtYWluIC5ub2RlX19jb250ZW50ID4gLmZpZWxkOmZpcnN0LWNoaWxkIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMzBweDsgfSB9XG5cbi5mb3JtLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5mb3JtLWl0ZW0gbGFiZWwsIC5mb3JtLWl0ZW0gLmRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuZm9ybS1pdGVtIGxhYmVsIHtcbiAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLmZvcm0taXRlbSBsYWJlbC5mb3JtLXJlcXVpcmVkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcqJzsgfVxuICAuZm9ybS1pdGVtIC5kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDRweCAxMHB4OyB9XG5cblt0eXBlPVwidGV4dFwiXSwgW3R5cGU9XCJwYXNzd29yZFwiXSwgW3R5cGU9XCJkYXRlXCJdLCBbdHlwZT1cImRhdGV0aW1lXCJdLCBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLCBbdHlwZT1cIm1vbnRoXCJdLCBbdHlwZT1cIndlZWtcIl0sIFt0eXBlPVwiZW1haWxcIl0sIFt0eXBlPVwibnVtYmVyXCJdLCBbdHlwZT1cInNlYXJjaFwiXSwgW3R5cGU9XCJ0ZWxcIl0sIFt0eXBlPVwidGltZVwiXSwgW3R5cGU9XCJ1cmxcIl0sIFt0eXBlPVwiY29sb3JcIl0sIHRleHRhcmVhIHtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6IHJnYmEoNzQsIDc0LCA3NCwgMC42Myk7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycyBsaW5lYXI7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICBbdHlwZT1cInRleHRcIl06Zm9jdXMsIFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsIFt0eXBlPVwiZGF0ZVwiXTpmb2N1cywgW3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cywgW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cywgW3R5cGU9XCJtb250aFwiXTpmb2N1cywgW3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLCBbdHlwZT1cImVtYWlsXCJdOmZvY3VzLCBbdHlwZT1cIm51bWJlclwiXTpmb2N1cywgW3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsIFt0eXBlPVwidGVsXCJdOmZvY3VzLCBbdHlwZT1cInRpbWVcIl06Zm9jdXMsIFt0eXBlPVwidXJsXCJdOmZvY3VzLCBbdHlwZT1cImNvbG9yXCJdOmZvY3VzLCB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIxKTtcbiAgICBjb2xvcjogIzRhNGE0YTsgfVxuICBbdHlwZT1cInRleHRcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJwYXNzd29yZFwiXTotd2Via2l0LWF1dG9maWxsLCBbdHlwZT1cImRhdGVcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJkYXRldGltZVwiXTotd2Via2l0LWF1dG9maWxsLCBbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOi13ZWJraXQtYXV0b2ZpbGwsIFt0eXBlPVwibW9udGhcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJ3ZWVrXCJdOi13ZWJraXQtYXV0b2ZpbGwsIFt0eXBlPVwiZW1haWxcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJudW1iZXJcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJzZWFyY2hcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJ0ZWxcIl06LXdlYmtpdC1hdXRvZmlsbCwgW3R5cGU9XCJ0aW1lXCJdOi13ZWJraXQtYXV0b2ZpbGwsIFt0eXBlPVwidXJsXCJdOi13ZWJraXQtYXV0b2ZpbGwsIFt0eXBlPVwiY29sb3JcIl06LXdlYmtpdC1hdXRvZmlsbCwgdGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMzBweCAjZmZmIGluc2V0OyB9XG5cbi5jdXN0b20tYmxvY2sgLmNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VzdG9tLWJsb2NrIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN1c3RvbS1ibG9jayAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuXG4uY3VzdG9tLWJsb2NrIC5jdXN0b20tYmxvY2sgPiAuY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogaW5oZXJpdDtcbiAgcGFkZGluZzogMDsgfVxuXG4uYmxvY2stc3lzdGVtLWJyYW5kaW5nLWJsb2NrIHtcbiAgd2lkdGg6IDk2cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYmxvY2stc3lzdGVtLWJyYW5kaW5nLWJsb2NrIHtcbiAgICAgIHdpZHRoOiAxOTJweDsgfSB9XG5cbltpZD0nYmxvY2stc3RheWludG91Y2gnXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddOjpiZWZvcmUsIFtpZD0nYmxvY2stc3RheWludG91Y2gnXTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgdG9wOiA1cHg7XG4gICAgICBib3R0b206IDhweDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTcwLCAxNzYsIDE4NiwgMC40NSk7IH0gfVxuICBbaWQ9J2Jsb2NrLXN0YXlpbnRvdWNoJ106OmJlZm9yZSB7XG4gICAgbGVmdDogOHB4OyB9XG4gIFtpZD0nYmxvY2stc3RheWludG91Y2gnXTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddID4gKiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDY1cHg7IH0gfVxuICBbaWQ9J2Jsb2NrLXN0YXlpbnRvdWNoJ10gYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddIC5maWVsZC0tbmFtZS1ib2R5IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddIC5maWVsZC0tbmFtZS1ib2R5IHAge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIFtpZD0nYmxvY2stc3RheWludG91Y2gnXSAuZmllbGQtLW5hbWUtYm9keSBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddIC5maWVsZC0tbmFtZS1ib2R5IHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgZm9vdGVyLmZvdXItY29sIFtpZD0nYmxvY2stc3RheWludG91Y2gnXSA+ICoge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7IH0gfVxuXG5baWQ9J2Jsb2NrLWNvcHlyaWdodCddIHAge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYSxcbltpZD0nYmxvY2stbG9va2luZ2ZvcmFjYXJlZXInXSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGEsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXVxuICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYSB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGEsXG4gICAgW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIGEge1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYSxcbiAgICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGE6YWZ0ZXIsXG4gIFtpZD0nYmxvY2stbG9va2luZ2ZvcmFjYXJlZXInXSBhOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYSxcbiAgICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICBbaWQ9J2Jsb2NrLXF1ZXN0aW9uc29yY29tbWVudHMnXSBhOjphZnRlcixcbiAgW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0yMHB4O1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGE6OmFmdGVyLFxuICAgICAgW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIGE6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYTpob3ZlcixcbiAgICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYTpob3ZlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICBbaWQ9J2Jsb2NrLXF1ZXN0aW9uc29yY29tbWVudHMnXSBhOmhvdmVyOjphZnRlcixcbiAgICAgIFtpZD0nYmxvY2stbG9va2luZ2ZvcmFjYXJlZXInXSBhOmhvdmVyOjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYTpob3ZlciwgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYTpmb2N1cywgW2lkPSdibG9jay1xdWVzdGlvbnNvcmNvbW1lbnRzJ10gYTphY3RpdmUsXG4gIFtpZD0nYmxvY2stbG9va2luZ2ZvcmFjYXJlZXInXSBhOmhvdmVyLFxuICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYTpmb2N1cyxcbiAgW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIGE6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGE6aG92ZXIsIFtpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddIGE6YWN0aXZlLCBbaWQ9J2Jsb2NrLXF1ZXN0aW9uc29yY29tbWVudHMnXSBhOmZvY3VzLFxuICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYTpob3ZlcixcbiAgW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIGE6YWN0aXZlLFxuICBbaWQ9J2Jsb2NrLWxvb2tpbmdmb3JhY2FyZWVyJ10gYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG5cbmZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIC5mb3JtLWl0ZW0gbGFiZWwge1xuICBjb2xvcjogI2ZmZjsgfVxuXG5mb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSBpbnB1dFt0eXBlPSd0ZXh0J10sIGZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIGlucHV0W3R5cGU9J2VtYWlsJ10sIGZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10ge1xuICBjb2xvcjogI2ZmZjsgfVxuXG5mb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0biB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIC5zdWJtaXQtYnRuIHtcbiAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIC5zdWJtaXQtYnRuIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi7qSAXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0biB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0bjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogLTIwcHg7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46aG92ZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0bjpob3ZlciwgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46Zm9jdXMsIGZvb3RlciAuYmxvY2std2ViZm9ybS1ibG9jayBmb3JtIC5zdWJtaXQtYnRuOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0bjpob3ZlciwgZm9vdGVyIC5ibG9jay13ZWJmb3JtLWJsb2NrIGZvcm0gLnN1Ym1pdC1idG46YWN0aXZlLCBmb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sgZm9ybSAuc3VibWl0LWJ0bjpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG5cbi5wYXJhbGxheC1iYWNrZ3JvdW5kIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAucGFyYWxsYXgtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzMCUgMCAhaW1wb3J0YW50OyB9IH1cblxuLnN0YXktaW4tdG91Y2gtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMxZTMwNDY7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDsgfSB9XG4gICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiBoMiBzcGFuLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiBoMjo6YWZ0ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWUzMDQ2OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyOjphZnRlciwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGU6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogNjBweDsgfSB9XG4gIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgICAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtYm9keSA+IGRpdiB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWJvZHkgPiBkaXYge1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWJvZHkgPiBkaXYge1xuICAgICAgICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7IH0gfVxuICAgICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWJvZHkgPiBkaXYgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMTZweDsgfVxuICAgICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWJvZHkgPiBkaXYgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfVxuICAuc3RheS1pbi10b3VjaC1ibG9jayBoNCwgLnN0YXktaW4tdG91Y2gtYmxvY2sgZm9vdGVyIGgyLCBmb290ZXIgLnN0YXktaW4tdG91Y2gtYmxvY2sgaDIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiBoMiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayBoMiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9ja1xuICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMixcbiAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgaDIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgcCwgLnN0YXktaW4tdG91Y2gtYmxvY2tcbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIHAge1xuICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgaDQsIC5zdGF5LWluLXRvdWNoLWJsb2NrIGZvb3RlciBoMiwgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyLCAuc3RheS1pbi10b3VjaC1ibG9jayBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgaDIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnN0YXktaW4tdG91Y2gtYmxvY2tcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyLFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgaDIsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgcCwgLnN0YXktaW4tdG91Y2gtYmxvY2tcbiAgICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCxcbiAgICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrIGg0ICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgZm9vdGVyIGgyICsgKiwgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICosIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICosIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiBoMiArICosIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKiwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICosIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIgKyAqLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICosIC5zdGF5LWluLXRvdWNoLWJsb2NrXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIgKyAqLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKiwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSArICosIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgKyAqLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAgKyAqLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIHAgKyAqLCAuc3RheS1pbi10b3VjaC1ibG9ja1xuICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCArICosXG4gICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuc3RheS1pbi10b3VjaC1ibG9jayBwICsgKiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrIGg0ICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayBmb290ZXIgaDIgKyAqOjpiZWZvcmUsIGZvb3RlciAuc3RheS1pbi10b3VjaC1ibG9jayBoMiArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyICsgKjo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMiArICo6OmJlZm9yZSxcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIGgyICsgKjo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSArICo6OmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuc3RheS1pbi10b3VjaC1ibG9jayAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSArICo6OmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwICsgKjo6YmVmb3JlLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIHAgKyAqOjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrXG4gICAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAgKyAqOjpiZWZvcmUsXG4gICAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIHAgKyAqOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBjb2xvcjogI2IwYjdiZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3Mge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDQgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBmb290ZXIgaDIgKyAqOmJlZm9yZSwgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgaDIgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3NcbiAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIgKyAqOmJlZm9yZSxcbiAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBoMiArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1hZGRyZXNzIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3MgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwICsgKjpiZWZvcmUsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBwICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LWFkZHJlc3NcbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwICsgKjpiZWZvcmUsXG4gIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtYWRkcmVzcyBwICsgKjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi7qSCXCI7IH1cbiAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIGg0ICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciBmb290ZXIgaDIgKyAqOmJlZm9yZSwgZm9vdGVyIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciBoMiArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIGgyICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSArICo6YmVmb3JlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyICsgKjpiZWZvcmUsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciBoMiArICo6YmVmb3JlLCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICsgKjpiZWZvcmUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgKyAqOmJlZm9yZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUgKyAqOmJlZm9yZSwgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCArICo6YmVmb3JlLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlciBwICsgKjpiZWZvcmUsIC5zdGF5LWluLXRvdWNoLWJsb2NrIC5jb250YWN0LXBob25lLW51bWJlclxuICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAgKyAqOmJlZm9yZSxcbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgcCArICo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu6kg1wiOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnN0YXktaW4tdG91Y2gtYmxvY2sgLmNvbnRhY3QtcGhvbmUtbnVtYmVyIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG4gICAgICAuc3RheS1pbi10b3VjaC1ibG9jayAuY29udGFjdC1waG9uZS1udW1iZXIgPiAqIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cblxuLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBjb2xvcjogIzFlMzA0NjsgfVxuICAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIuYWN0aXZlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmFjdGl2ZS5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9IH1cblxuLm5ld3MtYXJjaGl2ZS1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDc1cHg7IH1cbiAgLm5ld3MtYXJjaGl2ZS1ibG9jayAudmlldy1ncm91cGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAudmlldy1ncm91cGluZzpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm5ld3MtYXJjaGl2ZS1ibG9jayAudmlldy1ncm91cGluZy1oZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbS1jb2xvciAuOHMgbGluZWFyO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAudmlldy1ncm91cGluZy1oZWFkZXIuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAudmlldy1ncm91cGluZy1oZWFkZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLupIdcIjsgfVxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLnZpZXctZ3JvdXBpbmctaGVhZGVyOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMTdweDtcbiAgICAgIGZvbnQtc2l6ZTogMC41cmVtO1xuICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLnZpZXctZ3JvdXBpbmctaGVhZGVyLmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlci5hY3RpdmUge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAgICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlcjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCLupIdcIjsgfVxuICAgICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlcjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgICByaWdodDogMTdweDtcbiAgICAgICAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICAgICAgICBjb2xvcjogIzFlMzA0NjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC52aWV3LWdyb3VwaW5nLWhlYWRlci5hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfSB9XG4gIC5uZXdzLWFyY2hpdmUtYmxvY2sgLnZpZXctZ3JvdXBpbmctY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGgsXG4gIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgcGFkZGluZzogMCAxMHB4IDAgMTVweDsgfVxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm5ld3MtYXJjaGl2ZS1tb250aC5hY3RpdmUsXG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50LmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbS1jb2xvciAuOHMgbGluZWFyO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzFlMzA0NjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE3cHg7IH1cbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGg6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLupIdcIjsgfVxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm5ld3MtYXJjaGl2ZS1tb250aDo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyM3B4O1xuICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGguYWN0aXZlOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm5ld3MtYXJjaGl2ZS1tb250aC5hY3RpdmUge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGgge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7IH1cbiAgICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubmV3cy1hcmNoaXZlLW1vbnRoOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIu6kh1wiOyB9XG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm5ld3MtYXJjaGl2ZS1tb250aDo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDM3cHg7XG4gICAgICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjVyZW07XG4gICAgICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubmV3cy1hcmNoaXZlLW1vbnRoLmFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9IH1cbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5uZXdzLWFyY2hpdmUtbW9udGg6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7IH1cbiAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAubmV3cy1hcmNoaXZlLWJsb2NrIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93LFxuICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3cge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3csXG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3cge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3csXG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3cge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSxcbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgLnZpZXdzLWZpZWxkLXRpdGxlLFxuICAgICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIyNXB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH0gfVxuICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSBhLFxuICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgYTpiZWZvcmUsXG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgYTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi7qSGXCI7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgYTpob3Zlcjo6YmVmb3JlLFxuICAgICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgYTpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xMnB4OyB9IH1cbiAgICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSBhOjpiZWZvcmUsXG4gICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgYTo6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRvcDogNXB4O1xuICAgICAgICAgIGxlZnQ6IC0xNnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICAgICAgY29sb3I6ICNmNWI0MzM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAuMnMgbGluZWFyOyB9XG4gICAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgLnZpZXdzLWZpZWxkLXRpdGxlIH4gZGl2LFxuICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSB+IGRpdiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBjb2xvcjogIzg1YTljMzsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5uZXdzLWFyY2hpdmUtYmxvY2sgLm1vbnRoLWFyY2hpdmUtY29udGVudCAudmlld3MtZmllbGQtdGl0bGUgfiBkaXYsXG4gICAgICAgICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1maWVsZC10aXRsZSB+IGRpdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgLm5ld3MtYXJjaGl2ZS1ibG9jayAubW9udGgtYXJjaGl2ZS1jb250ZW50IGRpdltjbGFzcyo9J3ZpZXdzLWZpZWxkIHZpZXdzLWZpZWxkLWNyZWF0ZWQnXSxcbiAgICAubmV3cy1hcmNoaXZlLWJsb2NrIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgZGl2W2NsYXNzKj0ndmlld3MtZmllbGQgdmlld3MtZmllbGQtY3JlYXRlZCddIHtcbiAgICAgIHRvcDogMXB4OyB9XG5cbi5qcy12aWV3LWRvbS1pZC1hamF4LW5ld3MgPiAudmlldy1jb250ZW50LFxuLm5ld3MtbGF0ZXN0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IC4ycyBsaW5lYXI7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuanMtdmlldy1kb20taWQtYWpheC1uZXdzID4gLnZpZXctY29udGVudCxcbiAgICAubmV3cy1sYXRlc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDsgfSB9XG5cbi5uZXdzLWxhdGVzdC1pbWFnZXMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5uZXdzLWxhdGVzdC1pbWFnZXMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDsgfSB9XG4gIC5uZXdzLWxhdGVzdC1pbWFnZXMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuLm5ld3MtbGF0ZXN0LXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5uZXdzLWxhdGVzdC10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIC5uZXdzLWxhdGVzdC10aXRsZSBoMywgLm5ld3MtbGF0ZXN0LXRpdGxlIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLm5ld3MtbGF0ZXN0LXRpdGxlIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDY2NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgY29sb3I6ICMxZTMwNDY7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5uZXdzLWxhdGVzdC10aXRsZSBoMywgLm5ld3MtbGF0ZXN0LXRpdGxlIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gaDIsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLm5ld3MtbGF0ZXN0LXRpdGxlIC5zdGF5LWluLXRvdWNoLWJsb2NrID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgb3JkZXI6IDI7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1sYXRlc3QtdGl0bGUgaDMsIC5uZXdzLWxhdGVzdC10aXRsZSAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5uZXdzLWxhdGVzdC10aXRsZSAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3MtbGF0ZXN0LXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1sYXRlc3QtdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAubmV3cy1sYXRlc3QtdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLWNvdW50ZXIsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5uZXdzLWxhdGVzdC10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLWxhdGVzdC10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLm5ld3MtbGF0ZXN0LXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH0gfVxuICAubmV3cy1sYXRlc3QtdGl0bGUgYTpob3ZlciB7XG4gICAgY29sb3I6ICM4NWE5YzM7IH1cblxuLm5ld3MtbGF0ZXN0LWRhdGUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjODVhOWMzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5ld3MtbGF0ZXN0LWRhdGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxNXB4O1xuICAgICAgcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAubmV3cy1sYXRlc3QtZGF0ZSB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuXG4ubmV3cy1sYXRlc3Qtc3VtbWFyeSB7XG4gIGNvbG9yOiAjMWUzMDQ2O1xuICBmb250LXdlaWdodDogMjAwO1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5ld3MtbGF0ZXN0LXN1bW1hcnkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfSB9XG5cbi5uZXdzLWxhdGVzdC1ib2R5IHAge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5ld3MtbGF0ZXN0LWJvZHkgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgLm5ld3MtbGF0ZXN0LWJvZHkgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5uZXdzLW90aGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAubmV3cy1vdGhlciAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAgIC5uZXdzLW90aGVyIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlNWU1OyB9XG4gICAgICAubmV3cy1vdGhlciAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdyxcbiAgICAgIC5uZXdzLW90aGVyIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93IHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAubmV3cy1vdGhlciAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSgxbiksXG4gICAgICAgIC5uZXdzLW90aGVyIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLm5ld3Mtb3RoZXIgLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3c6bnRoLW9mLXR5cGUoMm4rMSksXG4gICAgICAgIC5uZXdzLW90aGVyIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAubmV3cy1vdGhlciAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpsYXN0LWNoaWxkLFxuICAgICAgICAubmV3cy1vdGhlciAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdzpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIC5uZXdzLW90aGVyIC52aWV3cy1yb3cge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG4gICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdy5hY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAubmV3cy1vdGhlciAudmlld3Mtcm93Om50aC1sYXN0LWNoaWxkKDEpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfSB9XG4gICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtY2hpbGQoZXZlbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtY2hpbGQob2RkKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtbGFzdC1jaGlsZCgxKSwgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNWU1ZTU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAubmV3cy1vdGhlciAudmlld3Mtcm93Om50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfVxuICAgICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1vdGhlciAudmlld3Mtcm93IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gICAgICAgIC5uZXdzLW90aGVyIC52aWV3cy1yb3c6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAgICAgLm5ld3Mtb3RoZXIgLnZpZXdzLXJvdzpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5uZXdzLW90aGVyIC52aWV3cy1yb3c6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0OXB4OyB9XG4gICAgICAubmV3cy1vdGhlciAudmlld3Mtcm93Om50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDsgfSB9XG4gIC5uZXdzLW90aGVyLWltYWdlcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1vdGhlci1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICAubmV3cy1vdGhlci1pbWFnZXMgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5uZXdzLW90aGVyLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5uZXdzLW90aGVyLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gICAgLm5ld3Mtb3RoZXItdGl0bGUgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzg1YTljMzsgfVxuICAgIC5uZXdzLW90aGVyLXRpdGxlIGg0LCAubmV3cy1vdGhlci10aXRsZSBmb290ZXIgaDIsIGZvb3RlciAubmV3cy1vdGhlci10aXRsZSBoMiwgLm5ld3Mtb3RoZXItdGl0bGUgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3Mtb3RoZXItdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3Mtb3RoZXItdGl0bGUgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAubmV3cy1vdGhlci10aXRsZSAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLm5ld3Mtb3RoZXItdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLm5ld3Mtb3RoZXItdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5uZXdzLW90aGVyLXRpdGxlIGgyLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAubmV3cy1vdGhlci10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLW90aGVyLXRpdGxlXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLm5ld3Mtb3RoZXItdGl0bGUgaDIsIC5uZXdzLW90aGVyLXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLm5ld3Mtb3RoZXItdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAubmV3cy1vdGhlci10aXRsZSAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLm5ld3Mtb3RoZXItdGl0bGUgcCwgLm5ld3Mtb3RoZXItdGl0bGVcbiAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsXG4gICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAubmV3cy1vdGhlci10aXRsZSBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB3aWR0aDogODAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgICAgLm5ld3Mtb3RoZXItdGl0bGUgaDQsIC5uZXdzLW90aGVyLXRpdGxlIGZvb3RlciBoMiwgZm9vdGVyIC5uZXdzLW90aGVyLXRpdGxlIGgyLCAubmV3cy1vdGhlci10aXRsZSBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLm5ld3Mtb3RoZXItdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLm5ld3Mtb3RoZXItdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5uZXdzLW90aGVyLXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5uZXdzLW90aGVyLXRpdGxlIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5uZXdzLW90aGVyLXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLm5ld3Mtb3RoZXItdGl0bGUgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAubmV3cy1vdGhlci10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5uZXdzLW90aGVyLXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLm5ld3Mtb3RoZXItdGl0bGUgaDIsIC5uZXdzLW90aGVyLXRpdGxlIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3Mtb3RoZXItdGl0bGVcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5uZXdzLW90aGVyLXRpdGxlIGgyLCAubmV3cy1vdGhlci10aXRsZSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5uZXdzLW90aGVyLXRpdGxlIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLm5ld3Mtb3RoZXItdGl0bGUgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAubmV3cy1vdGhlci10aXRsZSAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLm5ld3Mtb3RoZXItdGl0bGUgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5uZXdzLW90aGVyLXRpdGxlIHAsIC5uZXdzLW90aGVyLXRpdGxlXG4gICAgICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCxcbiAgICAgICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAubmV3cy1vdGhlci10aXRsZSBwIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBvcmRlcjogMjsgfSB9XG4gIC5uZXdzLW90aGVyLWRhdGUge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGNvbG9yOiAjODVhOWMzOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5uZXdzLW90aGVyLWRhdGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgICByaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAubmV3cy1vdGhlci1kYXRlIHtcbiAgICAgICAgb3JkZXI6IDE7IH0gfVxuICAubmV3cy1vdGhlci1ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLm5ld3Mtb3RoZXItYm9keSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAubmV3cy1vdGhlci1tb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NjsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubmV3cy1vdGhlci1tb3JlIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm5ld3Mtb3RoZXItbW9yZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3cy1vdGhlci1tb3JlIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgLm5ld3Mtb3RoZXItbW9yZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5uZXdzLW90aGVyLW1vcmUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAgIC5uZXdzLW90aGVyLW1vcmU6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAubmV3cy1vdGhlci1tb3JlOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5ld3Mtb3RoZXItbW9yZTpob3ZlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgICAubmV3cy1vdGhlci1tb3JlOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAgIC5uZXdzLW90aGVyLW1vcmU6aG92ZXIsIC5uZXdzLW90aGVyLW1vcmU6Zm9jdXMsIC5uZXdzLW90aGVyLW1vcmU6YWN0aXZlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5uZXdzLW90aGVyLW1vcmU6aG92ZXIsIC5uZXdzLW90aGVyLW1vcmU6YWN0aXZlLCAubmV3cy1vdGhlci1tb3JlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG5cbi5haXJwb3J0cy1sb2NhdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYWlycG9ydHMtbG9jYXRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogODVweDsgfSB9XG4gIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydHMtZ3JvdXAtdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTVlNWU1OyB9XG4gIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9XG4gICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93LFxuICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKSxcbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKzEpLFxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpsYXN0LWNoaWxkLFxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Omxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQsXG4gICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfVxuICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3csXG4gICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdyB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3c6bnRoLW9mLXR5cGUoMW4pLFxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3c6bnRoLW9mLXR5cGUoMm4rMSksXG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93Omxhc3QtY2hpbGQsXG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Omxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCxcbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuMzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xLjM3NXJlbTsgfVxuICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3csXG4gICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdyB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgICBwYWRkaW5nOiAxLjM3NXJlbTsgfVxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSgxbiksXG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSgzbisxKSxcbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3c6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCA+IC52aWV3cy1yb3c6bGFzdC1jaGlsZCxcbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3c6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMi4wNjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yLjA2MjVyZW07IH1cbiAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93LFxuICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3cge1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgcGFkZGluZzogMi4wNjI1cmVtOyB9XG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDFuKSxcbiAgICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCA+IC52aWV3cy1yb3c6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgPiAudmlld3Mtcm93Om50aC1vZi10eXBlKDRuKzEpLFxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdzpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50ID4gLnZpZXdzLXJvdzpsYXN0LWNoaWxkLFxuICAgICAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50ID4gLnZpZXdzLXJvdzpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCAudmlld3Mtcm93LFxuICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1yb3cge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50IC52aWV3cy1yb3cgPiAubm9kZSxcbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IC52aWV3cy1yb3cgPiAubm9kZSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTRweCAzMHB4IDRweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IH1cbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiAubW9udGgtYXJjaGl2ZS1jb250ZW50IC52aWV3cy1yb3cgPiAuYWlycG9ydC1jb250YWN0LWluZm8sXG4gICAgICAuYWlycG9ydHMtbG9jYXRpb24gLmFpcnBvcnQtbG9jYXRpb24tY29udGVudCAudmlld3Mtcm93ID4gLmFpcnBvcnQtY29udGFjdC1pbmZvIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgICAuYWlycG9ydHMtbG9jYXRpb24gLm1vbnRoLWFyY2hpdmUtY29udGVudCAudmlld3Mtcm93Omxhc3QtY2hpbGQgPiAubm9kZSxcbiAgICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgLnZpZXdzLXJvdzpsYXN0LWNoaWxkID4gLm5vZGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5tb250aC1hcmNoaXZlLWNvbnRlbnQgLnZpZXdzLXJvdyBwLFxuICAgICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnQgLnZpZXdzLXJvdyBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuYWlycG9ydHMtbG9jYXRpb24gaDQsIC5haXJwb3J0cy1sb2NhdGlvbiBmb290ZXIgaDIsIGZvb3RlciAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5haXJwb3J0cy1sb2NhdGlvbiBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuYWlycG9ydHMtbG9jYXRpb24gLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLCAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmFpcnBvcnRzLWxvY2F0aW9uIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuYWlycG9ydHMtbG9jYXRpb25cbiAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5haXJwb3J0cy1sb2NhdGlvbiBoMiwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAuYWlycG9ydHMtbG9jYXRpb24gLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5haXJwb3J0cy1sb2NhdGlvbiBwLCAuYWlycG9ydHMtbG9jYXRpb25cbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5haXJwb3J0cy1sb2NhdGlvbiBwIHtcbiAgICBjb2xvcjogIzFlMzA0NjtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5haXJwb3J0cy1sb2NhdGlvbiBoNCwgLmFpcnBvcnRzLWxvY2F0aW9uIGZvb3RlciBoMiwgZm9vdGVyIC5haXJwb3J0cy1sb2NhdGlvbiBoMiwgLmFpcnBvcnRzLWxvY2F0aW9uIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYWlycG9ydHMtbG9jYXRpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgZm9vdGVyIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvbiAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuYWlycG9ydHMtbG9jYXRpb24gLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5haXJwb3J0cy1sb2NhdGlvbiBoMiwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvblxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5haXJwb3J0cy1sb2NhdGlvbiAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5haXJwb3J0cy1sb2NhdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLmFpcnBvcnRzLWxvY2F0aW9uIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCwgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuYWlycG9ydHMtbG9jYXRpb24gcCwgLmFpcnBvcnRzLWxvY2F0aW9uXG4gICAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsXG4gICAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IC5haXJwb3J0cy1sb2NhdGlvbiBwIHtcbiAgICAgICAgbWluLWhlaWdodDogMTI0cHg7IH0gfVxuICAuYWlycG9ydHMtbG9jYXRpb24gLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC5haXJwb3J0cy1sb2NhdGlvbiAudmlld3MtZmllbGQtZmllbGQtYWlycG9ydC1hZGRyZXNzOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6kglwiOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuYWlycG9ydHMtbG9jYXRpb24gLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzcyBwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWNvbnRhY3QtaW5mbzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi7qSFXCI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWNvbnRhY3QtaW5mbyAuYWlycG9ydC1jb250YWN0LWluZm8gcCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAuYWlycG9ydHMtbG9jYXRpb24gLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzcyxcbiAgLmFpcnBvcnRzLWxvY2F0aW9uIC5haXJwb3J0LWNvbnRhY3QtaW5mbyxcbiAgLmFpcnBvcnRzLWxvY2F0aW9uIC52aWV3cy1maWVsZC1maWVsZC1haXJwb3J0LWFkZHJlc3MgKyBkaXYge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYWlycG9ydHMtbG9jYXRpb24gLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzczo6YmVmb3JlLFxuICAgIC5haXJwb3J0cy1sb2NhdGlvbiAuYWlycG9ydC1jb250YWN0LWluZm86OmJlZm9yZSxcbiAgICAuYWlycG9ydHMtbG9jYXRpb24gLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzcyArIGRpdjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAjYjBiN2JlOyB9XG5cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay10cmFjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stZGlzYWJsZWQge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAuNzsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnNsaWNrLXNsaWRlciAuc2xpY2stZG90cyBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4OyB9IH1cbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgICAgZm9udDogMCAvIDAgYTtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgbGluZWFyO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLXNsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMsIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmFjdGl2ZSB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4OyB9IH1cbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5nbS1idW5kbGVkLWNvbnRyb2wge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1hZ2VzL1BGLWdyYWRpZW50LnBuZ1wiKSBuby1yZXBlYXQgbGVmdCB0b3AvY292ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTYwcHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNoYWRvdy1iZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9QRi1ncmFkaWVudC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wL2NvdmVyOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciA+IC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zIHtcbiAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zOm5vdCguc2xpY2staW5pdGlhbGl6ZWQpIC5maWVsZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtczpub3QoLnNsaWNrLWluaXRpYWxpemVkKSAuZmllbGRfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zIC5zbGljay1zbGlkZSA+IGRpdiA+IC5maWVsZF9faXRlbSB7XG4gICAgICBoZWlnaHQ6IDQzNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSxcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgICBoZWlnaHQ6IDc0MHB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtID4gZGl2LFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtID4gZGl2IHtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSAuY29udGFpbmVyLFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIC5jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0gLmNvbnRhaW5lcixcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyAuc2xpY2stc2xpZGUgPiBkaXYgPiAuZmllbGRfX2l0ZW0gLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSAuY29udGFpbmVyLFxuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zIC5zbGljay1zbGlkZSA+IGRpdiA+IC5maWVsZF9faXRlbSAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIC5jb250YWluZXIsXG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIC5jb250YWluZXIge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyAuc2xpY2stc2xpZGUgPiBkaXYgPiAuZmllbGRfX2l0ZW0gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSxcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyAuc2xpY2stc2xpZGUgPiBkaXYgPiAuZmllbGRfX2l0ZW0gLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7IH0gfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgIGhlaWdodDogOTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY29sb3I6ICMxZTMwNDY7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5maWVsZF9faXRlbXMgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDJweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuYXJyb3dzLXdyYXAsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuYXJyb3dzLXdyYXAge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI0NXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDI4cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuYXJyb3dzLXdyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmFycm93cy13cmFwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5hcnJvd3Mtd3JhcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTE2cHg7XG4gICAgICAgIHRvcDogNTg1cHg7XG4gICAgICAgIGxlZnQ6IDQzcHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY29sb3I6ICMwMDIyNGQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stYXJyb3cgc3BhbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGluZS1oZWlnaHQ6IDAuNzVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stYXJyb3cgc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDM3NXJlbTsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLWFycm93IHNwYW46bm90KC5pY29uLWFycm93KSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAyMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMwMDIyNGQ7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1hcnJvdyBzcGFuOm5vdCguaWNvbi1hcnJvdykge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMnB4IDAgNDBweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLmljb24tYXJyb3cge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBvcGFjaXR5OiAuNDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgbGluZWFyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuaWNvbi1hcnJvdyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42MjVyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuaWNvbi1hcnJvdzpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5pY29uLWFycm93OmhvdmVyICsgc3Bhbjpub3QoLmljb24tYXJyb3cpIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1uZXh0IC5pY29uLWFycm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTNweDsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stbmV4dCAuaWNvbi1hcnJvdzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLW5leHQgLmljb24tYXJyb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTdweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stbmV4dCBzcGFuOm5vdCguaWNvbi1hcnJvdykge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1wcmV2IC5pY29uLWFycm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG4gICAgb3JkZXI6IDE7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLXByZXYgLmljb24tYXJyb3c6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qSBXCI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1wcmV2IC5pY29uLWFycm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtN3B4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgICBib3R0b206IDI1cHg7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMCwgNTMsIDk1LCAwLjI1KTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXNsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b246YWN0aXZlLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMCwgNTMsIDk1LCAwLjUpOyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMCwgNTMsIDk1LCAwLjc1KTsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5jb250ZW50LXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1sZWZ0IC5jb250ZW50LXdyYXAge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgbWluLXdpZHRoOiA0NzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogY2FsYyg4LjMzMzMzMyUgKyAxNXB4KTsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtY29udGVudCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzID4gLmZpZWxkX19pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1wLW1lZGlhLWltYWdlcyB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1wLW1lZGlhLWltYWdlcyAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtbWVkaWEtaW1hZ2UuaW1hZ2UtY29ybmVyID4gLmNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMXB4IDFweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lcjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgei1pbmRleDogMjsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lcjo6YWZ0ZXIge1xuICAgICAgICAgICAgbGVmdDogLTE5cHg7XG4gICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDE4MnB4IDAgMCAxODJweDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZjsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tdG9wLXJpZ2h0OjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxODRweCAxNDdweCAwO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tdG9wLWxlZnQ6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tdG9wLWxlZnQ6OmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDE0N3B4IDE4NHB4IDAgMDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tYm90dG9tLXJpZ2h0OjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDE4NHB4IDE0N3B4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tYm90dG9tLWxlZnQ6OmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDE4NHB4IDAgMCAxNDdweDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmY7IH0gfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZSBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZTpub3QoLmltYWdlLWNvcm5lcikge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICMwMDIyNGQ7IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLXRvcDogMThweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qSAXCI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjNweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpmb2N1cywgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogIzFlMzA0NjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtcC1tZWRpYS1pbWFnZXMge1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1yaWdodCAuY29udGVudC13cmFwIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoOC4zMzMzMzMlICsgMTVweCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIHtcbiAgICAgIG9yZGVyOiAxOyB9IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tcHJldmlldyAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBhLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGEge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzFlMzA0NjsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1wcmV2aWV3IC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGE6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgYTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tcHJldmlldyAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwOmxhc3QtY2hpbGQsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1wcmV2aWV3IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1wcmV2aWV3IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1wcmV2aWV3IHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICBjb2xvcjogIzFlMzA0NjtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgLmZpZWxkX19pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZS50aXRsZS13aXRoLWxpbmUge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZS50aXRsZS13aXRoLWxpbmUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUudGl0bGUtd2l0aC1saW5lIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2NnB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLnRpdGxlLXdpdGgtbGluZTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUudGl0bGUtd2l0aC1saW5lOjphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxZTMwNDY7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGE6aG92ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayB7XG4gIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIHtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgY29sb3I6ICMxZTMwNDY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAtMjNweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6Zm9jdXMsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWN0aXZlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSBpZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcyAuZmllbGRfX2l0ZW1zLFxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcy5maWVsZF9faXRlbXMge1xuICBtYXJnaW46IC01NXB4IC0xMHB4IDAgLTIwcHg7XG4gIHBhZGRpbmc6IDU1cHggMCAwIDIwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9qb2luLXVzLXNtYWxsLWJnLnBuZ1wiKSBuby1yZXBlYXQgMCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcyAuZmllbGRfX2l0ZW1zLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMuZmllbGRfX2l0ZW1zIHtcbiAgICAgIG1hcmdpbjogMCAtMXB4O1xuICAgICAgcGFkZGluZzogMTI1cHggMjdweCAwIDg1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9qb2luLXVzLWJnLnBuZ1wiKSBuby1yZXBlYXQgMCAwL2NvbnRhaW47IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1tdWx0aXBsZS1pbWFnZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXAtaW1hZ2VzIC5maWVsZF9faXRlbXMsXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcy5maWVsZF9faXRlbXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1tdWx0aXBsZS1pbWFnZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXAtaW1hZ2VzIC5maWVsZF9faXRlbXMgPiBkaXYsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMuZmllbGRfX2l0ZW1zID4gZGl2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcyAuZmllbGRfX2l0ZW1zID4gZGl2LFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcy5maWVsZF9faXRlbXMgPiBkaXYge1xuICAgICAgICBtYXgtd2lkdGg6IDg5cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMXB4OyB9XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMgLmZpZWxkX19pdGVtcyA+IGRpdiBpbWcsXG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMuZmllbGRfX2l0ZW1zID4gZGl2IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcyAuZmllbGRfX2l0ZW1zID4gZGl2Omxhc3QtY2hpbGQsXG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMuZmllbGRfX2l0ZW1zID4gZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMgLmZpZWxkX19pdGVtcyA+IGRpdjpsYXN0LWNoaWxkLFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5maWVsZC0tbmFtZS1maWVsZC1wLWltYWdlcy5maWVsZF9faXRlbXMgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucGFyYWdyYXBoLXN0eWxlLS1kYXJrLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUzMDQ2OyB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLWRhcmstYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtbWVkaWEtaW1hZ2UuaW1hZ2UtY29ybmVyOjphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMWUzMDQ2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tZGFyay1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZS5pbWFnZS1jb3JuZXItLXRvcC1yaWdodDo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMWUzMDQ2IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tZGFyay1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZS5pbWFnZS1jb3JuZXItLXRvcC1sZWZ0OjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhcmFncmFwaC1zdHlsZS0tZGFyay1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZS5pbWFnZS1jb3JuZXItLXRvcC1sZWZ0OjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tZGFyay1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZS5pbWFnZS1jb3JuZXItLWJvdHRvbS1yaWdodDo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMWUzMDQ2IHRyYW5zcGFyZW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFyYWdyYXBoLXN0eWxlLS1kYXJrLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tYm90dG9tLWxlZnQ6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzFlMzA0NjsgfSB9XG5cbi5wYXJhZ3JhcGgtc3R5bGUtLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFiMGJhOyB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLWdyZXkgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lcjo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2FhYjBiYTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWdyZXkgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tdG9wLXJpZ2h0OjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNhYWIwYmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH0gfVxuICAucGFyYWdyYXBoLXN0eWxlLS1ncmV5IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZS5pbWFnZS1jb3JuZXItLXRvcC1sZWZ0OjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhcmFncmFwaC1zdHlsZS0tZ3JleSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtbWVkaWEtaW1hZ2UuaW1hZ2UtY29ybmVyLS10b3AtbGVmdDo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICNhYWIwYmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWdyZXkgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tYm90dG9tLXJpZ2h0OjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNhYWIwYmEgdHJhbnNwYXJlbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWdyZXkgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlLmltYWdlLWNvcm5lci0tYm90dG9tLWxlZnQ6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2FhYjBiYTsgfSB9XG5cbi5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIHtcbiAgcGFkZGluZzogMXB4IDAgNTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMCAxMDBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIHtcbiAgICBtYXJnaW46IDUwcHggMCAwOyB9XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tY29sb3IgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC1zdHlsZS0tY29sb3IgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWNvbG9yIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC1zdHlsZS0tY29sb3IgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjQzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC1zdHlsZS0tY29sb3IgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgICAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzLCAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFjdGl2ZSwgLnBhcmFncmFwaC1zdHlsZS0tY29sb3IgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLnBhcmFncmFwaC1zdHlsZS0tZW1wdHktY29udGVudCB7XG4gIGhlaWdodDogMTc1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLXN0eWxlLS1lbXB0eS1jb250ZW50IHtcbiAgICAgIGhlaWdodDogMzUwcHg7IH0gfVxuXG4ucGFyYWdyYXBoLXN0eWxlLS1iZy1pbWFnZSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXIgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLWJnLWltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tYmctaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50OyB9IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tYmctaW1hZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS1iZy1pbWFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMge1xuICBwYWRkaW5nOiA0NXB4IDAgNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTUwcHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOTVweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogLTIwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAtMjNweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFjdGl2ZSB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFjdGl2ZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMsXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbTsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbiksXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgybisxKSxcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW06bGFzdC1jaGlsZCxcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zLFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtLFxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDFuKSxcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDNuKzEpLFxuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkLFxuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0sXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0sXG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5ub2RlLS10eXBlLXNlcnZpY2VzLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5ub2RlLS10eXBlLXNlcnZpY2VzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgbWluLXdpZHRoOiA4NXB4O1xuICAgICAgbWF4LXdpZHRoOiA4NXB4O1xuICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNkOWVjZmE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMTBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDNweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZTpob3ZlcixcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIGgyOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZDllY2ZhOyB9XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDI6aG92ZXIgYSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGU6aG92ZXIgYSxcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDI6aG92ZXIgYSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlOmhvdmVyIGEge1xuICAgICAgICAgIGNvbG9yOiAjMWUzMDQ2OyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIGgyIGEsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIGEsXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMiBhLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtc2VydmljZS1sb2dvLFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1zZXJ2aWNlLWxvZ28ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyxcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyxcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyBpbWcsXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtc2VydmljZS1sb2dvIGltZyB7XG4gICAgICAgIG1pbi13aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtc2VydmljZS1sb2dvIGltZyxcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtc2VydmljZS1sb2dvIGltZyB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDc1cHg7IH0gfVxuXG4ucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1MHB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIycHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIHtcbiAgICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAwIDAgNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgOXB4O1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NjsgfVxuICAgICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH0gfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICAgICAgICByaWdodDogLTIzcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDsgfVxuICAgICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6Zm9jdXMsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5uZXdzLWhlYWRlciAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWN0aXZlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NjsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLmxlZnQsXG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5sZWZ0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoNDVweCArIDguMzMzMzMzJSk7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICBjb2xvcjogIzFlMzA0NjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NjsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZSB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmUge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDE4cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmU6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmUge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmU6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAubGluay1tb3JlOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogLTIzcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmU6aG92ZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAubGluay1tb3JlOmhvdmVyOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmU6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZTpmb2N1cywgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAubGluay1tb3JlOmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5saW5rLW1vcmU6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZTphY3RpdmUsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmxpbmstbW9yZTpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgICAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IGg0LCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IGZvb3RlciBoMiwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgZm9vdGVyIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyBoMiwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IGgyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgaDIsXG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBoMiwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBwLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0XG4gICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwLFxuICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBoNCwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBmb290ZXIgaDIsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IGgyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIGZvb3RlciAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyBmb290ZXIgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IGgyLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5ibG9jay12aWV3cy1ibG9ja25ld3MtYXJjaGl2ZS1uZXdzLWFyY2hpdmUgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmJsb2NrLXZpZXdzLWJsb2NrbmV3cy1hcmNoaXZlLW5ld3MtYXJjaGl2ZSA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiAuZmllbGQtLW5hbWUtZmllbGQtc3VidGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZS5maWVsZF9faXRlbXMgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBoMiwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlLmZpZWxkX19pdGVtcyAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodFxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyBoMixcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIC5maWVsZF9faXRlbXMgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBoMiwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuZmllbGQtLW5hbWUtZmllbGQtc2VsZWN0LXNlcnZpY2UgLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIC5maWVsZC0tbmFtZS1maWVsZC1zZWxlY3Qtc2VydmljZSAuZmllbGRfX2l0ZW1zIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW5hbWUsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSwgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHAsIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCBwLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0XG4gICAgICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCxcbiAgICAgICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubm9kZSAucmlnaHQgLmZpZWxkLS1uYW1lLWJvZHkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbmV3cy1zZWN0aW9uIC5ub2RlIC5yaWdodCAuZmllbGQtLW5hbWUtYm9keSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5vZGUgLnJpZ2h0IC5maWVsZC0tbmFtZS1ib2R5IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLnNoYWRvdy1iZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9QRi1ncmFkaWVudC5wbmdcIikgbm8tcmVwZWF0IGxlZnQgdG9wL2NvdmVyOyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLnNoYWRvdy1iZyA+IGRpdiB7XG4gICAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5zaGFkb3ctYmcgPiBkaXYge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5jb250ZW50LXdyYXAge1xuICAgIG1heC13aWR0aDogNDY1cHg7XG4gICAgcGFkZGluZzogMjVweCAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5jb250ZW50LXdyYXAge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5jb250ZW50LXdyYXAgcCB7XG4gICAgICBmb250LXdlaWdodDogMjAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuY29udGVudC13cmFwIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5jb250ZW50LXdyYXAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMCA0cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgIGJvcmRlci1jb2xvcjogIzFlMzA0NjtcbiAgICBtYXJnaW4tdG9wOiAxOHB4OyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGEge1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGEge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtYnV0dG9uLWxpbmsgYTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtYnV0dG9uLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhOmZvY3VzLCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtYnV0dG9uLWxpbmsgYTphY3RpdmUge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1idXR0b24tbGluayBhOmFjdGl2ZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWJ1dHRvbi1saW5rIGEge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgPiAqIHtcbiAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLnBhcmFsbGF4LWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50OyB9IH1cblxuLmZpZWxkLS1uYW1lLWZpZWxkLXAtaGVyby1iYW5uZXIgKyAucGFnZS1zZWN0aW9uLW1lc3NhZ2VzICsgLmZpZWxkLS1uYW1lLWZpZWxkLXBhZ2Utc2VjdGlvbiAuZmllbGRfX2l0ZW06Zmlyc3QtY2hpbGQgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCB7XG4gIG1hcmdpbi10b3A6IC00MHB4OyB9XG5cbi5maWVsZC0tbmFtZS1maWVsZC1wLWhlcm8tYmFubmVyICsgLnBhZ2Utc2VjdGlvbi1tZXNzYWdlcyArIC5maWVsZC0tbmFtZS1maWVsZC1wYWdlLXNlY3Rpb24gLmZpZWxkX19pdGVtOmZpcnN0LWNoaWxkIC5wYXJhZ3JhcGgtc3R5bGUtLWJnLWltYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5maWVsZC0tbmFtZS1maWVsZC1wLWhlcm8tYmFubmVyICsgLnBhZ2Utc2VjdGlvbi1tZXNzYWdlcyArIC5maWVsZC0tbmFtZS1maWVsZC1wYWdlLXNlY3Rpb24gLmZpZWxkX19pdGVtOmxhc3QtY2hpbGQgPiAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3gge1xuICAgICAgbWFyZ2luLXRvcDogLTEwMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTQ1cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IDI1JTsgfVxuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyNXB4IDAgMXB4IDM2cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyA+IC5maWVsZF9faXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMCAyNXB4IDM2cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWNvdW50ZXJzLWJveCAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMgPiAuZmllbGRfX2l0ZW06OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgbGVmdDogMXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zID4gLmZpZWxkX19pdGVtOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAycHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMxZTMwNDY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlcjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGhlaWdodDogMjNweDtcbiAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgbGVmdDogLTM2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWUzMDQ2OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3ggLmZpZWxkLS1uYW1lLWZpZWxkLXAtY291bnRlcnMgPiAuZmllbGRfX2l0ZW1zIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyOjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgICAgIGJvdHRvbTogMTJweDsgfSB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNDBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gLndlYmZvcm0tc3VibWlzc2lvbi1jb250YWN0LWZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSAud2ViZm9ybS1zdWJtaXNzaW9uLWNvbnRhY3QtZm9ybSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zNXB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gLmZvcm0taXRlbSB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gLmZvcm0taXRlbSB7XG4gICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gLmZvcm0taXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWl0ZW06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiAuZm9ybS1hY3Rpb25zIC5zdWJtaXQtYnRuIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZDogIzFlMzA0NjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWFjdGlvbnMgLnN1Ym1pdC1idG4ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNjBweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiAuZm9ybS1hY3Rpb25zIC5zdWJtaXQtYnRuIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDQ0cHggMCAzNHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMWUzMDQ2O1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWFjdGlvbnMgLnN1Ym1pdC1idG4gaW5wdXQge1xuICAgICAgICAgICAgcGFkZGluZzogMCA1NHB4IDAgNDRweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiAuZm9ybS1hY3Rpb25zIC5zdWJtaXQtYnRuOjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgYmFja2dyb3VuZC1jb2xvcjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWFjdGlvbnMgLnN1Ym1pdC1idG46OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAzMHB4OyB9IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLWFjdGlvbnMgLnN1Ym1pdC1idG46aG92ZXIgaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gLmZvcm0tYWN0aW9ucyAuc3VibWl0LWJ0bjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IGZpZWxkc2V0LmZvcm0taXRlbSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IGZpZWxkc2V0LmZvcm0taXRlbSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogODBweDsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiBmaWVsZHNldC5mb3JtLWl0ZW0gLmZpZWxkc2V0LWxlZ2VuZCB7XG4gICAgICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IGZpZWxkc2V0LmZvcm0taXRlbSAuZmllbGRzZXQtbGVnZW5kIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiBmaWVsZHNldC5mb3JtLWl0ZW0gLmZpZWxkc2V0LXdyYXBwZXIgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IGZpZWxkc2V0LmZvcm0taXRlbSAuZmllbGRzZXQtd3JhcHBlciA+IGRpdiB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gZmllbGRzZXQuZm9ybS1pdGVtIC5maWVsZHNldC13cmFwcGVyID4gZGl2ID4gZGl2ICsgZGl2IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IGZpZWxkc2V0LmZvcm0taXRlbSAuZmllbGRzZXQtd3JhcHBlciA+IGRpdiA+IGRpdiArIGRpdiB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNDBweDsgfSB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtd2ViZm9ybSBmb3JtID4gZmllbGRzZXQuZm9ybS1pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIGZvcm0gPiAuZm9ybS10eXBlLXRleHRhcmVhLmZvcm0taXRlbSB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLXdlYmZvcm0gZm9ybSA+IC5mb3JtLXR5cGUtdGV4dGFyZWEuZm9ybS1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyB9IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQge1xuICBtYXJnaW4tYm90dG9tOiAxMTVweDsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtY29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiA+IC5maWVsZF9faXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtY29sdW1uID4gLmZpZWxkX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtY29sdW1uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuNTYyNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMS41NjI1cmVtOyB9XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC1jb2x1bW4gPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgcGFkZGluZzogMS41NjI1cmVtOyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiA+IC5maWVsZF9faXRlbTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb2x1bW5zLWxheW91dCA+IC5jb250YWluZXIgPiAuZmllbGQtLW5hbWUtZmllbGQtY29sdW1uID4gLmZpZWxkX19pdGVtOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBjb2xvcjogIzFlMzA0NjtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0ID4gLmNvbnRhaW5lciA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmZpZWxkLS1uYW1lLWZpZWxkLXAtY29sbGVjdGlvbi1sZWFkZXJzaGlwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuZmllbGQtLW5hbWUtZmllbGQtcC1jb2xsZWN0aW9uLWxlYWRlcnNoaXAge1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuZmllbGQtLW5hbWUtZmllbGQtcC1jb2xsZWN0aW9uLWxlYWRlcnNoaXAgPiAuZmllbGRfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmZpZWxkLS1uYW1lLWZpZWxkLXAtY29sbGVjdGlvbi1sZWFkZXJzaGlwID4gLmZpZWxkX19pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuZmllbGQtLW5hbWUtZmllbGQtcC1jb2xsZWN0aW9uLWxlYWRlcnNoaXAgPiAuZmllbGRfX2l0ZW06bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuZmllbGQtLW5hbWUtZmllbGQtcC1jb2xsZWN0aW9uLWxlYWRlcnNoaXAgPiAuZmllbGRfX2l0ZW06bnRoLWxhc3QtY2hpbGQoMSkgLnBhcmFncmFwaCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmZpZWxkLS1uYW1lLWZpZWxkLXAtY29sbGVjdGlvbi1sZWFkZXJzaGlwID4gLmZpZWxkX19pdGVtIC5wYXJhZ3JhcGgge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tLWNvbG9yIC43cyBsaW5lYXI7IH1cbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuZmllbGQtLW5hbWUtZmllbGQtcC1jb2xsZWN0aW9uLWxlYWRlcnNoaXAgPiAuZmllbGRfX2l0ZW0gLnBhcmFncmFwaC5hY3RpdmUge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHggNDBweCAxNXB4IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMXMgbGluZWFyOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXA6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi7qSEXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIHtcbiAgICAgIHBhZGRpbmc6IDM1cHggNzVweCAzMHB4IDIwcHg7IH0gfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzclO1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgY29sb3I6ICMxZTMwNDY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcDo6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgIHRvcDogMzUlO1xuICAgICAgICByaWdodDogMTNweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXA6bm90KC5hY3RpdmUpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXA6bm90KC5hY3RpdmUpOjphZnRlciB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIHRvcDogMzMlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiByZ2JhKDAsIDM0LCA3NywgMC40KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwOm5vdCguYWN0aXZlKTo6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgIHRvcDogMzQlO1xuICAgICAgICByaWdodDogMzFweDsgfSB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW0taW1hZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwIC5maWVsZC0tbmFtZS1maWVsZC1tLWltYWdlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAgLmZpZWxkLS1uYW1lLWZpZWxkLW0taW1hZ2UgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MHB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtbmFtZSB7XG4gICAgY29sb3I6ICMxZTMwNDY7IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSAuaGVhZGVyLWxlYWRlcnNoaXAuYWN0aXZlLFxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmhlYWRlci1sZWFkZXJzaGlwLmFjdGl2ZSB+IC5sZWFkZXJzaGlwLW1lbWJlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5oZWFkZXItbGVhZGVyc2hpcDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTsgfVxuXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmxlYWRlcnNoaXAtbWVtYmVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjVzIGxpbmVhcjsgfVxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmxlYWRlcnNoaXAtbWVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgICBwYWRkaW5nOiAxMHB4IDI1cHggMjVweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1sZWFkZXJzaGlwLXRlYW0gLmxlYWRlcnNoaXAtbWVtYmVyIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5sZWFkZXJzaGlwLW1lbWJlciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCB7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0IC5maWVsZC0tbmFtZS1maWVsZC1jb2x1bW4gPiAuZmllbGRfX2l0ZW06bnRoLWxhc3QtY2hpbGQoMSkgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbGVhZGVyc2hpcC10ZWFtIC5maWVsZC0tbmFtZS1maWVsZC1wLWNvbGxlY3Rpb24tbGVhZGVyc2hpcCA+IC5maWVsZF9faXRlbTpudGgtbGFzdC1jaGlsZCgxKSAucGFyYWdyYXBoIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIGNvbG9yOiAjMWUzMDQ2O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZXBhcmF0b3IgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7IH0gfVxuXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGEge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBhOmhvdmVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCAuZmllbGRfX2l0ZW0gPiAqIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi7qSAXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICBmb250LXNpemU6IDEuNDM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciwgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzLCAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciwgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFjdGl2ZSwgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7IH1cblxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSxcbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQsXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tdHlwZS10ZXh0LWxvbmcsXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIGgzLFxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuc3RheS1pbi10b3VjaC1ibG9jayA+IGgyLFxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAuc3RheS1pbi10b3VjaC1ibG9jayA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXNcbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLnN0YXktaW4tdG91Y2gtYmxvY2sgPiAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb25cbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiAubmV3cy1oZWFkZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1uZXdzLXNlY3Rpb24gLm5ld3MtaGVhZGVyXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtcyAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlciwgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY291bnRlcnMtYm94IC5maWVsZC0tbmFtZS1maWVsZC1wLWNvdW50ZXJzID4gLmZpZWxkX19pdGVtc1xuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtY291bnRlcixcbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQgPiAuY29udGFpbmVyID4gLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0td2hpdGUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsIC5wYXJhZ3JhcGgtLXR5cGUtLXBhZ2Utc2VwYXJhdG9yXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSwgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLXdoaXRlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLnRpdGxlLXdpdGgtbGluZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUudGl0bGUtd2l0aC1saW5lLFxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjMWUzMDQ2OyB9XG5cbi5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHRyYW5zaXRpb246IDAuNXM7XG4gIGNvbG9yOiAjMWUzMDQ2O1xuICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphZnRlciB7XG4gICAgY29udGVudDogXCLupIBcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAtMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogMC41czsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICByaWdodDogLTIzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3ZlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICByaWdodDogMDsgfSB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpmb2N1cywgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUsIC5wYXJhZ3JhcGgtc3R5bGUtLXRleHQtY29sb3ItLWJsdWUgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YSAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzFlMzA0NjtcbiAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cblxuLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgY29sb3I6ICMxZTMwNDY7IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGEge1xuICAgIGNvbG9yOiAjMWUzMDQ2O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMWUzMDQ2OyB9XG4gICAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IGE6aG92ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhcmFncmFwaC1zdHlsZS0tdGV4dC1jb2xvci0tYmx1ZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgLmZpZWxkX19pdGVtID4gKiB7XG4gICAgY29sb3I6ICMxZTMwNDY7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMCAtMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMge1xuICAgICAgbWFyZ2luOiAwIC0yNXB4OyB9IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBib3JkZXI6IHNvbGlkICNkOGQ4ZDg7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7IH0gfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gaDIsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLnBhcmFncmFwaC0tdHlwZS0tc2VydmljZXMgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLCAucGFyYWdyYXBoLS10eXBlLS1zZXJ2aWNlcyAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICBjb2xvcjogIzFlMzA0NjsgfVxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IHtcbiAgICAgIHdpZHRoOiAyNDBweCAhaW1wb3J0YW50OyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAuYWlycG9ydC1jaXR5LWFuZC1zdGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJwdDsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmFpcnBvcnQtY29kZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZwdDsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxvY2F0aW9uLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB0OyB9XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAubGVhcm4tbW9yZS1hbmNob3Ige1xuICAgICAgICBoZWlnaHQ6IDIzcHg7IH1cbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDlweDtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWUzMDQ2OyB9XG4gICAgICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IC5sZWFybi1tb3JlLWFuY2hvciBhIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGEge1xuICAgICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4OyB9IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAubGVhcm4tbW9yZS1hbmNob3IgYTphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IC5sZWFybi1tb3JlLWFuY2hvciBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9IH1cbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAubGVhcm4tbW9yZS1hbmNob3IgYTo6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IC5sZWFybi1tb3JlLWFuY2hvciBhOjphZnRlciB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGE6aG92ZXIge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7IH1cbiAgICAgICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICByaWdodDogMDsgfSB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGE6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IC5sZWFybi1tb3JlLWFuY2hvciBhOmZvY3VzLCAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgLmFpcnBvcnRzLWxvY2F0aW9uIC5nbS1zdHlsZS1pdyAubGVhcm4tbW9yZS1hbmNob3IgYTphY3RpdmUge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGE6aG92ZXIsIC5wYXJhZ3JhcGgtLXR5cGUtLWxvY2F0aW9uLW1hcCAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyAuYWlycG9ydHMtbG9jYXRpb24gLmdtLXN0eWxlLWl3IC5sZWFybi1tb3JlLWFuY2hvciBhOmFjdGl2ZSwgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzIC5haXJwb3J0cy1sb2NhdGlvbiAuZ20tc3R5bGUtaXcgLmxlYXJuLW1vcmUtYW5jaG9yIGE6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICMxZTMwNDY7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMxZTMwNDY7IH1cbiAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzID4gLmZpZWxkX19pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgPiAuZmllbGRfX2l0ZW0gLmdlb2xvY2F0aW9uLWNvbW1vbi1tYXAtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDI1MHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgPiAuZmllbGRfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIC5maWVsZC0tbmFtZS1maWVsZC1tYXBzID4gLmZpZWxkX19pdGVtOmZpcnN0LWNoaWxkIC5nZW9sb2NhdGlvbi1jb21tb24tbWFwLWNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogNTQ1cHggIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1sb2NhdGlvbi1tYXAgLmZpZWxkLS1uYW1lLWZpZWxkLW1hcHMgPiAuZmllbGRfX2l0ZW06Zmlyc3QtY2hpbGQgLmdlb2xvY2F0aW9uLWNvbW1vbi1tYXAtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGhlaWdodDogNDAwcHggIWltcG9ydGFudDsgfSB9XG5cbi5wYXRoLWZyb250cGFnZSAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGF0aC1mcm9udHBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhdGgtZnJvbnRwYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGF0aC1mcm9udHBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLnBhcmFncmFwaC1jb250ZW50IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGF0aC1mcm9udHBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24gLmNvbnRlbnQtd3JhcCB7XG4gICAgICBmbGV4OiAwIDAgMzYuMzMzMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzNi4zMzMzMzMzMyU7XG4gICAgICBwYWRkaW5nOiAzMHB4IDAgMCA4LjMzMzMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhdGgtZnJvbnRwYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQgLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzIHtcbiAgICAgIGZsZXg6IDAgMCA1OC4zMzMzMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgICAgIHBhZGRpbmc6IDMwcHggOC4zMzMzMzMzMyUgMCAxNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGF0aC1mcm9udHBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1yaWdodCAuY29udGVudC13cmFwIHtcbiAgICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgICAgIHBhZGRpbmc6IDAgMTMuMzMzMzMzMzMlIDAgMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhdGgtZnJvbnRwYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEzLjMzMzMzMzMzJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGF0aC1mcm9udHBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1yaWdodCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1tdWx0aXBsZS1pbWFnZXMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMjElOyB9IH1cbiAgLnBhdGgtZnJvbnRwYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnVzZXItbG9naW4tZm9ybSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC51c2VyLWxvZ2luLWZvcm0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnVzZXItbG9naW4tZm9ybSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgLnVzZXItbG9naW4tZm9ybSBpbnB1dFt0eXBlPSd0ZXh0J10sIC51c2VyLWxvZ2luLWZvcm0gaW5wdXRbdHlwZT0nZW1haWwnXSwgLnVzZXItbG9naW4tZm9ybSBpbnB1dFt0eXBlPSdwYXNzd29yZCddIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFlMzA0NjtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5wYWdlLS00MDQgbWFpbixcbi5wYWdlLS00MDMgbWFpbiB7XG4gIG1hcmdpbi1ib3R0b206IC00MHB4OyB9XG5cbi5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIsXG4ucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgaGVpZ2h0OiA0MTBweDsgfVxuICBAbWVkaWEgKG1pbi1oZWlnaHQ6IDk2MHB4KSBhbmQgKG1heC1oZWlnaHQ6IDEyODBweCkge1xuICAgIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIsXG4gICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDY2NXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS0tNDA0IC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyLFxuICAgIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiA2NTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lcixcbiAgICAucGFnZS0tNDAzIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWhlcm8tYmFubmVyIHtcbiAgICAgIGhlaWdodDogMTA4MHB4OyB9IH1cbiAgLnBhZ2UtLTQwNCAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gIC5wYWdlLS00MDMgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlLFxuICAgICAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDcuNXJlbTsgfSB9XG4gIC5wYWdlLS00MDQgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQgcCxcbiAgLnBhZ2UtLTQwMyAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCBwIHtcbiAgICBjb2xvcjogIzFlMzA0NjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXR5cGUtLW5ld3MtYXJjaGl2ZSAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlY3Rpb24gPiAuY29udGFpbmVyID4gLmZpZWxkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFnZS10eXBlLS1uZXdzLWFyY2hpdmUgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZWN0aW9uID4gLmNvbnRhaW5lciA+IC5maWVsZCA+IC5maWVsZF9faXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4OyB9XG4gICAgICAucGFnZS10eXBlLS1uZXdzLWFyY2hpdmUgLnBhcmFncmFwaC0tdHlwZS0tcGFnZS1zZWN0aW9uID4gLmNvbnRhaW5lciA+IC5maWVsZCA+IC5maWVsZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG4ucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cblxuLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLXN0eWxlLS1iZy1pbWFnZSB7XG4gIHBhZGRpbmc6IDc1cHggMDtcbiAgbWFyZ2luLWJvdHRvbTogNjVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC1zdHlsZS0tYmctaW1hZ2Uge1xuICAgICAgcGFkZGluZzogOTVweCAwOyB9IH1cblxuLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgPiAuY29udGFpbmVyIC5maWVsZCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgICAgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSAuZmllbGRfX2l0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwIDAgNHB4O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgcGFkZGluZzogMCAwIDAgOXB4O1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgfSB9XG4gICAgICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXM7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgICAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IC0yM3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjQzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gICAgICAgICAgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTpmb2N1cywgLnBhZ2UtdHlwZS0tbG9jYXRpb24tcGFnZSAucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhLnBhcmFncmFwaC0tdmlldy1tb2RlLS1kZWZhdWx0IC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGE6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmhvdmVyLCAucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYTphY3RpdmUsIC5wYWdlLXR5cGUtLWxvY2F0aW9uLXBhZ2UgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCAuZmllbGQtLW5hbWUtZmllbGQtbGluayBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuNC4zXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJy4uL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIFNldHRpbmdzXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIFNhc3MgdXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyBHbG9iYWwgdmFyaWFibGVzIGFuZCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5cbiAgQGlmICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcbiAgfVxuXG4gIEBpZiAkcHJvdG90eXBlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRm9ybXNcbi8vICAyMC4gTGFiZWxcbi8vICAyMS4gTWVkaWEgT2JqZWN0XG4vLyAgMjIuIE1lbnVcbi8vICAyMy4gTWV0ZXJcbi8vICAyNC4gT2ZmLWNhbnZhc1xuLy8gIDI1LiBPcmJpdFxuLy8gIDI2LiBQYWdpbmF0aW9uXG4vLyAgMjcuIFByb2dyZXNzIEJhclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgMjkuIFJldmVhbFxuLy8gIDMwLiBTbGlkZXJcbi8vICAzMS4gU3dpdGNoXG4vLyAgMzIuIFRhYmxlXG4vLyAgMzMuIFRhYnNcbi8vICAzNC4gVGh1bWJuYWlsXG4vLyAgMzUuIFRpdGxlIEJhclxuLy8gIDM2LiBUb29sdGlwXG4vLyAgMzcuIFRvcCBCYXJcbi8vICAzOC4gU2xpY2tcblxuQGltcG9ydCAndXRpbC91dGlsJztcbkBpbXBvcnQgJy4uL2ZyYW1ld29yay9jb2xvcnMnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4vLy8gQ29sb3JzXG4kY29sb3JzOiAoXG4gICdwcmltYXJ5JzogKFxuICAgIGRlZmF1bHQ6ICMxZTM1NWZcbiAgKSxcbiAgJ3NlY29uZGFyeSc6IChcbiAgICBkZWZhdWx0OiAjMjlhYmUyXG4gICksXG4gICd0ZXJ0aWFyeSc6IChcbiAgICBkZWZhdWx0OiAjZmZlMDAwXG4gICksXG4gICdmb250JzogKFxuICAgIGRlZmF1bHQ6ICM3ZjdmN2YsXG4gICAgcHJpbWFyeTogIzRiYzBkNyxcbiAgICBkYXJrOiAjNGE0YTRhLFxuICAgIGxpZ2h0OiAjZDhkOGQ4LFxuICAgIGxpZ2h0LWJsdWU6ICMxMzg4ZGYsXG4gICAgZGFyay1ibHVlOiAjMWUzMDQ2LFxuICAgIG9yYW5nZTogI2Y1YjQzMyxcbiAgICBhcnJvd3Mtc2xpZGVyOiAjMDAyMjRkLFxuICAgIGFjdGl2ZS1tZW51OiAjODVhOWMzLFxuICAgIHBsYWNlaG9sZGVyOiAjYjBiN2JlLFxuICApLFxuICAnZ3JheSc6IChcbiAgICBkZWZhdWx0OiAjN2Y3ZjdmLFxuICAgIGRhcmtlcjogIzMxMzEzMSxcbiAgICBkYXJrOiAjNDc0ZTUxLFxuICAgIGxpZ2h0OiAjZDhkOGQ4LFxuICAgIGRhcmstbGlnaHQ6ICNhYWIwYmFcbiAgKSxcbiAgJ2JnJzogKFxuICAgIHN1Ym1lbnU6ICNkOWVjZmEsXG4gICAgc3R5bGUtZGFyay1ibHVlOiAjMDAzZDRkLFxuICAgIGhvdmVyLXNlcnZpY2VzOiAjZDllY2ZhLFxuICAgIG1vYmlsZS1tZW51OiAjZWVlLFxuICAgIGNvdW50ZXItbGluZTogI2U1ZTVlNSxcbiAgICBkaXNhYmxlZDogI2Y5ZjhmOCxcbiAgICBjb2xsYXBzZTogI2Y1ZjVmNSxcbiAgKSxcbik7XG5cbiRwcmltYXJ5LWNvbG9yOiBjb2xvcihwcmltYXJ5LCBkZWZhdWx0KTtcbiRzZWNvbmRhcnktY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGVmYXVsdCk7XG4kdGVydGlhcnktY29sb3I6IGNvbG9yKHRlcnRpYXJ5LCBkZWZhdWx0KTtcblxuJGZvbnQtY29sb3ItZGVmYXVsdDogY29sb3IoZm9udCwgZGVmYXVsdCk7XG4kZm9udC1jb2xvci1saWdodDogY29sb3IoZm9udCwgbGlnaHQpO1xuJGZvbnQtY29sb3ItZGFyazogY29sb3IoZm9udCwgZGFyayk7XG4kZm9udC1jb2xvci1wcmltYXJ5OiBjb2xvcihmb250LCBwcmltYXJ5KTtcbiRmb250LWNvbG9yLWxpZ2h0LWJsdWU6IGNvbG9yKGZvbnQsIGxpZ2h0LWJsdWUpO1xuJGZvbnQtY29sb3ItZGFyay1ibHVlOiBjb2xvcihmb250LCBkYXJrLWJsdWUpO1xuJGZvbnQtY29sb3Itb3JhbmdlOiBjb2xvcihmb250LCBvcmFuZ2UpO1xuJGZvbnQtY29sb3ItYXJyb3dzLXNsaWRlcjogY29sb3IoZm9udCwgYXJyb3dzLXNsaWRlcik7XG4kZm9udC1jb2xvci1tZW51LWFjdGl2ZTogY29sb3IoZm9udCwgYWN0aXZlLW1lbnUpO1xuJHBsYWNlaG9sZGVyOiBjb2xvcihmb250LCBwbGFjZWhvbGRlcik7XG5cbiRncmF5LWxpZ2h0OiBjb2xvcignZ3JheScsIGxpZ2h0KTtcbiRncmF5LWRlZmF1bHQ6IGNvbG9yKCdncmF5JywgZGVmYXVsdCk7XG4kZ3JheS1kYXJrOiBjb2xvcignZ3JheScsIGRhcmspO1xuJGdyYXktZGFya2VyOiBjb2xvcignZ3JheScsIGRhcmtlcik7XG4kZ3JheS1kYXJrLWxpZ2h0OiBjb2xvcignZ3JheScsIGRhcmstbGlnaHQpO1xuXG4kc3VibWVudTogY29sb3IoJ2JnJywgc3VibWVudSk7XG4kc3R5bGUtZGFyay1ibHVlOiBjb2xvcignYmcnLCBzdHlsZS1kYXJrLWJsdWUpO1xuJGhvdmVyLXNlcnZpY2VzOiBjb2xvcignYmcnLCBob3Zlci1zZXJ2aWNlcyk7XG4kbW9iaWxlLW1lbnU6IGNvbG9yKCdiZycsIG1vYmlsZS1tZW51KTtcbiRjb3VudGVyLWxpbmU6IGNvbG9yKCdiZycsIGNvdW50ZXItbGluZSk7XG4kZGlzYWJsZWQ6IGNvbG9yKCdiZycsIGRpc2FibGVkKTtcbiRjb2xsYXBzZTogY29sb3IoJ2JnJywgY29sbGFwc2UpO1xuXG4kYmxhY2s6ICMwMDA7XG4kd2hpdGU6ICNmZmY7XG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMS43Myk7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYm9keS1mb250LWNvbG9yOiAkZm9udC1jb2xvci1kZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgJ0FyaWFsJywgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1saWdodDogMzAwO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4kZ2xvYmFsLXdlaWdodC1tZWRpdW06IDUwMDtcbiRnbG9iYWwtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDA7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtYm94LXNoYWRvdzogMCByZW0tY2FsYyg2KSByZW0tY2FsYygxNCkgMCByZ2JhKCRibGFjaywgLjEpO1xuJGdsb2JhbC1ib3JkZXI6IHNvbGlkIDFweCAkZ3JheS1saWdodDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cblxuLy8gMS5EcnVwYWwgLSBBbGwgb2YgdGhlc2Ugc2V0dGluZ3Mgc2hvdWxkIGJlIGNvcGllZCBvdmVyIHdoZW4gdGhlIF9zZXR0aW5ncy5zY3NzIHBhcnRpYWwgaXMgdXBkYXRlZCBvbiBuZXcgdmVyc2lvbiBvZiBmb3VuZGF0aW9uISEhXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gRHJ1cGFsIGNvbG9yc1xuJGVycm9yYmc6ICNhOTQ0NDI7XG4kd2FybmluZ2JnOiAjOGE2ZDNiO1xuJHN0YXR1c29rYmc6ICMzYzc2M2Q7XG5cbi8qKioqKioqIEVuZCBEcnVwYWwgRGVmYXVsdHMgKioqKioqKi9cblxuXG5cblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA3NjhweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgbGFyZ2UtZGVza3RvcDogMTIwMHB4LFxuICB4bGFyZ2U6ICRnbG9iYWwtd2lkdGgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgJ0FyaWFsJywgc2Fucy1zZXJpZjtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiAkd2hpdGU7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogLjVyZW07XG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6IChcbiAgICAgICdmcyc6IDM2LFxuICAgICAgJ2xoJzogNDQsXG4gICAgKSxcbiAgICAnaDInOiAoXG4gICAgICAnZnMnOiAzMCxcbiAgICAgICdsaCc6IDIzLFxuICAgICksXG4gICAgJ2gzJzogKFxuICAgICAgJ2ZzJzogMjQsXG4gICAgICAnbGgnOiAzMixcbiAgICApLFxuICBcbiAgICAnaDQnOiAoXG4gICAgICAnZnMnOiAxNixcbiAgICAgICdsaCc6IDIyLFxuICAgICksXG4gICAgJ2g1JzogKFxuICAgICAgJ2ZzJzogMTYsXG4gICAgICAnbGgnOiAyOCxcbiAgICApLFxuICAgICdoNic6IChcbiAgICAgICdmcyc6IDE0LFxuICAgICAgJ2xoJzogMjQsXG4gICAgICAnbWInOiA2LFxuICAgIClcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKFxuICAgICAgJ2ZzJzogNzIsXG4gICAgICAnbGgnOiA4NyxcbiAgICApLFxuICAgICdoMic6IChcbiAgICAgICdmcyc6IDYwLFxuICAgICAgJ2xoJzogNTYsXG4gICAgKSxcbiAgICAnaDMnOiAoXG4gICAgICAnZnMnOiA0OCxcbiAgICAgICdsaCc6IDU2LFxuICAgICksXG4gIFxuICAgICdoNCc6IChcbiAgICAgICdmcyc6IDI0LFxuICAgICAgJ2xoJzogMzIsXG4gICAgKSxcbiAgICAnaDUnOiAoXG4gICAgICAnZnMnOiAxOCxcbiAgICAgICdsaCc6IDMyLFxuICAgICksXG4gICAgJ2g2JzogKFxuICAgICAgJ2ZzJzogMTQsXG4gICAgICAnbGgnOiAyNCxcbiAgICAgICdtYic6IDYsXG4gICAgKVxuICApLFxuICBsYXJnZTogKFxuICAgICdoMSc6IChcbiAgICAgICdmcyc6IDcyLFxuICAgICAgJ2xoJzogODcsXG4gICAgKSxcbiAgICAnaDInOiAoXG4gICAgICAnZnMnOiA2MCxcbiAgICAgICdsaCc6IDU2LFxuICAgICksXG4gICAgJ2gzJzogKFxuICAgICAgJ2ZzJzogNDgsXG4gICAgICAnbGgnOiA1NixcbiAgICApLFxuXG4gICAgJ2g0JzogKFxuICAgICAgJ2ZzJzogMjQsXG4gICAgICAnbGgnOiAzMixcbiAgICApLFxuICAgICdoNSc6IChcbiAgICAgICdmcyc6IDE4LFxuICAgICAgJ2xoJzogMzIsXG4gICAgKSxcbiAgICAnaDYnOiAoXG4gICAgICAnZnMnOiAxNCxcbiAgICAgICdsaCc6IDI0LFxuICAgICAgJ21iJzogNixcbiAgICApXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkZm9udC1jb2xvci1kZWZhdWx0O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjU7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGdyYXktZGVmYXVsdDtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1kYXJrO1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGdyYXktZGFyaztcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1kYXJrO1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGdyYXktZGFyaztcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRncmF5LWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZ3JheS1kYXJrO1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogJHdhcm5pbmdiZztcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6ICR3YXJuaW5nYmc7XG4kaW5wdXQtZXJyb3ItY29sb3I6ICR3YXJuaW5nYmc7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkZ3JheS1kZWZhdWx0O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGdyYXktZGVmYXVsdDtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFkZGluZzogLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkZ3JheS1kYXJrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLXBhZGRpbmc6IC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiA1cHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IC42cmVtLFxuICBzbWFsbDogLjc1cmVtLFxuICBkZWZhdWx0OiAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1vdXQsIGNvbG9yIC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkZ3JheS1kZWZhdWx0O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGdyYXktZGVmYXVsdDtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogLjMzZW0sXG4gIG1lZGl1bTogLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDNlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkZm9udC1jb2xvci1kZWZhdWx0O1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IGZhbHNlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuXG4vLyAxNy4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkZ3JheS1kYXJrO1xuXG4vLyAxOS4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRncmF5LWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGdyYXktZGFyaztcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZ3JheS1kYXJrO1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkZ3JheS1kZWZhdWx0O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRncmF5LWRhcms7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGdyYXktZGFyaztcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjEpO1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkZ3JheS1kYXJrO1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuNXMsIGJvcmRlci1jb2xvciAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIwLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1mb250LXNpemU6IC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IC4zMzMzM3JlbSAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xuJG1lbnUtaXRlbS1wYWRkaW5nOiAuN3JlbSAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRncmF5LWRlZmF1bHQ7XG4kbWVudS1ib3JkZXI6ICRncmF5LWRlZmF1bHQ7XG5cblxuLy8gMjQuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAxMDB2dyxcbiAgbWVkaXVtOiAzMjBweFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcblxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgLjcpO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEwO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuNDUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuXG4vLyAyNi4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRncmF5LWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRncmF5LWRhcms7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pO1xuXG4vLyAzMi4gVGFibGVcbi8vIC0tLS0tLS0tLVxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcblxuLy8gMzMuIFRhYnNcbi8vIC0tLS0tLS0tXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkZ3JheS1kZWZhdWx0O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkZ3JheS1kZWZhdWx0O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cblxuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGdyYXktZGFyaztcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMy4wXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJy4uL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuLy9AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyBHbG9iYWwgdmFyaWFibGVzIGFuZCBzdHlsZXNcbi8vQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuLy9AaW1wb3J0ICdncmlkL2dyaWQnO1xuLy9AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuLy9AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51Jztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5Jztcbi8vQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbi8vQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuLy9AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vL0BpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoJGZsZXg6IGZhbHNlKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cbn1cblxuXG4vLyBDaG9vc2UgdGhlIHN0eWxlcyB0aGF0IHdlIGFjdHVhbGx5IHdhbnQgUFJJTlRFRCBpbnRvIG91ciBzdHlsZXNoZWV0c1xuQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm0tZXJyb3I7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuXG5AaW5jbHVkZSB0aGVtZS1pY29ucztcbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Qb3BwaW5zOjIwMCw0MDAsNTAwLCA2MDAnKTtcbiIsIi8vXG4vLyBWYXJpYWJsZXNcbi8vXG4vLyBZb3UgY2FuIG92ZXJyaWRlIHRoZSBkZWZhdWx0IHZhbHVlcyBieSBzZXR0aW5nIHRoZSB2YXJpYWJsZXMgaW4geW91ciBTYXNzXG4vLyBiZWZvcmUgaW1wb3J0aW5nIHRoZSBub3JtYWxpemUtc2NzcyBsaWJyYXJ5LlxuXG4vLyBUaGUgZm9udCBzaXplIHNldCBvbiB0aGUgcm9vdCBodG1sIGVsZW1lbnQuXG4kYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBiYXNlIGxpbmUgaGVpZ2h0IGRldGVybWluZXMgdGhlIGJhc2ljIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtLlxuJGJhc2UtbGluZS1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBsZW5ndGggdW5pdCBpbiB3aGljaCB0byBvdXRwdXQgdmVydGljYWwgcmh5dGhtIHZhbHVlcy5cbi8vIFN1cHBvcnRlZCB2YWx1ZXM6IHB4LCBlbSwgcmVtLlxuJGJhc2UtdW5pdDogJ2VtJyAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgZm9udCBmYW1pbHkuXG4kYmFzZS1mb250LWZhbWlseTogc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbnQgc2l6ZXMgZm9yIGgxLWg2LlxuJGgxLWZvbnQtc2l6ZTogMiAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IDEuNSAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAxLjE3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogMSAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IDAuODMgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAwLjY3ICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLyBUaGUgYW1vdW50IGxpc3RzIGFuZCBibG9ja3F1b3RlcyBhcmUgaW5kZW50ZWQuXG4kaW5kZW50LWFtb3VudDogNDBweCAhZGVmYXVsdDtcblxuLy8gVGhlIGZvbGxvd2luZyB2YXJpYWJsZSBjb250cm9scyB3aGV0aGVyIG5vcm1hbGl6ZS1zY3NzIHdpbGwgb3V0cHV0XG4vLyBmb250LXNpemVzLCBsaW5lLWhlaWdodHMgYW5kIGJsb2NrLWxldmVsIHRvcC9ib3R0b20gbWFyZ2lucyB0aGF0IGZvcm0gYSBiYXNpY1xuLy8gdmVydGljYWwgcmh5dGhtIG9uIHRoZSBwYWdlLCB3aGljaCBkaWZmZXJzIGZyb20gdGhlIG9yaWdpbmFsIE5vcm1hbGl6ZS5jc3MuXG4vLyBIb3dldmVyLCBjaGFuZ2luZyBhbnkgb2YgdGhlIHZhcmlhYmxlcyBhYm92ZSB3aWxsIGNhdXNlXG4vLyAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB0byBiZSBhdXRvbWF0aWNhbGx5IHNldCB0byB0cnVlLlxuJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IGZhbHNlICFkZWZhdWx0O1xuIiwiLy9cbi8vIFZlcnRpY2FsIFJoeXRobVxuLy9cbi8vIFRoaXMgaXMgdGhlIG1pbmltYWwgYW1vdW50IG9mIGNvZGUgbmVlZGVkIHRvIGNyZWF0ZSB2ZXJ0aWNhbCByaHl0aG0gaW4gb3VyXG4vLyBDU1MuIElmIHlvdSBhcmUgbG9va2luZyBmb3IgYSByb2J1c3Qgc29sdXRpb24sIGxvb2sgYXQgdGhlIGV4Y2VsbGVudCBUeXBleVxuLy8gbGlicmFyeS4gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vanB0YXJhbnRvL3R5cGV5XG5cbkBmdW5jdGlvbiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUsICR1bml0OiAkYmFzZS11bml0KSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gcHgge1xuICAgIEBlcnJvciBcIlRoZSBub3JtYWxpemUgdmVydGljYWwtcmh5dGhtIG1vZHVsZSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIEBpZiAkdW5pdCA9PSByZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxcmVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09IGVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkcmVsYXRpdmUtdG8pICogMWVtO1xuICB9XG4gIEBlbHNlIHsgLy8gJHVuaXQgPT0gcHhcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxufVxuXG5AbWl4aW4gbm9ybWFsaXplLWZvbnQtc2l6ZSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3B4JyB7XG4gICAgQGVycm9yIFwibm9ybWFsaXplLWZvbnQtc2l6ZSgpIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgZm9udC1zaXplOiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1yaHl0aG0oJHByb3BlcnR5LCAkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICAkdmFsdWUtbGlzdDogJHZhbHVlcztcbiAgJHNlcDogc3BhY2U7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdsaXN0JyB7XG4gICAgJHNlcDogbGlzdC1zZXBhcmF0b3IoJHZhbHVlcyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWx1ZS1saXN0OiBhcHBlbmQoKCksICR2YWx1ZXMpO1xuICB9XG5cbiAgJG5vcm1hbGl6ZWQtdmFsdWVzOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZS1saXN0IHtcbiAgICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgJHZhbHVlICE9IDAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiBub3JtYWxpemUtcmh5dGhtKCRiYXNlLWxpbmUtaGVpZ2h0LCAkcmVsYXRpdmUtdG8pO1xuICAgIH1cbiAgICAkbm9ybWFsaXplZC12YWx1ZXM6IGFwcGVuZCgkbm9ybWFsaXplZC12YWx1ZXMsICR2YWx1ZSwgJHNlcCk7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkbm9ybWFsaXplZC12YWx1ZXM7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbWFyZ2luKCR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obWFyZ2luLCAkdmFsdWVzLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRmb250LXNpemUsICRtaW4tbGluZS1wYWRkaW5nOiAycHgpIHtcbiAgJGxpbmVzOiBjZWlsKCRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCk7XG4gIC8vIElmIGxpbmVzIGFyZSBjcmFtcGVkIGluY2x1ZGUgc29tZSBleHRyYSBsZWFkaW5nLlxuICBAaWYgKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJGZvbnQtc2l6ZSkgPCAoJG1pbi1saW5lLXBhZGRpbmcgKiAyKSB7XG4gICAgJGxpbmVzOiAkbGluZXMgKyAxO1xuICB9XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obGluZS1oZWlnaHQsICRsaW5lcywgJGZvbnQtc2l6ZSk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtYXR0cmlidXRlLW5lc3RpbmcsIGZvcmNlLXBzZXVkby1uZXN0aW5nLCBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kc3VjY2Vzcy1jb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IGdldC1jb2xvcih3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy8gXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTsgIFxuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldHMgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVybiB0aGVuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG9sZC16Zi1zaXplICE9IG51bGwge1xuICAgIC8vIFJlc3RvcmUgdGhlIG9sZCBicmVha3BvaW50IHNpemVcbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkLXpmLXNpemU6IG51bGwgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW5nIC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2luZy5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1lbGVtZW50LW5lc3RpbmcsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQgZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfVxufVxuIiwiJGljb24tZm9udC1uYW1lOiAnaWNvbW9vbicgIWRlZmF1bHQ7XG4kaWNvbi1mb250LWRpcjogJy4uL2ZvbnRzL2ljb21vb24vZm9udHMvJyAhZGVmYXVsdDtcbiRpY29ucy1lbmFibGVkOiBmYWxzZTtcblxuQG1peGluIHRoZW1lLWljb25zIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRpY29uLWZvbnQtbmFtZTtcbiAgICBzcmM6IHVybCgkaWNvbi1mb250LWRpciArICRpY29uLWZvbnQtbmFtZSArICcuZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgkaWNvbi1mb250LWRpciArICRpY29uLWZvbnQtbmFtZSArICcud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgkaWNvbi1mb250LWRpciArICRpY29uLWZvbnQtbmFtZSArICcudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgkaWNvbi1mb250LWRpciArICRpY29uLWZvbnQtbmFtZSArICcuc3ZnIzN4bCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cblxuICAlaWNvbi1iYXNlIHtcbiAgICBmb250LWZhbWlseTogJGljb24tZm9udC1uYW1lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHNwZWFrOiBub25lO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB3aWR0aDogMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8vIEZvciBzYWZldHkgLSByZXNldCBwYXJlbnQgc3R5bGVzLCB0aGF0IGNhbiBicmVhayBnbHlwaCBjb2Rlc1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgLy8gRW5zdXJlIGNvbnNpc3RlbnQgaGVpZ2h0XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAkaWNvbnMtZW5hYmxlZDogdHJ1ZSAhZ2xvYmFsO1xufVxuXG5cbiRpY29uczogKCkgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgYSBmb250IGljb24uIFRoaXMgbXVzdCBiZSB1c2VkIGluIGEgYmVmb3JlIG9yIGFmdGVyIHBzZXVkbyBjbGFzc1xuQG1peGluIGljb24oJGljb24sICRyZXBsYWNlOiBmYWxzZSwgJG1hcDogJGljb25zKSB7XG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGljb24pKSB7XG4gICAgJGljb246IG1hcC1nZXQoJG1hcCwgJGljb24pO1xuICB9XG5cbiAgQGlmICgkcmVwbGFjZSA9PSBmYWxzZSkge1xuICAgIEBleHRlbmQgJWljb24tYmFzZTtcbiAgfVxuXG4gIGNvbnRlbnQ6ICcjeyRpY29ufSc7XG59XG5cbi8vLyBBZGQgYW4gaWNvbiB0byB0aGUgYmVmb3JlIHBzZXVkbyBjbGFzc1xuQG1peGluIGljb24tYmVmb3JlKCRpY29uLCAkcmVwbGFjZTogZmFsc2UpIHtcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24oJGljb24sICRyZXBsYWNlKTtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8gQWRkIGFuIGljb24gdG8gdGhlIGFmdGVyIHBzZXVkbyBjbGFzc1xuQG1peGluIGljb24tYWZ0ZXIoJGljb24sICRyZXBsYWNlOiBmYWxzZSkge1xuICAmOmFmdGVyIHtcbiAgICBAaW5jbHVkZSBpY29uKCRpY29uLCAkcmVwbGFjZSk7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFJlcGxhY2UgdGV4dCB3aXRoIGljb25cbkBtaXhpbiByZXBsYWNlLXRleHQtd2l0aC1pY29uKCRpY29uLCAkZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSkge1xuICBmb250OiAwIC8gMCB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGljb24tYmVmb3JlKCRpY29uKSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vLyBHZXQgYSBpY29uIGZyb20gdGhlICRpY29ucyBtYXBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSB0aGUgaWNvbiBuYW1lXG5AZnVuY3Rpb24gaWNvbigkbmFtZSkge1xuICBAaWYgKG1hcC1oYXMta2V5KCRpY29ucywgJG5hbWUpKSB7XG4gICAgQHJldHVybiBrZXkoJGljb25zLCAkbmFtZSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gZG9lcyBub3QgZXhpc3QgaW4gJGNvbG9ycy5cIjtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBCYXNpYyBUeXBvZ3JhcGh5IFN5dHlsZXNcbi8vLyAoQWxzbyBpbmNsdWRlZCBpbiBXWVNJV1lHKVxuLy8vL1xuXG5ib2R5IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbn1cblxuLmVtYmVkZGVkLWVudGl0eSB7XG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIH1cblxuICAmLmNhcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBmaWdjYXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6ICRnbG9iYWwtbGV0dGVyLXNwYWNpbmc7XG4gICAgICBwYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgLyAyIDA7XG4gICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1pbWFnZSB7XG4gICAgJiwgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbiAqIDIuNTtcbiAgICB9XG4gIH1cbn1cblxuaDEge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG5oMiB7XG4gIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG59XG4uaDIge1xuICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG5cbiAgcCB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgfVxufVxuXG5oMyB7XG4gIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbn1cblxuaDYge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG59XG5cbi5zdWJoZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxucCB7XG4gIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG59XG4iLCJAbWl4aW4gbGFiZWwge1xuICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gIH1cbn1cblxuZm9ybSB7XG4gIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgaW5wdXRbdHlwZT0nZW1haWwnXSxcbiAgaW5wdXRbdHlwZT0ndGVsJ10sXG4gIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG4gIHRleHRhcmVhIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvdW50ZXItbGluZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lOiBub25lO1xuICBcbiAgICBwYWRkaW5nOiAwIDExcHg7XG4gIFxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gIFxuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gIFxuICAgIGhlaWdodDogMzBweDtcbiAgXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgICBcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJHBsYWNlaG9sZGVyO1xuICAgIH1cbiAgXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRwbGFjZWhvbGRlcjtcbiAgICB9XG4gIFxuICAgICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJHBsYWNlaG9sZGVyO1xuICAgIH1cbiAgICBcbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkaXNhYmxlZDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICBcbiAgfVxuICBcbiAgLmZvcm0taXRlbSxcbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB9XG4gICAgXG4gICAgLmZvcm0taXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgXG4gICAgbGFiZWwge1xuICAgICAgQGluY2x1ZGUgbGFiZWw7XG4gICAgICBcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1lbnUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogMTYwcHg7XG4gICAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgXG4gIC5zdWJtaXQtYnRuIHtcbiAgICBAaW5jbHVkZSBidG4oX2Jhc2UtcGlwZSwgJGlzLWFycm93OiB0cnVlKTtcbiAgICBcbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuICBcbiAgLmZvcm0tY2hlY2tib3hlcyxcbiAgLmZvcm0tcmFkaW9zIHtcbiAgICAuZm9ybS1pdGVtIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG4gIFxuICAvLyBSYWRpbyBidXR0b25zLlxuICAuZm9ybS10eXBlLXJhZGlvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBcbiAgICBpbnB1dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBcbiAgICAgICY6Y2hlY2tlZCArIGxhYmVsOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gIFxuICAgICAgJjpkaXNhYmxlZCArIGxhYmVsIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIFxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRkaXNhYmxlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBsYWJlbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIFxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAyOXB4O1xuICAgICAgICBoZWlnaHQ6IDI5cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb3VudGVyLWxpbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIGhlaWdodDogOXB4O1xuICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZm9udC1jb2xvci1tZW51LWFjdGl2ZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5yZXNpemUtdmVydGljYWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgcmVzaXplOiBub25lO1xuICAgIH1cbiAgfVxufSIsIi8vLy9cbi8vLyBGcmFtZXdvcmsgLSBCdXR0b25zXG4vLy8vXG5cblxuJGJ1dHRvbnM6IChcbiAgZGVmYXVsdDogKFxuICAgIGJhY2tncm91bmQ6ICM3NzcsXG4gICAgY29sb3I6ICNmZmYsXG4gICAgYm9yZGVyOiAjY2NjLFxuICAgIGhvdmVyLWJhY2tncm91bmQ6ICM1NTUsXG4gICAgaG92ZXItY29sb3I6ICNmZmYsXG4gICAgaG92ZXItYm9yZGVyOiAjY2NjLFxuICAgIGFjdGl2ZS1iYWNrZ3JvdW5kOiAjNTU1LFxuICApXG4pICFkZWZhdWx0O1xuXG5cbkBtaXhpbiBidG4oJGJ1dHRvbi1rZXksICRzaXplOiBkZWZhdWx0LCAkaXMtb3V0bGluZTogZmFsc2UsICRpcy1hcnJvdzogZmFsc2UsICRpcy1waXBlOiBkYXJrKSB7XG4gICRidXR0b246IGV4dGVuZC1pbi1tYXAoJGJ1dHRvbnMsICRidXR0b24ta2V5KTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMCAwIDAgNHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7XG4gIH1cblxuICBAaWYgJGlzLW91dGxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCBrZXkoJGJ1dHRvbiwgYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IGtleSgkYnV0dG9uLCBiYWNrZ3JvdW5kKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9IEBlbHNlIHtcbiAgICBjb2xvcjoga2V5KCRidXR0b24sIGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBrZXkoJGJ1dHRvbiwgYmFja2dyb3VuZCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgfVxuXG4gIEBpZiAoJHNpemUgPT0gc21hbGwpIHtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH0gQGVsc2UgaWYgKCRzaXplID09IGRlZmF1bHQpIHtcbiAgICBwYWRkaW5nOiAwIDAgMCA5cHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkc2l6ZSA9PSBsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI0KSByZW0tY2FsYygkZ2xvYmFsLXBhZGRpbmcgKiAyKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgfVxuXG4gIEBpZiAoJGlzLWFycm93KSB7XG4gICAgQGluY2x1ZGUgaWNvbi1hZnRlcihuYXZpZ2F0ZV9uZXh0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIHRyYW5zaXRpb246IDAuNXM7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogLTIwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICByaWdodDogLTIzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgIFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzZWxlY3RvcnMoYWN0aXZlKSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBrZXkoJGJ1dHRvbiwgaG92ZXItY29sb3IpO1xuICAgIEBpZiAkaXMtb3V0bGluZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1rZXkgPT0gJ3doaXRlJyB7XG4gICAgICAgIGNvbG9yOiBrZXkoJGJ1dHRvbiwgY29sb3IpO1xuICAgICAgfVxuICAgICAgYmFja2dyb3VuZC1jb2xvcjoga2V5KCRidXR0b24sIGJhY2tncm91bmQpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjoga2V5KCRidXR0b24sIGhvdmVyLWJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGlzLXBpcGUgPT0gZGFyaykge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICBib3JkZXItY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgKCRpcy1waXBlID09IGxpZ2h0KSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gIEBjb250ZW50O1xufVxuIiwiLy8vL1xuLy8vIEdlbmVyYWwgdGhlbWUgY29uZmlndXJhdGlvbi5cbi8vLyBAZ3JvdXAgQ29uZmlndXJhdGlvblxuLy8vL1xuXG4vLy8gQ29uZmlndXJhdGlvbiBmb3IgRHJ1cGFsIEFkbWluIHRhYnMuXG4kZHJ1cGFsLXRhYnM6IChcbiAgd3JhcDogKFxuICAgIGJhY2tncm91bmQ6ICNmYWZhZmEsXG4gICAgYm9yZGVyOiAjZWZlZmVmXG4gICksXG4gIGxpbms6IChcbiAgICBjb2xvcjogIzI1MTkyMyxcbiAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmLFxuICAgIGhvdmVyLWNvbG9yOiAjZmZmLFxuICAgIGhvdmVyLWJhY2tncm91bmQ6ICMyNTE5MjNcbiAgKSxcbiAgYWx0LWNvbG9yczogI2I2YzRjNSAjNTc1NjQyICM0YzQ2NTAgIzI1MTkyM1xuKTtcblxuLy8vIHotaW5kZXggb3JnYW5pemF0aW9uLlxuLy8vIFNlZSBsaW5rcyBiZWxvdyBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaGFuZGxpbmctei1pbmRleC9cbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vdXNpbmctc2Fzcy1tYXBzL1xuJHotbGF5ZXJzOiAoXG4gIHNraXAtbGluazogODAwMCxcbiAgYWpheC10aHJvYmJlcjogNzAwMCxcbiAgZGVidWc6IDEwMDAsXG4gIGRlZmF1bHQ6IDAsXG4gIGJvdHRvbWxlc3MtcGl0OiAtOTk5OSxcbiAgZml4ZWQ6IDUwMCxcbiAgYWJvdmU6IDEsXG4gIHVuZGVyOiAtMSxcblxuICAvLyBleGFtcGxlIG5lc3RlZCB6LWluZGV4LlxuICBleGFtcGxlOiAoXG4gICAgZGVmYXVsdDogMTAwLFxuICAgIGltYWdlOiAtMlxuICApXG4pO1xuXG4vLy8gQnV0dG9uIGNvbmZpZ1xuJGJ1dHRvbnM6IChcbiAgX2Jhc2U6IChcbiAgICBjb2xvcjogJHdoaXRlLFxuICAgIGJvcmRlcjogMCxcbiAgICBob3Zlci1iYWNrZ3JvdW5kOiAkZ3JheS1kZWZhdWx0LFxuICAgIGhvdmVyLWNvbG9yOiAkd2hpdGUsXG4gICAgYmFja2dyb3VuZDogJHdoaXRlLFxuICApLFxuICBwcmltYXJ5OiAoXG4gICAgZXh0ZW5kOiBfYmFzZSxcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcixcbiAgKSxcbiAgc2Vjb25kYXJ5OiAoXG4gICAgZXh0ZW5kOiBfYmFzZSxcbiAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yLFxuICApLFxuICB0ZXJ0aWFyeTogKFxuICAgIGV4dGVuZDogX2Jhc2UsXG4gICAgYmFja2dyb3VuZDogJHRlcnRpYXJ5LWNvbG9yLFxuICApLFxuICAnd2hpdGUnOiAoXG4gICAgZXh0ZW5kOiBfYmFzZSxcbiAgICBjb2xvcjogIzRhNGE0YSxcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGUsXG4gICksXG4gICdkYXJrJzogKFxuICAgIGV4dGVuZDogX2Jhc2UsXG4gICAgYmFja2dyb3VuZDogJGdyYXktZGFyayxcbiAgKSxcbiAgX2Jhc2UtcGlwZTogKFxuICAgIGV4dGVuZDogX2Jhc2UsXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQsXG4gICAgaG92ZXItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQsXG4gICAgaG92ZXItY29sb3I6IHRyYW5zcGFyZW50LFxuICApXG4pO1xuIiwiLy8vL1xuLy8vIEBncm91cCBVdGlsaXR5XG4vLy8vXG5cblxuLy8vIFJldHVybiBhIG1hcCBmcm9tIHRoZSBzcGVjaWZpZWQga2V5LiBPcHRpb25hbGx5IHNwZWNpZnkgYSBzdWIga2V5LlxuLy8vIFdvcmtzIHNpbWlsYXJseSB0byBtYXAtZ2V0IGJ1dCB3aXRoIHN1cHBvcnQgZm9yIHN1YiBrZXlzLlxuLy8vIEBwYXJhbSB7bWFwfSAkbWFwXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRrZXkgLSBUaGUgbWFwIGtleSB0byByZXRyaWV2ZS5cbi8vLyBAcGFyYW0ge3N0cmluZ30gJHN1Yi1rZXkgW251bGxdIC0gQSBzdWIta2V5IG9mICRrZXlcbi8vLyBAcmV0dXJucyB7KnxudWxsfSBUaGUgdmFsdWUgb2YgdGhlIHN1cHBsaWVkIGtleVxuQGZ1bmN0aW9uIGtleSgkbWFwLCAka2V5LCAkc3ViLWtleTogbnVsbCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICR2YWw6IG1hcC1nZXQoJG1hcCwgJGtleSk7XG5cbiAgICBAaWYgJHN1Yi1rZXkgYW5kIG1hcC1oYXMta2V5KCR2YWwsICRzdWIta2V5KSB7XG4gICAgICAkdmFsOiBtYXAtZ2V0KCR2YWwsICRzdWIta2V5KTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICR2YWw7XG4gIH1cblxuICBAd2FybiBcIlVua25vd24gJyN7JGtleX0nIGluICcjeyRtYXB9Jy5cIjtcbiAgQHJldHVybiBudWxsO1xufVxuXG5cbi8vLyBBbGxvd3MgZm9yIHN1Yi1tYXBzIG9mIGNvbmZpZ3VyYXRpb24gbWFwcyB0byBleHRlbmQgb3RoZXIgc3ViLW1hcHMuXG4vLy9cbi8vLyBFeGFtcGxlOlxuLy8vICAgJGNvbmYtbWFwOiAoXG4vLy8gICAgIGJhc2UtY29uZmlnOiAoXG4vLy8gICAgICAgY29sb3I6IHJlZCxcbi8vLyAgICAgICBzaXplOiBsYXJnZVxuLy8vICAgICApLFxuLy8vICAgICByZWQtYnV0dG9uOiAoXG4vLy8gICAgICAgZXh0ZW5kOiBiYXNlLWNvbmZpZyxcbi8vLyAgICAgICBhcnJvdzogdHJ1ZVxuLy8vICAgICApXG4vLy8gICApO1xuQGZ1bmN0aW9uIGV4dGVuZC1pbi1tYXAoJG1hcC10by1zZWFyY2gsICRzdWItbWFwLWtleSkge1xuICAkbWFwLXRvLW1lcmdlOiBrZXkoJG1hcC10by1zZWFyY2gsICRzdWItbWFwLWtleSk7XG5cbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLXRvLW1lcmdlLCBleHRlbmQpKSB7XG4gICAgJGtleS1vZi1tYXAtdG8tZXh0ZW5kOiBtYXAtZ2V0KCRtYXAtdG8tbWVyZ2UsIGV4dGVuZCk7XG5cbiAgICBAaWYgKG1hcC1oYXMta2V5KCRtYXAtdG8tc2VhcmNoLCAka2V5LW9mLW1hcC10by1leHRlbmQpKSB7XG4gICAgICBAcmV0dXJuIG1hcC1tZXJnZShrZXkoJG1hcC10by1zZWFyY2gsICRrZXktb2YtbWFwLXRvLWV4dGVuZCksICRtYXAtdG8tbWVyZ2UpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG1hcC10by1tZXJnZTtcbn1cblxuXG4kei1sYXllcnM6IChcbiAgYm90dG9tbGVzcy1waXQ6IC05OTk5LFxuICBkZWZhdWx0OiAwLFxuICBkZWJ1ZzogMTAwMFxuKSAhZGVmYXVsdDtcblxuLy8vIFJldHJpZXZlIHRoZSB6LWluZGV4IGZyb20gJHotbGF5ZXJzLlxuLy8vIEBzZWUgJHotbGF5ZXJzXG5AZnVuY3Rpb24geigka2V5LCAkc3ViLWtleTogbnVsbCkge1xuICBAcmV0dXJuIGtleSgkei1sYXllcnMsICRrZXksICRzdWIta2V5KTtcbn1cblxuXG4vLy8gU3RvcmUgZ3JvdXBzIG9mIGNvbW1vbmx5IHVzZWQgc2VsZWN0b3JzXG4kc2VsZWN0b3ItZ3JvdXBzOiAoXG4gIGZvcm0taW5wdXRzOiAoXG4gICAgdGV4dDogJ1t0eXBlPVwidGV4dFwiXScsXG4gICAgcGFzc3dvcmQ6ICdbdHlwZT1cInBhc3N3b3JkXCJdJyxcbiAgICBkYXRlOiAnW3R5cGU9XCJkYXRlXCJdJyxcbiAgICBkYXRldGltZTogJ1t0eXBlPVwiZGF0ZXRpbWVcIl0nLFxuICAgIGRhdGV0aW1lLWxvY2FsOiAnW3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXScsXG4gICAgbW9udGg6ICdbdHlwZT1cIm1vbnRoXCJdJyxcbiAgICB3ZWVrOiAnW3R5cGU9XCJ3ZWVrXCJdJyxcbiAgICBlbWFpbDogJ1t0eXBlPVwiZW1haWxcIl0nLFxuICAgIG51bWJlcjogJ1t0eXBlPVwibnVtYmVyXCJdJyxcbiAgICBzZWFyY2g6ICdbdHlwZT1cInNlYXJjaFwiXScsXG4gICAgdGVsOiAnW3R5cGU9XCJ0ZWxcIl0nLFxuICAgIHRpbWU6ICdbdHlwZT1cInRpbWVcIl0nLFxuICAgIHVybDogJ1t0eXBlPVwidXJsXCJdJyxcbiAgICBjb2xvcjogJ1t0eXBlPVwiY29sb3JcIl0nLFxuICAgIHRleHRhcmVhOiAndGV4dGFyZWEnXG4gICksXG4gIGhlYWRlcnM6IChcbiAgICBoMTogJ2gxJyxcbiAgICBoMjogJ2gyJyxcbiAgICBoMzogJ2gzJyxcbiAgICBoNDogJ2g0JyxcbiAgICBoNTogJ2g1JyxcbiAgICBoNjogJ2g2J1xuICApLFxuICBidXR0b25zOiAoXG4gICAgaW5wdXQ6ICdbdHlwZT1cImJ1dHRvblwiXScsXG4gICAgc3VibWl0OiAnW3R5cGU9XCJzdWJtaXRcIl0nLFxuICAgIGJ1dHRvbjogJ2J1dHRvbidcbiAgKSxcbiAgYm9keS10ZXh0OiAoXG4gICAgcDogJ3AnLFxuICAgIHVsOiAndWwnLFxuICAgIG9sOiAnb2wnLFxuICAgIGRpdjogJ2RpdidcbiAgKSxcbiAgYWN0aXZlOiAoXG4gICAgaG92ZXI6ICcmOmhvdmVyJyxcbiAgICBmb2N1czogJyY6Zm9jdXMnLFxuICAgIGFjdGl2ZTogJyY6YWN0aXZlJ1xuICApXG4pICFkZWZhdWx0O1xuXG4vLy8gSW5jbHVkZSBhIGdyb3VwIG9mIHNlbGVjdG9ycyBkZWZpbmVkIGluIHRoZSAkc2VsZWN0b3ItZ3JvdXBzIG1hcC5cbi8vLyBAc2VlICRzZWxlY3Rvci1ncm91cHNcbkBmdW5jdGlvbiBzZWxlY3RvcnMoJHNlbGVjdG9yLWtleSwgJGV4Y2x1ZGU6ICcnKSB7XG4gICRzZWxlY3RvcnM6IG1hcC1nZXQoJHNlbGVjdG9yLWdyb3VwcywgJHNlbGVjdG9yLWtleSk7XG4gICRzZWxlY3Rvci1zdHJpbmc6ICcnO1xuICAkcG9zdGZpeDogJyc7XG5cbiAgQGVhY2ggJGtleSwgJHNlbGVjdG9yIGluICRzZWxlY3RvcnMge1xuICAgIEBpZiBzdHItbGVuZ3RoKCRzZWxlY3Rvci1zdHJpbmcpID4gMCB7XG4gICAgICAkcG9zdGZpeDogJywgJztcbiAgICB9XG4gICAgQGlmIGluZGV4KCRleGNsdWRlLCAka2V5KSA9PSBudWxsIHtcbiAgICAgICRzZWxlY3Rvci1zdHJpbmc6ICRzZWxlY3Rvci1zdHJpbmcgKyAkcG9zdGZpeCArICRzZWxlY3RvcjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzZWxlY3Rvci1zdHJpbmc7XG59XG5cbi8vLyBBIG1peGluIHdyYXBwZXIgb2YgdGhlIHNlbGVjdG9yKCkgZnVuY3Rpb24uXG4vLy8gQHNlZSB7ZnVuY3Rpb259IHNlbGVjdG9yXG5AbWl4aW4gc2VsZWN0b3JzKCRzZWxlY3Rvci1rZXksICRleGNsdWRlOiAnJykge1xuICAje3NlbGVjdG9ycygkc2VsZWN0b3Ita2V5LCAkZXhjbHVkZSl9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5cbi8vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBjaGFyYWN0ZXJzIGluIGEgc3RyaW5nXG4vLy8gRXhwbGFuYXRpb24gZm91bmQgLSBodHRwczovL2NvZGVwZW4uaW8vdGlndC9wb3N0L29wdGltaXppbmctc3Zncy1pbi1kYXRhLXVyaXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIFRoZSBzdHJpbmcgdG8gc2VhcmNoIChoYXlzdGFjaykuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBUaGUgc3RyaW5nIHRvIHNlYXJjaCBmb3IgKG5lZWRsZSkuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlIC0gVGhlIHN0cmluZyB0byByZXBsYWNlIHdpdGggZWFjaCBpbnN0YW5jZSBvZiB0aGUgbmVlZGxlLlxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuXG4vLy8gRnVuY3Rpb24gdG8gY3JlYXRlIGFuIG9wdGltaXplZCBzdmcgdXJsXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzdmcgLSBUaGUgc3ZnIHRvIG9wdGltaXplLlxuQGZ1bmN0aW9uIHN2Zy11cmwoJHN2Zykge1xuICAvL1xuICAvLyAgQ2h1bmsgdXAgc3RyaW5nIGluIG9yZGVyIHRvIGF2b2lkXG4gIC8vICBcInN0YWNrIGxldmVsIHRvbyBkZWVwXCIgZXJyb3JcbiAgLy9cbiAgJGVuY29kZWQ6ICcnO1xuICAkc2xpY2U6IDIwMDA7XG4gICRpbmRleDogMDtcbiAgJGxvb3BzOiBjZWlsKHN0ci1sZW5ndGgoJHN2ZykgLyAkc2xpY2UpO1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsb29wcyB7XG4gICAgJGNodW5rOiBzdHItc2xpY2UoJHN2ZywgJGluZGV4LCAkaW5kZXggKyAkc2xpY2UgLSAxKTtcbiAgICAvL1xuICAgIC8vICAgRW5jb2RlIChtYXkgbmVlZCBhIGZldyBleHRyYSByZXBsYWNlbWVudHMpXG4gICAgLy9cbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJ1wiJywgJ1xcJycpO1xuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCAnPCcsICclM0MnKTtcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJz4nLCAnJTNFJyk7XG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssICcmJywgJyUyNicpO1xuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCAnIycsICclMjMnKTtcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJygnLCAnJTI4Jyk7XG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssICcpJywgJyUyOScpO1xuICAgICRlbmNvZGVkOiAjeyRlbmNvZGVkfSN7JGNodW5rfTtcbiAgICAkaW5kZXg6ICRpbmRleCArICRzbGljZTtcbiAgfVxuICBAcmV0dXJuIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsI3skZW5jb2RlZH1cIik7XG59XG4iLCJoZWFkZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxMDAlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0ei1pbmRleDogMTA7XG5cdFxuXHQucmVnaW9uIHtcblx0XHRAaW5jbHVkZSBjb250YWluZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRtaW4taGVpZ2h0OiA2NXB4O1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XG5cdFx0XHRtaW4taGVpZ2h0OiAxMzBweDtcblx0XHR9XG5cdH1cblx0XG5cdC5uYXYtaWNvbiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogIDUwJTtcblx0XHRyaWdodDogMjVweDtcblx0XHR3aWR0aDogMTZweDtcblx0XHRoZWlnaHQ6IDEwcHg7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0dHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0O1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogMzJweDtcblx0XHRcdGhlaWdodDogMTlweDtcblx0XHR9XG5cdFx0QG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTAyNXB4KSB7XG5cdFx0XHRyaWdodDogMTVweDtcblx0XHR9XG5cdFx0XG5cdFx0c3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdGJhY2tncm91bmQ6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHRcdHRyYW5zaXRpb246IC4yNXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pIHtcblx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAwIDRweCA0cHggMDtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMCA5cHggOXB4IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQob2RkKSB7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDRweCAwIDAgNHB4O1xuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA5cHggMCAwIDlweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDEpLFxuXHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCY6bnRoLWNoaWxkKDMpLFxuXHRcdFx0JjpudGgtY2hpbGQoNCkge1xuXHRcdFx0XHR0b3A6IDRweDtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0dG9wOiA4cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0JjpudGgtY2hpbGQoNSksXG5cdFx0XHQmOm50aC1jaGlsZCg2KSB7XG5cdFx0XHRcdHRvcDogOHB4O1xuXHRcdFx0XHRcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHR0b3A6IDE2cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0XG5cdFx0Ji5vcGVuIHtcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHQmOm50aC1jaGlsZCgxKSxcblx0XHRcdFx0JjpudGgtY2hpbGQoNikge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0JjpudGgtY2hpbGQoMiksXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDUpIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHQmOm50aC1jaGlsZCgxKSB7XG5cdFx0XHRcdFx0bGVmdDogMXB4O1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdFx0bGVmdDogMnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcblx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdGxlZnQ6IGNhbGMoNTAlIC0gMnB4KTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRcdGxlZnQ6IGNhbGMoNTAlIC0gNHB4KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdFx0XHRsZWZ0OiAtNTAlO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDQpIHtcblx0XHRcdFx0XHRsZWZ0OiAxMDAlO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDUpIHtcblx0XHRcdFx0XHRsZWZ0OiAxcHg7XG5cdFx0XHRcdFx0dG9wOiA1cHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRcdGxlZnQ6IDJweDtcblx0XHRcdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDYpIHtcblx0XHRcdFx0XHRsZWZ0OiBjYWxjKDUwJSAtIDJweCk7XG5cdFx0XHRcdFx0dG9wOiA1cHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRcdGxlZnQ6IGNhbGMoNTAlIC0gNHB4KTtcblx0XHRcdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0QG1lZGlhKG1pbi13aWR0aDogMTAyNXB4KSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuIiwiLy8vL2ZvbnQtZmFtaWx5XG4vLy8gRnJhbWV3b3JrIC0gTGF5b3V0c1xuLy8vL1xuXG5AbWl4aW4gY29udGFpbmVyKCR3aWR0aDogJ2RlZmF1bHQnKSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuXG4gIEBpZiAkd2lkdGggPT0gJ2RlZmF1bHQnIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkd2lkdGggPT0gJ25hcnJvdycge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTY1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNjVweDtcbiAgICB9XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICB9XG59XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkbik7XG5cbiAgICAvLyBJZiBhICRndXR0ZXIgdmFsdWUgaXMgcGFzc2VkXG4gICAgQGlmICgkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgjeyRufW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZ3V0dGVyKSB7XG4gICAgLy8gR3V0dGVyc1xuICAgIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkdmFsdWUpIC8gMjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kcGFkZGluZztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kcGFkZGluZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBhZGRpbmc7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kcGFkZGluZztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGltYWdlLWNyb3AtaGVpZ2h0KCRoZWlnaHQpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiByZW0tY2FsYygkaGVpZ2h0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBncmlkLWxheW91dC1zZWNvbmQoJG1hcmdpbjogNzBweCwgJGlzLXBhZGRpbmc6ZmFsc2UpIHtcbiAgQGlmICRpcy1wYWRkaW5nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRtYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG1hcmdpbjtcbiAgICBAaWYgJGlzLXBhZGRpbmcge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRtYXJnaW47XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtZnVsbC13cmFwLW5lZ2F0aXZlKCRtYXJnaW46IC00NXB4KSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMjRweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tbGVmdDogLTM1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzVweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gIH1cbn1cblxuQG1peGluIGdyaWQtbGF5b3V0LWZ1bGwtd3JhcC1uZWdhdGl2ZS1zZWNvbmQoJG1hcmdpbjogLTcwcHgpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTI0cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zNXB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgfVxufVxuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtZnVsbCgkbWFyZ2luOiAtMTE1cHgpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTI0cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zNXB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgfVxufVxuQG1peGluIGdyaWQtbGF5b3V0LWxlZnQoJG1hcmdpbjogLTExNXB4KSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tbGVmdDogLTI0cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzVweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuQG1peGluIGdyaWQtbGF5b3V0LXJpZ2h0KCRtYXJnaW46IC0xMTVweCkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1yaWdodDogLTI0cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1yaWdodDogLTM1cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICB9XG59XG5cbkBtaXhpbiBsYXlvdXQtYmFzZS1tYXJnaW4oJG9ubHktdG9wOiBmYWxzZSwgJG9ubHktYm90dG9tOmZhbHNlKSB7XG4gIEBpZiAkb25seS10b3Age1xuICAgIG1hcmdpbjogNDBweCAwIDAgMDtcbiAgfSBAZWxzZWlmICRvbmx5LWJvdHRvbSB7XG4gICAgbWFyZ2luOiAwIDAgNDBweCAwO1xuICB9IEBlbHNlIHtcbiAgICBtYXJnaW46IDQwcHggMDtcbiAgICAmLm10LXNlY29uZGFyeSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBpZiAkb25seS10b3Age1xuICAgICAgbWFyZ2luOiA4MHB4IDAgMCAwO1xuICAgIH0gQGVsc2VpZiAkb25seS1ib3R0b20ge1xuICAgICAgbWFyZ2luOiAwIDAgODBweCAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luOiA4MHB4IDA7XG4gICAgICAmLm10LXNlY29uZGFyeSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaWYgJG9ubHktdG9wIHtcbiAgICAgIG1hcmdpbjogMTAwcHggMCAwIDA7XG4gICAgfSBAZWxzZWlmICRvbmx5LWJvdHRvbSB7XG4gICAgICBtYXJnaW46IDAgMCAxMDBweCAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luOiAxMDBweCAwO1xuICAgICAgJi5tdC1zZWNvbmRhcnkge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgfVxuICAgICAgJi5wYXJhZ3JhcGgtMjA2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTMzcHg7XG4gICAgICB9XG4gICAgICAmLnBhcmFncmFwaC0yMTkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDlweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsImZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMnB4KTtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICB9XG5cbiAgLndyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDI0cHggMCAwO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgcGFkZGluZzogMTAwcHggOC4zMzMzMzMzMyUgNzVweDtcbiAgICB9XG4gIH1cbiAgXG4gIC5yZWdpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGdyYXktZGFyay1saWdodCwgLjQ1KTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG4gICAgXG4gICAgLmJsb2NrIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDIycHggMDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgIGZsZXg6IDAgMCAzMDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRncmF5LWRhcmstbGlnaHQsIC40NSk7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIFxuICAgICAgJltpZD0nYmxvY2stY29weXJpZ2h0J10ge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAmLWZvb3RlcixcbiAgICAmLWZvb3RlcnNlY29uZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gIFxuICAgICYtY29weXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgXG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDguMzMzMzMzMzMlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDguMzMzMzMzMzMlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLWZvb3RlcnNlY29uZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5ibG9jayArIC5ibG9jayB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgaDIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1mb290ZXJib3R0b20ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmc6IDM1cHggMCA1MHB4O1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcGFkZGluZzogMTVweCAwIDE1cHg7XG4gICAgICB9XG5cbiAgICAgIC5ibG9jayB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4OiAwIDAgMjAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDUwcHggIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5maWVsZC0tbmFtZS1maWVsZC1tZWRpYS1pbWFnZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAZXh0ZW5kIGg0O1xuICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cbiAgfVxuXG4gICYuZm91ci1jb2wge1xuICAgIC53cmFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgPiAucmVnaW9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgICAgICYtZm9vdGVyIHtcbiAgICAgICAgICAgICAgZmxleDogMCAwIGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMDBweCk7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICYuYmxvY2stbWVudSB7XG4gICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMjUwcHg7XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmW2lkPVwiYmxvY2stc3RheWludG91Y2hcIl06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMwMHB4O1xuXG4gICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgLnJlZ2lvbiB7XG4gICAgICAgICAgJi1mb290ZXIge1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRncmF5LWRhcmstbGlnaHQsIC40NSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLnJlZ2lvbiB7XG4gICAgICAgICAgJi1mb290ZXIge1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAuYmxvY2sge1xuICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICZbaWQ9J2Jsb2NrLXN0YXlpbnRvdWNoJ10ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDA7XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGdyYXktZGFyay1saWdodCwgLjQ1KTtcblxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmllbGQtLW5hbWUtYm9keSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHAgKyBwIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoJGdyYXktZGFyay1saWdodCwgLjQ1KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmVnaW9uIHtcbiAgICAgICYtY29weXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZS1kZXNrdG9wKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi1mb290ZXJzZWNvbmQge1xuICAgICAgICAuYmxvY2sge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vL1xuLy8vIERydXBhbCBkZWZhdWx0IHN0dWZmXG4vLy8gQGdyb3VwIERydXBhbFxuLy8vIEBzZWUgJHRhYnMtY29uZmlnXG4vLy8vXG5cblxuLy8gVGhlIHNraXAtbGluayBsaW5rIHdpbGwgYmUgY29tcGxldGVseSBoaWRkZW4gdW50aWwgYSB1c2VyIHRhYnMgdG8gdGhlIGxpbmsuXG4vLyBTZWUgdGhlIGVsZW1lbnQtZm9jdXNhYmxlIHJ1bGUgaW4gc3lzdGVtLmJhc2UuY3NzLlxuW2lkPSdza2lwLWxpbmsnXSB7XG4gIG1hcmdpbjogMDtcblxuICBhIHtcbiAgICAmLCAmOnZpc2l0ZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDJweCAwIDNweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU3R5bGluZyBmb3IgRHJ1cGFsIGFkbWluIHRhYnMuXG51bC5wcmltYXJ5IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kOiBrZXkoJGRydXBhbC10YWJzLCB3cmFwLCBiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGtleSgkZHJ1cGFsLXRhYnMsIHdyYXAsIGJvcmRlcik7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiA4cHggMThweDtcbiAgICAgIGJhY2tncm91bmQ6IGtleSgkZHJ1cGFsLXRhYnMsIGxpbmssIGJhY2tncm91bmQpO1xuICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICNmZmQyMDQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiBrZXkoJGRydXBhbC10YWJzLCBsaW5rLCBjb2xvcik7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGtleSgkZHJ1cGFsLXRhYnMsIGxpbmssIGhvdmVyLWJhY2tncm91bmQpO1xuICAgICAgICBjb2xvcjoga2V5KCRkcnVwYWwtdGFicywgbGluaywgaG92ZXItY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICRhbHQtY29sb3JzOiBrZXkoJGRydXBhbC10YWJzLCBhbHQtY29sb3JzKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkYWx0LWNvbG9ycykge1xuXG4gICAgbGk6bnRoLWNoaWxkKCN7bGVuZ3RoKCRhbHQtY29sb3JzKX1uICsgI3skaX0pIHtcblxuICAgICAgYSB7XG4gICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCBudGgoJGFsdC1jb2xvcnMsICRpKTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbnRoKCRhbHQtY29sb3JzLCAkaSk7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG4vLyBDdXN0b20gc3R5bGVzIGZvciBEcnVwYWwncyBub3RpZmljYXRpb24gbWVzc2FnZXMuXG4ubWVzc2FnZXMge1xuICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgbWFyZ2luOiA2cHggMDtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZXNzYWdlcy0tb2ssXG4ubWVzc2FnZXMtLXN0YXR1cyB7XG4gIGNvbG9yOiBkYXJrZW4oJHN0YXR1c29rYmcsIDEwJSk7XG4gIGJvcmRlci1jb2xvcjogbGlnaHRlbigkc3RhdHVzb2tiZywgNTAlKTtcblxuICBhIHtcbiAgICBjb2xvcjogbGlnaHRlbigkc3RhdHVzb2tiZywgNTAlKTtcbiAgfVxufVxuXG4ubWVzc2FnZXMtLXN0YXR1cyB7XG4gICY6YmVmb3JlIHtcbiAgICAvL0BpbmNsdWRlIGljb24oY2hlY2tfY2lyY2xlLCB0cnVlKTtcbiAgICBjb2xvcjogIzgxYjU2NDtcbiAgfVxufVxuXG4ubWVzc2FnZXMtLW9rIHtcbiAgJjpiZWZvcmUge1xuICAgIC8vQGluY2x1ZGUgaWNvbihpbmZvLCB0cnVlKTtcbiAgICBjb2xvcjogIzgxYjU2NDtcbiAgfVxufVxuXG4ubWVzc2FnZXMtLXdhcm5pbmcge1xuICAmOmJlZm9yZSB7XG4gICAgLy9AaW5jbHVkZSBpY29uKGluZm8pO1xuICAgIGNvbG9yOiAjZTJiZTZjO1xuICB9XG59XG5cbi5tZXNzYWdlcy0tZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3JiZztcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGVycm9yYmcsIDEwJSk7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIGEge1xuICAgIGNvbG9yOiBsaWdodGVuKCRlcnJvcmJnLCA1MCUpO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIC8vQGluY2x1ZGUgaWNvbihlcnJvcik7XG4gIH1cbn1cblxuLm1lc3NhZ2VzIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwOyAvKiBMVFIgKi9cbiAgcGFkZGluZzogMDtcbn1cbi5tZXNzYWdlcyB1bCBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2Utc2VjdGlvbi1tZXNzYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIC5tZXNzYWdlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICB9XG59XG5cbi8vIEZpeCBzb21lIHN0eWxlcyBpbiBLcnVtb1xuLmtydW1vLWVsZW1lbnQsXG4ua3J1bW8tZm9vdG5vdGUsXG4ua3J1bW8tY2FsbCxcbi5rcnVtby1wcmV2aWV3IHtcbiAgY29sb3I6ICMyMzFmMjA7XG59XG5cbi8qKlxuICogalF1ZXJ5IHRvYXN0IHBsdWdpbiBjcmVhdGVkIGJ5IEthbXJhbiBBaG1lZCBjb3B5cmlnaHQgTUlUIGxpY2Vuc2UgMjAxNFxuICovXG4uanEtdG9hc3Qtd3JhcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAzMjBweDtcbiAgbWF4LXdpZHRoOiA1MHZ3O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB6LWluZGV4OiB6KGZpeGVkKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICByaWdodDogMTBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiA3MHZoO1xuXG4gICAgJi50b3Age1xuICAgICAgJi1yaWdodCB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICoge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICYtbGVmdCB7XG4gICAgICBib3R0b206IDIwcHg7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgIH1cbiAgICAmLXJpZ2h0IHtcbiAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgIHJpZ2h0OiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgJi50b3Age1xuICAgICAgJi1sZWZ0IHtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgJi1yaWdodCB7XG4gICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgYm9keS5hZG1pbmltYWwtYWRtaW4tdG9vbGJhciAmIHtcbiAgICAgICAgICB0b3A6IDEzMHB4O1xuICAgICAgICB9XG4gICAgICAgIGJvZHkuYWRtaW5pbWFsLWFkbWluLXRvb2xiYXIudG9vbGJhci1ob3Jpem9udGFsLnRvb2xiYXItdHJheS1vcGVuICYge1xuICAgICAgICAgIHRvcDogMTcwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uanEtdG9hc3Qtc2luZ2xlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIG1hcmdpbjogMCAwIDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWxpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWRhcmtlcjtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDFweCByZ2JhKCRibGFjaywgLjMpO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBtYXJnaW46IDAgMCA3cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgc2VsZWN0b3JzKGFjdGl2ZSkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDAgMCAwIDE1cHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICB9XG4gIH1cbn1cblxuLmNsb3NlLWpxLXRvYXN0LXNpbmdsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIHJpZ2h0OiAycHg7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICB3aWR0aDogcmVtLWNhbGMoMjQpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgc2VsZWN0b3JzKGFjdGl2ZSkge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLmpxLXRvYXN0LWxvYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTJweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiAwO1xuICBsZWZ0OiAwO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmMDA7XG59XG5cbi5qcS10b2FzdC1sb2FkZWQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmpxLWhhcy1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5qcS10b2FzdC1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgfVxuXG4gIEBpbmNsdWRlIGljb24tYmVmb3JlKCdpbmZvJykge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRvcDogOHB4O1xuICAgIGxlZnQ6IDEycHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gIH1cbn1cblxuLmpxLWljb24taW5mbyB7XG4gIGNvbG9yOiBsaWdodGVuKCMzMTcwOGYsIDUyJSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTcwOGY7XG59XG5cbi5qcS1pY29uLXdhcm5pbmcge1xuICBjb2xvcjogbGlnaHRlbigkd2FybmluZ2JnLCA1MiUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2FybmluZ2JnO1xuXG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY29uKCdpbmZvJyk7XG4gIH1cbn1cblxuLmpxLWljb24tZXJyb3Ige1xuICBjb2xvcjogbGlnaHRlbigkZXJyb3JiZywgNTIlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yYmc7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24oJ2Vycm9yJyk7XG4gIH1cbn1cblxuLmpxLWljb24tc3VjY2VzcyB7XG4gIGNvbG9yOiBsaWdodGVuKCRzdGF0dXNva2JnLCA1MiUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3RhdHVzb2tiZztcblxuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbignY2hlY2tfY2lyY2xlJyk7XG4gIH1cbn1cblxuXG4vLy8vXG4vLy8gUmVwbGFjZSBEcnVwYWwgQWpheCBUaHJvYmJlclxuLy8vXG4vLy8gVGhlIGZvbGxvd2luZyBzbmlwcGV0IHJlcGxhY2VzIHRoZSBkZWZhdWx0IGFqYXggdGhyb2JiZXIgd2l0aCBhIGN1c3RvbSBzdmcgZWxlbWVudCBhbmQgcm90YXRpb24uXG4vLy8gVGhlIGZhbGxiYWNrIHJlcGxhY2VzIHRoZSBEcnVwYWwgZ2lmIHdpdGggYSBsZXNzIHVnbHkgY3VzdG9tIGdpZi4gT25seSB0aGUgdGhyb2JiZXIgZWxlbWVudCBoYXNcbi8vLyBiZWVuIG1vZGlmaWVkIGhlcmUsIHNvIGl0IHdpbGwgc3RpbGwgaGF2ZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBhcHBlYXJpbmcgaW5saW5lIGFuZCBkZWZhdWx0XG4vLy8gc2l6ZSwgZXRjLiBTaXplIGNhbiBiZSBhbHRlcmVkIGVhc2lseSBiZWxvdy5cbi8vL1xuLy8vIENvbG9yIG9mIHN2ZyBzcGlubmVyIGNhbiBlYXNpbHkgYmUgY2hhbmdlZCBpbiB0aGUgbG9hZGVyLnN2ZyBmaWxlLCBvciBjb21wbGV0ZWx5IHJlcGxhY2Vcbi8vLyB3aXRoIGFuIGFsdGVybmF0aXZlLlxuLy8vXG4vLy8gUmVsaWVzIG9uIG1vZGVybml6ciBjc3NhbmltYXRpb25zIHRlc3QuXG4vLy8gQGdyb3VwIEFuaW1hdGlvbnNcbi8vLy9cbi5jc3NhbmltYXRpb25zIC5hamF4LXByb2dyZXNzLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbiB7XG4gIGhlaWdodDogNDRweDtcbiAgd2lkdGg6IDQ0cHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICBtYXJnaW4tbGVmdDogLTIycHg7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgei1pbmRleDogeihhamF4LXRocm9iYmVyKTtcbiAgb3BhY2l0eTogLjk7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltYWdlcy9zdmcvbG9hZGVyLnN2ZycpO1xuICAgIEBpbmNsdWRlIGJnLXN0eWxlKGNvbnRhaW4pO1xuICAgIGFuaW1hdGlvbjogcm90YXRlIDcwMG1zIGxpbmVhciBpbmZpbml0ZSBub3JtYWw7XG4gIH1cbn1cblxuLm5vLWNzc2FuaW1hdGlvbnMgLmFqYXgtcHJvZ3Jlc3MuYWpheC1wcm9ncmVzcy1mdWxsc2NyZWVuIHtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWFnZXMvZ2lmLWxvYWRlci5naWYnKTtcbiAgQGluY2x1ZGUgYmctc3R5bGUoY29udGFpbik7XG59XG5cblxuXG4vLyBDb250ZW50IE1vZGVyYXRpb25cbi5jb250ZW50LW1vZGVyYXRpb24tZW50aXR5LW1vZGVyYXRpb24tZm9ybSB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgbWFyZ2luLXRvcDogMnJlbTtcblxuICB1bC5lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgIC5mb3JtLWl0ZW0ge1xuICAgICAgbGFiZWwge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgfVxuXG4gICAgICBpbnB1dCxcbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBhZGRpbmc6IDRweCAxLjVlbTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDcxYjg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDcxYjg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWY4NmM3O1xuICAgICAgICBib3JkZXItY29sb3I6ICMxZjg2Yzc7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCBoc2xhKDIwMywgMTAlLCAxMCUsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucmVnaW9uLWNvbnRlbnQge1xuICAuZGlmZi1oZWFkZXIsXG4gIC5kaWZmLWNvbnRyb2xzLFxuICAuZGlmZm1vZC5lbnRpdHktbW9kZXJhdGlvbi1mb3JtIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gIH1cblxuICAuZGlmZi1yZXNwb25zaXZlLXRhYmxlLXdyYXBwZXIge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICB9XG4gIH1cbn1cblxuYm9keS50b29sYmFyLWhvcml6b250YWwgIHtcbiAgXG4gICYudG9vbGJhci10cmF5LW9wZW4ge1xuICAgIG1hcmdpbi10b3A6IDc5cHg7XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIC5tZW51LS1tYWluIHtcbiAgICAgICAgdG9wOiAxNDRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgaGVhZGVyIHtcbiAgICAgIHRvcDogNzlweDtcbiAgICB9XG4gIFxuICAgIG1haW4ge1xuICAgICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgICA+IC5maWVsZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtc2xpZGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMDlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuYm9keS50b29sYmFyLXZlcnRpY2FsLFxuYm9keS50b29sYmFyLWhvcml6b250YWwge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAzOXB4O1xuICBcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWRldmljZS1oZWlnaHQ6IDQ3NXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAubWVudS0tbWFpbiA+IC5tZW51IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDEzMHB4KTtcbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1kZXZpY2UtaGVpZ2h0OiA0NzVweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLm1lbnUtLW1haW4gPiAubWVudSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDRweCk7XG4gICAgfVxuICB9XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLm1lbnUtLW1haW4ge1xuICAgICAgdG9wOiAxMzBweDtcbiAgICB9XG4gIH1cbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIC5tZW51LS1tYWluIHtcbiAgICAgIHRvcDogNjVweDtcbiAgICB9XG4gIH1cbiAgXG4gIFxuICBoZWFkZXIge1xuICAgIHRvcDogMzlweDtcbiAgfVxuICBcbiAgbWFpbiB7XG4gICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgPiAuZmllbGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTY5cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIFV0aWxpdHlcbi8vLy9cblxuJGltZy1kaXI6ICcuLi8uLi9pbWFnZXMnICFkZWZhdWx0O1xuXG5cbi8vLyBBcHBseSBhIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZnVsbC13aWR0aC1iZy1jb2xvcigkY29sb3IsICRwc3VlZG8tZWxlbWVudDogYmVmb3JlLCAkYWRkLXJlbGF0aXZlOiB0cnVlLCAkei1pbmRleDogbnVsbCwgJGdyaWQtbGF5b3V0LXNlY29uZDogZmFsc2UsICRsYXlvdXQtdGhpcmQ6IGZhbHNlKSB7XG4gIEBpZiAoJGFkZC1yZWxhdGl2ZSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIEBpZiAoJHotaW5kZXgpIHtcbiAgICB6LWluZGV4OiAkei1pbmRleDtcbiAgfVxuXG4gICY6I3skcHN1ZWRvLWVsZW1lbnR9IHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBAaWYgKCRncmlkLWxheW91dC1zZWNvbmQpe1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQtZnVsbC13cmFwLW5lZ2F0aXZlKCk7XG4gICAgfSBAZWxzZSBpZigkbGF5b3V0LXRoaXJkKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dC1mdWxsLXdyYXAtbmVnYXRpdmUtc2Vjb25kKCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dC1mdWxsKCk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBseSBhIGJhY2tncm91bmQgY29sb3IgdGhhdCBleHRlbmRzIHBhc3QgaXQncyB3cmFwcGVyLlxuQG1peGluIHVubGltaXRlZC13aWR0aC1iZy1jb2xvcigkY29sb3IsICRwc3VlZG8tZWxlbWVudDogYmVmb3JlLCAkYWRkLXJlbGF0aXZlOiB0cnVlLCAkei1pbmRleDogbnVsbCkge1xuICBAaWYgKCRhZGQtcmVsYXRpdmUpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBAaWYgKCR6LWluZGV4KSB7XG4gICAgei1pbmRleDogJHotaW5kZXg7XG4gIH1cblxuICAmOiN7JHBzdWVkby1lbGVtZW50fSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMTB2dztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAtNTV2dztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIFJlcXVpcmVkIGZvciBtZXNzYWdlIHN0eWxlc1xuQG1peGluIHNxdWFyZSgkZGltZW5zaW9ucykge1xuICBoZWlnaHQ6ICRkaW1lbnNpb25zO1xuICB3aWR0aDogJGRpbWVuc2lvbnM7XG59XG5cbi8vLyBSZXF1aXJlZCBmb3IgbWVzc2FnZSBzdHlsZXNcbkBtaXhpbiBjaXJjbGUoJGRpbWVuc2lvbnMpIHtcbiAgaGVpZ2h0OiAkZGltZW5zaW9ucztcbiAgd2lkdGg6ICRkaW1lbnNpb25zO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi8vLyBSZXR1cm4gdGhlIHBhdGggdG8gYW4gaW1hZ2UgaW4gdGhlIHRoZW1lIGltYWdlcyBkaXJlY3RvcnkuXG5AZnVuY3Rpb24gaW1nLWdldCgkaW1nKSB7XG4gIEByZXR1cm4gJGltZy1kaXIgKyAkaW1nO1xufVxuXG4vLy8gQmFja2dyb3VuZCBpbWFnZSBzdHlsZSB3aXRoIGJhY2tncm91bmQtc2l6ZSBwYXJhbWV0ZXJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJhY2tncm91bmQtc2l6ZSBbY292ZXJdIC0gQmFja2dyb3VuZCBjb2xvclxuQG1peGluIGJnLXN0eWxlKCRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogJGJhY2tncm91bmQtc2l6ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2hhZG93LWJvcmRlcigkd2lkdGg6IDFweCwgJGNvbG9yOiAjY2NjKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwICR3aWR0aCAkY29sb3I7XG59XG5cbi8vLyBBZGQgYSBwcm9wZXJ0eSB0byB0aGUgbGVmdCBhbmQgcmlnaHQgb2YgYSBib3guXG4vLy8gQGdyb3VwIExheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICBsZWZ0LXJpZ2h0KG1hcmdpbiwgMTBweClcbkBtaXhpbiBsZWZ0LXJpZ2h0KCRwcm9wZXJ0eSwgJHZhbHVlLCAkYm9yZGVyLXN0eWxlOiBzb2xpZCwgJGJvcmRlci1jb2xvcjogIzAwMCkge1xuICBAaWYgKCRwcm9wZXJ0eSA9PSBib3JkZXIpIHtcbiAgICAjeyRwcm9wZXJ0eX0tbGVmdDogJHZhbHVlICRib3JkZXItc3R5bGUsICRib3JkZXItY29sb3I7XG4gICAgI3skcHJvcGVydHl9LXJpZ2h0OiAkdmFsdWUgJGJvcmRlci1zdHlsZSwgJGJvcmRlci1jb2xvcjtcbiAgfSBAZWxzZSB7XG4gICAgI3skcHJvcGVydHl9LWxlZnQ6ICR2YWx1ZTtcbiAgICAjeyRwcm9wZXJ0eX0tcmlnaHQ6ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gQWRkIGEgcHJvcGVydHkgdG8gdGhlIHRvcCBhbmQgYm90dG9tIG9mIGEgYm94LlxuLy8vIEBleGFtcGxlXG4vLy8gICB0b3AtYm90dG9tKG1hcmdpbiwgMTBweClcbkBtaXhpbiB0b3AtYm90dG9tKCRwcm9wZXJ0eSwgJHZhbHVlOiAxcHgsICRib3JkZXItc3R5bGU6IHNvbGlkLCAkYm9yZGVyLWNvbG9yOiAjMDAwKSB7XG4gIEBpZiAoJHByb3BlcnR5ID09IGJvcmRlcikge1xuICAgICN7JHByb3BlcnR5fS10b3A6ICR2YWx1ZSAkYm9yZGVyLXN0eWxlICRib3JkZXItY29sb3I7XG4gICAgI3skcHJvcGVydHl9LWJvdHRvbTogJHZhbHVlICRib3JkZXItc3R5bGUgJGJvcmRlci1jb2xvcjtcbiAgfSBAZWxzZSB7XG4gICAgI3skcHJvcGVydHl9LXRvcDogJHZhbHVlO1xuICAgICN7JHByb3BlcnR5fS1ib3R0b206ICR2YWx1ZTtcbiAgfVxufVxuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgLyogQ2hyb21lICovXG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cbiAgICBAY29udGVudDtcbiAgfVxuICAmOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cbiAgICBAY29udGVudDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggNCAtIDE4ICovXG4gICAgQGNvbnRlbnQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLy8gSW1hZ2UgUmVwbGFjZW1lbnQgdXRpbGl0eS4gYHRleHQtaGlkZWBcbkBtaXhpbiB0ZXh0LWhpZGUge1xuICBmb250OiAwIC8gMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4vLy9oaWRlIHNjcm9sbFxuQG1peGluIGhpZGUtc2Nyb2xsKCkge1xuICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4iLCJ1bC5tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5tZW51LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQG1peGluIHNob3ctbWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8vIEhlYWRlciBtZW51XG4ubWVudS0tbWFpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2NXB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAkbW9iaWxlLW1lbnU7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHRvcDogMTMwcHg7XG4gIH1cbiAgXG4gICYub3BlbiB7XG4gICAgQGluY2x1ZGUgc2hvdy1tZW51O1xuICB9XG4gIFxuICBAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjFzIGxpbmVhcjtcbiAgICBcbiAgICAmLm9wZW4tbWVudSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBAaW5jbHVkZSBzaG93LW1lbnU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbGV4OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA0MnB4IDAgMCA1M3B4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIFxuICAgICYub3BlbiB7XG4gICAgICBAaW5jbHVkZSBzaG93LW1lbnU7XG4gICAgfVxuICB9XG4gIFxuICA+IC5tZW51IHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWRldmljZS1oZWlnaHQgOiA0NzVweCkgYW5kIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTMwcHgpO1xuICAgIH1cbiAgXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWRldmljZS1oZWlnaHQgOiA0NzVweCkgYW5kIChvcmllbnRhdGlvbiA6IGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjVweCk7XG4gICAgfVxuICB9XG4gIFxuICAubWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cbiAgICBcbiAgICBhIHtcbiAgICAgIGZvbnQ6IHtcbiAgICAgICAgc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICB3ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoLjM4KTtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgXG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDg2KTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJi5pcy1hY3RpdmUsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1tZW51LWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogc29saWQgJHdoaXRlO1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIFxuICAgICAgKyBsaSB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICB9XG4gIFxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gIFxuICAgICAgJi5pcy1hY3RpdmUgPiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIH1cbiAgXG4gICAgICA+IGE6aG92ZXIsXG4gICAgICA+IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1lbnUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pcy1hY3RpdmUge1xuICAgICAgXG4gICAgICBhOjphZnRlciB7XG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZm9udC1jb2xvci1saWdodC1ibHVlO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLm1lbnUtbGV2ZWwtMCB7XG4gICAgPiAubWVudS1pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tZW51LWxldmVsLTEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIFxuICAubWVudS1pdGVtLS1leHBhbmRlZCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBcbiAgICA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGluY2x1ZGUgaWNvbi1hZnRlcihuYXZpZ2F0ZV9uZXh0KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB0b3A6IDE5cHg7XG4gICAgICAgICAgcmlnaHQ6IC0yNHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjJweCk7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJi5vcGVuLXN1YiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBcbiAgICAgIGE6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB0b3A6IDE4cHg7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgPiAubWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgID4gLm1lbnUge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICBcbiAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1pbi13aWR0aDogMjgycHg7XG4gICAgICAgIHBhZGRpbmc6IDI0cHggNDBweCAxNnB4O1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtbWVudTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICB9XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1lbnUtYWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1lbnUtYWN0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vRm9vdGVyIG1lbnVcbi5tZW51LS1xdWljay1saW5rcyAubWVudSxcbi5tZW51LS1wYXJ0bmVycyAubWVudSB7XG4gIGxpIHtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIFxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICBcbiAgYSB7XG4gICAgQGluY2x1ZGUgaWNvbi1iZWZvcmUoJ3JpZ2h0Jyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEwKTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuICAgIH1cbiAgICBcbiAgICAmOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdG9wOiA1cHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLW9yYW5nZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoOCk7XG4gICAgICBcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgLjJzIGxpbmVhcjtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI2JhY2t0b3RvcCB7XG4gIG1hcmdpbi1sZWZ0OiAtMzVweDtcbn0iLCJodG1sLCBib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgfVxuICBcbiAgLmRpYWxvZy1vZmYtY2FudmFzLW1haW4tY2FudmFzIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgXG4gIG1haW4ge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMzBweDtcbiAgICB9XG4gICAgXG4gICAgLm5vZGVfX2NvbnRlbnQge1xuICAgICAgPiAuZmllbGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICBsYWJlbCwgLmRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG5cbiAgbGFiZWwge1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXG4gICAgJi5mb3JtLXJlcXVpcmVkIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnKic7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgfVxufVxuXG5AaW5jbHVkZSBzZWxlY3RvcnMoJ2Zvcm0taW5wdXRzJykge1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6IHJnYmEoJGZvbnQtY29sb3ItZGFyaywgLjYzKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGxpbmVhcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoJGJsYWNrLCAuMjEpO1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrO1xuICB9XG5cbiAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzMHB4ICR3aGl0ZSBpbnNldDtcbiAgfVxufVxuIiwiLy8gR2VuZXJhbCBzdHlsZXMgZ290IGN1c3RvbSBibG9jay5cbi5jdXN0b20tYmxvY2sge1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gIH1cbiAgXG4gIC5jdXN0b20tYmxvY2sge1xuICAgID4gLmNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIExvZ28gYmxvY2suXG4uYmxvY2stc3lzdGVtLWJyYW5kaW5nLWJsb2NrIHtcbiAgd2lkdGg6IDk2cHg7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAxOTJweDtcbiAgfVxufVxuXG4vLyBGb290ZXIgYmxvY2suXG5baWQ9J2Jsb2NrLXN0YXlpbnRvdWNoJ10ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHRvcDogNXB4O1xuICAgICAgYm90dG9tOiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRncmF5LWRhcmstbGlnaHQsIC40NSk7XG4gICAgfVxuICB9XG4gIFxuICAmOjpiZWZvcmUge1xuICAgIGxlZnQ6IDhweDtcbiAgfVxuICBcbiAgJjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAtMTVweDtcbiAgfVxuICBcbiAgPiAqIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNjVweDtcbiAgICB9XG4gIH1cbiAgXG4gIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgXG4gIC5maWVsZC0tbmFtZS1ib2R5IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cbiAgICBcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuZm9vdGVyLmZvdXItY29sIHtcbiAgW2lkPSdibG9jay1zdGF5aW50b3VjaCddIHtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlLWRlc2t0b3ApIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9Db3B5cmlnaHQgYmxvY2suXG5baWQ9J2Jsb2NrLWNvcHlyaWdodCddIHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIH1cbiAgfVxufVxuXG4vLyBTZWNvbmQgZm9vdGVyIHJlZ2lvbi5cbltpZD0nYmxvY2stcXVlc3Rpb25zb3Jjb21tZW50cyddLFxuW2lkPSdibG9jay1sb29raW5nZm9yYWNhcmVlciddIHtcbiAgYSB7XG4gICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSwgJGlzLXBpcGU6IGxpZ2h0KTtcbiAgfVxufVxuXG4vLyBGb290ZXIgd2ViIGZvcm0gYmxvY2suXG5mb290ZXIgLmJsb2NrLXdlYmZvcm0tYmxvY2sge1xuICBcbiAgZm9ybSB7XG4gICAgLmZvcm0taXRlbSB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICBpbnB1dCB7XG4gICAgICAmW3R5cGU9J3RleHQnXSxcbiAgICAgICZbdHlwZT0nZW1haWwnXSxcbiAgICAgICZbdHlwZT0ncGFzc3dvcmQnXSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAuc3VibWl0LWJ0biB7XG4gICAgICBAaW5jbHVkZSBidG4oX2Jhc2UtcGlwZSwgJGlzLWFycm93OiB0cnVlLCAkaXMtcGlwZTogbGlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYXJhbGF4IGJsb2NrLlxuLnBhcmFsbGF4LWJhY2tncm91bmQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHtcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBzaXplOiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogNTAlIDA7XG4gIH1cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbiA6IDMwJSAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gU3RheSBpbiB0b3VjaCBibG9jayhjb250YWN0IHVzIHBhZ2UpLlxuLnN0YXktaW4tdG91Y2gtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICBcbiAgPiBoMiB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgfVxuICAgIFxuICAgIHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICByaWdodDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDQ4MXB4KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgXG4gICAgfVxuICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICAgIFxuICAgID4gZGl2IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICBcbiAgICAgIEBtZWRpYShtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xuICAgICAgICBmbGV4OiAwIDAgNDEuNjY2NjY2NjclO1xuICAgICAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMTZweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIGg0IHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBcbiAgICAmICsgKiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBcbiAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXI7XG4gICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmNvbnRhY3QtYWRkcmVzcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICB9XG4gICAgXG4gICAgaDQgKyAqIHtcbiAgICAgIEBpbmNsdWRlIGljb24tYmVmb3JlKHBpbik7XG4gICAgfVxuICB9XG4gIFxuICAuY29udGFjdC1waG9uZS1udW1iZXIge1xuICAgIGg0ICsgKiB7XG4gICAgICBAaW5jbHVkZSBpY29uLWJlZm9yZShwaG9uZSk7XG4gICAgfVxuICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIFxuICAgICAgPiAqIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTmV3cyBhcmNoaXZlIGJsb2NrLlxuQG1peGluIG5ld3MtYXJjaGl2ZS1ib3JkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvdW50ZXItbGluZTtcbiAgXG4gICYuYWN0aXZlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWl4aW4gYXJyb3ctY29sbGFwc2UoJHNpemUsICR0b3AsICRyaWdodCkge1xuICBAaW5jbHVkZSBpY29uLWFmdGVyKGRvd24pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkdG9wO1xuICAgIHJpZ2h0OiAkcmlnaHQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkc2l6ZSk7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuICBcbiAgJi5hY3RpdmU6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxufVxuXG5AbWl4aW4gYWN0aXZlQm9yZGVyIHtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbS1jb2xvciAuOHMgbGluZWFyO1xuICBcbiAgJi5hY3RpdmUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGRhdGUoJHNpemUsICR0b3ApIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygkc2l6ZSk7XG4gIGNvbG9yOiAkZm9udC1jb2xvci1tZW51LWFjdGl2ZTtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHRvcDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4uYmxvY2stdmlld3MtYmxvY2tuZXdzLWFyY2hpdmUtbmV3cy1hcmNoaXZlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgfVxuICBcbiAgPiBoMiB7XG4gICAgQGV4dGVuZCBoNDtcbiAgICBAaW5jbHVkZSBuZXdzLWFyY2hpdmUtYm9yZGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIH1cbiAgfVxufVxuXG4ubmV3cy1hcmNoaXZlLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgXG4gIC52aWV3LWdyb3VwaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cbiAgICBcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgXG4gIC52aWV3LWdyb3VwaW5nLWhlYWRlciB7XG4gICAgQGluY2x1ZGUgbmV3cy1hcmNoaXZlLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBhcnJvdy1jb2xsYXBzZSg4LCAxMHB4LCAxN3B4KTtcbiAgICBAaW5jbHVkZSBhY3RpdmVCb3JkZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgYXJyb3ctY29sbGFwc2UoOCwgOXB4LCAxN3B4KTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG4gIFxuICAudmlldy1ncm91cGluZy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAubmV3cy1hcmNoaXZlLW1vbnRoLFxuICAubW9udGgtYXJjaGl2ZS1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBuZXdzLWFyY2hpdmUtYm9yZGVyO1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDE1cHg7XG4gIH1cblxuICAubmV3cy1hcmNoaXZlLW1vbnRoIHtcbiAgICBAaW5jbHVkZSBhcnJvdy1jb2xsYXBzZSg4LCAyM3B4LCAxN3B4KTtcbiAgICBAaW5jbHVkZSBhY3RpdmVCb3JkZXI7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTdweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgYXJyb3ctY29sbGFwc2UoOCwgMzdweCwgMTdweCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIycHg7XG4gICAgfVxuICAgIFxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgfVxuICB9XG4gIFxuICAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgXG4gICAgPiAudmlld3Mtcm93IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIH1cbiAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAudmlld3MtZmllbGQtdGl0bGUge1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogMjI1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBpY29uLWJlZm9yZSgncmlnaHQnKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAgICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICBsZWZ0OiAtMTZweDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBjb2xvcjogJGZvbnQtY29sb3Itb3JhbmdlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjJzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAmIH4gZGl2IHtcbiAgICAgICAgQGluY2x1ZGUgZGF0ZSgxMywgMCk7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIGRpdltjbGFzcyo9J3ZpZXdzLWZpZWxkIHZpZXdzLWZpZWxkLWNyZWF0ZWQnXSB7XG4gICAgICB0b3A6IDFweDtcbiAgICB9XG4gIH1cbn1cblxuLy9MYXRlc3QgbmV3cy5cblxuLmpzLXZpZXctZG9tLWlkLWFqYXgtbmV3cyA+IC52aWV3LWNvbnRlbnQsXG4ubmV3cy1sYXRlc3Qge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgLjJzIGxpbmVhcjtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxuXG59XG5cbi5uZXdzLWxhdGVzdCB7XG4gICAmLWltYWdlcyB7XG4gICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgICB9XG4gICAgIFxuICAgICBpbWcge1xuICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgfVxuICAgfVxuICBcbiAgJi10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBcbiAgICBoMyB7XG4gICAgICBtYXgtd2lkdGg6IDY2NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1tZW51LWFjdGl2ZTtcbiAgICB9XG4gIH1cbiAgXG4gICYtZGF0ZSB7XG4gICAgQGluY2x1ZGUgZGF0ZSgxNiwgMTVweCk7XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgIH1cbiAgfVxuICBcbiAgJi1zdW1tYXJ5IHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB9XG4gIH1cbiAgXG4gICYtYm9keSB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE5ld3Mgb3RoZXIgYmxvY2suXG4ubmV3cy1vdGhlciB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIFxuICAubW9udGgtYXJjaGl2ZS1jb250ZW50LFxuICAuYWlycG9ydC1sb2NhdGlvbi1jb250ZW50IHtcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJy52aWV3cy1yb3cnLCAwKTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY291bnRlci1saW5lO1xuICAgIH1cbiAgfVxuICBcbiAgLnZpZXdzLXJvdyB7XG4gICAgQGluY2x1ZGUgbmV3cy1hcmNoaXZlLWJvcmRlcjtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgXG4gICAgJjpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICY6bnRoLWxhc3QtY2hpbGQoMSksXG4gICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhKG1pbi13aWR0aDogNDgxcHgpIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY291bnRlci1saW5lO1xuICAgICAgfVxuICAgICAgXG4gICAgfVxuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgfVxuICBcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgIFxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICB9XG4gICAgXG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ5cHg7XG4gICAgICB9XG4gICAgICBcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgJi1pbWFnZXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgfVxuICAgIFxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgXG4gICYtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgXG4gICAgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVudS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIGg0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB3aWR0aDogODAlO1xuICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAmLWRhdGUge1xuICAgIEBpbmNsdWRlIGRhdGUoMTMsIDFweCk7XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG4gIFxuICAmLWJvZHkge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICB9XG4gIH1cbiAgXG4gICYtbW9yZSB7XG4gICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSk7XG4gIH1cbn1cblxuLy8gQWlycG9ydHMgbG9jYXRpb24uXG4uYWlycG9ydHMtbG9jYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4NXB4O1xuICB9XG4gIC5haXJwb3J0cy1ncm91cC10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRjb3VudGVyLWxpbmU7XG4gIH1cbiAgXG4gIC5tb250aC1hcmNoaXZlLWNvbnRlbnQsXG4gIC5haXJwb3J0LWxvY2F0aW9uLWNvbnRlbnR7XG4gICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJy52aWV3cy1yb3cnLCAzMHB4KTtcbiAgICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODFweCkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJy52aWV3cy1yb3cnLCAzMHB4KTtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICcudmlld3Mtcm93JywgNDRweCk7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDQsICcudmlld3Mtcm93JywgNjZweCk7XG4gICAgfVxuICBcbiAgICAudmlld3Mtcm93IHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIFxuICAgICAgPiAubm9kZSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTRweCAzMHB4IDRweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb3VudGVyLWxpbmU7XG4gICAgICB9XG4gICAgICA+IC5haXJwb3J0LWNvbnRhY3QtaW5mbyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY291bnRlci1saW5lO1xuICAgICAgfVxuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkID4gLm5vZGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgaDQge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEyNHB4O1xuICAgIH1cbiAgfVxuICBcbiAgLnZpZXdzLWZpZWxkLWZpZWxkLWFpcnBvcnQtYWRkcmVzcyB7XG4gICAgQGluY2x1ZGUgaWNvbi1iZWZvcmUocGluKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIFxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICBwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmFpcnBvcnQtY29udGFjdC1pbmZvIHtcbiAgICBAaW5jbHVkZSBpY29uLWJlZm9yZShtYWlsKTtcbiAgICBcbiAgICBAbWVkaWEobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmFpcnBvcnQtY29udGFjdC1pbmZvIHAge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAudmlld3MtZmllbGQtZmllbGQtYWlycG9ydC1hZGRyZXNzLFxuICAuYWlycG9ydC1jb250YWN0LWluZm8sXG4gIC52aWV3cy1maWVsZC1maWVsZC1haXJwb3J0LWFkZHJlc3MgKyBkaXYge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogN3B4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgY29sb3I6ICRwbGFjZWhvbGRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnNsaWNrLWxpc3Qge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnNsaWNrLXNsaWRlIHtcbiAgICBib3JkZXI6IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC5zbGljay1hcnJvdyB7XG4gICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICAgIHotaW5kZXg6IHooYWJvdmUpO1xuXG4gICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIG9wYWNpdHk6IC43O1xuICAgIH1cbiAgfVxuXG4gIC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMCA1cHg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1oaWRlO1xuICAgICAgICBAaW5jbHVkZSBjaXJjbGUoOHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIC4yNSk7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGxpbmVhcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgc2VsZWN0b3JzKGFjdGl2ZSkge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAuNzUpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBAaW5jbHVkZSBzcXVhcmUoMTRweCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gIC5nbS1idW5kbGVkLWNvbnRyb2wge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQG1peGluIHNoYWRvd0JnIHtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvUEYtZ3JhZGllbnQucG5nJykgbm8tcmVwZWF0IGxlZnQgdG9wL2NvdmVyO1xufVxuXG4ucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHNoYWRvd0JnO1xuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNjBweDtcbiAgfVxuXG4gIC5zaGFkb3ctYmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBzaGFkb3dCZztcbiAgfVxuXG4gID4gLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZmllbGRfX2l0ZW1zIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuXG4gICAgJjpub3QoLnNsaWNrLWluaXRpYWxpemVkKSB7XG4gICAgICAuZmllbGRfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAuZmllbGRfX2l0ZW0sXG4gICAgLnNsaWNrLXNsaWRlID4gZGl2ID4gLmZpZWxkX19pdGVtIHtcbiAgICAgIGhlaWdodDogNDM1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogNzQwcHg7XG4gICAgICB9XG5cbiAgICAgID4gZGl2IHtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgc2l6ZTogY292ZXI7XG4gICAgICAgICAgcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgaGVpZ2h0OiAxNzVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFycm93cy13cmFwLFxuICAuc2xpY2stYXJyb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIFxuICAuYXJyb3dzLXdyYXAge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNDVweDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAyOHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMTZweDtcbiAgICAgIHRvcDogNTg1cHg7XG4gICAgICBsZWZ0OiA0M3B4O1xuICAgIH1cbiAgfVxuICBcbiAgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWFycm93cy1zbGlkZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBcbiAgICBzcGFuIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTIpO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjMpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOm5vdCguaWNvbi1hcnJvdykge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMjBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkZm9udC1jb2xvci1hcnJvd3Mtc2xpZGVyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZzogMCAyMnB4IDAgNDBweDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygzMik7XG4gICAgb3BhY2l0eTogLjQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGxpbmVhcjtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0Mik7XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYShtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIFxuICAgICAgICAmICsgc3Bhbjpub3QoLmljb24tYXJyb3cpIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAuc2xpY2stbmV4dCB7XG4gICAgLmljb24tYXJyb3cge1xuICAgICAgQGluY2x1ZGUgaWNvbi1iZWZvcmUobmF2aWdhdGVfbmV4dCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC03cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3Bhbjpub3QoLmljb24tYXJyb3cpIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLnNsaWNrLXByZXYge1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIEBpbmNsdWRlIGljb24tYmVmb3JlKGtleWJvYXJkX2Fycm93X2xlZnQpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuICAgICAgb3JkZXI6IDE7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTdweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIGJvdHRvbTogMjVweDtcbiAgICBsaSB7XG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAuMjUpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1jb2xvciwgLjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1jb2xvciwgLjc1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1zbGlkZSB7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICB9XG59XG4iLCIucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgLmNvbnRlbnQtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gIH1cbiAgXG4gICYucGFyYWdyYXBoLXN0eWxlLS1pbWFnZS1sZWZ0IHtcbiAgICAuY29udGVudC13cmFwIHtcbiAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIG1pbi13aWR0aDogNDcwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyg4LjMzMzMzMyUgKyAxNXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5wYXJhZ3JhcGgtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgXG4gICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIFxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBcbiAgICAgICYuaW1hZ2UtY29ybmVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgID4gLmNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxcHggMXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIFxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGxlZnQ6IC0xOXB4O1xuICAgICAgICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxODJweCAwIDAgMTgycHg7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLXRvcC1yaWdodCB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMTg0cHggMTQ3cHggMDtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkd2hpdGUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gIFxuICAgICAgICAmLS10b3AtbGVmdCB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxNDdweCAxODRweCAwIDA7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICBcbiAgICAgICAgJi0tYm90dG9tLXJpZ2h0IHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDE4NHB4IDE0N3B4O1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR3aGl0ZSB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgXG4gICAgICAgICYtLWJvdHRvbS1sZWZ0IHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxODRweCAwIDAgMTQ3cHg7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCguaW1hZ2UtY29ybmVyKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSxcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItYXJyb3dzLXNsaWRlcjtcbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICB9XG4gIH1cbiAgXG4gIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSB7XG4gICAgQGV4dGVuZCBoNDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgfVxuICAgIFxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSk7XG4gICAgfVxuICB9XG4gIFxuICAmLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQge1xuICAgIC5maWVsZC0tbmFtZS1maWVsZC1wLW1lZGlhLWltYWdlcyAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBvcmRlcjogMTtcbiAgXG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1tZWRpYS1pbWFnZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAuY29udGVudC13cmFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYyg4LjMzMzMzMyUgKyAxNXB4KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1tdWx0aXBsZS1pbWFnZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFyYWdyYXBoLS10eXBlLS1zaW1wbGUtY3RhICB7XG4gICYucGFyYWdyYXBoLS12aWV3LW1vZGUtLXByZXZpZXcsXG4gICYucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICBcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtaW50cm8tdGV4dCB7XG4gICAgICBhIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIFxuICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gICYucGFyYWdyYXBoLS12aWV3LW1vZGUtLXByZXZpZXcge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgJi5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICB9XG4gICAgXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgIEBleHRlbmQgaDM7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAuZmllbGRfX2l0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJi50aXRsZS13aXRoLWxpbmUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2NnB4O1xuICAgICAgICB9XG4gIFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb3VudGVyLWxpbmU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1zdWJ0aXRsZSB7XG4gICAgICBAZXh0ZW5kIGg0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQge1xuICAgICAgYSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtZmllbGQtbGluayB7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICB9XG4gICAgXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBidG4oX2Jhc2UtcGlwZSwgJGlzLWFycm93OiB0cnVlKTtcbiAgICB9XG4gIH1cbiAgaWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufSIsIi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLW11bHRpcGxlLWltYWdlcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cblxuICAuZmllbGQtLW5hbWUtZmllbGQtcC1pbWFnZXMgLmZpZWxkX19pdGVtcyxcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtaW1hZ2VzLmZpZWxkX19pdGVtcyB7XG4gICAgbWFyZ2luOiAtNTVweCAtMTBweCAwIC0yMHB4O1xuICAgIHBhZGRpbmc6IDU1cHggMCAwIDIwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvam9pbi11cy1zbWFsbC1iZy5wbmcnKSBuby1yZXBlYXQgMCAwO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46IDAgLTFweDtcbiAgICAgIHBhZGRpbmc6IDEyNXB4IDI3cHggMCA4NXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9qb2luLXVzLWJnLnBuZycpIG5vLXJlcGVhdCAwIDAvY29udGFpbjtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgXG4gICAgPiBkaXYge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIG1heC13aWR0aDogODlweDtcbiAgICAgICAgcGFkZGluZzogMCAxcHg7XG4gICAgICAgIFxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIkBtaXhpbiBzZWN0aW9uLWJnLWNvcm5lcnMoJGNvbG9yKSB7XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcbiAgfVxuICBcbiAgJi0tdG9wLXJpZ2h0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgJi0tdG9wLWxlZnQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gICYtLWJvdHRvbS1yaWdodCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvciB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gICYtLWJvdHRvbS1sZWZ0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLXN0eWxlLS1kYXJrLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gIFxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlIHtcbiAgICAgICYuaW1hZ2UtY29ybmVyIHtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1iZy1jb3JuZXJzKCRmb250LWNvbG9yLWRhcmstYmx1ZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBhcmFncmFwaC1zdHlsZS0tZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LWRhcmstbGlnaHQ7XG4gIFxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jdGEtc2VjdGlvbiB7XG4gICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlIHtcbiAgICAgICYuaW1hZ2UtY29ybmVyIHtcbiAgICAgICAgQGluY2x1ZGUgc2VjdGlvbi1iZy1jb3JuZXJzKCRncmF5LWRhcmstbGlnaHQpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENUQSBzZWN0aW9ucyB3aXRoIGJnIHdyYXBwZXIuXG4ucGFyYWdyYXBoLXN0eWxlLS1jb2xvciB7XG4gIHBhZGRpbmc6IDFweCAwIDUwcHg7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IDUwcHggMCAxMDBweDtcbiAgfVxuICBcbiAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtY3RhLXNlY3Rpb24ge1xuICAgIG1hcmdpbjogNTBweCAwIDA7XG4gIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSwgJGlzLXBpcGU6IGxpZ2h0KTtcbiAgICB9XG4gIH1cbn1cblxuLy9FbXB0eSBwYWdlIHNlY3Rpb24uXG4ucGFyYWdyYXBoLXN0eWxlLS1lbXB0eS1jb250ZW50IHtcbiAgaGVpZ2h0OiAxNzVweDtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OiAzNTBweDtcbiAgfVxufVxuIiwiLnBhcmFncmFwaC1zdHlsZS0tYmctaW1hZ2Uge1xuICBiYWNrZ3JvdW5kOiB7XG4gICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgc2l6ZTogY292ZXIgIWltcG9ydGFudDtcbiAgfVxuICBcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAgIH1cbiAgfVxufSIsIi5wYXJhZ3JhcGgtLXR5cGUtLXNlcnZpY2VzIHtcbiAgcGFkZGluZzogNDVweCAwIDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgIEBleHRlbmQgaDI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5NXB4O1xuICAgIH1cbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSwgJGlzLXBpcGU6IGxpZ2h0KTtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXNlbGVjdC1zZXJ2aWNlIHtcbiAgICAmLmZpZWxkX19pdGVtcyxcbiAgICAuZmllbGRfX2l0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnLmZpZWxkX19pdGVtJywgMjBweCk7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJy5maWVsZF9faXRlbScsIDMwcHgpO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgICBcbiAgICAgID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5ub2RlLS10eXBlLXNlcnZpY2VzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaDIge1xuICAgICAgICBAZXh0ZW5kIGg0O1xuICAgICAgICBtaW4td2lkdGg6IDg1cHg7XG4gICAgICAgIG1heC13aWR0aDogODVweDtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRob3Zlci1zZXJ2aWNlcztcbiAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7XG4gIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMTBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDNweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyLXNlcnZpY2VzO1xuICAgICAgICAgIFxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXNlcnZpY2UtbG9nbyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWluLXdpZHRoOiAzMnB4O1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICBcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wYXJhZ3JhcGgtLXR5cGUtLW5ld3Mtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTUwcHg7XG4gIH1cbiAgXG4gIC5uZXdzLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB9XG4gICAgXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICAgIEBleHRlbmQgaDM7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgXG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAubm9kZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICAgIFxuICAgIC5sZWZ0LFxuICAgIC5yaWdodCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubGVmdCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5yaWdodCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyg0NXB4ICsgOC4zMzMzMzMlKTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmxpbmstbW9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGJ0bihfYmFzZS1waXBlLCAkaXMtYXJyb3c6IHRydWUpO1xuICAgICAgfVxuICAgICAgXG4gICAgICBoNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmZpZWxkLS1uYW1lLWJvZHkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtaGVyby1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gIH1cblxuICAuc2hhZG93LWJnIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgc2hhZG93Qmc7XG5cbiAgICA+IGRpdiB7XG4gICAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuICB9XG4gIFxuICAuY29udGVudC13cmFwIHtcbiAgICBtYXgtd2lkdGg6IDQ2NXB4O1xuICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgIH1cbiAgICBcbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGgxO1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG4gIH1cblxuICAuZmllbGQtLW5hbWUtZmllbGQtYnV0dG9uLWxpbmsgYSB7XG4gICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSk7XG4gICAgbWFyZ2luLXRvcDogMThweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0ID4gKiB7XG4gICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5wYXJhbGxheC1iYWNrZ3JvdW5kIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi5maWVsZC0tbmFtZS1maWVsZC1wLWhlcm8tYmFubmVyICsgLnBhZ2Utc2VjdGlvbi1tZXNzYWdlcyArIC5maWVsZC0tbmFtZS1maWVsZC1wYWdlLXNlY3Rpb24ge1xuICAuZmllbGRfX2l0ZW0ge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLWN0YS5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgICAgfVxuXG4gICAgICAucGFyYWdyYXBoLXN0eWxlLS1iZy1pbWFnZSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEucGFyYWdyYXBoLS12aWV3LW1vZGUtLWRlZmF1bHQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiAucGFyYWdyYXBoLXN0eWxlLS1jb2xvciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1jb3VudGVycy1ib3gge1xuICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogLTEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE0NXB4O1xuICB9XG4gIFxuICAuZmllbGQtLW5hbWUtZmllbGQtcC1jb3VudGVycyA+IC5maWVsZF9faXRlbXMge1xuICAgIEBtZWRpYShtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnLmZpZWxkX19pdGVtJywgMCk7XG4gICAgfVxuICBcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnLmZpZWxkX19pdGVtJywgMCk7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnLmZpZWxkX19pdGVtJywgMCk7XG4gICAgfVxuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDQsICcuZmllbGRfX2l0ZW0nLCAwKTtcbiAgICB9XG4gICAgXG4gICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMjVweCAwIDFweCAzNnB4O1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiA3MHB4IDAgMjVweCAzNnB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICBcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb3VudGVyLWxpbmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgdG9wOiAtNHB4O1xuICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgIGxlZnQ6IDFweDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1jb3VudGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBleHRlbmQgaDM7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICBoZWlnaHQ6IDIzcHg7XG4gICAgICAgIGJvdHRvbTogNHB4O1xuICAgICAgICBsZWZ0OiAtMzZweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgICBib3R0b206IDEycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC13ZWJmb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTQwcHg7XG4gIH1cbiAgXG4gIC53ZWJmb3JtLXN1Ym1pc3Npb24tY29udGFjdC1mb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgICB9XG4gIH1cbiAgXG4gIGZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgXG4gICAgPiAuZm9ybS1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgID4gLmZvcm0tYWN0aW9ucyB7XG4gICAgICAuc3VibWl0LWJ0biB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgNDRweCAwIDM0cHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICBcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgIFxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDU0cHggMCA0NHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICBcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgIFxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgID4gZmllbGRzZXQuZm9ybS1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgIH1cbiAgXG4gICAgICAuZmllbGRzZXQtbGVnZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgbGFiZWw7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgfVxuICBcbiAgICAgIC5maWVsZHNldC13cmFwcGVyID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgPiBkaXYgKyBkaXYge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgID4gZmllbGRzZXQuZm9ybS1pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICBcbiAgICA+IC5mb3JtLXR5cGUtdGV4dGFyZWEuZm9ybS1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhcmFncmFwaC0tdHlwZS0tY29sdW1ucy1sYXlvdXQge1xuICBtYXJnaW4tYm90dG9tOiAxMTVweDtcbiAgXG4gID4gLmNvbnRhaW5lciB7XG4gICAgPiAuZmllbGQtLW5hbWUtZmllbGQtY29sdW1uIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICcuZmllbGRfX2l0ZW0nLCAwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJy5maWVsZF9faXRlbScsIDUwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICA+IC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICBAZXh0ZW5kIGgzO1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSB7XG4gIC5maWVsZC0tbmFtZS1maWVsZC1wLWNvbGxlY3Rpb24tbGVhZGVyc2hpcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICB9XG4gICAgXG4gICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICBcbiAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgICAgLnBhcmFncmFwaCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnBhcmFncmFwaCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY291bnRlci1saW5lO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tLWNvbG9yIC43cyBsaW5lYXI7XG4gICAgICAgIFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbGxhcHNlO1xuICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5oZWFkZXItbGVhZGVyc2hpcCB7XG4gICAgQGluY2x1ZGUgaWNvbi1hZnRlcihjbG9zZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4IDQwcHggMTVweCAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4xcyBsaW5lYXI7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IDM1cHggNzVweCAzMHB4IDIwcHg7XG4gICAgfVxuICAgIFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzclO1xuICAgICAgcmlnaHQ6IDhweDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLWRhcmstYmx1ZTtcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgICAgIHRvcDogMzUlO1xuICAgICAgICByaWdodDogMTNweDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgQGluY2x1ZGUgaWNvbi1hZnRlcihuYXZpZ2F0ZV9uZXh0KTtcbiAgICAgIFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgdG9wOiAzMyU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICBjb2xvcjogcmdiYSgkZm9udC1jb2xvci1hcnJvd3Mtc2xpZGVyLCAuNCk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ4KTtcbiAgICAgICAgICB0b3A6IDM0JTtcbiAgICAgICAgICByaWdodDogMzFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtbS1pbWFnZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1uYW1lIHtcbiAgICAgIEBleHRlbmQgaDQ7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgIH1cbiAgICBcbiAgICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIFxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlIH4gLmxlYWRlcnNoaXAtbWVtYmVyLFxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbGxhcHNlO1xuICAgIH1cbiAgfVxuICBcbiAgLmxlYWRlcnNoaXAtbWVtYmVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb3VudGVyLWxpbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNXMgbGluZWFyO1xuICAgIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjVweCAyNXB4O1xuICAgICAgXG4gICAgICBAbWVkaWEobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICAgIH1cbiAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUcmFuc3BhcmVudCBib3JkZXIgZm9yIGxhc3QgZWxlbWVudC5cbi5wYXJhZ3JhcGgtLXR5cGUtLWNvbHVtbnMtbGF5b3V0IHtcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLWNvbHVtbiB7XG4gICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgJjpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWxlYWRlcnNoaXAtdGVhbSB7XG4gICAgICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtY29sbGVjdGlvbi1sZWFkZXJzaGlwIHtcbiAgICAgICAgICAgID4gLmZpZWxkX19pdGVtIHtcbiAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgLnBhcmFncmFwaCB7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlcGFyYXRvciB7XG4gIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgfVxuICB9XG59XG4iLCIucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS13aGl0ZSB7XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEge1xuICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZF9faXRlbSA+ICoge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgQGluY2x1ZGUgYnRuKF9iYXNlLXBpcGUsICRpcy1hcnJvdzogdHJ1ZSwgJGlzLXBpcGU6IGxpZ2h0KTtcbiAgICB9XG5cbiAgICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUsXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlLFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0LFxuICAgIC5maWVsZC0tdHlwZS10ZXh0LWxvbmcsXG4gICAgaDMge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuZmllbGQtLW5hbWUtZmllbGQtdGl0bGUudGl0bGUtd2l0aC1saW5lIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucGFyYWdyYXBoLXN0eWxlLS10ZXh0LWNvbG9yLS1ibHVlICB7XG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEge1xuICAgIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZS50aXRsZS13aXRoLWxpbmUsXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLXN1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgfVxuXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWxpbmsgYSB7XG4gICAgICBAaW5jbHVkZSBidG4oX2Jhc2UtcGlwZSwgJGlzLWFycm93OiB0cnVlKTtcbiAgICB9XG5cblxuICAgIC5maWVsZC0tbmFtZS1maWVsZC1pbnRyby10ZXh0IHtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZF9faXRlbSA+ICoge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGFyay1ibHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBhcmFncmFwaC0tdHlwZS0tbG9jYXRpb24tbWFwIHtcbiAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cblxuICAuZmllbGQtLW5hbWUtZmllbGQtbWFwcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMTVweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgbWFyZ2luOiAwIC0yNXB4O1xuICAgIH1cblxuICAgIC5haXJwb3J0cy1sb2NhdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIEBleHRlbmQgaDU7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICB9XG5cbiAgICAgIC5nbS1zdHlsZS1pdyB7XG4gICAgICAgIHdpZHRoOiAyNDBweCAhaW1wb3J0YW50O1xuICAgICAgICAuYWlycG9ydC1jaXR5LWFuZC1zdGF0ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB0O1xuICAgICAgICB9XG4gICAgICAgIC5haXJwb3J0LWNvZGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZwdDtcbiAgICAgICAgfVxuICAgICAgICAubG9jYXRpb24tdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThwdDtcbiAgICAgICAgfVxuICAgICAgICAubGVhcm4tbW9yZS1hbmNob3Ige1xuICAgICAgICAgIGhlaWdodDogMjNweDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bihfYmFzZS1waXBlLCAkaXMtYXJyb3c6IHRydWUsICRpcy1waXBlOiBkYXJrKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5maWVsZF9faXRlbSB7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMyU7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMzJTtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5nZW9sb2NhdGlvbi1jb21tb24tbWFwLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMjUwcHggIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5nZW9sb2NhdGlvbi1jb21tb24tbWFwLWNvbnRhaW5lciB7XG4gICAgICAgICAgaGVpZ2h0OiA1NDVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucGF0aC1mcm9udHBhZ2Uge1xuICBcbiAgLy8gQ1RBIHNlY3Rpb24uXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLWNvbXBvdW5kLWN0YS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNTBweDtcbiAgICB9XG4gIFxuICAgIC5wYXJhZ3JhcGgtY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuY29udGVudC13cmFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxleDogMCAwIDM2LjMzMzMzMzMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzNi4zMzMzMzMzMyU7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwIDguMzMzMzMzMzMlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLnBhcmFncmFwaC1zdHlsZS0taW1hZ2UtcmlnaHQge1xuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXAtbWVkaWEtaW1hZ2VzICB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgICAgICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHggOC4zMzMzMzMzMyUgMCAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5jb250ZW50LXdyYXAge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEzLjMzMzMzMzMzJSAwIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnBhcmFncmFwaC0tdHlwZS0tY29tcG91bmQtbXVsdGlwbGUtaW1hZ2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMy4zMzMzMzMzMyU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UtZGVza3RvcCkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTIxJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi51c2VyLWxvZ2luLWZvcm0ge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgXG4gIGlucHV0IHtcbiAgICAmW3R5cGU9J3RleHQnXSxcbiAgICAmW3R5cGU9J2VtYWlsJ10sXG4gICAgJlt0eXBlPSdwYXNzd29yZCddIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS0tNDA0LFxuLnBhZ2UtLTQwMyB7XG4gIG1haW4ge1xuICAgIG1hcmdpbi1ib3R0b206IC00MHB4O1xuICB9XG4gIFxuICAucGFyYWdyYXBoLS10eXBlLS1jb21wb3VuZC1oZXJvLWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDQxMHB4O1xuICAgIFxuICAgIEBtZWRpYShtaW4taGVpZ2h0OiA5NjBweCkgYW5kIChtYXgtaGVpZ2h0OiAxMjgwcHgpIHtcbiAgICAgIGhlaWdodDogNjY1cHg7XG4gICAgfVxuICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDY1MHB4O1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDEwODBweDtcbiAgICB9XG4gIFxuICAgIC5maWVsZC0tbmFtZS1maWVsZC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0OCk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmZpZWxkLS1uYW1lLWZpZWxkLWludHJvLXRleHQge1xuICAgICAgcCB7XG4gICAgICAgIEBleHRlbmQgaDQ7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvci1kYXJrLWJsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucGFnZS10eXBlLS1uZXdzLWFyY2hpdmUge1xuICAucGFyYWdyYXBoLS10eXBlLS1wYWdlLXNlY3Rpb24ge1xuICAgID4gLmNvbnRhaW5lciA+IC5maWVsZCB7XG4gICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBcbiAgICAgICAgPiAuZmllbGRfX2l0ZW0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDM2MHB4O1xuICAgICAgICAgIFxuICAgICAgICAgIFxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucGFnZS10eXBlLS1sb2NhdGlvbi1wYWdlIHtcbiAgLnBhcmFncmFwaC0tdHlwZS0tc2ltcGxlLW1lZGlhLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG4gIFxuICAucGFyYWdyYXBoLXN0eWxlLS1iZy1pbWFnZSB7XG4gICAgcGFkZGluZzogNzVweCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IDk1cHggMDtcbiAgICB9XG4gIH1cbiAgXG4gIC5wYXJhZ3JhcGgtLXR5cGUtLXNpbXBsZS1jdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgXG4gICAgJi5wYXJhZ3JhcGgtLXZpZXctbW9kZS0tZGVmYXVsdCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgXG4gICAgICA+IC5jb250YWluZXIgLmZpZWxkIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpdGxlICB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIFxuICAgICAgICAuZmllbGRfX2l0ZW0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5maWVsZC0tbmFtZS1maWVsZC1saW5rIGEge1xuICAgICAgICBAaW5jbHVkZSBidG4oX2Jhc2UtcGlwZSwgJGlzLWFycm93OiB0cnVlLCAkaXMtcGlwZTogbGlnaHQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSJdfQ== */
