@charset "UTF-8";
/*
 * Colors.primary (do NOT use in the styles)
	*   source: http://chir.ag/projects/name-that-color/
 */
/*
 * Colors.neutral (do NOT use in the styles)
 */
/*
 * Colors.aliases (use these in the styles)
 */
@import url(https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i|Montserrat:500,700);
/*
 * Typography.typeface
 */
/*
 * Typography.defaults
 */
/*
 * Utility mixins
 */
/**
 * Z-INDEX SCALE.
 *
 * Z-index values should always be defined in _z-index.scss. This
 * allows us to at a glance determine relative layers of our application and prevents bugs
 * arrising from arbitrary z-index values. Do not edit the z-index scale! Only add application
 * scoped z-index values.
 */
/* special z-index value used to creates a Z context */
/*
	 #Icons
	 ========================================================================== */
/*! 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.
     */
html {
  font-family: "Lora", Georgia, 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 {
  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 {
  -webkit-box-sizing: content-box;
  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 */
  -webkit-text-decoration: underline dotted;
  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: #e1e8ed;
  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: "Lora", Georgia, 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"] {
  -webkit-box-sizing: border-box;
  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 {
  -webkit-box-sizing: border-box;
  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; }

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

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

html {
  overflow-x: hidden; }

body {
  text-align: center;
  min-width: 320px;
  position: relative; }
  body.loading:before {
    content: '';
    position: absolute;
    background: rgba(255, 255, 255, 0.75);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    opacity: 1;
    -webkit-transition: all .15s ease-in;
    transition: all .15s ease-in; }
  body.loading:after {
    content: '';
    width: 60px;
    height: 60px;
    top: calc(50% - 50px);
    left: calc(50% - 30px);
    border-radius: 100%;
    border: 7px solid rgba(248, 152, 29, 0.2);
    border-top-color: #F8981D;
    -webkit-animation: spin 1s infinite linear;
    animation: spin 1s infinite linear;
    position: fixed;
    z-index: 200; }

@media (max-width: 549px) {
  main {
    margin-top: 90px; } }

img {
  max-width: 100%; }
  a > img {
    vertical-align: middle; }

figure {
  margin: 0.9375rem 0; }
  @media (min-width: 48em) {
    figure {
      margin: 1.25rem 0; } }
  @media (min-width: 64em) {
    figure {
      margin: 1.5625rem 0; } }
  figure.l-col {
    margin: 1.25rem 0 0 0; }
    @media (min-width: 48em) {
      figure.l-col {
        margin: 0; } }

figcaption, .wp-caption-text {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500; }

ul {
  padding-left: 3.125rem; }
  ul li {
    margin-bottom: 0.625rem; }

ol {
  list-style: decimal outside none;
  padding-left: 0.9375rem; }
  ol li {
    counter-increment: item;
    margin-bottom: 0.625rem;
    /*  &::before {
        content: counter(item)'.';
        display: inline-block;
        float: left;
        color: $color-text;
        margin-right: $space-s;
        min-width: px(25);
        text-align: right;
    } */ }

blockquote {
  font-family: "Lora", Georgia, sans-serif;
  font-style: italic;
  text-align: left;
  line-height: 1.675;
  border-left: 0.9375rem solid #E1E8ED;
  margin: 0;
  padding-left: 1.5625rem;
  color: #445566; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #E1E8ED;
  padding: 0; }

.sr-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.skip-link {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  background: #FFFFFF;
  padding: 10px;
  text-align: center;
  height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  color: #000000 !important;
  text-decoration: none; }
  .skip-link:focus {
    height: auto;
    opacity: 1;
    padding: 20px; }

.h2 {
  font-size: 1.875rem !important;
  line-height: 1.225 !important; }
  @media (max-width: 991px) {
    .h2 {
      font-size: 1.5625rem !important; } }
  @media (max-width: 767px) {
    .h2 {
      font-size: 1.375rem !important; } }

/*----------  Body  ----------*/
* {
  font-family: inherit;
  line-height: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  font-family: "Lora", Georgia, sans-serif;
  font-size: 0.9375rem;
  line-height: 1.414; }
  @media (min-width: 48em) {
    body {
      font-size: 1.125rem;
      line-height: 1.618; } }

/*----------  Paragraphs  ----------*/
p {
  font-size: 0.9375rem; }
  @media (min-width: 48em) {
    p {
      font-size: 1.125rem; } }
  @media (min-width: 48em) {
    .l-pageContent__side p {
      font-size: 0.9375rem;
      line-height: 1.414; } }
  p.indent-txt {
    padding-left: 0.9375rem;
    margin: 0; }

/*----------  Default text  ----------*/
a {
  color: #2D2D2D;
  text-decoration: underline; }
  a:hover, a:focus {
    color: #d73e02; }

strong {
  font-weight: 700; }

em {
  font-family: "Lora", Georgia, sans-serif;
  font-style: italic; }

hr {
  margin: 1rem 0; }

small {
  font-size: 0.9375rem; }

figcaption, .wp-caption-text {
  font-size: 0.9375rem;
  color: #5F5F5F; }

.wp-caption-text {
  margin: 10px 0 0 0; }

mark {
  background-color: #E1E8ED; }

/*----------  Heading  ----------*/
h1,
h2,
h3,
h4,
h5 {
  font-weight: normal;
  line-height: 1.225; }

h1,
.h1,
.pageHeadline {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.5625rem; }
  @media (min-width: 48em) {
    h1,
    .h1,
    .pageHeadline {
      font-size: 1.875rem; } }
  @media (min-width: 64em) {
    h1,
    .h1,
    .pageHeadline {
      font-size: 2.5rem; } }

h2,
.h2 {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.375rem; }
  @media (min-width: 48em) {
    h2,
    .h2 {
      font-size: 1.5625rem; } }
  @media (min-width: 64em) {
    h2,
    .h2 {
      font-size: 1.875rem; } }

h3,
.h3,
.c-relatedLinks a {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  margin-bottom: 1.5625rem; }
  @media (min-width: 48em) {
    h3,
    .h3,
    .c-relatedLinks a {
      font-size: 1.375rem; } }
  @media (min-width: 64em) {
    h3,
    .h3,
    .c-relatedLinks a {
      font-size: 1.5625rem; } }

h4,
.h4 {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  font-size: 1.25rem; }

h5,
.h5 {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem !important;
  text-transform: uppercase; }

.postContent h2 {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700; }

.postContent h5 {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  text-transform: none;
  font-size: 1.25rem;
  margin-bottom: 1.5625rem; }
  @media (min-width: 48em) {
    .postContent h5 {
      font-size: 1.25rem; } }
  @media (min-width: 64em) {
    .postContent h5 {
      font-size: 1.25rem; } }

/*----------  Generic headlines  ----------*/
.pageHeadline {
  color: #000000;
  letter-spacing: -1px;
  margin-top: 0;
  margin-bottom: 1.25rem; }

.pageSubtitle {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  margin-bottom: 1.5625rem;
  color: #445566;
  letter-spacing: -1px; }
  .c-mainItem__info .pageSubtitle {
    margin-bottom: 0.9375rem; }

.pageSubtitle + img {
  margin-bottom: 0.9375rem; }

.c-author__attachmentList h5 {
  font-weight: 700 !important;
  font-size: .9375rem !important;
  margin: 0 .3125rem 0 0 !important;
  font-family: "Montserrat", Arial, sans-serif !important; }

.postContent ol {
  padding-left: 3.125rem; }

/* Forms
========================================================================== */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
  font-size: inherit;
  line-height: inherit; }

/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
  overflow: visible; }

button,
select {
  text-transform: none; }

/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
*    and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
*    `input` and others.
*/
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
select {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

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

button:disabled,
button[disabled],
button:disabled:hover,
button[disabled]:hover {
  border: 1px solid #999;
  background-color: #ccc;
  color: #666; }

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

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

/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

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

/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

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

/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
  overflow: auto; }

/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
  font-weight: bold; }

input[type="date"],
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="month"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="week"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea {
  padding: 0.75em 0.6em;
  display: block;
  border: 1px solid #000;
  border-radius: 4px;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0.25em 0;
  font-size: 0.9375rem;
  width: 100%; }

/*
Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
since IE8 won't execute CSS that contains a CSS3 selector.
*/
input:not([type]) {
  padding: 0.5em 0.6em;
  display: inline-block;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0 1px 3px #ddd;
  box-shadow: inset 0 1px 3px #ddd;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/* Chrome (as of v.32/34 on OS X) needs additional room for color to display. */
/* May be able to remove this tweak as color inputs become more standardized across browsers. */
input[type="color"] {
  padding: 0.2em 0.5em; }

input[type="date"]:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
select:focus,
textarea:focus {
  outline: 0;
  border-color: #129FEA; }

/*
Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
since IE8 won't execute CSS that contains a CSS3 selector.
*/
input:not([type]):focus {
  outline: 0;
  border-color: #129FEA; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin solid #129FEA;
  outline: 1px auto #129FEA; }

input[type="text"][disabled],
input[type="password"][disabled],
input[type="email"][disabled],
input[type="url"][disabled],
input[type="date"][disabled],
input[type="month"][disabled],
input[type="time"][disabled],
input[type="datetime"][disabled],
input[type="datetime-local"][disabled],
input[type="week"][disabled],
input[type="number"][disabled],
input[type="search"][disabled],
input[type="tel"][disabled],
input[type="color"][disabled],
select[disabled],
textarea[disabled] {
  cursor: not-allowed;
  background-color: #eaeded;
  color: #cad2d3; }

/*
Need to separate out the :not() selector from the rest of the CSS 2.1 selectors
since IE8 won't execute CSS that contains a CSS3 selector.
*/
input:not([type])[disabled] {
  cursor: not-allowed;
  background-color: #eaeded;
  color: #cad2d3; }

input[readonly],
select[readonly],
textarea[readonly] {
  background-color: #eee;
  /* menu hover bg color */
  color: #777;
  /* menu text color */
  border-color: #ccc; }

input:focus:invalid,
textarea:focus:invalid,
select:focus:invalid {
  color: #b94a48;
  border-color: #e9322d; }

input[type="file"]:focus:invalid:focus,
input[type="radio"]:focus:invalid:focus,
input[type="checkbox"]:focus:invalid:focus {
  outline-color: #e9322d; }

select {
  /* Normalizes the height; padding is not sufficient. */
  background-color: transparent;
  border: 1px solid #445566;
  border-radius: 54px;
  min-width: 100%;
  -webkit-box-shadow: none;
  box-shadow: none;
  margin: 0;
  padding: 0.625rem 1.875rem 0.625rem 1.25rem;
  line-height: 1.225; }
  label + select {
    margin-top: 0.3125rem; }

.select__wrapper {
  width: 100%;
  position: relative;
  /*  &::before {
        display: block;
        content: ' ';
        background-image: url('../img/chevron-down.svg');
        background-size: 22px 30px;
        width: 22px;
        height: 30px;
        position: absolute;
        right: $space-l;
        top: 50%;
        transform: translate(0, -50%);
        z-index: -1; // deve stare sotto alla select, in questo modo anche la icon apre la tendina
    } */ }
  .select__wrapper select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("../img/chevron-down.svg");
    background-repeat: no-repeat;
    background-size: 22px 30px;
    background-position: 96% center; }
    .select__wrapper select::-ms-expand {
      display: none; }
  label + .select__wrapper {
    margin-top: 0.3125rem; }

label {
  font-size: 0.9375rem;
  margin: 0.5em 0 0.2em;
  color: initial;
  display: block;
  font-weight: 700; }

input[type="radio"] + label {
  font-weight: normal;
  margin-left: 8px; }

label + input[type="date"] {
  max-width: 80%; }

.checkbox-field label {
  position: relative;
  font-weight: 300;
  padding-left: 35px;
  cursor: pointer; }
  .checkbox-field label:before {
    display: inline-block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 24px;
    height: 24px;
    background-color: #E1E8ED;
    content: " ";
    cursor: pointer;
    text-align: center;
    vertical-align: top;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 80%;
    border-radius: 4px; }

.checkbox-field input[type="checkbox"]:checked + label:before {
  background-image: url(/contrib/themes/apogeonline/dist/img/check.svg);
  -webkit-transition: all .2s;
  transition: all .2s; }

fieldset {
  margin: 0;
  padding: 0.35em 0 0.75em;
  border: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0.3em 0;
  margin-bottom: 0.3em;
  color: #333;
  border-bottom: 1px solid #e5e5e5; }

input[type="checkbox"] {
  margin-right: 0.625rem; }

.form-field {
  margin-bottom: 1.25rem; }

.woocommerce-row-hidden {
  display: none; }
  .woocommerce-row-hidden.woocommerce-row-makevisible {
    display: block; }

.woocommerce-help-tip::after {
  border-radius: 10px;
  text-transform: none;
  line-height: 14px;
  display: inline-block;
  width: 14px;
  height: 14px;
  text-align: center;
  content: "?";
  cursor: help;
  background: #666;
  color: white;
  font-size: 10px;
  vertical-align: middle;
  font-weight: 100; }

#tiptip_holder {
  display: none;
  z-index: 8675309;
  position: absolute;
  top: 0;
  left: 0; }

#tiptip_holder.tip_top {
  padding-bottom: 5px; }

#tiptip_holder.tip_top #tiptip_arrow_inner {
  margin-top: -7px;
  margin-left: -6px;
  border-top-color: #333; }

#tiptip_holder.tip_bottom {
  padding-top: 5px; }

#tiptip_holder.tip_bottom #tiptip_arrow_inner {
  margin-top: -5px;
  margin-left: -6px;
  border-bottom-color: #333; }

#tiptip_holder.tip_right {
  padding-left: 5px; }

#tiptip_holder.tip_right #tiptip_arrow_inner {
  margin-top: -6px;
  margin-left: -5px;
  border-right-color: #333; }

#tiptip_holder.tip_left {
  padding-right: 5px; }

#tiptip_holder.tip_left #tiptip_arrow_inner {
  margin-top: -6px;
  margin-left: -7px;
  border-left-color: #333; }

#tiptip_content, .chart-tooltip, .wc_error_tip {
  color: #fff;
  font-size: .8em;
  max-width: 200px;
  background: #333;
  text-align: center;
  border-radius: 3px;
  padding: .618em 1em;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); }

#tiptip_content code, .chart-tooltip code, .wc_error_tip code {
  padding: 1px;
  background: #888; }

#tiptip_arrow, #tiptip_arrow_inner {
  position: absolute;
  border-color: transparent;
  border-style: solid;
  border-width: 6px;
  height: 0;
  width: 0; }

[id$=autocomplete-list] {
  cursor: pointer;
  border: 1px solid black;
  border-radius: 2px;
  max-height: 200px;
  overflow-y: auto; }

.woocommerce div.product form.cart {
  margin-bottom: 0; }
  .woocommerce div.product form.cart:last-of-type {
    margin-bottom: 2em; }

.woocommerce form.checkout #account_newsletter_field + .argomenti, .woocommerce-EditAccountForm #account_newsletter_field + .argomenti {
  display: none; }

.woocommerce form.checkout #account_newsletter_field.checked + .argomenti, .woocommerce-EditAccountForm #account_newsletter_field.checked + .argomenti {
  display: block; }

.frm_error {
  font-size: 14px;
  color: #b94a48; }

.woocommerce-billing-fields .form-row:not([id$=_address_2_field]):not([id$=iscompany_field]), .woocommerce-shipping-fields .form-row:not([id$=_address_2_field]):not([id$=iscompany_field]) {
  min-height: 85px; }

.legal {
  margin: 5px 0 0;
  font-size: 10px; }
  .legal input {
    margin: 0;
    padding: 0;
    height: auto;
    width: auto; }
    .legal input.woocommerce-invalid {
      outline: 1px solid #a00; }

fieldset.legal {
  border-bottom: 1px solid #e5e5e5; }
  fieldset.legal legend {
    border: none; }
  fieldset.legal label {
    display: inline-block !important;
    font-size: 10px;
    font-weight: normal;
    margin: 0 3px 0 0;
    padding: 0; }
    fieldset.legal label input {
      position: relative;
      top: 3px;
      margin-left: 3px; }

#place_order {
  margin: 20px 0; }

.required-message {
  font-size: 12px; }
  .required-message span {
    color: red; }

form label {
  position: relative;
  background: #fff;
  outline: none; }
  form label input[type="checkbox"] {
    width: auto;
    height: auto;
    z-index: 1;
    position: absolute;
    pointer-events: all;
    opacity: 0;
    left: 0;
    top: 0;
    margin: 0;
    clip: unset; }
    form label input[type="checkbox"]:focus + span:before {
      border: 1px solid #000; }

table {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  border-collapse: collapse;
  width: 100%; }
  table span {
    display: block;
    color: #d73e02;
    font-size: 0.9375rem; }
    table span.woocommerce-Price-currencySymbol {
      display: inline-block; }

thead {
  font-family: "Lora", Georgia, sans-serif;
  font-style: italic;
  font-size: 0.9375rem; }

th {
  font-weight: 400; }

tbody {
  text-transform: uppercase; }

tr {
  border-bottom: 1px solid #E1E8ED; }

td {
  padding: 0.625rem;
  font-size: 0.9375rem; }
  td > p {
    margin: 0;
    font-size: 0.9375rem; }

.postContent td,
.postContent th {
  padding: 0.625rem 0.9375rem;
  text-align: left; }

.postContent tr:nth-child(even) {
  background-color: #f2f6f8; }

.postContent .shop_table tr {
  background-color: #fff; }
  .postContent .shop_table tr.msg-cart {
    border: none; }
    .postContent .shop_table tr.msg-cart td {
      padding: 0; }
      .postContent .shop_table tr.msg-cart td:before {
        display: none; }
      .postContent .shop_table tr.msg-cart td div {
        width: 100%;
        padding: 20px;
        margin-top: 20px;
        /*background: #eaeaea;
                        box-shadow: 4px 3px 10px 0px rgba(0, 0, 0, 0.10);
                        border: 1px solid #d6d6d6;*/
        line-height: 1.5;
        font-size: 12px !important;
        font-weight: 100 !important; }
        .postContent .shop_table tr.msg-cart td div p {
          padding: 0;
          margin: 0;
          line-height: 1.5;
          font-size: 12px !important;
          font-weight: 100 !important; }

.postContent .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .c-button {
  margin-right: 5px;
  margin-bottom: 5px; }

.woocommerce .woocommerce-Price-amount, .woocommerce .woocommerce-Price-currencySymbol {
  color: #d73e02; }

[class^='icon-'] {
  /*  width: px(48);
  height: px(48); */
  vertical-align: middle;
  fill: none;
  stroke: currentColor; }

[class^='icon-'].icon--filled {
  fill: currentColor;
  fill-rule: evenodd;
  stroke: none; }

.icon-xs {
  height: 10px;
  width: 10px; }

.icon-s {
  height: 12px;
  width: 12px; }

.icon-m {
  height: 16px;
  width: 16px; }

.icon-l {
  height: 20px;
  width: 20px; }

.icon-xl {
  height: 24px;
  width: 24px; }

.icon-xxl {
  height: 30px;
  width: 30px; }

/*

mobilewide:   550px,
tablet:       768px,
desktop:      1024px,
bigdesk:      1200px,
wide:         1367px,
fullhd:       1920px
*/
.l-mainWrapper {
  width: 92%;
  margin-right: auto;
  margin-left: auto;
  text-align: left; }
  @media (min-width: 34.375em) {
    .l-mainWrapper {
      max-width: 90%; } }
  @media (min-width: 64em) {
    .l-mainWrapper {
      max-width: 56.25rem; } }
  @media (min-width: 75em) {
    .l-mainWrapper {
      max-width: 68.75rem; } }
  .c-breadcrumb ~ .l-mainWrapper {
    margin-top: 0; }
    @media (min-width: 48em) {
      .c-breadcrumb ~ .l-mainWrapper {
        margin-top: 3.125rem; } }

.l-singleWrapper {
  width: 95%;
  margin-right: auto;
  margin-left: auto;
  text-align: left; }
  @media (min-width: 48em) {
    .l-singleWrapper {
      max-width: 31.25rem; } }
  @media (min-width: 64em) {
    .l-singleWrapper {
      max-width: 37.5rem; } }
  @media (min-width: 85.4375em) {
    .l-singleWrapper {
      max-width: 43.75rem; } }
  @media (max-width: 47.99em) {
    .l-mainWrapper .l-singleWrapper {
      width: 100%; } }

@media (min-width: 64em) {
  .l-pageContent {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }

@media (min-width: 64em) {
  .l-pageContent__main {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 60%;
    flex: 0 0 60%;
    max-width: 60%; } }

.l-pageContent__secondary {
  width: 100%;
  overflow: hidden; }
  @media (min-width: 64em) {
    .l-pageContent__secondary {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%; } }

.l-pageContent__side {
  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: 64em) {
    .l-pageContent__side {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
      -webkit-box-flex: 0;
      -ms-flex: 0 1 37%;
      flex: 0 1 37%;
      padding-right: 3%; } }

/*
.l-pageContent {

@include mq(desktop) {

.no-cssgrid & {
display: flex;
flex-flow: row wrap;
}

.cssgrid & {
display: grid;
// grid-gap: 5px;
grid-template-columns: 4fr 6fr;
grid-template-areas:
"b a"
"c c";
}
}
}

.l-pageContent__main {

@include mq(desktop) {

.cssgrid & {
grid-area: a;
}

.no-cssgrid & {
order: 2;
flex: 0 0 60%;
}
}

}

.l-pageContent__secondary {

@include mq(desktop) {

.cssgrid & {
grid-area: c;
}

.no-cssgrid & {
order: 3;
flex: 0 0 100%;
}
}
}

.l-pageContent__side {

@include mq(desktop) {

.cssgrid & {
grid-area: b;
padding-right: 70px;
}

.no-cssgrid & {
order: 1;
flex: 0 1 37%;
padding-right: 3%;
}
}
}
*/
.fb_dialog {
  right: auto;
  left: 18pt; }

.fb-customerchat iframe {
  left: 9pt;
  right: auto; }

.l-module {
  margin-bottom: 1.875rem;
  position: relative; }
  @media (max-width: 47.99em) {
    .l-module {
      margin-bottom: 0.3125rem; } }
  @media (min-width: 48em) {
    .l-module {
      margin-bottom: 3.125rem; } }

.l-module--half {
  margin-bottom: 1.875rem; }

.l-cols {
  width: 100%; }
  @media (min-width: 48em) {
    .l-cols {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
      justify-content: space-evenly; }
      .l-cols.row-reverse {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
      .l-cols.justify-between {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
      .l-cols.justify-left {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start; }
      .l-cols.justify-right {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end; }
      .l-cols.align-top {
        -ms-flex-line-pack: start;
        align-content: flex-start; }
      .l-cols.align-center {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
      .l-cols.c-pageHeader .l-col {
        max-width: 49%; }
        .l-cols.c-pageHeader .l-col .pageSubtitle, .l-cols.c-pageHeader .l-col .c-abstract__body {
          padding-right: 0.9375rem; }
        .l-cols.c-pageHeader .l-col .c-product__button {
          margin-top: 0.9375rem; }
        .l-cols.c-pageHeader .l-col figure {
          margin: 0; } }
    @media (min-width: 48em) and (max-width: 1023px) {
      .l-cols.c-pageHeader .l-col .c-button-bar {
        display: block; }
        .l-cols.c-pageHeader .l-col .c-button-bar .c-product__button {
          margin-bottom: 0.9375rem; } }

@media (min-width: 48em) {
  .l-col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; } }

@media (min-width: 48em) {
  .l-col--double {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2; } }

@media (min-width: 48em) {
  .l-col--wide {
    width: 100%; } }

@media (min-width: 48em) {
  .l-col--half {
    width: 50%; } }

/**
 * Featherlight – ultra slim jQuery lightbox
 * Version 1.7.13 - http://noelboss.github.io/featherlight/
 *
 * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
html.with-featherlight {
  /* disable global scrolling when featherlights are visible */
  overflow: hidden; }

.featherlight {
  display: none;
  /* dimensions: spanning the background from edge to edge */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2147483647;
  /* z-index needs to be >= elements on the site. */
  /* position: centering content */
  text-align: center;
  /* insures that the ::before pseudo element doesn't force wrap with fixed width content; */
  white-space: nowrap;
  /* styling */
  cursor: pointer;
  background: #333;
  /* IE8 "hack" for nested featherlights */
  background: rgba(0, 0, 0, 0); }

/* support for nested featherlights. Does not work in IE8 (use JS to fix) */
.featherlight:last-of-type {
  background: rgba(0, 0, 0, 0.8); }

.featherlight:before {
  /* position: trick to center content vertically */
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.featherlight .featherlight-content {
  /* make content container for positioned elements (close button) */
  position: relative;
  /* position: centering vertical and horizontal */
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  /* dimensions: cut off images */
  overflow: auto;
  padding: 25px 25px 0;
  border-bottom: 25px solid transparent;
  /* dimensions: handling large content */
  margin-left: 5%;
  margin-right: 5%;
  max-height: 95%;
  /* styling */
  background: #fff;
  cursor: auto;
  /* reset white-space wrapping */
  white-space: normal; }

/* contains the content */
.featherlight .featherlight-inner {
  /* make sure its visible */
  display: block; }

/* don't show these though */
.featherlight script.featherlight-inner,
.featherlight link.featherlight-inner,
.featherlight style.featherlight-inner {
  display: none; }

.featherlight .featherlight-close-icon {
  /* position: centering vertical and horizontal */
  position: absolute;
  z-index: 9999;
  top: 0;
  right: 0;
  /* dimensions: 25px x 25px */
  line-height: 25px;
  width: 25px;
  /* styling */
  cursor: pointer;
  text-align: center;
  font-family: Arial, sans-serif;
  background: #fff;
  /* Set the background in case it overlaps the content */
  background: rgba(255, 255, 255, 0.3);
  color: #000;
  border: none;
  padding: 0; }

/* See http://stackoverflow.com/questions/16077341/how-to-reset-all-default-styles-of-the-html5-button-element */
.featherlight .featherlight-close-icon::-moz-focus-inner {
  border: 0;
  padding: 0; }

.featherlight .featherlight-image {
  /* styling */
  width: 100%; }

.featherlight-iframe .featherlight-content {
  /* removed the border for image croping since iframe is edge to edge */
  border-bottom: 0;
  padding: 0;
  -webkit-overflow-scrolling: touch; }

.featherlight iframe {
  /* styling */
  border: none; }

.featherlight * {
  /* See https://github.com/noelboss/featherlight/issues/42 */
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/* handling phones and small screens */
@media only screen and (max-width: 1024px) {
  .featherlight .featherlight-content {
    /* dimensions: maximize lightbox with for small screens */
    margin-left: 0;
    margin-right: 0;
    max-height: 98%;
    padding: 10px 10px 0;
    border-bottom: 10px solid transparent; } }

/* hide non featherlight items when printing */
@media print {
  html.with-featherlight > * > :not(.featherlight) {
    display: none; } }

/* PrismJS 1.14.0
http://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+markup-templating+php+python */
/**
 * prism.js default theme for JavaScript, CSS and HTML
 * Based on dabblet (http://dabblet.com)
 * @author Lea Verou
 */
code[class*="language-"],
pre[class*="language-"] {
  color: black;
  background: none;
  text-shadow: 0 1px white;
  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  line-height: 1.5;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

pre[class*="language-"]::selection, pre[class*="language-"] ::selection,
code[class*="language-"]::selection, code[class*="language-"] ::selection {
  text-shadow: none;
  background: #b3d4fc; }

@media print {
  code[class*="language-"],
  pre[class*="language-"] {
    text-shadow: none; } }

/* Code blocks */
pre[class*="language-"] {
  padding: 1em;
  margin: .5em 0;
  overflow: auto; }

:not(pre) > code[class*="language-"],
pre[class*="language-"] {
  background: #f5f2f0; }

/* Inline code */
:not(pre) > code[class*="language-"] {
  padding: .1em;
  border-radius: .3em;
  white-space: normal; }

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
  color: slategray; }

.token.punctuation {
  color: #999; }

.namespace {
  opacity: .7; }

.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
  color: #905; }

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
  color: #690; }

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
  color: #9a6e3a;
  background: rgba(255, 255, 255, 0.5); }

.token.atrule,
.token.attr-value,
.token.keyword {
  color: #07a; }

.token.function,
.token.class-name {
  color: #DD4A68; }

.token.regex,
.token.important,
.token.variable {
  color: #e90; }

.token.important,
.token.bold {
  font-weight: bold; }

.token.italic {
  font-style: italic; }

.token.entity {
  cursor: help; }

/* Fallback, in case JS does not run, to ensure the code is at least visible */
[class*='lang-'] script[type='text/plain'],
[class*='language-'] script[type='text/plain'],
script[type='text/plain'][class*='lang-'],
script[type='text/plain'][class*='language-'] {
  display: block;
  font: 100% Consolas, Monaco, monospace;
  white-space: pre;
  overflow: auto; }

.c-button {
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  text-transform: uppercase;
  display: inline-block;
  padding: 0.625rem 1.875rem;
  border-radius: 1.875rem;
  border: 0.125rem solid #d73e02 !important;
  text-decoration: none;
  pointer-events: auto;
  min-width: 9.375rem;
  color: #FFFFFF !important;
  background-color: #d73e02 !important; }
  .c-button:focus, .c-button:hover {
    background-color: #FFFFFF !important;
    border-color: #d73e02 !important;
    color: #d73e02 !important; }
  .c-button:active {
    background-color: transparent;
    border-color: #d73e02; }
  .c-button.c-button-fill--white {
    background-color: #FFFFFF; }
  .c-button.c-button-fill--blue {
    background-color: #445566;
    border-color: #445566;
    color: #FFFFFF; }
    .c-button.c-button-fill--blue:hover, .c-button.c-button-fill--blue:focus {
      color: #445566;
      background-color: transparent; }
  .c-button.c-button-fill--transparent {
    background-color: transparent; }
  .c-button.c-button-stroke--orange {
    color: #d73e02;
    border-color: #d73e02; }
    .c-button.c-button-stroke--orange:hover, .c-button.c-button-stroke--orange:focus {
      color: #d73e02;
      border-color: #d73e02; }
  .c-button.c-button-stroke--white {
    color: #FFFFFF;
    border-color: #FFFFFF; }
  .c-button.c-button-stroke--black {
    color: #2D2D2D;
    border-color: #2D2D2D; }
    .c-button.c-button-stroke--black:hover, .c-button.c-button-stroke--black:focus {
      color: #d73e02;
      border-color: #d73e02; }
  .c-button.c-button-stroke--blue {
    color: #445566;
    border-color: #445566; }
    .c-button.c-button-stroke--blue:hover, .c-button.c-button-stroke--blue:focus {
      color: #d73e02;
      border-color: #d73e02; }
  .c-button.c-button--long {
    min-width: 12.5rem; }
  .c-button.c-button--small {
    min-width: 6.25rem;
    padding: 0.4375rem 0.9375rem;
    font-size: 0.9375rem; }
  .c-button.c-button--exshadow {
    font-weight: 100;
    text-transform: none;
    margin: 0 .9375rem .9375rem 0; }
    @media (max-width: 767px) {
      .c-button.c-button--exshadow {
        font-size: .6875rem; } }
  .c-button.c-button--lined {
    margin: 0 auto;
    position: relative; }
    .c-button.c-button--lined:before {
      position: absolute;
      content: '';
      display: block;
      height: 100%;
      width: 110%;
      background-color: white;
      left: -5%;
      top: 0;
      z-index: -1; }

.c-buttonLined {
  position: relative;
  text-align: center; }
  .c-buttonLined::before {
    content: '';
    display: block;
    height: 1px;
    width: 100%;
    background-color: #d73e02;
    position: absolute;
    left: 0;
    top: 50%;
    z-index: -1; }

.c-buttonCopy {
  position: relative;
  opacity: 0;
  float: right;
  top: -53px;
  margin-right: 10px; }
  @media (max-width: 1024px) {
    .c-buttonCopy {
      opacity: 1;
      top: -63px; } }

pre:hover + .c-buttonCopy, .c-buttonCopy:hover {
  opacity: 1; }

.c-button-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }
  .c-button-bar .c-button {
    margin-top: 0.625rem; }
  @media (min-width: 34.375em) {
    .c-button-bar {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
      .c-button-bar .c-button {
        margin-right: 1.25rem; } }

.c-expandable {
  overflow-x: hidden;
  overflow-y: hidden; }

.c-expandable__content {
  overflow-y: hidden;
  max-height: 15.625rem; }
  .c-expandable--short .c-expandable__content {
    max-height: 11.625rem; }
  .is-active .c-expandable__content {
    max-height: 999em; }

.c-expandable__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 0.6875rem;
  color: #2D2D2D;
  text-transform: uppercase;
  text-decoration: none;
  position: relative; }
  .c-expandable__link:before {
    content: '';
    position: absolute;
    bottom: 0;
    width: 100vw;
    background: -webkit-gradient(linear, left bottom, left top, from(white), color-stop(50%, rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
    height: 6.25rem;
    max-width: 90vw; }
    .is-active .c-expandable__link:before {
      display: none; }

.c-expandable__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative; }
  .c-expandable__label:before, .c-expandable__label:after {
    content: '';
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30%;
    flex: 1 1 30%;
    height: 0.0625rem;
    background-color: #AAA;
    display: block; }
  .c-expandable__label:before {
    margin-right: 0.3125rem;
    width: 50%; }
  .c-expandable__label:after {
    margin-left: 0.3125rem; }

.is-active .c-expandable__label--open {
  display: none; }

.c-expandable__label--close {
  display: none; }
  .is-active .c-expandable__label--close {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

.c-pill {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.1;
  text-align: center;
  display: inline-block;
  padding: 0.625rem 0.9375rem;
  border-radius: 1.875rem;
  text-decoration: none;
  pointer-events: auto;
  -webkit-box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25);
  box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25);
  color: #2D2D2D;
  background-color: #FFFFFF; }
  @media (min-width: 48em) {
    .c-pill {
      font-size: 0.9375rem; } }
  .c-pill:hover {
    background-color: #e6e6e6; }

.firme-multiple {
  margin: 1.5rem 0; }
  .firme-multiple p {
    display: inline-block;
    margin: 0; }

.c-mainItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }
  .c-mainItem.is-single {
    display: none; }
  @media (max-width: 549px) {
    .c-mainItem.l-module {
      background-color: rgba(248, 152, 29, 0.2);
      padding: 1.25rem 1.5625rem; }
    .c-mainItem .c-abstract__author {
      /*margin-bottom: 0;*/ } }
  @media (min-width: 34.375em) {
    .c-mainItem {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start; } }
  @media (min-width: 64em) {
    .c-mainItem {
      display: block; }
      .c-mainItem::before, .c-mainItem::after {
        content: '';
        display: table; }
      .c-mainItem::after {
        clear: both; }
      .c-mainItem .c-pageHeader {
        float: right;
        width: 60%; }
      .c-mainItem .c-mainItem__info .c-pageHeader {
        width: 100%; } }
  @media (min-width: 64em) {
    .c-mainItem.is-single {
      display: block; } }

.c-mainItem__figure {
  padding: 1.5625rem 0;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2; }
  .c-mainItem__figure.is-single {
    display: none; }
  .c-mainItem__figure figure {
    margin: 0; }
  @media (min-width: 34.375em) {
    .c-mainItem__figure {
      width: 50%;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      padding-right: 1.875rem;
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
      order: 0;
      padding-top: 0;
      padding-bottom: 0; }
      .c-mainItem__figure.is-single {
        display: block; }
      .c-mainItem__figure.is-centered {
        text-align: center; } }
  @media (min-width: 64em) {
    .c-mainItem__figure {
      width: 40%;
      float: left;
      padding-right: 3.125rem; }
      .is-single .c-mainItem__figure {
        padding-right: 0; } }
  .c-mainItem__figure img {
    -webkit-box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25);
    box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25);
    max-height: 300px;
    max-width: 100%; }
    @media (min-width: 64em) {
      .c-mainItem__figure img {
        max-height: 530px; } }

@media (min-width: 34.375em) {
  .c-mainItem__info {
    margin-top: 0.625rem;
    width: 50%; } }

.c-mainItem__info.repeated .c-button {
  margin-top: 20px; }
  @media (min-width: 34.375em) {
    .c-mainItem__info.repeated .c-button {
      margin-top: 0px; } }

@media (min-width: 64em) {
  .c-mainItem__info {
    width: 60%;
    float: left; } }

.is-single .c-mainItem__info {
  padding-left: 1.5625rem; }
  @media (min-width: 75em) {
    .is-single .c-mainItem__info {
      padding-left: 1.875rem; } }

.c-mainItem__form {
  margin-bottom: 3.125rem;
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3; }
  @media (min-width: 34.375em) {
    .c-mainItem__form {
      width: 100%;
      margin-top: 3.125rem;
      margin-bottom: 0; } }
  @media (min-width: 64em) {
    .c-mainItem__form {
      margin-top: 0;
      width: 60%;
      float: right; } }

.c-mainItem__title {
  margin: 0 auto 0.3125rem; }

.c-mainItem__abstract {
  margin-top: 0.625rem;
  margin-bottom: 0.625rem; }

.c-mainItem__author {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 400;
  margin-bottom: 1.875rem; }

.c-mainItem__link {
  font-weight: 700; }

.c-mainItem__figureBlock {
  height: 100%; }

.is-single .c-mainItem__boxes {
  display: none; }

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

.is-single .c-mainItem__platforms {
  display: none; }

.c-mainItem-cta {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2; }
  @media (min-width: 64em) {
    .c-mainItem-cta {
      margin-left: 40%;
      -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
      max-width: 60%; } }

.c-priceBoxes {
  margin-bottom: 1.5625rem; }

.c-priceBoxes__list {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  @media (min-width: 34.375em) {
    .c-priceBoxes__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: stretch;
      -ms-flex-align: stretch;
      align-items: stretch;
      gap: 10px; } }

.c-priceBoxes__item {
  margin-bottom: 0; }
  @media (min-width: 34.375em) {
    .c-priceBoxes__item {
      -webkit-box-flex: 1;
      -ms-flex: auto;
      flex: auto; } }
  .c-priceBoxes__item.c-priceBoxes__item--notAvailable {
    color: #AAA; }
  .c-priceBoxes__item form {
    height: 100%; }
    .c-priceBoxes__item form .c-priceBox {
      height: 100%; }

.c-priceBox {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.625rem;
  position: relative; }
  @media (min-width: 34.375em) {
    .c-priceBox {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }

.c-priceBox__labels {
  padding-right: 0.3125rem; }
  @media (max-width: 34.365em) {
    .c-priceBox__labels {
      width: 58%; } }
  @media (min-width: 34.375em) {
    .c-priceBox__labels {
      text-align: center; } }

.c-priceBox__pricing {
  text-align: center; }
  @media (max-width: 34.365em) {
    .c-priceBox__pricing {
      width: 32%; } }

.c-priceBox__check {
  text-align: center; }
  @media (max-width: 34.365em) {
    .c-priceBox__check {
      width: 10%; } }

.c-priceBox__availability {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 400;
  display: block;
  text-transform: uppercase;
  font-size: 0.6875rem;
  padding: 0 10px;
  height: 15px; }

.c-priceBox__format {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  font-size: 1.125rem; }
  @media (min-width: 34.375em) {
    .c-priceBox__format:first-child {
      margin-top: 0.9375rem; } }

.c-priceBox__info svg {
  -ms-flex-negative: 0;
  flex-shrink: 0; }

@media (min-width: 34.375em) {
  .c-priceBox__info {
    display: none; } }

.c-priceBox__info.c-priceBox__info--princing {
  display: none; }
  @media (min-width: 34.375em) {
    .c-priceBox__info.c-priceBox__info--princing {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      height: 40px; } }

.c-priceBox__ship {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.6875rem; }
  .c-priceBox__ship .icon-star {
    position: relative;
    margin-right: 5px;
    top: -1px; }

.c-priceBox__newPrice {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-size: 1.875rem;
  margin: 0;
  line-height: 1.225; }

.c-priceBox__offer {
  font-size: 0.9375rem;
  margin: 0; }

.c-priceBox__oldPrice {
  position: relative;
  color: inherit;
  text-decoration: none;
  display: inline-block; }
  .c-priceBox__oldPrice::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    border-top: 1px solid currentColor;
    top: 50%; }

.c-priceBox__label {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer; }
  .c-priceBox__label:focus, .c-priceBox__label:hover {
    border: 1px solid #000000;
    background-color: #000000;
    opacity: 0.03; }
  input:checked .c-priceBox__label + label,
  input:checked + .c-priceBox__label,
  input:checked + .c-priceBox__label:focus,
  input:checked + .c-priceBox__label:hover {
    border: 3px solid #d73e02;
    opacity: 1 !important;
    background-color: transparent !important; }
  input[type="radio"] + .c-priceBox__label {
    padding: 0;
    margin: 0;
    opacity: 0.03;
    background-color: #000000; }

.c-priceBox__radio {
  position: absolute;
  opacity: 0;
  cursor: pointer; }

.c-priceBox__customRadio {
  position: relative;
  display: block;
  margin-top: 0.9375rem;
  border-radius: 100%;
  height: 24px;
  width: 24px;
  border: 1px solid #E1E8ED;
  background-color: #F7F9FA;
  pointer-events: none; }
  .c-priceBox__customRadio::before {
    display: none;
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -0.4375rem;
    margin-top: -0.4375rem;
    border-radius: 100%;
    height: 0.875rem;
    width: 0.875rem;
    background: #000000; }

input[type=radio]:checked ~ .c-priceBox__customRadio::before {
  display: block; }

.c-priceBoxes__item--notAvailable .c-priceBox__label {
  cursor: default; }
  .c-priceBoxes__item--notAvailable .c-priceBox__label:focus, .c-priceBoxes__item--notAvailable .c-priceBox__label:hover {
    border: none;
    background-color: transparent;
    opacity: 1; }

.c-header {
  position: relative; }
  @media (max-width: 549px) {
    .c-header {
      position: fixed;
      top: 0;
      width: 100%;
      z-index: 1; } }
  @media (max-width: 549px) {
    .c-header.is-active {
      position: fixed;
      width: 100%;
      z-index: 1; }
      .c-header.is-active .c-header__topbar {
        position: fixed;
        width: 100%;
        top: 0;
        left: 0; } }
  @media (min-width: 34.375em) {
    .c-header {
      overflow-x: hidden;
      overflow-y: hidden; } }

.c-header__topbar {
  background-color: #445566;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem; }
  @media (min-width: 64em) {
    .c-header__topbar {
      padding-top: 0.9375rem;
      padding-bottom: 0.9375rem; } }

.c-header__wrapper {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  color: white;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.c-header__formats {
  display: none; }
  @media (min-width: 34.375em) {
    .c-header__formats {
      display: block;
      margin: 0 auto; } }

.c-header__logo {
  width: 125px;
  height: 26px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  .c-header__logo img {
    width: 100%;
    height: 100%; }
  @media (min-width: 75em) {
    .c-header__logo {
      width: 250px;
      height: 52px; }
      .c-header__logo img {
        width: 100%;
        height: 100%; } }

.c-header__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media (min-width: 550px) {
    .c-header__main {
      -webkit-box-align: baseline;
      -ms-flex-align: baseline;
      align-items: baseline; } }
  @media (min-width: 550px) and (max-width: 1023px) {
    .c-header__main {
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media (min-width: 64em) {
    .c-header__main {
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }

.c-header__toggle {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  text-transform: uppercase;
  color: #FFFFFF;
  text-decoration: none; }
  @media (min-width: 34.375em) {
    .c-header__toggle {
      display: none; } }

/* .c-headerToggleMenu{
@include mq(tablet) {
display: none;
}
} */
.c-headerToggleMenu {
  width: 42px; }

.j-header.is-active .c-headerToggle__label {
  display: none; }

.c-headerToggle__label.c-headerToggle__label--close {
  display: none; }
  .j-header.is-active .c-headerToggle__label.c-headerToggle__label--close {
    display: block; }

.c-header__nav {
  width: 100%;
  top: 100%;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.25s;
  transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  transition: transform 0.25s, -webkit-transform 0.25s;
  position: absolute;
  position: fixed;
  /* top: 66px; */
  top: 0;
  background-color: #445566;
  text-align: center;
  z-index: 600; }
  @media (max-width: 549px) {
    .c-header__nav {
      /* height: 100%;
        min-height: 100%; */
      height: calc(100vh - 66px);
      min-height: calc(100vh - 66px);
      overflow: scroll;
      margin-top: 66px;
      margin-bottom: -66px; } }
  @media (min-width: 34.375em) {
    .c-header__nav {
      /* position: absolute;
        right: 0;
        max-width: $s-headernav-max-width;
        top: 70px;
        transform: translateX($s-headernav-max-width); */
      display: none; } }

.c-headerNavbar__search {
  position: absolute;
  top: 66px;
  right: 0;
  z-index: -1;
  width: 100%;
  padding: 0.9375rem;
  background-color: #445566;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.25s linear;
  transition: -webkit-transform 0.25s linear;
  transition: transform 0.25s linear;
  transition: transform 0.25s linear, -webkit-transform 0.25s linear;
  display: none;
  /*@media screen and (min-width: 550px) and (max-height: 1199px) {
            top: 54px!important;
    }*/ }
  .c-headerNavbar__search.is-visible {
    z-index: 10;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: -webkit-transform 0.25s linear;
    transition: -webkit-transform 0.25s linear;
    transition: transform 0.25s linear;
    transition: transform 0.25s linear, -webkit-transform 0.25s linear;
    display: block; }
  @media (min-width: 34.375em) {
    .c-headerNavbar__search {
      max-width: 23.125rem; } }
  @media (min-width: 48em) {
    .c-headerNavbar__search {
      top: 70px; } }

.c-header.is-active .c-header__nav {
  -webkit-transform: translateX(0);
  transform: translateX(0); }

.c-header__bottombar {
  display: none;
  margin-top: 0.625rem; }
  @media (min-width: 34.375em) {
    .c-header__bottombar {
      display: block; } }

.c-headerNavbar {
  padding: 0.9375rem; }

@media (min-width: 34.375em) {
  .c-headerNavbar__formats {
    display: none; } }

@media (min-width: 34.375em) {
  .c-headerNavbar__categories {
    display: none; } }

@media (min-width: 48em) {
  .c-headerNavbar__navMenu {
    margin-top: 0.9375rem; } }

.c-searchBox__form {
  position: relative;
  padding: 0;
  margin: 0; }

.c-searchBox__label {
  font-family: "Lora", Georgia, sans-serif;
  font-style: italic;
  position: absolute;
  left: 0.9375rem;
  top: 0.3125rem; }
  .c-searchBox__label svg {
    stroke: #8798a7; }

input[type="search"].c-searchBox__input {
  font-family: "Lora", Georgia, sans-serif;
  font-style: italic;
  border-radius: 30px;
  -webkit-box-shadow: initial;
  box-shadow: initial;
  color: #8798a7;
  font-size: 1.125rem;
  padding-left: 3.125rem;
  width: 100%; }
  input[type="search"].c-searchBox__input::-webkit-input-placeholder {
    color: #8798a7; }
  input[type="search"].c-searchBox__input:-ms-input-placeholder {
    color: #8798a7; }
  input[type="search"].c-searchBox__input::-ms-input-placeholder {
    color: #8798a7; }
  input[type="search"].c-searchBox__input::placeholder {
    color: #8798a7; }

.c-navFormats {
  /* &.c-headerNavbar__formats {
    margin-top: $s-format-pad-top;
  } */ }
  .c-navFormats a {
    color: #FFFFFF;
    text-decoration: none; }

.c-navFormats__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }

.c-navFormats__item {
  margin-bottom: 0; }
  @media (min-width: 64em) {
    .c-navFormats__item {
      line-height: 1.414; } }

.c-navFormats__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  display: block;
  font-size: 1.125rem;
  text-transform: uppercase; }
  .c-navFormats__link.is-active {
    color: #FFFFFF !important;
    text-decoration: underline; }
  .c-navFormats__link.is-new {
    position: relative; }
  @media (min-width: 75em) {
    .c-navFormats__link {
      font-size: 1.5625rem; } }
  .c-footer__navFormats .c-navFormats__link,
  .c-header__formats .c-navFormats__link {
    padding: 0.9375rem 0.625rem 0; }
  .c-headerNavbar__formats .c-navFormats__link {
    padding: 0.9375rem 0 0.9375rem; }

.c-navFormats__news {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  font-size: 11px;
  text-transform: none;
  width: 120%;
  text-align: center; }

.c-navFormats__highlight .c-highlight__icon {
  stroke-width: 2px; }

.c-navMenu {
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  .c-navMenu a {
    color: #FFFFFF;
    text-decoration: none; }
  .c-navMenu.c-header__navMenu span {
    display: none; }
    @media (min-width: 64em) {
      .c-navMenu.c-header__navMenu span {
        display: block; } }
    .c-navMenu.c-header__navMenu span.cart_quantity {
      position: absolute;
      display: inline-block;
      top: -12px;
      right: -6px;
      color: #fff; }
      @media (min-width: 64em) {
        .c-navMenu.c-header__navMenu span.cart_quantity {
          position: relative;
          padding: 0 2px;
          top: auto;
          right: auto; } }
  .c-navMenu .wrap-cart_quantity {
    color: #e1e8ed;
    /*margin-left: 2px;
        letter-spacing: -1px;*/ }
    .c-navMenu .wrap-cart_quantity.first {
      margin-left: 3px; }
  @media (min-width: 64em) {
    .c-navMenu.c-headerNavbar__navMenu {
      display: none; } }

.c-navMenu__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end; }
  .c-headerNavbar__categories .c-navMenu__list {
    margin-bottom: 1.5625rem; }

.c-navMenu__item {
  margin-bottom: 0; }
  @media (min-width: 64em) {
    .c-navMenu__item {
      line-height: 1.414;
      margin: 0.625rem;
      margin-bottom: 0; }
      .c-navMenu__item:first-child {
        margin-left: 0; } }

.c-navMenu.c-headerNavbar__navMenu .c-navMenu__item--search {
  display: none; }
  @media (min-width: 64em) {
    .c-navMenu.c-headerNavbar__navMenu .c-navMenu__item--search {
      display: inline-block; } }

.c-navMenu__item--cart {
  margin-left: 0.9375rem; }

.c-header__main .c-navMenu__item--search {
  margin: 0 0.9375rem; }

.c-navMenu__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  text-transform: uppercase;
  position: relative; }
  @media (min-width: 64em) {
    .c-navMenu__link {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }

.c-shop {
  display: inline; }
  .c-shop span {
    display: none; }

@media (max-width: 63.99em) {
  .c-navMenu__pipe {
    display: none; } }

.c-navCategories a {
  text-decoration: none; }

.c-navCategories.c-headerNavbar__categories a {
  color: #FFFFFF; }

.c-header__bottombar .c-navCategories {
  display: none; }
  .c-header__bottombar .c-navCategories a {
    color: #000000; }
  @media (min-width: 34.375em) {
    .c-header__bottombar .c-navCategories {
      display: block; } }

.c-navCategories__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .c-header__bottombar .c-navCategories__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap; }
  .c-footer__navCategories .c-navCategories__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }

.c-headerNavbar__categories .c-navCategories__item {
  border-bottom: solid 1px #AAA; }

.c-header__bottombar .c-navCategories__item {
  margin-right: 0.9375rem; }

.c-footer__navCategories .c-navCategories__item {
  line-height: 1;
  width: 50%;
  padding-top: 0.625rem; }
  @media (min-width: 64em) {
    .c-footer__navCategories .c-navCategories__item {
      width: 20%; } }

.c-navCategory__link {
  text-transform: uppercase; }
  .c-navCategory__link.is-active {
    text-decoration: underline; }
  .c-headerNavbar__categories .c-navCategory__link {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 700;
    font-size: 0.9375rem;
    display: block;
    padding: 0.9375rem; }
  .c-footer__navCategories .c-navCategory__link {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 500;
    text-decoration: none;
    display: block;
    word-break: normal; }
    @media (min-width: 64em) {
      .c-footer__navCategories .c-navCategory__link {
        font-size: 0.9375rem;
        line-height: 1.1; } }

/*----------  Subcategory  ----------*/
.c-header__bottombar .c-navCategory__subCategories {
  display: none; }
  @media (min-width: 34.375em) {
    .c-header__bottombar .c-navCategory__subCategories {
      display: block; } }

.c-headerNavbar__categories .c-navCategory__subCategory {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: max-height 0.25s;
  transition: max-height 0.25s; }

.c-footer__navCategories .c-navCategory__subCategory {
  margin-top: 0.625rem; }

.c-navCategory.is-active .c-navCategory__subCategory {
  max-height: 600px; }

.c-subCategory {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  .c-headerNavbar__categories .c-subCategory {
    position: relative; }
    .c-headerNavbar__categories .c-subCategory:before {
      display: block;
      width: 100%;
      height: 1px;
      background-color: #AAA;
      content: "";
      position: absolute;
      top: 0; }

.c-subCategory__item {
  margin-bottom: 5px !important; }
  .c-headerNavbar__categories .c-subCategory__item:first-child {
    margin-top: 0.625rem; }
  .c-headerNavbar__categories .c-subCategory__item:last-child {
    margin-bottom: 0.625rem; }

.c-subCategory__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  text-transform: uppercase; }
  .c-subCategory__link:hover, .c-subCategory__link:focus {
    color: #fff; }
  .c-subCategory__link.is-active {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 700; }
  .c-headerNavbar__categories .c-subCategory__link {
    display: block;
    padding: 0.625rem; }

.c-navMainCategories__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  border-bottom: 1px solid #2D2D2D;
  margin-bottom: 0.3125rem;
  padding-bottom: 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.c-navMainCategories__item {
  /*margin-bottom: 0;
  margin-right: $space-s;*/
  margin-right: 0 !important;
  display: inline-block; }
  @media (min-width: 64em) {
    .c-navMainCategories__item {
      margin-right: 3.125rem; } }

.c-navMainCategories__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 0.6875rem;
  text-decoration: none; }
  @media (min-width: 64em) {
    .c-navMainCategories__link {
      font-size: 0.9375rem; } }
  .is-active > .c-navMainCategories__link {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 700;
    text-decoration: underline; }

.c-navSubCategory {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: none; }
  .c-navSubCategory.is-active {
    display: block; }

.c-navSubCategory__item {
  display: inline-block;
  margin-bottom: 0;
  margin-right: 0.9375rem; }
  @media (min-width: 64em) {
    .c-navSubCategory__item {
      margin-right: 1.875rem; } }

.c-navSubCategory__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 0.6875rem;
  text-decoration: none; }
  .c-navSubCategory__link.is-active {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 700;
    text-decoration: underline; }

.c-breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 47.99em) {
    .c-breadcrumb {
      display: none; } }

.c-breadcrumb__root {
  color: #2D2D2D; }

.c-breadcrumb__main {
  position: relative;
  display: inline-block;
  margin-right: 2px; }
  .c-breadcrumb__main:nth-child(4) {
    z-index: 10; }
  .c-breadcrumb__main:nth-child(3) {
    z-index: 20; }
  .c-breadcrumb__main:nth-child(2) {
    z-index: 30; }
  .c-breadcrumb__main:nth-child(1) {
    z-index: 40;
    margin-left: 0; }
  .c-breadcrumb__main:last-child .c-breadcrumb__label {
    border-top-right-radius: 1.625rem;
    border-bottom-right-radius: 1.625rem; }

.c-breadcrumb__label {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  padding: 0.3125rem 0.625rem;
  background-color: #E1E8ED;
  /* border-top-right-radius: $s-breadcrumb-border-radius;
    border-bottom-right-radius: $s-breadcrumb-border-radius; */
  border-left: 0;
  text-decoration: none;
  display: block;
  position: relative;
  /*  &::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    height:26px;
    width:12px;
    border-radius: 0 $s-breadcrumb-border-radius $s-breadcrumb-border-radius 0;
    background: white;
} */ }
  .c-breadcrumb__label:hover, .c-breadcrumb__label:focus {
    background-color: #445566;
    color: #FFFFFF; }
    .c-breadcrumb__label:hover svg, .c-breadcrumb__label:focus svg {
      stroke: #FFFFFF; }
  .c-breadcrumb__label.c-breadcrumb__root {
    display: inline-block; }
    .c-breadcrumb__label.c-breadcrumb__root::before {
      display: none; }

span.c-breadcrumb__label {
  color: #2D2D2D; }
  span.c-breadcrumb__label:hover, span.c-breadcrumb__label:focus {
    background-color: #E1E8ED;
    color: #2D2D2D; }

.c-breadcrumb__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: none;
  margin-top: 2px; }
  .is-open .c-breadcrumb__list {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    background: #E1E8ED;
    z-index: 10; }

.c-breadcrumb__item {
  white-space: nowrap;
  margin: 0; }

.c-breadcrumb__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  display: block;
  font-size: 0.6875rem;
  text-decoration: none;
  padding: 0.625rem 0.9375rem;
  color: #2D2D2D; }
  .c-breadcrumb__link:hover, .c-breadcrumb__link:focus {
    /* color: initial;
        background-color: darken($color-white, 10%); */
    background-color: #445566;
    color: #FFFFFF; }

.c-breadcrumb-mobile .c-breadcrumb__link {
  text-decoration: underline;
  text-align: left;
  margin-top: -20px; }
  .c-breadcrumb-mobile .c-breadcrumb__link:hover, .c-breadcrumb-mobile .c-breadcrumb__link:focus {
    background-color: initial;
    color: #2D2D2D; }

@media (min-width: 34.375em) {
  .c-breadcrumb-mobile {
    display: none; } }

.c-breadcrumb__icon {
  stroke-width: 0.125rem; }
  .c-breadcrumb__main.is-open .c-breadcrumb__icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }

.c-footer {
  background-color: #445566;
  color: #FFFFFF;
  padding: 0.625rem; }
  .c-footer a {
    color: #FFFFFF; }
    .c-footer a:hover, .c-footer a:focus {
      color: #FFFFFF;
      text-decoration: none; }

.c-footer__topbar {
  padding-bottom: 1.5625rem;
  margin-bottom: 1.5625rem;
  border-bottom: solid 1px #FFFFFF; }
  @media (min-width: 34.375em) {
    .c-footer__topbar {
      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; } }

.c-footer__logo {
  width: 125px;
  display: block;
  margin-bottom: 1.25rem; }
  @media (max-width: 63.99em) {
    .c-footer__logo {
      height: 25px;
      margin-top: 1.25rem; } }
  .c-footer__logo img {
    width: 125px; }

.c-footer__navFormats {
  display: none; }
  @media (min-width: 34.375em) {
    .c-footer__navFormats {
      display: block; } }

.c-footer__navMenu {
  display: none; }
  @media (min-width: 64em) {
    .c-footer__navMenu {
      display: block; } }

.c-footer__body {
  /* @include mq(wide) {

    @supports(display: grid) {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-template-areas:
    "a c c b e"
    ". c c d e";
}
} */ }
  @media (min-width: 34.375em) {
    .c-footer__body {
      display: -ms-grid;
      -ms-grid-columns: 1fr; }
      @supports (display: grid) {
        .c-footer__body {
          display: grid;
          grid-template-columns: 1fr 1fr;
          grid-template-areas: "a b" "c c" "f f" "e e"; } } }
  @media (min-width: 48em) {
    .c-footer__body {
      -ms-grid-columns: 1fr 1fr; }
      @supports (display: grid) {
        .c-footer__body {
          grid-template-columns: 1fr 1fr;
          grid-template-areas: "c c" "a b" "f f" "e e"; } } }
  @media (min-width: 64em) {
    .c-footer__body {
      -ms-grid-columns: 1fr 1fr 1fr 1fr; }
      @supports (display: grid) {
        .c-footer__body {
          grid-template-columns: 1fr 1fr 1fr 1fr;
          -ms-grid-columns: 1fr 1fr 1fr 1fr;
          grid-template-areas: "c c c c" "a a b b" "f f f f" "e e e e"; } } }

.c-footer__about {
  font-size: 0.9375rem;
  -ms-grid-column-span: 1; }
  @media (min-width: 34.375em) {
    .c-footer__about {
      -ms-grid-column: 1;
      /*background-color: #f00;*/ }
      @supports (display: grid) {
        .c-footer__about {
          grid-area: a; } } }
  @media (min-width: 64em) {
    .c-footer__about {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-grid-column: 1/3;
      -ms-grid-row: 2;
      -ms-grid-column-span: 2; }
      .c-footer__about ul {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 50%; }
        .c-footer__about ul:last-child {
          padding-top: 0; } }
  .c-footer__about ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
    padding: 0.625rem 0; }

.c-footer__payments {
  margin-bottom: 1.5625rem;
  border-bottom: solid 1px #fff;
  -ms-grid-column: 1;
  /*background-color: #ff0;*/
  -ms-grid-column-span: 4;
  -ms-grid-row: 3; }
  .c-footer__payments ul {
    margin: 0;
    padding: 0;
    overflow: hidden; }
    .c-footer__payments ul li {
      list-style-type: none;
      float: left; }
      .c-footer__payments ul li.right {
        float: right; }
      @media (max-width: 1023px) {
        .c-footer__payments ul li {
          display: block;
          float: none !important;
          margin-bottom: 10px; } }
  @media (min-width: 34.375em) {
    .c-footer__payments {
      -ms-grid-column: 1;
      -ms-grid-row: 3; }
      @supports (display: grid) {
        .c-footer__payments {
          grid-area: f;
          -ms-grid-column: 3; } } }

.c-footer__about small em, .c-footer__contacts small em {
  display: block;
  line-height: 1.225;
  margin-bottom: 0.625rem; }
  @media (min-width: 34.375em) and (max-width: 47.99em) {
    .c-footer__about small em, .c-footer__contacts small em {
      display: inline-block;
      margin-right: 0.9375rem; } }

.c-footer__about small em {
  padding-right: 7vw; }

.wrap-contacts {
  /* @include mq(desktop) {
    display: flex;

    > div{
    flex-shrink: 0;
    width: 50%;
}
} */ }
  @media (min-width: 34.375em) and (max-width: 63.99em) {
    .wrap-contacts {
      margin-top: 65px; } }

.c-footer__navCategories {
  display: none; }
  @media (min-width: 64em) {
    .c-footer__navCategories {
      display: block;
      width: 100%;
      -ms-grid-column-span: 4;
      -ms-grid-row: 1;
      grid-row: 1;
      padding-top: 1.5625rem;
      padding-bottom: 1.5625rem;
      margin-bottom: 1.5625rem;
      border-bottom: solid 1px #fff; }
      @supports (display: grid) {
        .c-footer__navCategories {
          grid-area: c;
          -ms-grid-column: 3; } } }

.c-footer__contacts {
  -ms-grid-column-span: 4; }
  .c-footer__contacts ul {
    list-style: none;
    padding-left: 0;
    margin: 0; }
  .c-footer__contacts li {
    margin: 0.625rem 0;
    font-size: 0.9375rem; }
  @media (min-width: 34.375em) {
    .c-footer__contacts {
      -ms-grid-column: 2;
      -ms-grid-column-span: 1; }
      @supports (display: grid) {
        .c-footer__contacts {
          grid-area: b;
          -ms-grid-column: 2; } } }
  @media (min-width: 64em) {
    .c-footer__contacts {
      -ms-grid-column: 3;
      -ms-grid-column-span: 2;
      -ms-grid-row: 2;
      margin-top: 4px;
      /*background-color: #f00;*/ } }

.c-footer__editor {
  -ms-grid-row: 4; }
  .c-footer__editor em {
    line-height: 1.2;
    display: block;
    margin-bottom: 0.625rem; }
  @media (min-width: 34.375em) {
    .c-footer__editor {
      display: block;
      width: 100%;
      -ms-grid-column-span: 2; }
      @supports (display: grid) {
        .c-footer__editor {
          grid-area: e; } } }
  @media (min-width: 64em) {
    .c-footer__editor {
      -ms-grid-column-span: 4; } }

.c-footer__bottomLine p {
  font-size: 0.9375rem; }

.c-footer__bottomLine a {
  text-decoration: none; }

.c-footer__social {
  display: block !important; }

@media (min-width: 34.375em) {
  .no-cssgrid .c-footer__editor, .no-cssgrid .c-footer__social, .no-cssgrid c-footer__payments, .no-cssgrid .c-footer__contacts {
    vertical-align: top;
    display: inline-block; }
  .no-cssgrid .c-footer__navCategories {
    word-break: break-all; } }

#cookieChoiceInfo {
  z-index: 20000000000; }

.c-contacts__title {
  font-size: 0.9375rem; }

.c-contacts__newsletter {
  font-size: 0.9375rem; }
  .c-contacts__newsletter h5 {
    margin-bottom: 0.9375rem; }

.c-contacts__email[type="email"] {
  background-color: transparent;
  color: white;
  border: solid 1px #FFFFFF;
  width: 100%;
  color: #FFFFFF;
  margin-bottom: 0.625rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  -webkit-box-shadow: none;
  box-shadow: none;
  max-width: 80%; }
  .c-contacts__email[type="email"]:focus:invalid {
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-transition: background-color .25s;
    transition: background-color .25s; }

.c-contacts__label {
  color: #FFFFFF;
  margin-bottom: 0.9375rem; }

.c-contacts__button {
  display: block;
  font-size: 0.9375rem;
  margin: 0.9375rem 0 0; }
  .c-contacts__button[type=submit] {
    color: #FFFFFF; }
    .c-contacts__button[type=submit]:hover {
      color: #d73e02; }

.c-socialList ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 0.3125rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media (min-width: 64em) {
    .c-socialList ul {
      display: block;
      margin-top: 0.9375rem; }
      .c-socialList ul li {
        display: inline-block;
        margin-right: 0.625rem; } }

.c-socialList li {
  margin-bottom: 0.3125rem;
  white-space: nowrap;
  font-size: 0.9375rem; }
  @media (min-width: 64em) {
    .c-socialList li:first-child {
      margin-top: 0; } }

.c-socialList a {
  text-decoration: none; }

.c-socialList span {
  text-decoration: underline; }
  .c-socialList span:hover {
    text-decoration: none; }

.c-editors ul {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  @media (min-width: 34.375em) {
    .c-editors ul {
      -webkit-column-count: 2;
      column-count: 2;
      -webkit-column-gap: 0px;
      column-gap: 0px; }
      .c-editors ul li {
        -webkit-column-break-inside: avoid;
        page-break-inside: avoid;
        break-inside: avoid; } }
  @media (min-width: 64em) {
    .c-editors ul {
      -webkit-column-count: 3;
      column-count: 3;
      -webkit-column-gap: 0px;
      column-gap: 0px; } }

.c-editors li {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  margin: 0 0 0.625rem 0;
  font-size: 0.9375rem; }

.c-sectionTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .l-module .c-sectionTitle,
  .l-module--half .c-sectionTitle {
    margin-bottom: 0.9375rem; }

.c-sectionTitle__main {
  position: relative;
  margin-right: 1.25rem; }

.c-sectionTitle__label {
  margin: 0.9375rem 0; }

.c-sectionTitle__highlight {
  position: absolute;
  top: 0;
  left: 0; }

.c-sectionTitle__link {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem;
  color: #445566;
  margin-bottom: 17px; }

.c-attachments {
  list-style: none;
  padding-left: 0;
  margin: 0; }

.c-attachment {
  margin-bottom: 0.9375rem; }

.c-attachment__label {
  display: block; }
  @media (min-width: 48em) {
    .c-attachment__label {
      display: inline-block; } }

.c-attachment__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  text-decoration: none; }

.c-attachment__title {
  text-decoration: underline;
  margin: 0; }
  @media (min-width: 64em) {
    .c-attachment__title {
      display: inline-block;
      margin-right: 0.3125rem; } }

.c-attachment__info {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.9375rem;
  color: #445566;
  white-space: nowrap;
  line-height: 1.225; }

.c-attachment__icon {
  margin-top: 0.375rem;
  margin-left: 0.9375rem; }

.c-attachment__icon--brightened {
  opacity: 0.3; }

.c-relatedLinks {
  margin-top: 0.9375rem;
  color: #445566; }
  .c-relatedLinks ul {
    list-style: none;
    padding-left: 0;
    margin: 0; }
    @media (min-width: 34.375em) {
      .c-relatedLinks ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start; } }
  .c-relatedLinks li {
    margin-bottom: 1.875rem;
    background-color: #F8F8F8;
    padding: 0.9375rem; }
    @media (min-width: 34.375em) {
      .c-relatedLinks li {
        margin-left: .625rem;
        margin-right: .625rem;
        -webkit-box-flex: 1;
        -ms-flex: 1 1 calc(50% - 20px);
        flex: 1 1 calc(50% - 20px);
        max-width: calc(50% - 20px); } }
    @media (min-width: 48em) {
      .c-relatedLinks li {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 calc(33% - 20px);
        flex: 1 1 calc(33% - 20px);
        max-width: calc(33.3% - 20px); } }
    .c-relatedLinks li .c-product__author {
      font-size: .9375rem !important;
      font-family: "Lora",Georgia,sans-serif; }
      .c-relatedLinks li .c-product__author a {
        display: inline;
        font-family: "Lora",Georgia,sans-serif;
        font-size: .9375rem !important; }
  .c-relatedLinks p {
    margin-top: 0;
    font-size: 0.9375rem;
    line-height: 1.675;
    color: #2D2D2D; }
  .c-relatedLinks a {
    margin-bottom: 0;
    display: block; }

.c-bulletList ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
  list-style: square;
  padding-left: 1.5625rem; }

.c-bulletList li {
  margin-bottom: 0.625rem;
  padding-left: 0.625rem;
  color: #445566;
  line-height: 1.2; }

.bulletList {
  list-style: square; }

.c-customQuote {
  position: relative;
  padding-top: 1.25rem; }

.c-customQuote__body {
  font-style: italic;
  text-align: center;
  color: #2D2D2D;
  margin: 0;
  padding-left: 0;
  border-left: none; }
  .c-customQuote__body p {
    padding: 0 0.625rem;
    font-size: 1.125rem;
    line-height: 1.414; }
    @media (min-width: 64em) {
      .c-customQuote__body p {
        margin-top: 0;
        padding: 0; } }
  .c-customQuote__body:before, .c-customQuote__body:after {
    content: "";
    display: block;
    position: absolute;
    opacity: 0.3;
    z-index: -1;
    width: 6.25rem;
    height: 3.75rem;
    background-image: url("../img/apogeo-og.png");
    background-repeat: no-repeat;
    background-size: contain; }
    @supports ((-webkit-mask: url("../img/apogeo-og.svg") no-repeat 50% 50%) or (mask: url("../img/apogeo-og.svg") no-repeat 50% 50%)) {
      .c-customQuote__body:before, .c-customQuote__body:after {
        background-image: none;
        background-color: #E1E8ED;
        -webkit-mask: url("../img/apogeo-og.svg") no-repeat 50% 50%;
        mask: url("../img/apogeo-og.svg") no-repeat 50% 50%; } }
  .c-customQuote__body:before {
    top: 0;
    left: 0; }
  .c-customQuote__body:after {
    bottom: 0;
    right: 0;
    -webkit-transform: scale(-1);
    transform: scale(-1); }

.c-highlight {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  vertical-align: baseline; }
  .c-highlight svg {
    vertical-align: text-bottom; }

.c-highlight__icon {
  top: -1px;
  position: relative; }

.section-home {
  padding: 5vh 0; }
  .section-home.bgColor {
    padding: 5vh 0; }
  .section-home:first-child {
    padding-top: 2.5vh;
    overflow: hidden; }
    .section-home:first-child img {
      width: 100%;
      margin: 0 auto;
      max-width: 68.75rem;
      bottom: -8px;
      position: relative; }
    .section-home:first-child picture {
      /*float: left;*/ }
  .section-home h1, .section-home h2 {
    max-width: 40ch; }
  .section-home h3, .section-home .h3 {
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 1.5625rem;
    margin: 0 0 .5rem 0;
    line-height: 1.2; }
  .section-home.c-three-col .l-col:last-child {
    padding: 0; }
  .section-home.c-three-col .l-cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .section-home.c-three-col .l-col {
    text-align: center; }
  .section-home.c-three-col .l-col-img {
    margin: 0 1.25rem; }
  .section-home.c-three-col img {
    -webkit-box-shadow: 0 0 10px 5px rgba(170, 170, 170, 0.25);
    box-shadow: 0 0 10px 5px rgba(170, 170, 170, 0.25);
    border-radius: 50%; }
  .section-home.c-three-col p {
    border-top: none;
    margin-top: 0;
    padding-top: 0; }
  @media (max-width: 767px) {
    .section-home.c-three-col .l-cols {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; }
    .section-home.c-three-col .l-col:nth-child(2) {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
      margin-bottom: 0.9375rem; }
    .section-home.c-three-col .l-col:nth-child(1), .section-home.c-three-col .l-col:nth-child(3) {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2; }
    .section-home.c-three-col .l-col:nth-child(1) h3, .section-home.c-three-col .l-col:nth-child(1) .h3 {
      margin: 0.9375rem 0; }
    .section-home.c-three-col .l-col:nth-child(1) .c-button {
      display: none; } }
  @media (min-width: 768px) {
    .section-home.c-three-col .l-col:nth-child(3) .c-button {
      display: none; } }
  @media (min-width: 1024px) {
    .section-home h3, .section-home .h3 {
      font-size: 1.88rem; } }

/*
.section-home + .section-home.bgColor{
margin-top: 5vh;
}

.section-home.bgColor + .section-home.bgColor{
margin: 0;
}
*/
.c-pageHeader.c-home {
  text-align: center; }
  .c-pageHeader.c-home .pageHeadline {
    font-size: 1.88rem;
    line-height: 1.4; }
  .c-pageHeader.c-home .pageHeadline, .c-pageHeader.c-home .pageSubtitle {
    color: #445566; }
  .c-pageHeader.c-home .pageSubtitle {
    max-width: 40ch;
    margin: 0 auto 5vh; }
  .c-pageHeader.c-home figure {
    margin: 0; }
  @media (min-width: 64em) {
    .c-pageHeader.c-home .pageHeadline, .c-pageHeader.c-home h1 {
      font-size: 3.44rem; } }

.promo {
  font-size: 0.88rem;
  font-weight: bold;
  font-style: italic;
  text-transform: uppercase; }

article {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #445566; }
  article figure {
    margin: 0; }
  article.l-cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  article .l-col {
    font-family: "Montserrat", Arial, sans-serif; }
    article .l-col.l-col-img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      article .l-col.l-col-img img {
        /*max-height: 50vh;*/
        width: 100%; }
  article p {
    padding-top: .75rem;
    margin-top: .75rem;
    border-top: 1px solid #445566; }
    @media (max-width: 1366px) {
      article p {
        margin-bottom: 0; } }
  article .c-cta__button {
    margin-left: 0; }
  article .c-product__type.c-product__type--overlay {
    position: relative;
    display: block;
    margin-bottom: 0.3125rem; }
  @media (max-width: 767px) {
    article .l-col.l-col-img {
      margin-bottom: 1.25rem; }
      article .l-col.l-col-img img {
        /*max-height: 40vh;*/
        width: 100%; }
    article .l-col-txt {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2; } }
  @media (min-width: 768px) {
    article.l-cols {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row; }
    article .l-col {
      width: 45%;
      margin: 0 1%; } }

.c-sectionTitle.home {
  display: block;
  text-align: center;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 1.88rem;
  font-weight: bold;
  color: #445566;
  line-height: 1.2;
  margin: 5vh 0 .5rem 0; }
  @media (min-width: 1024px) {
    .c-sectionTitle.home {
      font-size: 2.25rem; } }

.c-sectionTitle.home + p.subtitle {
  text-align: center;
  font-family: "Montserrat", Arial, sans-serif;
  color: #445566;
  margin: 0 auto;
  max-width: 60ch; }

.bgColor-dark article {
  color: #FFFFFF; }
  .bgColor-dark article p {
    border-color: currentColor; }
  .bgColor-dark article .c-button {
    color: inherit;
    border-color: currentColor; }

main .section-home:first-child {
  padding-bottom: 0; }
  @media (max-width: 549px) {
    main .section-home:first-child {
      padding-top: 0; } }

.c-promo .promo {
  font-size: 1rem; }

.c-promo h3, .c-promo .h3 {
  font-size: 1.88rem; }
  @media (min-width: 1024px) {
    .c-promo h3, .c-promo .h3 {
      font-size: 3rem; }
      .c-promo h3 .promo, .c-promo .h3 .promo {
        font-size: 1.35rem; } }

.c-promo p {
  padding-top: 0;
  margin-top: 0;
  border: none; }

.big-txt {
  font-size: 1.5em;
  line-height: 1; }

.c-selects form {
  text-align: left;
  margin: 1.875rem 0; }

.c-selects .l-col {
  margin-top: 1.25rem; }
  @media (min-width: 48em) {
    .c-selects .l-col {
      margin-top: 0; }
      .c-selects .l-col:first-child {
        margin-right: 0.625rem; }
      .c-selects .l-col:last-child {
        margin-left: 0.625rem; } }

.c-select-order {
  max-width: 400px; }
  .c-select-order select {
    /* 
        font-family: "Montserrat",Arial,sans-serif; font-weight: 700;
        font-size: .6875rem; */
    background-color: #E1E8ED;
    border-color: #E1E8ED;
    text-decoration: none;
    display: block;
    position: relative; }
    .c-select-order select:focus {
      border-color: #129FEA; }

.c-platforms {
  text-align: center;
  margin-top: 1.5625rem; }
  @media (min-width: 48em) {
    .c-platforms {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }

.c-platforms__title {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 400; }

.c-platforms__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.c-platform {
  margin-bottom: 0;
  padding: 0.3125rem; }
  @media (min-width: 48em) {
    .c-platform {
      margin-left: 3.125rem; } }

.c-platform__link {
  display: block;
  width: 3.125rem;
  text-align: center; }

.c-platform__img {
  vertical-align: middle;
  max-height: 1.5625rem; }

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

.c-reviews__line {
  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; }
  .c-reviews__line::before, .c-reviews__line::after {
    content: '';
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 0.0625rem;
    background-color: #2D2D2D; }

.c-reviews__line--stars::before {
  margin-right: 0.625rem; }

.c-reviews__line--stars::after {
  margin-left: 0.625rem; }

.c-reviews__star {
  margin: 0.3125rem; }

.c-reviews__title {
  margin-top: 0.9375rem; }

.c-reviews__list {
  list-style: none;
  padding-left: 0;
  margin: 0; }

.c-review {
  margin-bottom: 3.125rem; }

.c-review__blockquote {
  margin: 0;
  border-left: none;
  text-align: center;
  padding: 0 0.625rem; }
  .c-review__blockquote p {
    font-style: italic;
    margin-bottom: 0; }
    .c-review__blockquote p::before {
      content: open-quote; }
    .c-review__blockquote p::after {
      content: close-quote; }

.c-review__author {
  color: #445566; }

@media (min-width: 48em) {
  .l-advantages h3 {
    margin-top: -15px; } }

.c-authors__list {
  list-style: none;
  padding-left: 0;
  margin: 0; }
  .c-authors--grid .c-authors__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }

.c-author {
  margin-bottom: 1.875rem; }
  @media (min-width: 48em) {
    .c-author {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start; } }
  .c-authors--grid .c-author {
    width: 100%; }
    @media (min-width: 48em) {
      .c-authors--grid .c-author {
        width: calc(50% - 1.25rem); } }
    .c-authors--grid .c-author:nth-child(odd) {
      margin-right: 1.25rem; }

.c-author__figure {
  margin: 1.25rem auto;
  width: 100px;
  min-width: 100px;
  height: 100px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }
  @media (min-width: 48em) {
    .c-author__figure {
      margin: 0 0.9375rem 0 0; }
      .c-expandable .c-author__figure {
        margin: 0 auto; } }
  @media (min-width: 64em) and (max-width: 85.4275em) {
    .c-author__figure {
      min-width: 50px; }
      .c-authors--grid .c-author__figure {
        min-width: 100px; } }

@media (min-width: 48em) {
  .l-pageContent__side .c-author__figure {
    margin-right: 1.25rem; } }

.c-author__img {
  border-radius: 50%; }

.c-author__name {
  margin-top: 0;
  margin-bottom: 0.625rem; }

.c-author__role {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.9375rem;
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0.625rem; }

.c-author__description {
  font-size: 0.9375rem;
  line-height: 1.675;
  color: #445566;
  margin-top: 0;
  margin-bottom: 0.625rem; }

.c-author__course {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.9375rem;
  margin: 0;
  color: #445566; }

.c-author__attachmentList {
  margin-top: 1.25rem; }
  .c-author__attachmentList .c-attachment__title {
    text-transform: none; }

.c-authors__conclusion {
  font-family: "Lora", Georgia, sans-serif;
  font-weight: 700;
  font-size: 0.9375rem; }

.c-pageHeader__top-figureWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  .c-pageHeader__top-figureWrap .c-author__figure {
    min-width: auto;
    max-width: 75px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 0.625rem 0 0; }
    .c-pageHeader__top-figureWrap .c-author__figure img {
      max-width: 75px; }

.c-cta {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  background-color: #E1E8ED;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.625rem 1.5625rem;
  text-align: left; }
  @media (min-width: 85.4375em) {
    .c-cta {
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-flow: row;
      flex-flow: row; } }
  .c-cta p {
    margin: 0; }

.c-button.c-cta__button, .c-cta__button {
  font-size: 0.9375rem;
  white-space: nowrap;
  margin-left: 0;
  margin-top: 1.25rem; }
  @media (min-width: 85.4375em) {
    .c-button.c-cta__button, .c-cta__button {
      margin-left: 0.625rem;
      margin-top: 0; } }

.c-product__button {
  margin-top: 1.5625rem; }

.c-pills__item {
  margin-right: 0.3125rem;
  margin-bottom: 0.3125rem; }
  @media (min-width: 34.375em) {
    .c-pills__item {
      margin-right: 0.9375rem;
      margin-bottom: 0.9375rem; } }

.c-social {
  text-align: center;
  margin-top: 0.9375rem; }
  .c-social .c-social__label {
    font-family: "Montserrat",Arial,sans-serif;
    font-size: .9375rem;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px; }

.c-social__link {
  text-decoration: none;
  margin: 0 .75rem; }

.c-newsletterBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto; }
  .c-newsletterBlock h2, .c-newsletterBlock h3, .c-newsletterBlock .h3 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    font-family: "Montserrat",Arial,sans-serif; }
  .c-newsletterBlock h3, .c-newsletterBlock .h3 {
    color: #445566;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 500; }

/* .c-newsletterBlock__img {
flex: 0 0 35%;
text-align: right;
padding: $space-xs;
} */
.c-newsletterBlock__content {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%; }
  .c-newsletterBlock__content input[type="checkbox"] {
    visibility: visible; }
    .c-newsletterBlock__content input[type="checkbox"]:focus + label:before {
      border: 1px solid #000; }
  @media (min-width: 34.375em) {
    .c-newsletterBlock__content {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 62%;
      flex: 0 0 62%;
      text-align: left;
      margin-left: 1.5625rem; } }
  @media (min-width: 48em) {
    .c-newsletterBlock__content {
      margin-left: 1.875rem; } }

.page .postContent .c-newsletterBlock {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2; }
  @media (min-width: 64em) {
    .page .postContent .c-newsletterBlock {
      margin-left: 0%;
      -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
      max-width: 60%; } }

.single-post .postContent .c-newsletterBlock {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2; }
  @media (min-width: 64em) {
    .single-post .postContent .c-newsletterBlock {
      width: 60%; } }

@media (max-width: 767px) {
  .c-newsletterBlock__img {
    display: none; } }

.newsletter-popup {
  position: fixed;
  bottom: 0;
  right: 0;
  -webkit-transform: translateY(74%);
  transform: translateY(74%);
  text-align: left;
  -webkit-box-shadow: 0 0 25px 10px rgba(0, 0, 0, 0.75);
  box-shadow: 0 0 25px 10px rgba(0, 0, 0, 0.75);
  width: 100%;
  z-index: 2;
  -webkit-transition: -webkit-transform .3s ease-out;
  transition: -webkit-transform .3s ease-out;
  transition: transform .3s ease-out;
  transition: transform .3s ease-out, -webkit-transform .3s ease-out; }
  .newsletter-popup #popup_frm_field_69_container {
    display: none; }
  .newsletter-popup h3, .newsletter-popup .h3, .newsletter-popup p {
    font-family: "Montserrat", Arial, sans-serif; }
  .newsletter-popup h3, .newsletter-popup .h3 {
    font-size: 1.25rem;
    line-height: 1.2;
    margin: 0; }
  .newsletter-popup p {
    font-size: .95rem;
    color: #AAA;
    margin: 0.9375rem 0 1.25rem;
    line-height: 1.2; }
  .newsletter-popup .newsletter-popup__content {
    padding: 1.5625rem 1.875rem 1.5625rem 1.5625rem;
    background: #FFFFFF; }
    .newsletter-popup .newsletter-popup__content .frm_message p {
      font-size: 25px;
      font-weight: bold; }
  .newsletter-popup .c-contacts__button[type=submit] {
    color: #fff;
    margin-top: 0; }
    .newsletter-popup .c-contacts__button[type=submit]:hover, .newsletter-popup .c-contacts__button[type=submit]:active, .newsletter-popup .c-contacts__button[type=submit]:focus {
      color: #d73e02; }
  .newsletter-popup.is-hover {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    -webkit-transition: -webkit-transform 300ms ease-in;
    transition: -webkit-transform 300ms ease-in;
    transition: transform 300ms ease-in;
    transition: transform 300ms ease-in, -webkit-transform 300ms ease-in; }
  .newsletter-popup.is-expanded {
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    -webkit-transition: -webkit-transform 300ms ease-in;
    transition: -webkit-transform 300ms ease-in;
    transition: transform 300ms ease-in;
    transition: transform 300ms ease-in, -webkit-transform 300ms ease-in; }
  .newsletter-popup.is-centered {
    -webkit-transform: translateY(calc(-50vh + 50%)) translateX(calc(-50vw + 50%));
    transform: translateY(calc(-50vh + 50%)) translateX(calc(-50vw + 50%));
    -webkit-transition: -webkit-transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: -webkit-transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 300ms cubic-bezier(0.645, 0.045, 0.355, 1); }
  .newsletter-popup .close-popup {
    position: absolute;
    top: 15px;
    right: 5px;
    background: url(../img/close-popup.svg) no-repeat 0 0;
    width: 36px;
    height: 36px;
    cursor: pointer;
    border: 0; }
  @media (min-width: 540px) {
    .newsletter-popup {
      padding-left: 15vw;
      background: url(../img/placeholder-newsletter.jpg) no-repeat 0 0;
      -webkit-box-shadow: 0 0 15px 0px rgba(0, 0, 0, 0.5);
      box-shadow: 0 0 15px 0px rgba(0, 0, 0, 0.5); }
      .newsletter-popup h3, .newsletter-popup .h3 {
        font-size: 1.5rem; }
      .newsletter-popup p {
        font-size: 1rem; } }
  @media (min-width: 640px) {
    .newsletter-popup {
      max-width: 65vw;
      background: url(../img/placeholder-newsletter.jpg) no-repeat 0 0; } }
  @media (max-width: 1023px) {
    .newsletter-popup .close-popup {
      background: url(../img/arrow-popup.svg) no-repeat 0 0; }
    .newsletter-popup.is-expanded .close-popup, .newsletter-popup.is-hover .close-popup {
      background: url(../img/close-popup.svg) no-repeat 0 0; } }
  @media (min-width: 1024px) {
    .newsletter-popup {
      max-width: 624px;
      padding-left: 226px;
      background-size: contain; } }

body {
  position: relative; }

body:before {
  content: '';
  position: absolute;
  background: rgba(0, 0, 0, 0.75);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0; }

body.overlay:before {
  opacity: 1;
  z-index: 1;
  -webkit-transition: opacity .15s linear .15s;
  transition: opacity .15s linear .15s; }

.c-tablePrice__row {
  color: #445566;
  /* td{
        min-width: 120px;
    } */ }
  .c-tablePrice__row:hover, .c-tablePrice__row:focus {
    border-color: transparent;
    outline: solid 1px #d73e02;
    color: #2D2D2D; }
  .c-tablePrice__row.fill--mystic {
    background-color: #E1E8ED; }
  @media (min-width: 48em) {
    .c-tablePrice__row .c-tablePrice__description {
      width: 50%; } }

@media (min-width: 48em) {
  .c-tablePrice__description p {
    display: inline-block; } }

.c-tablePrice__remaining {
  display: inline-block;
  color: #445566;
  font-size: 0.6875rem; }

.c-tablePrice__available {
  color: #445566;
  font-size: 0.6875rem;
  text-transform: none;
  margin-top: 5px; }

.c-tablePrice__earlyBirdLabel {
  font-size: 0.6875rem;
  font-weight: 700; }

.c-tablePrice__price.is-old {
  position: relative;
  color: inherit;
  text-decoration: none;
  display: inline-block;
  color: #445566;
  font-size: 0.6875rem; }
  .c-tablePrice__price.is-old::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    border-top: 1px solid currentColor;
    top: 50%; }

.c-tablePrice__row td {
  padding: 0.625rem !important; }
  @media (max-width: 767px) {
    .c-tablePrice__row td {
      padding-right: 0;
      max-width: 120px; } }

.c-tablePrice__button {
  margin-top: 0.625rem; }
  @media (min-width: 34.375em) {
    .c-tablePrice__button {
      display: none; } }
  @media (max-width: 767px) {
    .c-tablePrice__button {
      padding: 0.3125rem 0;
      min-width: 120px; } }

@media (min-width: 34.375em) {
  .c-tablePrice__description .c-tablePrice__available {
    display: none; } }

.c-tablePrice__cta {
  display: none; }
  @media (min-width: 34.375em) {
    .c-tablePrice__cta {
      display: table-cell;
      text-align: center; } }

.c-pag {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 0.9375rem; }

@media (min-width: 64em) {
  .c-pag__icon {
    display: none; } }

.c-pag__label {
  display: none;
  white-space: nowrap; }
  @media (min-width: 64em) {
    .c-pag__label {
      display: block; } }

.c-pag__single {
  text-transform: uppercase; }

.c-pag__numbers {
  margin: 0 1.25rem; }
  @media (min-width: 48em) {
    .c-pag__numbers {
      margin: 0 4.375rem; } }
  .c-pag__numbers .page-numbers {
    padding: 0 10px; }

.c-pag__number {
  padding: 0.625rem; }
  .c-pag__number.is-active {
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 700; }

.c-pageHeader__top p {
  color: #445566;
  font-size: 0.9375rem;
  margin: 0; }

.c-pageHeader__author {
  margin-top: 1.5625rem; }

.c-pageHeader__body {
  color: #2D2D2D;
  margin-top: 2.5rem;
  margin-bottom: 1.5625rem; }

.c-videoPreview__video {
  position: relative; }
  .c-videoPreview__video .c-videoPreview__img {
    width: 100%; }
  .c-expandable .c-videoPreview__video {
    display: inline-block; }

.c-videoPreview__play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #FFFFFF; }

@media (min-width: 48em) {
  .c-enroll {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.c-enroll__figure {
  margin: 0;
  text-align: center; }
  @media (min-width: 48em) {
    .c-enroll__figure {
      max-height: 225px;
      width: 50%;
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2; } }

.woocommerce .c-enroll__img, .c-enroll__img {
  vertical-align: middle;
  width: 100%; }
  @media (min-width: 48em) {
    .woocommerce .c-enroll__img, .c-enroll__img {
      height: 100%;
      width: 100%;
      -o-object-fit: contain;
      object-fit: contain; } }

.woocommerce #payment img {
  max-width: 130px; }

.c-enroll__body {
  color: #FFFFFF;
  background-color: #445566;
  padding: 0.625rem 0.9375rem;
  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;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  @media (min-width: 48em) {
    .c-enroll__body {
      width: 50%;
      padding: 0.9375rem 1.25rem; } }
  .c-enroll__body a {
    color: #fff;
    font-weight: 700; }

.c-enroll__title {
  font-size: 1.5625rem;
  margin: 0; }
  @media (min-width: 48em) {
    .c-enroll__title {
      font-size: 1.875rem; } }

.c-enroll__description {
  font-family: "Montserrat", Arial, sans-serif;
  font-weight: 500;
  font-size: 0.9375rem;
  margin-top: 0;
  margin-bottom: 0.9375rem; }
  @media (min-width: 48em) {
    .c-enroll__description {
      font-size: 1.125rem;
      margin-bottom: 1.25rem; } }

.ribbon {
  background-color: #d73e02;
  text-align: center;
  color: #fff; }
  .ribbon .l-mainWrapper {
    position: relative;
    padding: 0.9375rem 0; }
  .ribbon h4, .ribbon h2, .ribbon p, .ribbon a {
    font-size: 0.9375rem; }
  .ribbon h4, .ribbon h2 {
    margin: 0;
    max-width: calc(100% - 20px); }
  .ribbon p {
    margin: 0;
    padding: 0.9375rem 0; }
  .ribbon h4, .ribbon h2, .ribbon a {
    font-family: "Montserrat",Arial,sans-serif;
    -ms-flex-negative: 0;
    flex-shrink: 0; }
  .ribbon a {
    font-weight: 700;
    color: #fff; }
    .ribbon a:hover, .ribbon a:focus {
      color: #fff; }
  .ribbon button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border: none;
    background: none;
    position: absolute;
    top: 6px;
    right: 0; }
  @media (max-width: 549px) {
    .ribbon {
      margin-top: 66px;
      margin-bottom: -66px; } }
  @media (min-width: 48em) {
    .ribbon .l-mainWrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
    .ribbon h4, .ribbon h2 {
      -ms-flex-preferred-size: calc(100% - 20px);
      flex-basis: calc(100% - 20px);
      margin-bottom: 0.625rem; }
    .ribbon p {
      margin-right: 1.25rem;
      padding: 0; } }
  @media (min-width: 64em) {
    .ribbon .l-mainWrapper {
      padding: 1.25rem 0; }
    .ribbon h4, .ribbon h2 {
      -ms-flex-preferred-size: auto;
      flex-basis: auto;
      margin: 0 1.25rem 0 0; }
    .ribbon button {
      top: 12px; } }

[data-tooltip],
.tooltip {
  position: relative;
  cursor: pointer; }

[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, -webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, -webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out, transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24), -webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  pointer-events: none; }

[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after {
  visibility: visible;
  opacity: 1; }

.tooltip:before,
[data-tooltip]:before {
  content: "";
  border: 6px solid transparent;
  background: transparent;
  z-index: 1001; }

.tooltip:after,
[data-tooltip]:after {
  content: attr(data-tooltip);
  padding: 0.3125rem 0.9375rem;
  background-color: #d73e02;
  color: #FFFFFF;
  font-size: 0.6875rem;
  font-family: "Montserrat", Arial, sans-serif;
  z-index: 1000; }

[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after {
  bottom: 100%;
  right: -6px;
  -webkit-transform: translateY(6px);
  transform: translateY(6px); }

[data-tooltip]:before,
.tooltip:before {
  margin-right: 10px;
  margin-bottom: -11px;
  border-top-color: #000;
  border-top-color: #d73e02; }

[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after {
  -webkit-transform: translateY(0px);
  transform: translateY(0px); }

.postContent .l-pageContent__main .l-module img {
  max-height: 50vh;
  width: auto;
  max-width: 100%;
  -webkit-box-shadow: 0 0 10px 5px rgba(170, 170, 170, 0.25);
  box-shadow: 0 0 10px 5px rgba(170, 170, 170, 0.25);
  margin: 0 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%); }

.postContent .l-pageContent__main .l-module div {
  border: none !important;
  max-width: 100%; }

.postContent .l-pageContent__main .l-module p:empty {
  display: none; }

.postContent figure, .postContent .wp-caption-text {
  text-align: center; }

.postContent .wp-caption-text {
  margin-top: 10px; }

.postContent .wp-caption {
  margin: 0 auto; }

pre, p.code-wrap {
  padding: 1em;
  margin: .5em 0;
  overflow: auto;
  background: #f5f2f0;
  color: black;
  text-shadow: 0 1px white;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  line-height: 1.5;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none; }

table.shop_table {
  border: 1px solid #E1E8ED; }
  table.shop_table td {
    border-color: #E1E8ED;
    text-transform: none; }
  table.shop_table th,
  table.shop_table td {
    text-align: left; }
  table.shop_table th {
    font-style: normal; }

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  padding-left: 1em; }
  .woocommerce-error:before,
  .woocommerce-info:before,
  .woocommerce-message:before {
    content: none; }

.woocommerce-MyAccount-navigation ul {
  padding-left: 0; }
  .woocommerce-MyAccount-navigation ul li {
    list-style: none; }
    .woocommerce-MyAccount-navigation ul li a {
      text-decoration: none; }
    .woocommerce-MyAccount-navigation ul li.is-active {
      font-weight: bold; }

.woocommerce-cart-form table.shop_table {
  border: none; }
  .woocommerce-cart-form table.shop_table td {
    border-color: darkgray;
    padding: 1.25rem 0.9375rem;
    text-transform: none; }
    .woocommerce-cart-form table.shop_table td.product-name a {
      color: #000000;
      font-weight: 700;
      text-decoration: none; }
  .woocommerce-cart-form table.shop_table th {
    padding: 1.25rem 0.9375rem; }

.flex-align-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }
  .flex-align-right .wc-proceed-to-checkout {
    padding: 0; }

.woocommerce a.remove {
  font-size: 0;
  width: 24px;
  height: 24px;
  position: relative; }
  .woocommerce a.remove:before {
    content: '';
    width: 100%;
    height: 100%;
    background: url(/contrib/themes/apogeonline/dist/img/close.svg) no-repeat center;
    position: absolute;
    left: 0; }
  .woocommerce a.remove:hover {
    background-color: transparent; }

.coupon {
  display: none;
  width: 100%; }

.woocommerce-cart table.cart th {
  font-style: normal; }

.woocommerce table.cart td.actions {
  vertical-align: bottom; }
  .woocommerce table.cart td.actions .coupon .input-text {
    width: 100%;
    margin-bottom: 10px;
    min-width: 200px;
    height: 40px;
    border-width: 2px; }
  .woocommerce table.cart td.actions .coupon .input-text + button {
    float: none;
    width: 100%;
    padding: 0.625rem 0.9375rem;
    line-height: 1.1; }
  .woocommerce table.cart td.actions button {
    white-space: nowrap; }
    .woocommerce table.cart td.actions button.de-button {
      -webkit-appearance: none;
      font-weight: 700;
      text-decoration: underline;
      color: #445566;
      border: none;
      background-color: transparent;
      margin-bottom: 10px;
      padding-left: 0; }

tr.strenna td.actions {
  padding: 0; }

tr.strenna .strenna-cont {
  margin-top: 60px;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 25px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media (max-width: 549px) {
    tr.strenna .strenna-cont {
      display: block;
      margin-top: 20px; } }
  tr.strenna .strenna-cont .figure {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%; }
    @media (max-width: 549px) {
      tr.strenna .strenna-cont .figure {
        max-width: 100%; } }
    tr.strenna .strenna-cont .figure img {
      width: 100%; }
  tr.strenna .strenna-cont .txt {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
    color: #435667;
    font-size: 16px;
    line-height: 1.7; }
    @media (max-width: 549px) {
      tr.strenna .strenna-cont .txt {
        max-width: 100%; } }
    tr.strenna .strenna-cont .txt .title {
      font-size: 30px;
      line-height: 1.3;
      font-weight: 600;
      margin-bottom: 10px; }

.toggle-coupon {
  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-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin-top: 0.3125rem;
  padding-left: 0; }
  .toggle-coupon > button {
    -webkit-appearance: none;
    font-weight: 700;
    text-decoration: underline;
    color: #445566;
    border: none;
    background-color: transparent;
    margin-bottom: 10px;
    padding-left: 0; }
    .toggle-coupon > button:focus {
      /*outline: none;*/ }
    .toggle-coupon > button:hover {
      color: #d73e02;
      text-decoration: underline; }

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  padding: .5em 1em;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none; }

.woocommerce-shipping-calculator p {
  margin: 1rem 0; }

.woocommerce-shipping-calculator input,
.woocommerce-shipping-calculator .select2-container .select2-selection--single {
  height: 34px; }

.woocommerce-shipping-calculator .select2-selection--single {
  border-color: #000000; }

.woocommerce-shipping-calculator a {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #445566;
  text-decoration: underline; }

.cart_totals table.shop_table {
  border: none; }
  .cart_totals table.shop_table td {
    border: none; }
  .cart_totals table.shop_table th {
    font-family: "Lora", Georgia, sans-serif;
    text-transform: none;
    padding-left: 0; }

p.strenghts {
  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-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: -.5em; }
  p.strenghts span {
    display: inline-block;
    font-size: 12px;
    text-transform: uppercase;
    font-family: "Montserrat", Arial, sans-serif;
    text-align: center;
    line-height: 1.4;
    color: #445566; }

#add_payment_method .cart-collaterals .cart_totals tr td,
#add_payment_method .cart-collaterals .cart_totals tr th,
.woocommerce-cart .cart-collaterals .cart_totals tr td,
.woocommerce-cart .cart-collaterals .cart_totals tr th,
.woocommerce-checkout .cart-collaterals .cart_totals tr td,
.woocommerce-checkout .cart-collaterals .cart_totals tr th {
  border-top: none;
  line-height: 1em; }

.woocommerce ul#shipping_method li {
  padding: .25em 0 .25em 30px;
  text-indent: 0;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  .woocommerce ul#shipping_method li label {
    margin-top: 0px; }
  .woocommerce ul#shipping_method li input {
    margin-left: -30px;
    margin-top: -10px; }

.woocommerce-cart .cart-collaterals .cart_totals table th {
  width: 30%;
  text-align: left; }

.woocommerce-cart .cart-collaterals .cart_totals table th {
  vertical-align: top; }

.woocommerce-cart .cart-collaterals .cart_totals table td {
  vertical-align: middle; }

#add_payment_method #payment .woocommerce-form__input-checkbox + span:before,
.woocommerce-cart #payment .woocommerce-form__input-checkbox + span:before,
.woocommerce-checkout #payment .woocommerce-form__input-checkbox + span:before {
  background-color: #FFFFFF; }

.payment_method_paypal {
  margin-top: 0; }
  .payment_method_paypal p {
    font-size: 0.9375rem;
    margin-top: 0; }

table + .wc-proceed-to-checkout {
  margin-top: 1.5625rem; }

.argomenti > span {
  display: block;
  margin-bottom: 0.625rem; }

.account-newsletter {
  background-color: #E1E8ED;
  padding: 10px 20px 0px 20px;
  margin-top: 20px; }
  .account-newsletter .c-contacts__button[type=submit] {
    white-space: normal; }
  .account-newsletter .checkbox-field label:before {
    background-color: #FFFFFF; }

.woocommerce form.login, .woocommerce form.register {
  max-width: 550px; }

.woocommerce-form__input-checkbox + span {
  display: inline-block;
  position: relative;
  font-weight: 300;
  padding-left: 35px;
  cursor: pointer; }
  .woocommerce-form__input-checkbox + span:before {
    display: inline-block;
    position: absolute;
    top: -2px;
    left: 0px;
    width: 24px;
    height: 24px;
    background-color: #E1E8ED;
    content: " ";
    cursor: pointer;
    text-align: center;
    vertical-align: top;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    border-radius: 4px; }

.woocommerce-form__input-checkbox:checked + span:before {
  background-image: url(/contrib/themes/apogeonline/dist/img/check.svg);
  -webkit-transition: all .2s;
  transition: all .2s; }

.woocommerce-input-wrapper label.checkbox {
  display: inline-block;
  position: relative;
  font-weight: 300;
  padding-left: 35px;
  cursor: pointer; }
  .woocommerce-input-wrapper label.checkbox .woocommerce-Input--checkbox + span:before {
    display: inline-block;
    position: absolute;
    top: -2px;
    left: 0px;
    width: 24px;
    height: 24px;
    background-color: #E1E8ED;
    content: " ";
    cursor: pointer;
    text-align: center;
    vertical-align: top;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    border-radius: 4px; }
  .woocommerce-input-wrapper label.checkbox .woocommerce-Input--checkbox:checked + span:before {
    background-image: url(/contrib/themes/apogeonline/dist/img/check.svg);
    -webkit-transition: all .2s;
    transition: all .2s; }

.js-toggle-form {
  font-weight: 700; }

.woocommerce-form-register {
  display: none; }

.woocommerce-form-coupon-toggle .woocommerce-info {
  border: none;
  background-color: transparent;
  font-weight: bold;
  padding: 0;
  color: #445566;
  margin-bottom: 0.625rem; }
  .woocommerce-form-coupon-toggle .woocommerce-info:before {
    content: none; }
  .woocommerce-form-coupon-toggle .woocommerce-info a {
    color: #445566; }
    .woocommerce-form-coupon-toggle .woocommerce-info a:hover {
      color: #d73e02; }

.woocommerce form.checkout_coupon.woocommerce-form-coupon {
  padding: 0;
  margin-top: 0;
  border: none;
  max-width: 420px; }
  .woocommerce form.checkout_coupon.woocommerce-form-coupon .form-row-first,
  .woocommerce form.checkout_coupon.woocommerce-form-coupon .form-row-last {
    float: none;
    width: 100%; }
  .woocommerce form.checkout_coupon.woocommerce-form-coupon .form-row-first {
    padding-left: 0; }
  .woocommerce form.checkout_coupon.woocommerce-form-coupon input[type='text'] {
    min-width: 200px;
    height: 40px;
    border: 2px solid #d3ced2;
    max-width: 300px; }
  .woocommerce form.checkout_coupon.woocommerce-form-coupon button {
    padding: 0.625rem 0.9375rem;
    line-height: 1.1; }
  @media (min-width: 480px) {
    .woocommerce form.checkout_coupon.woocommerce-form-coupon {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .woocommerce form.checkout_coupon.woocommerce-form-coupon .form-row-first,
      .woocommerce form.checkout_coupon.woocommerce-form-coupon .form-row-last {
        width: auto; } }

.wc_payment_methods.payment_methods li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.payment_method_paypal label {
  width: calc(100% - 40px); }

#add_payment_method #payment .payment_method_paypal .about_paypal,
.woocommerce-cart #payment .payment_method_paypal .about_paypal,
.woocommerce-checkout #payment .payment_method_paypal .about_paypal {
  line-height: 2; }

table.shop_table.woocommerce-checkout-review-order-table {
  border: none; }
  table.shop_table.woocommerce-checkout-review-order-table th,
  table.shop_table.woocommerce-checkout-review-order-table td,
  table.shop_table.woocommerce-checkout-review-order-table tfoot td,
  table.shop_table.woocommerce-checkout-review-order-table tfoot th {
    border: none;
    vertical-align: top;
    text-align: left; }
  table.shop_table.woocommerce-checkout-review-order-table .product-name {
    text-transform: none;
    font-weight: 700; }

input,
.select2-container .select2-selection--single {
  height: 40px; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 36px; }

button.woocommerce-Button.c-button {
  margin-top: 0.9375rem;
  font-size: 0.9375rem; }

[disabled][type=submit],
button[disabled] {
  border-color: currentColor; }
  [disabled][type=submit]:hover,
  button[disabled]:hover {
    border-color: currentColor; }

.woocommerce form .c-button + label.inline {
  display: inline-block;
  margin-top: 0.625rem; }

.woocommerce-account .addresses .title h3 {
  margin-bottom: 0.3125rem;
  font-family: "Montserrat", Arial, sans-serif;
  float: none; }

.woocommerce-account .addresses .title .edit {
  float: none;
  color: #445566; }

.woocommerce-Address address {
  margin-top: 0.9375rem;
  font-style: normal; }

.woocommerce-order-details table.shop_table td {
  border-color: #E1E8ED;
  padding: 0.625rem 0.9375rem; }

.woocommerce-order-details table.shop_table .woocommerce-table__product-name.product-name a {
  font-weight: 700;
  text-decoration: none;
  text-transform: none;
  color: #000000; }

.woocommerce-orders-table span {
  color: #000000;
  font-style: normal; }

.woocommerce-orders-table time {
  font-weight: 700; }

@media (min-width: 480px) {
  .woocommerce-cart table.cart td.actions .coupon .input-text,
  .woocommerce-cart table.cart td.actions .coupon .input-text + button {
    width: auto;
    float: left; }
  .woocommerce-cart table.cart td.actions .coupon .input-text {
    margin-bottom: 0;
    margin-right: 0.625rem; }
  .woocommerce form .c-button + label.inline {
    margin: 0 0 0 1.25rem; }
    .woocommerce form .c-button + label.inline input + span:before {
      top: 3px; } }

@media (min-width: 640px) {
  .account-newsletter {
    margin-top: 40px; }
    .account-newsletter .checkbox-group {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .account-newsletter .checkbox-field {
      width: 50%; } }

@media (max-width: 768px) {
  .woocommerce-cart-form__cart-item.cart_item {
    border-bottom: 2px solid darkgray; }
  .woocommerce table.shop_table_responsive tr td,
  .woocommerce-page table.shop_table_responsive tr td {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: left !important; }
    .woocommerce table.shop_table_responsive tr td:before,
    .woocommerce-page table.shop_table_responsive tr td:before {
      float: none;
      display: block;
      margin-right: 0.9375rem; }
    .woocommerce table.shop_table_responsive tr td.product-remove,
    .woocommerce-page table.shop_table_responsive tr td.product-remove {
      width: 50%;
      float: right;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      border: none; }
  .woocommerce table.shop_table_responsive tr:nth-child(2n) td,
  .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
    background-color: transparent; }
  .woocommerce table.shop_table td {
    padding: 0.9375rem 0.625rem; }
  .woocommerce-cart table.cart .product-thumbnail {
    display: block; }
    .woocommerce-cart table.cart .product-thumbnail:before {
      content: none;
      right: 0;
      left: auto; } }

@media (min-width: 992px) {
  .account-newsletter {
    padding: 10px 40px 10px 40px; }
    .account-newsletter .checkbox-field label {
      font-size: 1rem; } }

.woocommerce form .form-row label.checkbox,
.woocommerce-page form .form-row label.checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.woocommerce-checkout #payment div.payment_box p {
  margin-top: 0;
  font-size: 0.9375rem; }

.c-product {
  text-align: left;
  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-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }
  @media (min-width: 48em) {
    .c-productsFilter .c-product {
      display: block;
      /* height: 100%; */
      /* display: flex; */
      /* flex-direction: column; */
      /* align-items: flex-start; */
      /* justify-content: flex-start; */ } }

.c-product__title, .c-product__subtitle, .c-relatedLinks a {
  font-family: "Montserrat", Arial, sans-serif;
  margin-bottom: 0.625rem;
  font-size: 1.125rem;
  line-height: 1.4; }

.c-product__title, .c-product__subtitle, .c-relatedLinks a {
  font-family: "Montserrat", Arial, sans-serif;
  margin-bottom: 0.625rem;
  font-size: 1.125rem;
  line-height: 1.4; }

.c-product__title, .c-product__subtitle {
  margin-top: 0; }

.c-relatedLinks a {
  color: #445566; }

.c-product__subtitle {
  display: block;
  font-size: 0.9375rem; }

.c-product__figure {
  margin: 1.25rem 0;
  position: relative;
  max-height: 2455px; }
  .c-product__figure img {
    max-height: 100%;
    -webkit-box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25);
    box-shadow: 0px 0px 10px 5px rgba(170, 170, 170, 0.25); }
  @media (min-width: 64em) {
    .c-product__figure {
      max-height: 275px; }
      .c-product__figure img {
        max-height: 275px; } }
  .c-product__figure a {
    height: 100%; }
  .c-productsFilter .c-product__figure {
    margin: 0 0 0.625rem 0; }
    @media (min-width: 48em) {
      .c-productsFilter .c-product__figure {
        padding: 0;
        /*
            min-height: 320px; // hardcoded because of different book formats
            max-width: 150px; // needed since we removed shadow
            */
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        margin-bottom: 0.9375rem; } }
    @media (min-width: 64em) {
      .c-productsFilter .c-product__figure {
        height: 100%;
        max-height: 275px; } }

.c-product__figure__wrap {
  position: relative; }
  @media (max-width: 767px) {
    .c-product__figure__wrap {
      height: inherit; } }
  @media (min-width: 64em) {
    .c-product__figure__wrap {
      height: 100%;
      max-height: 275px; } }
  .c-product__figure__wrap img {
    /*width: 100%;*/ }

.c-productsFilter .c-product__imgShadow {
  margin-bottom: 1.25rem; }

.c-productsGrid .c-product__imgShadow {
  margin-bottom: 1.25rem; }
  @media (min-width: 34.375em) {
    .c-productsGrid .c-product__imgShadow {
      margin-bottom: 0; } }

.c-product__info {
  max-width: 100%; }
  .c-product__info a {
    color: #445566; }
    .c-product__info a:hover {
      color: #d73e02; }
  @media (min-width: 48em) {
    .c-productsFilter .c-product__info {
      width: 100%;
      padding-left: 0; } }

.c-product__type {
  margin-top: 0;
  margin-bottom: 0;
  color: #445566; }
  .c-product__type.c-product__type--overlay {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0.3125rem 0.625rem;
    font-family: "Montserrat", Arial, sans-serif;
    font-size: 0.6875rem;
    font-weight: 700;
    color: #FFFFFF;
    width: 122px;
    text-align: center; }
    @media (min-width: 34.375em) {
      .c-product__type.c-product__type--overlay {
        font-size: 0.9375rem; } }
  .c-product__type.fill-green-overlay {
    background-color: #71B20E; }
  .c-product__type.fill-purple-overlay {
    background-color: #7F0250; }
  .c-product__type.fill-blue-overlay {
    background-color: #177eaf; }
  .c-product__type.fill-blue-ebook-overlay {
    background-color: #bf4d7f; }
  .c-product__type.fill-yellow-overlay {
    background-color: #917300; }
  .c-product__type.label-alone {
    display: inline-block;
    position: relative;
    margin: 0.625rem 0 0.9375rem 0; }

.c-product__cta {
  padding: 30px 12px 16px;
  border: none !important;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -ms-flex-direction: row !important;
  flex-direction: row !important; }
  .c-product__cta .c-button {
    font-size: 14px;
    width: 100%; }

.c-product__options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  font-family: "Montserrat", Arial, sans-serif;
  margin-bottom: 0.9375rem; }
  .c-product__options svg {
    height: 30px; }
  .c-product__options div {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    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-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .c-product__options div:not(:first-child) {
      border-left: 1px solid #445566;
      padding-left: 0.625rem; }
    .c-product__options div.option-inline {
      -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;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
      .c-product__options div.option-inline svg {
        width: 30px;
        margin-right: 0.3125rem; }
      .c-product__options div.option-inline div:not(first-child) {
        border: none;
        padding: 0; }
  .c-product__options p {
    margin: 0; }
  .c-product__options img {
    max-height: 28px;
    max-width: 600px; }
  .c-product__options .price {
    font-weight: 700;
    font-size: 0.9375rem !important;
    color: #000 !important;
    color: #000 !important; }
  .c-product__options .discount {
    font-size: 0.6875rem;
    line-height: 1; }
    .c-product__options .discount span {
      text-decoration: line-through;
      display: block; }
      .c-product__options .discount span:nth-child(2) {
        text-decoration: none !important; }
  .c-product__options .icon-price {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .c-product__options .icon-price svg {
      max-width: 38px;
      padding-right: 0.3125rem; }
    .c-product__options .icon-price .price {
      padding-right: 5px; }
    .c-product__options .icon-price .discount {
      padding-right: 5px; }
      .c-product__options .icon-price .discount span {
        font-size: 0.6875rem !important; }
    .c-product__options .icon-price span {
      font-size: 0.9375rem !important; }

.c-product__author {
  margin: 0;
  color: #445566;
  font-size: .9375rem;
  margin-bottom: 0.9375rem; }
  .c-productsFilter .c-product__author {
    font-size: 0.9375rem; }

.c-product__date {
  margin: 0 0 10px 0;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700; }

.c-product__button {
  margin-top: 1.5625rem; }

.c-product__description {
  margin: 0 0 0.625rem 0; }
  .c-product__description p {
    font-size: 0.9375rem;
    margin-top: 0;
    margin-bottom: 0.9375rem; }
    .c-productsFilter .c-product__description p {
      font-size: 0.9375rem; }
  .c-product__description small {
    display: block;
    color: #445566; }
  .c-productsFilter .c-product__description {
    font-size: 0.9375rem; }
  .c-product__description:empty {
    display: none; }

.cart-ribbon {
  max-height: 0;
  overflow: hidden;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 1000;
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  background-color: #d73e02;
  color: #FFFFFF;
  text-align: center;
  padding: 0.3125rem 0;
  display: none; }
  .cart-ribbon.is-visible {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    max-height: 100%;
    display: block; }
  .cart-ribbon .l-mainWrapper {
    position: relative;
    padding: .9375rem 0; }
  .cart-ribbon a, .cart-ribbon h4, .cart-ribbon p {
    font-size: .9375rem; }
  .cart-ribbon a, .cart-ribbon h4 {
    font-family: "Montserrat",Arial,sans-serif;
    -ms-flex-negative: 0;
    flex-shrink: 0; }
  .cart-ribbon h4 {
    margin: 0;
    max-width: calc(100% - 20px); }
  .cart-ribbon p {
    margin: 0;
    padding: .9375rem 0; }
  .cart-ribbon a {
    font-weight: 700;
    color: #FFFFFF; }
    .cart-ribbon a:hover, .cart-ribbon a:focus {
      color: #FFFFFF; }
  .cart-ribbon button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border: 0;
    background: 0 0;
    position: absolute;
    top: 6px;
    right: 0; }
  @media (min-width: 20em) {
    .cart-ribbon {
      padding: 0; }
      .cart-ribbon p {
        padding: 0; } }
  @media (min-width: 20em) {
    .cart-ribbon .l-mainWrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start; }
    .cart-ribbon h4 {
      -ms-flex-preferred-size: calc(100% - 20px);
      flex-basis: calc(100% - 20px);
      margin-bottom: .625rem; }
    .cart-ribbon p {
      margin-right: 1.25rem;
      padding: 0; } }
  @media (min-width: 48em) {
    .cart-ribbon .l-mainWrapper {
      padding: 1.25rem 0; }
    .cart-ribbon h4 {
      -ms-flex-preferred-size: auto;
      flex-basis: auto;
      margin: 0 1.25rem 0 0; }
    .cart-ribbon button {
      top: 12px; } }

@media (min-width: 34.375em) {
  .c-productsGrid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left; } }

.c-productsGrid__item {
  margin-bottom: 1.875rem;
  max-width: 275px;
  background-color: #F8F8F8;
  padding-left: 10px;
  padding-right: 10px; }
  @media (min-width: 34.375em) {
    .c-productsGrid__item {
      margin-bottom: 1.875rem;
      margin-left: 10px;
      margin-right: 10px;
      -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(50% - 20px);
      flex: 1 1 calc(50% - 20px); } }
  @media (min-width: 48em) {
    .c-productsGrid__item {
      -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(33% - 20px);
      flex: 1 1 calc(33% - 20px);
      max-width: 33%; } }

@media (max-width: 47.99em) {
  .c-productsGrid__ext {
    display: none; } }

.c-productsList__item {
  margin-bottom: 3.125rem;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }
  .c-productsList__item .c-product__figure {
    max-width: 33%;
    height: auto;
    margin: 0; }
  .c-productsList__item .c-product__info {
    width: 63%;
    padding-left: 1.25rem; }
  @media (min-width: 34.375em) {
    .c-productsList__item {
      margin-bottom: 1.875rem; } }

.c-productsFilter {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start; }
  @media (min-width: 34.375em) {
    .c-productsFilter {
      -webkit-box-pack: left;
      -ms-flex-pack: left;
      justify-content: left; } }

.c-productsFilter__item {
  margin-bottom: 1.875rem;
  width: 100%;
  max-width: 275px;
  padding: 0.9375rem;
  background-color: #F8F8F8; }
  @media (min-width: 34.375em) {
    .c-productsFilter__item {
      margin-bottom: 2.8125rem;
      display: inline-block;
      width: calc(50% - 20px);
      margin-left: 0.625rem;
      margin-right: 0.625rem;
      -webkit-box-flex: calc(50% - 20px);
      -ms-flex: calc(50% - 20px);
      flex: calc(50% - 20px); } }
  @media (min-width: 48em) {
    .c-productsFilter__item {
      width: calc(33.333% - 20px);
      -webkit-box-flex: calc(33.333% - 20px);
      -ms-flex: calc(33.333% - 20px);
      flex: calc(33.333% - 20px); } }
  @media (min-width: 64em) {
    .c-productsFilter__item {
      width: calc(33.333% - 20px);
      -webkit-box-flex: calc(33.333% - 20px);
      -ms-flex: calc(33.333% - 20px);
      flex: calc(33.333% - 20px); } }
  @media (min-width: 75em) {
    .c-productsFilter__item {
      width: calc(25% - 20px);
      -webkit-box-flex: calc(25% - 20px);
      -ms-flex: calc(25% - 20px);
      flex: calc(25% - 20px); } }
  .c-productsFilter__item.c-productsFilter__item-atc {
    position: relative;
    padding-bottom: 86px; }
    .c-productsFilter__item.c-productsFilter__item-atc .c-product__cta {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0; }

body.hiddenX {
  overflow-x: hidden; }

.u-font-normal {
  font-weight: 400 !important; }

.u-font-medium {
  font-weight: 500 !important; }

.u-font-bold {
  font-weight: 700 !important; }

.u-align-left {
  text-align: left !important; }

.u-align-right {
  text-align: right !important; }

.u-text-xs {
  font-size: 0.6875rem !important; }

.u-text-s {
  font-size: 0.9375rem !important; }

.u-text-m {
  font-size: 1.125rem !important; }

.u-text-l {
  font-size: 1.5625rem !important; }

.u-text-xl {
  font-size: 1.875rem !important; }

.u-text-xxl {
  font-size: 2.5rem !important; }

@media (max-width: 47.99em) {
  .u-hidden-m {
    display: none !important; } }

@media (min-width: 48em) and (max-width: 63.99em) {
  .u-hidden-t {
    display: none !important; } }

@media (min-width: 64em) and (max-width: 85.4275em) {
  .u-hidden-d {
    display: none !important; } }

@media (min-width: 85.4375em) {
  .u-hidden-w {
    display: none !important; } }

@media (max-width: 47.99em) {
  .u-hidden-s {
    display: none !important; } }

@media (min-width: 48em) {
  .u-hidden-l {
    display: none !important; } }

.u-listreset {
  list-style: none;
  padding-left: 0;
  margin: 0; }

.debug-borders {
  -webkit-box-shadow: 0 0 1px 1px red inset;
  box-shadow: 0 0 1px 1px red inset; }

.debug-borders-nested {
  -webkit-box-shadow: 0 0 1px 1px red inset;
  box-shadow: 0 0 1px 1px red inset; }
  .debug-borders-nested * {
    -webkit-box-shadow: 0 0 1px 1px orange inset;
    box-shadow: 0 0 1px 1px orange inset; }

.debug-background {
  background-color: lightgray; }

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

.c-code__wrapper {
  overflow: hidden; }
  @media (min-width: 64em) {
    .c-code__wrapper {
      max-width: 550px;
      float: right; }
      .c-code__wrapper::after {
        clear: right; } }
  @media (min-width: 75em) {
    .c-code__wrapper {
      max-width: 660px; } }

.c-code {
  overflow-x: auto; }

/* -- Featherlights overrides -- */
.featherlight:last-of-type {
  background: rgba(0, 0, 0, 0.5); }

.featherlight-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 1.25rem;
  color: #FFFFFF;
  font-size: 1.125rem; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIjAwLXNldHRpbmdzL19jb2xvcnMuc2NzcyIsIjAwLXNldHRpbmdzL19mb250LWZhbWlsaWVzLnNjc3MiLCIwMC1zZXR0aW5ncy9fdHlwb2dyYXBoeS5zY3NzIiwiMDAtc2V0dGluZ3MvX3otaW5kZXguc2NzcyIsIjAxLXRvb2xzL19pY29ucy5zY3NzIiwiMDItZ2VuZXJpYy9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIwMi1nZW5lcmljL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIjAyLWdlbmVyaWMvbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZhcmlhYmxlcy5zY3NzIiwiMDMtZWxlbWVudHMvX2Jhc2Uuc2NzcyIsIjAwLXNldHRpbmdzL3Nhc3MtbXEvX21xLnNjc3MiLCIwMC1zZXR0aW5ncy9fcHguc2NzcyIsIjAzLWVsZW1lbnRzL19ib2R5VGV4dC5zY3NzIiwiMDMtZWxlbWVudHMvX2hlYWRpbmdzLnNjc3MiLCIwMy1lbGVtZW50cy9fZm9ybS5zY3NzIiwiMDMtZWxlbWVudHMvX3RhYmxlLnNjc3MiLCIwNC1vYmplY3RzL19pY29ucy5zY3NzIiwiMDQtb2JqZWN0cy9fbGF5b3V0LnNjc3MiLCIwNC1vYmplY3RzL19tb2R1bGVzLnNjc3MiLCIwNC1vYmplY3RzL19jb2xzLnNjc3MiLCIwNC1vYmplY3RzL3ZlbmRvcnMvX2ZlYXRoZXJsaWdodC5zY3NzIiwiMDQtb2JqZWN0cy92ZW5kb3JzL19wcmlzbS5zY3NzIiwiMDQtb2JqZWN0cy92ZW5kb3JzL19wcmlzbS11bmVzY2FwZWQtbWFya3VwLnNjc3MiLCIwNS1jb21wb25lbnRzL19idXR0b24uc2NzcyIsIjA1LWNvbXBvbmVudHMvX2V4cGFuZGFibGUuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3BpbGwuc2NzcyIsIjA1LWNvbXBvbmVudHMvX21haW5JdGVtLnNjc3MiLCIwMS10b29scy9fY2xlYXJmaXguc2NzcyIsIjA1LWNvbXBvbmVudHMvX3ByaWNlQm94ZXMuc2NzcyIsIjAxLXRvb2xzL19saXN0cmVzZXQuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3ByaWNlQm94LnNjc3MiLCIwMS10b29scy9fbGluZXRocm91Z2guc2NzcyIsIjA1LWNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiMDUtY29tcG9uZW50cy9faGVhZGVyTmF2YmFyLnNjc3MiLCIwNS1jb21wb25lbnRzL19zZWFyY2hCb3guc2NzcyIsIjA1LWNvbXBvbmVudHMvX25hdkZvcm1hdHMuc2NzcyIsIjA1LWNvbXBvbmVudHMvX25hdk1lbnUuc2NzcyIsIjA1LWNvbXBvbmVudHMvX25hdkNhdGVnb3JpZXMuc2NzcyIsIjA1LWNvbXBvbmVudHMvX25hdk1haW5DYXRlZ29yaWVzLnNjc3MiLCIwNS1jb21wb25lbnRzL19uYXZTdWJDYXRlZ29yaWVzLnNjc3MiLCIwNS1jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCIwNS1jb21wb25lbnRzL19mb290ZXIuc2NzcyIsIjA1LWNvbXBvbmVudHMvX2NvbnRhY3RzLnNjc3MiLCIwNS1jb21wb25lbnRzL19zb2NpYWxMaXN0LnNjc3MiLCIwNS1jb21wb25lbnRzL19lZGl0b3JzLnNjc3MiLCIwNS1jb21wb25lbnRzL19zZWN0aW9uVGl0bGUuc2NzcyIsIjA1LWNvbXBvbmVudHMvX2F0dGFjaG1lbnRMaXN0LnNjc3MiLCIwNS1jb21wb25lbnRzL19yZWxhdGVkTGlua3Muc2NzcyIsIjA1LWNvbXBvbmVudHMvX2J1bGxldExpc3Quc2NzcyIsIjA1LWNvbXBvbmVudHMvX2N1c3RvbVF1b3RlLnNjc3MiLCIwNS1jb21wb25lbnRzL19oaWdobGlnaHQuc2NzcyIsIjA1LWNvbXBvbmVudHMvX2hvbWUuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3NlbGVjdHMuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3BsYXRmb3Jtcy5zY3NzIiwiMDUtY29tcG9uZW50cy9fcmV2aWV3cy5zY3NzIiwiMDUtY29tcG9uZW50cy9fYXV0aG9ycy5zY3NzIiwiMDUtY29tcG9uZW50cy9fY3RhLnNjc3MiLCIwNS1jb21wb25lbnRzL19waWxscy5zY3NzIiwiMDUtY29tcG9uZW50cy9fc29jaWFsLnNjc3MiLCIwNS1jb21wb25lbnRzL19uZXdzbGV0dGVyQmxvY2suc2NzcyIsIjA1LWNvbXBvbmVudHMvX3RhYmxlUHJpY2Uuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIjA1LWNvbXBvbmVudHMvX3BhZ2VIZWFkZXIuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3ZpZGVvUHJldmlldy5zY3NzIiwiMDUtY29tcG9uZW50cy9fZW5yb2xsLnNjc3MiLCIwNS1jb21wb25lbnRzL19yaWJib24uc2NzcyIsIjA1LWNvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3Bvc3Quc2NzcyIsIjA1LWNvbXBvbmVudHMvX3B1cmNoYXNlLnNjc3MiLCIwNS1jb21wb25lbnRzL19wcm9kdWN0LnNjc3MiLCIwNS1jb21wb25lbnRzL19wcm9kdWN0c0dyaWQuc2NzcyIsIjA1LWNvbXBvbmVudHMvX3Byb2R1Y3RzTGlzdC5zY3NzIiwiMDUtY29tcG9uZW50cy9fcHJvZHVjdHNGaWx0ZXIuc2NzcyIsIjA2LXV0aWxpdGllcy9fb3ZlcnJpZGVzLnNjc3MiLCIwNi11dGlsaXRpZXMvX2RlYnVnLnNjc3MiLCIwNi11dGlsaXRpZXMvX3ByaXNtLnNjc3MiLCIwNi11dGlsaXRpZXMvX2ZlYXRoZXJsaWdodC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0loQjs7O0VEQUU7QUM4QkY7O0VEM0JFO0FDcURGOztFRGxERTtBRUpGLDhGQUFZO0FDRlo7O0VIVUU7QUdnQkY7O0VIYkU7QUdxQkY7O0VIbEJFO0FJcEJGOzs7Ozs7O0VKNEJFO0FJbEJZLHNEQUFBO0FDVmQ7OzhFTGdDOEU7QU1JMUUsZ0VBQUE7QUFFSTttRk5IMkU7QU1LM0U7Ozs7O01OQ0Y7QU1LRTtF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TVI7SUFBa0Msd0JBQXdCLEVBQUEsRUFBTTs7QS9ENk14RDtFK0QzTVI7SUFBNEMsd0JBQXdCLEVBQUEsRUFBTTs7QS9EMk1sRTtFK0QxTVI7SUFBMkMsd0JBQXdCLEVBQUEsRUFBTTs7QUFFekU7RTVDakJDLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsU0FBUyxFQUFBOztBNkNMVjtFQUhFLHlDQUFvQztFQUFwQyxpQ0FBb0MsRUFBQTs7QUFPdEM7RUFQRSx5Q0FBb0M7RUFBcEMsaUNBQW9DLEVBQUE7RUFPdEM7SUFQRSw0Q0FBb0M7SUFBcEMsb0NBQW9DLEVBQUE7O0FBZXRDO0VBQ0UsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0UsZ0JBQWdCLEVBQUE7O0FDckJsQjtFQUNJLGdCQUFnQixFQUFBO0VqRStOWjtJaUVoT1I7TUFZUSxnQkFBZ0I7TUFDaEIsWUFBWSxFQUFBO01BYnBCO1FBZ0JZLFlBQVksRUFBQSxFQUNmO0VqRStNRDtJaUVoT1I7TUFxQlEsZ0JBQWdCLEVBQUEsRUFNdkI7O0FBRUQ7RUFDSSxnQkFBZ0IsRUFBQTs7QUM5QnBCLGtDQUFBO0F4RG1DQTtFd0RoQ0UsOEJBQTZCLEVBQUE7O0FBRy9CO0VBQ0Usa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixRQUFRO0VBQ1IsZ0JqRVN3RDtFaUVSeEQsYzNFVytCO0UyRVYvQixtQmpFT3dELEVBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcclxuICogQ29sb3JzLnByaW1hcnkgKGRvIE5PVCB1c2UgaW4gdGhlIHN0eWxlcylcclxuXHQqICAgc291cmNlOiBodHRwOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3IvXHJcbiAqL1xuLypcclxuICogQ29sb3JzLm5ldXRyYWwgKGRvIE5PVCB1c2UgaW4gdGhlIHN0eWxlcylcclxuICovXG4vKlxyXG4gKiBDb2xvcnMuYWxpYXNlcyAodXNlIHRoZXNlIGluIHRoZSBzdHlsZXMpXHJcbiAqL1xuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxvcmE6NDAwLDQwMGksNzAwLDcwMGl8TW9udHNlcnJhdDo1MDAsNzAwKTtcbi8qXHJcbiAqIFR5cG9ncmFwaHkudHlwZWZhY2VcclxuICovXG4vKlxyXG4gKiBUeXBvZ3JhcGh5LmRlZmF1bHRzXHJcbiAqL1xuLypcclxuICogVXRpbGl0eSBtaXhpbnNcclxuICovXG4vKipcclxuICogWi1JTkRFWCBTQ0FMRS5cclxuICpcclxuICogWi1pbmRleCB2YWx1ZXMgc2hvdWxkIGFsd2F5cyBiZSBkZWZpbmVkIGluIF96LWluZGV4LnNjc3MuIFRoaXNcclxuICogYWxsb3dzIHVzIHRvIGF0IGEgZ2xhbmNlIGRldGVybWluZSByZWxhdGl2ZSBsYXllcnMgb2Ygb3VyIGFwcGxpY2F0aW9uIGFuZCBwcmV2ZW50cyBidWdzXHJcbiAqIGFycmlzaW5nIGZyb20gYXJiaXRyYXJ5IHotaW5kZXggdmFsdWVzLiBEbyBub3QgZWRpdCB0aGUgei1pbmRleCBzY2FsZSEgT25seSBhZGQgYXBwbGljYXRpb25cclxuICogc2NvcGVkIHotaW5kZXggdmFsdWVzLlxyXG4gKi9cbi8qIHNwZWNpYWwgei1pbmRleCB2YWx1ZSB1c2VkIHRvIGNyZWF0ZXMgYSBaIGNvbnRleHQgKi9cbi8qXHJcblx0ICNJY29uc1xyXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXHJcbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXHJcbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcclxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcclxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcclxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXHJcbiAgICAgKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cclxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcclxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXHJcbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cclxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxyXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXHJcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4gICAgICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKiBMaW5rc1xyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxyXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXHJcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICAgICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxyXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cclxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXHJcbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXHJcbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxyXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cclxuICAgICAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cclxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxyXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZThlZDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICAgICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcclxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxyXG4gICAgICogYWxsIGJyb3dzZXJzLlxyXG4gICAgICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICAgICAqL1xuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXHJcbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcclxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxyXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXHJcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cclxuICAgICAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEZvcm1zXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxyXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXHJcbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxyXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXHJcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXHJcbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXHJcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcclxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cclxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXHJcbiAgICAgKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLyoqXHJcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXHJcbiAgICAgICAqL1xuICAvKipcclxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxyXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcclxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXHJcbiAgICAgKi9cbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXHJcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXHJcbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxyXG4gICAgICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxyXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxyXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXHJcbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cclxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcclxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cclxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXHJcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxyXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbiAgICAgKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxyXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cclxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cclxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcclxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxyXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcclxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXHJcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxyXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cclxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAgICAgKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLypcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gICAgICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogU2NyaXB0aW5nXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cclxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cclxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5odG1sIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbmJvZHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1pbi13aWR0aDogMzIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBib2R5LmxvYWRpbmc6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluOyB9XG4gIGJvZHkubG9hZGluZzphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHRvcDogLXdlYmtpdC1jYWxjKDUwJSAtIDUwcHgpO1xuICAgIHRvcDogLW1vei1jYWxjKDUwJSAtIDUwcHgpO1xuICAgIHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgICBsZWZ0OiAtd2Via2l0LWNhbGMoNTAlIC0gMzBweCk7XG4gICAgbGVmdDogLW1vei1jYWxjKDUwJSAtIDMwcHgpO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBib3JkZXI6IDdweCBzb2xpZCByZ2JhKDI0OCwgMTUyLCAyOSwgMC4yKTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjRjg5ODFEO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgICAtbW96LWFuaW1hdGlvbjogc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMjAwOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NDlweCkge1xuICBtYWluIHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4OyB9IH1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIGEgPiBpbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGZpZ3VyZSB7XG4gICAgICBtYXJnaW46IDEuMjVyZW0gMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbjogMS41NjI1cmVtIDA7IH0gfVxuICBmaWd1cmUubC1jb2wge1xuICAgIG1hcmdpbjogMS4yNXJlbSAwIDAgMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBmaWd1cmUubC1jb2wge1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuXG5maWdjYXB0aW9uLCAud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMy4xMjVyZW07IH1cbiAgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbCBvdXRzaWRlIG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIG9sIGxpIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogaXRlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAvKiAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBjb3VudGVyKGl0ZW0pJy4nO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtcztcclxuICAgICAgICBtaW4td2lkdGg6IHB4KDI1KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIH0gKi8gfVxuXG5ibG9ja3F1b3RlIHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY3NTtcbiAgYm9yZGVyLWxlZnQ6IDAuOTM3NXJlbSBzb2xpZCAjRTFFOEVEO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMS41NjI1cmVtO1xuICBjb2xvcjogIzQ0NTU2NjsgfVxuXG5ociB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0UxRThFRDtcbiAgcGFkZGluZzogMDsgfVxuXG4uc3Itb25seSB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4OyB9XG5cbi5za2lwLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgcGFkZGluZzogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuc2tpcC1saW5rOmZvY3VzIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3BhY2l0eTogMTtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG5cbi5oMiB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMjI1ICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaDIge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLyotLS0tLS0tLS0tICBCb2R5ICAtLS0tLS0tLS0tKi9cbioge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40MTQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42MTg7IH0gfVxuXG4vKi0tLS0tLS0tLS0gIFBhcmFncmFwaHMgIC0tLS0tLS0tLS0qL1xucCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubC1wYWdlQ29udGVudF9fc2lkZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDE0OyB9IH1cbiAgcC5pbmRlbnQtdHh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW46IDA7IH1cblxuLyotLS0tLS0tLS0tICBEZWZhdWx0IHRleHQgIC0tLS0tLS0tLS0qL1xuYSB7XG4gIGNvbG9yOiAjMkQyRDJEO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2Q3M2UwMjsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbmVtIHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuaHIge1xuICBtYXJnaW46IDFyZW0gMDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbmZpZ2NhcHRpb24sIC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICM1RjVGNUY7IH1cblxuLndwLWNhcHRpb24tdGV4dCB7XG4gIG1hcmdpbjogMTBweCAwIDAgMDsgfVxuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDsgfVxuXG4vKi0tLS0tLS0tLS0gIEhlYWRpbmcgIC0tLS0tLS0tLS0qL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjIyNTsgfVxuXG5oMSxcbi5oMSxcbi5wYWdlSGVhZGxpbmUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGgxLFxuICAgIC5oMSxcbiAgICAucGFnZUhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGgxLFxuICAgIC5oMSxcbiAgICAucGFnZUhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cblxuaDIsXG4uaDIge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgaDIsXG4gICAgLmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMixcbiAgICAuaDIge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG5cbmgzLFxuLmgzLFxuLmMtcmVsYXRlZExpbmtzIGEge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgaDMsXG4gICAgLmgzLFxuICAgIC5jLXJlbGF0ZWRMaW5rcyBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGgzLFxuICAgIC5oMyxcbiAgICAuYy1yZWxhdGVkTGlua3MgYSB7XG4gICAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfSB9XG5cbmg0LFxuLmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuaDUsXG4uaDUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5wb3N0Q29udGVudCBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxvcmFcIiwgR2VvcmdpYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4ucG9zdENvbnRlbnQgaDUge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wb3N0Q29udGVudCBoNSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb3N0Q29udGVudCBoNSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4vKi0tLS0tLS0tLS0gIEdlbmVyaWMgaGVhZGxpbmVzICAtLS0tLS0tLS0tKi9cbi5wYWdlSGVhZGxpbmUge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLnBhZ2VTdWJ0aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgY29sb3I6ICM0NDU1NjY7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4OyB9XG4gIC5jLW1haW5JdGVtX19pbmZvIC5wYWdlU3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuXG4ucGFnZVN1YnRpdGxlICsgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG5cbi5jLWF1dGhvcl9fYXR0YWNobWVudExpc3QgaDUge1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIC4zMTI1cmVtIDAgMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cblxuLnBvc3RDb250ZW50IG9sIHtcbiAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTsgfVxuXG4vKiBGb3Jtc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcclxuKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxyXG4qIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbiogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbiogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxyXG4qIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbiogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxyXG4qL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbnNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqLyB9XG5cbi8qKlxyXG4qIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuYnV0dG9uOmRpc2FibGVkLFxuYnV0dG9uW2Rpc2FibGVkXSxcbmJ1dHRvbjpkaXNhYmxlZDpob3ZlcixcbmJ1dHRvbltkaXNhYmxlZF06aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICBjb2xvcjogIzY2NjsgfVxuXG4vKipcclxuKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXHJcbiovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcclxuKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiogdGhlIFVBIHN0eWxlc2hlZXQuXHJcbiovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXHJcbiogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4qIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXHJcbipcclxuKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4qIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbiovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcclxuKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4qIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXHJcbiogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxyXG4qL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXHJcbiogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4qIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4qIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcclxuKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXHJcbiovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcclxuKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7IH1cblxuLyoqXHJcbiogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4qIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXHJcbiogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cclxuKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXHJcbiogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4qIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4qL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDAuNzVlbSAwLjZlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwLjI1ZW0gMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qXHJcbk5lZWQgdG8gc2VwYXJhdGUgb3V0IHRoZSA6bm90KCkgc2VsZWN0b3IgZnJvbSB0aGUgcmVzdCBvZiB0aGUgQ1NTIDIuMSBzZWxlY3RvcnNcclxuc2luY2UgSUU4IHdvbid0IGV4ZWN1dGUgQ1NTIHRoYXQgY29udGFpbnMgYSBDU1MzIHNlbGVjdG9yLlxyXG4qL1xuaW5wdXQ6bm90KFt0eXBlXSkge1xuICBwYWRkaW5nOiAwLjVlbSAwLjZlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi8qIENocm9tZSAoYXMgb2Ygdi4zMi8zNCBvbiBPUyBYKSBuZWVkcyBhZGRpdGlvbmFsIHJvb20gZm9yIGNvbG9yIHRvIGRpc3BsYXkuICovXG4vKiBNYXkgYmUgYWJsZSB0byByZW1vdmUgdGhpcyB0d2VhayBhcyBjb2xvciBpbnB1dHMgYmVjb21lIG1vcmUgc3RhbmRhcmRpemVkIGFjcm9zcyBicm93c2Vycy4gKi9cbmlucHV0W3R5cGU9XCJjb2xvclwiXSB7XG4gIHBhZGRpbmc6IDAuMmVtIDAuNWVtOyB9XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcbnNlbGVjdDpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyLWNvbG9yOiAjMTI5RkVBOyB9XG5cbi8qXHJcbk5lZWQgdG8gc2VwYXJhdGUgb3V0IHRoZSA6bm90KCkgc2VsZWN0b3IgZnJvbSB0aGUgcmVzdCBvZiB0aGUgQ1NTIDIuMSBzZWxlY3RvcnNcclxuc2luY2UgSUU4IHdvbid0IGV4ZWN1dGUgQ1NTIHRoYXQgY29udGFpbnMgYSBDU1MzIHNlbGVjdG9yLlxyXG4qL1xuaW5wdXQ6bm90KFt0eXBlXSk6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3JkZXItY29sb3I6ICMxMjlGRUE7IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBvdXRsaW5lOiB0aGluIHNvbGlkICMxMjlGRUE7XG4gIG91dGxpbmU6IDFweCBhdXRvICMxMjlGRUE7IH1cblxuaW5wdXRbdHlwZT1cInRleHRcIl1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwidXJsXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwidGltZVwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl1bZGlzYWJsZWRdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXVtkaXNhYmxlZF0sXG5pbnB1dFt0eXBlPVwidGVsXCJdW2Rpc2FibGVkXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXVtkaXNhYmxlZF0sXG5zZWxlY3RbZGlzYWJsZWRdLFxudGV4dGFyZWFbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWRlZDtcbiAgY29sb3I6ICNjYWQyZDM7IH1cblxuLypcclxuTmVlZCB0byBzZXBhcmF0ZSBvdXQgdGhlIDpub3QoKSBzZWxlY3RvciBmcm9tIHRoZSByZXN0IG9mIHRoZSBDU1MgMi4xIHNlbGVjdG9yc1xyXG5zaW5jZSBJRTggd29uJ3QgZXhlY3V0ZSBDU1MgdGhhdCBjb250YWlucyBhIENTUzMgc2VsZWN0b3IuXHJcbiovXG5pbnB1dDpub3QoW3R5cGVdKVtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZGVkO1xuICBjb2xvcjogI2NhZDJkMzsgfVxuXG5pbnB1dFtyZWFkb25seV0sXG5zZWxlY3RbcmVhZG9ubHldLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgLyogbWVudSBob3ZlciBiZyBjb2xvciAqL1xuICBjb2xvcjogIzc3NztcbiAgLyogbWVudSB0ZXh0IGNvbG9yICovXG4gIGJvcmRlci1jb2xvcjogI2NjYzsgfVxuXG5pbnB1dDpmb2N1czppbnZhbGlkLFxudGV4dGFyZWE6Zm9jdXM6aW52YWxpZCxcbnNlbGVjdDpmb2N1czppbnZhbGlkIHtcbiAgY29sb3I6ICNiOTRhNDg7XG4gIGJvcmRlci1jb2xvcjogI2U5MzIyZDsgfVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXTpmb2N1czppbnZhbGlkOmZvY3VzLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzOmludmFsaWQ6Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXM6aW52YWxpZDpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICNlOTMyMmQ7IH1cblxuc2VsZWN0IHtcbiAgLyogTm9ybWFsaXplcyB0aGUgaGVpZ2h0OyBwYWRkaW5nIGlzIG5vdCBzdWZmaWNpZW50LiAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQ0NTU2NjtcbiAgYm9yZGVyLXJhZGl1czogNTRweDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuODc1cmVtIDAuNjI1cmVtIDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjIyNTsgfVxuICBsYWJlbCArIHNlbGVjdCB7XG4gICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtOyB9XG5cbi5zZWxlY3RfX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb250ZW50OiAnICc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY2hldnJvbi1kb3duLnN2ZycpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweCAzMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6ICRzcGFjZS1sO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xOyAvLyBkZXZlIHN0YXJlIHNvdHRvIGFsbGEgc2VsZWN0LCBpbiBxdWVzdG8gbW9kbyBhbmNoZSBsYSBpY29uIGFwcmUgbGEgdGVuZGluYVxyXG4gICAgfSAqLyB9XG4gIC5zZWxlY3RfX3dyYXBwZXIgc2VsZWN0IHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NoZXZyb24tZG93bi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIycHggMzBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NiUgY2VudGVyOyB9XG4gICAgLnNlbGVjdF9fd3JhcHBlciBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBsYWJlbCArIC5zZWxlY3RfX3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTsgfVxuXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW46IDAuNWVtIDAgMC4yZW07XG4gIGNvbG9yOiBpbml0aWFsO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7IH1cblxubGFiZWwgKyBpbnB1dFt0eXBlPVwiZGF0ZVwiXSB7XG4gIG1heC13aWR0aDogODAlOyB9XG5cbi5jaGVja2JveC1maWVsZCBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmNoZWNrYm94LWZpZWxkIGxhYmVsOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMUU4RUQ7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogODAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4uY2hlY2tib3gtZmllbGQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2NvbnRyaWIvdGhlbWVzL2Fwb2dlb25saW5lL2Rpc3QvaW1nL2NoZWNrLnN2Zyk7XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMzVlbSAwIDAuNzVlbTtcbiAgYm9yZGVyOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4zZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zZW07XG4gIGNvbG9yOiAjMzMzO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG5cbi5mb3JtLWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4ud29vY29tbWVyY2Utcm93LWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLndvb2NvbW1lcmNlLXJvdy1oaWRkZW4ud29vY29tbWVyY2Utcm93LW1ha2V2aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ud29vY29tbWVyY2UtaGVscC10aXA6OmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29udGVudDogXCI/XCI7XG4gIGN1cnNvcjogaGVscDtcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuI3RpcHRpcF9ob2xkZXIge1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiA4Njc1MzA5O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfdG9wIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfdG9wICN0aXB0aXBfYXJyb3dfaW5uZXIge1xuICBtYXJnaW4tdG9wOiAtN3B4O1xuICBtYXJnaW4tbGVmdDogLTZweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzMzMzsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfYm90dG9tIHtcbiAgcGFkZGluZy10b3A6IDVweDsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfYm90dG9tICN0aXB0aXBfYXJyb3dfaW5uZXIge1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLTZweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzMzMzsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDVweDsgfVxuXG4jdGlwdGlwX2hvbGRlci50aXBfcmlnaHQgI3RpcHRpcF9hcnJvd19pbm5lciB7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMzMzM7IH1cblxuI3RpcHRpcF9ob2xkZXIudGlwX2xlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cblxuI3RpcHRpcF9ob2xkZXIudGlwX2xlZnQgI3RpcHRpcF9hcnJvd19pbm5lciB7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICBib3JkZXItbGVmdC1jb2xvcjogIzMzMzsgfVxuXG4jdGlwdGlwX2NvbnRlbnQsIC5jaGFydC10b29sdGlwLCAud2NfZXJyb3JfdGlwIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBhZGRpbmc6IC42MThlbSAxZW07XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuI3RpcHRpcF9jb250ZW50IGNvZGUsIC5jaGFydC10b29sdGlwIGNvZGUsIC53Y19lcnJvcl90aXAgY29kZSB7XG4gIHBhZGRpbmc6IDFweDtcbiAgYmFja2dyb3VuZDogIzg4ODsgfVxuXG4jdGlwdGlwX2Fycm93LCAjdGlwdGlwX2Fycm93X2lubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDsgfVxuXG5baWQkPWF1dG9jb21wbGV0ZS1saXN0XSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydDpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuXG4ud29vY29tbWVyY2UgZm9ybS5jaGVja291dCAjYWNjb3VudF9uZXdzbGV0dGVyX2ZpZWxkICsgLmFyZ29tZW50aSwgLndvb2NvbW1lcmNlLUVkaXRBY2NvdW50Rm9ybSAjYWNjb3VudF9uZXdzbGV0dGVyX2ZpZWxkICsgLmFyZ29tZW50aSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXQgI2FjY291bnRfbmV3c2xldHRlcl9maWVsZC5jaGVja2VkICsgLmFyZ29tZW50aSwgLndvb2NvbW1lcmNlLUVkaXRBY2NvdW50Rm9ybSAjYWNjb3VudF9uZXdzbGV0dGVyX2ZpZWxkLmNoZWNrZWQgKyAuYXJnb21lbnRpIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZybV9lcnJvciB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICNiOTRhNDg7IH1cblxuLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIC5mb3JtLXJvdzpub3QoW2lkJD1fYWRkcmVzc18yX2ZpZWxkXSk6bm90KFtpZCQ9aXNjb21wYW55X2ZpZWxkXSksIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHMgLmZvcm0tcm93Om5vdChbaWQkPV9hZGRyZXNzXzJfZmllbGRdKTpub3QoW2lkJD1pc2NvbXBhbnlfZmllbGRdKSB7XG4gIG1pbi1oZWlnaHQ6IDg1cHg7IH1cblxuLmxlZ2FsIHtcbiAgbWFyZ2luOiA1cHggMCAwO1xuICBmb250LXNpemU6IDEwcHg7IH1cbiAgLmxlZ2FsIGlucHV0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAubGVnYWwgaW5wdXQud29vY29tbWVyY2UtaW52YWxpZCB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgI2EwMDsgfVxuXG5maWVsZHNldC5sZWdhbCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlNWU1OyB9XG4gIGZpZWxkc2V0LmxlZ2FsIGxlZ2VuZCB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIGZpZWxkc2V0LmxlZ2FsIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgZmllbGRzZXQubGVnYWwgbGFiZWwgaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG5cbiNwbGFjZV9vcmRlciB7XG4gIG1hcmdpbjogMjBweCAwOyB9XG5cbi5yZXF1aXJlZC1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5yZXF1aXJlZC1tZXNzYWdlIHNwYW4ge1xuICAgIGNvbG9yOiByZWQ7IH1cblxuZm9ybSBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTsgfVxuICBmb3JtIGxhYmVsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgb3BhY2l0eTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgY2xpcDogdW5zZXQ7IH1cbiAgICBmb3JtIGxhYmVsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyArIHNwYW46YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7IH1cblxudGFibGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTsgfVxuICB0YWJsZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2Q3M2UwMjtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICAgIHRhYmxlIHNwYW4ud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbnRoZWFkIHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG50Ym9keSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxudHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UxRThFRDsgfVxuXG50ZCB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICB0ZCA+IHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4ucG9zdENvbnRlbnQgdGQsXG4ucG9zdENvbnRlbnQgdGgge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwLjkzNzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnBvc3RDb250ZW50IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY2Zjg7IH1cblxuLnBvc3RDb250ZW50IC5zaG9wX3RhYmxlIHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAucG9zdENvbnRlbnQgLnNob3BfdGFibGUgdHIubXNnLWNhcnQge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5wb3N0Q29udGVudCAuc2hvcF90YWJsZSB0ci5tc2ctY2FydCB0ZCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAucG9zdENvbnRlbnQgLnNob3BfdGFibGUgdHIubXNnLWNhcnQgdGQ6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnBvc3RDb250ZW50IC5zaG9wX3RhYmxlIHRyLm1zZy1jYXJ0IHRkIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAvKmJhY2tncm91bmQ6ICNlYWVhZWE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDRweCAzcHggMTBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjEwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZDZkNjsqL1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5wb3N0Q29udGVudCAuc2hvcF90YWJsZSB0ci5tc2ctY2FydCB0ZCBkaXYgcCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7IH1cblxuLnBvc3RDb250ZW50IC53b29jb21tZXJjZS1vcmRlcnMtdGFibGUgLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZV9fY2VsbC1vcmRlci1hY3Rpb25zIC5jLWJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1QcmljZS1hbW91bnQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xuICBjb2xvcjogI2Q3M2UwMjsgfVxuXG5bY2xhc3NePSdpY29uLSddIHtcbiAgLyogIHdpZHRoOiBweCg0OCk7XHJcbiAgaGVpZ2h0OiBweCg0OCk7ICovXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZTogY3VycmVudENvbG9yOyB9XG5cbltjbGFzc149J2ljb24tJ10uaWNvbi0tZmlsbGVkIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBmaWxsLXJ1bGU6IGV2ZW5vZGQ7XG4gIHN0cm9rZTogbm9uZTsgfVxuXG4uaWNvbi14cyB7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDEwcHg7IH1cblxuLmljb24tcyB7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IDEycHg7IH1cblxuLmljb24tbSB7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7IH1cblxuLmljb24tbCB7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7IH1cblxuLmljb24teGwge1xuICBoZWlnaHQ6IDI0cHg7XG4gIHdpZHRoOiAyNHB4OyB9XG5cbi5pY29uLXh4bCB7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7IH1cblxuLypcclxuXHJcbm1vYmlsZXdpZGU6ICAgNTUwcHgsXHJcbnRhYmxldDogICAgICAgNzY4cHgsXHJcbmRlc2t0b3A6ICAgICAgMTAyNHB4LFxyXG5iaWdkZXNrOiAgICAgIDEyMDBweCxcclxud2lkZTogICAgICAgICAxMzY3cHgsXHJcbmZ1bGxoZDogICAgICAgMTkyMHB4XHJcbiovXG4ubC1tYWluV3JhcHBlciB7XG4gIHdpZHRoOiA5MiU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmwtbWFpbldyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiA5MCU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sLW1haW5XcmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogNTYuMjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sLW1haW5XcmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogNjguNzVyZW07IH0gfVxuICAuYy1icmVhZGNydW1iIH4gLmwtbWFpbldyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmMtYnJlYWRjcnVtYiB+IC5sLW1haW5XcmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuXG4ubC1zaW5nbGVXcmFwcGVyIHtcbiAgd2lkdGg6IDk1JTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sLXNpbmdsZVdyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiAzMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmwtc2luZ2xlV3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDM3LjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODUuNDM3NWVtKSB7XG4gICAgLmwtc2luZ2xlV3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDQzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgICAubC1tYWluV3JhcHBlciAubC1zaW5nbGVXcmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmwtcGFnZUNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAubC1wYWdlQ29udGVudF9fbWFpbiB7XG4gICAgb3JkZXI6IDI7XG4gICAgZmxleDogMCAwIDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG5cbi5sLXBhZ2VDb250ZW50X19zZWNvbmRhcnkge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sLXBhZ2VDb250ZW50X19zZWNvbmRhcnkge1xuICAgICAgb3JkZXI6IDM7XG4gICAgICBmbGV4OiAwIDAgMTAwJTsgfSB9XG5cbi5sLXBhZ2VDb250ZW50X19zaWRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sLXBhZ2VDb250ZW50X19zaWRlIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgZmxleDogMCAxIDM3JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMlOyB9IH1cblxuLypcclxuLmwtcGFnZUNvbnRlbnQge1xyXG5cclxuQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG5cclxuLm5vLWNzc2dyaWQgJiB7XHJcbmRpc3BsYXk6IGZsZXg7XHJcbmZsZXgtZmxvdzogcm93IHdyYXA7XHJcbn1cclxuXHJcbi5jc3NncmlkICYge1xyXG5kaXNwbGF5OiBncmlkO1xyXG4vLyBncmlkLWdhcDogNXB4O1xyXG5ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDRmciA2ZnI7XHJcbmdyaWQtdGVtcGxhdGUtYXJlYXM6XHJcblwiYiBhXCJcclxuXCJjIGNcIjtcclxufVxyXG59XHJcbn1cclxuXHJcbi5sLXBhZ2VDb250ZW50X19tYWluIHtcclxuXHJcbkBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuXHJcbi5jc3NncmlkICYge1xyXG5ncmlkLWFyZWE6IGE7XHJcbn1cclxuXHJcbi5uby1jc3NncmlkICYge1xyXG5vcmRlcjogMjtcclxuZmxleDogMCAwIDYwJTtcclxufVxyXG59XHJcblxyXG59XHJcblxyXG4ubC1wYWdlQ29udGVudF9fc2Vjb25kYXJ5IHtcclxuXHJcbkBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuXHJcbi5jc3NncmlkICYge1xyXG5ncmlkLWFyZWE6IGM7XHJcbn1cclxuXHJcbi5uby1jc3NncmlkICYge1xyXG5vcmRlcjogMztcclxuZmxleDogMCAwIDEwMCU7XHJcbn1cclxufVxyXG59XHJcblxyXG4ubC1wYWdlQ29udGVudF9fc2lkZSB7XHJcblxyXG5AaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcblxyXG4uY3NzZ3JpZCAmIHtcclxuZ3JpZC1hcmVhOiBiO1xyXG5wYWRkaW5nLXJpZ2h0OiA3MHB4O1xyXG59XHJcblxyXG4ubm8tY3NzZ3JpZCAmIHtcclxub3JkZXI6IDE7XHJcbmZsZXg6IDAgMSAzNyU7XHJcbnBhZGRpbmctcmlnaHQ6IDMlO1xyXG59XHJcbn1cclxufVxyXG4qL1xuLmZiX2RpYWxvZyB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxOHB0OyB9XG5cbi5mYi1jdXN0b21lcmNoYXQgaWZyYW1lIHtcbiAgbGVmdDogOXB0O1xuICByaWdodDogYXV0bzsgfVxuXG4ubC1tb2R1bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gICAgLmwtbW9kdWxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmwtbW9kdWxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cblxuLmwtbW9kdWxlLS1oYWxmIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cblxuLmwtY29scyB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmwtY29scyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG4gICAgICAubC1jb2xzLnJvdy1yZXZlcnNlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gICAgICAubC1jb2xzLmp1c3RpZnktYmV0d2VlbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgLmwtY29scy5qdXN0aWZ5LWxlZnQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5sLWNvbHMuanVzdGlmeS1yaWdodCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAgIC5sLWNvbHMuYWxpZ24tdG9wIHtcbiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDsgfVxuICAgICAgLmwtY29scy5hbGlnbi1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAubC1jb2xzLmMtcGFnZUhlYWRlciAubC1jb2wge1xuICAgICAgICBtYXgtd2lkdGg6IDQ5JTsgfVxuICAgICAgICAubC1jb2xzLmMtcGFnZUhlYWRlciAubC1jb2wgLnBhZ2VTdWJ0aXRsZSwgLmwtY29scy5jLXBhZ2VIZWFkZXIgLmwtY29sIC5jLWFic3RyYWN0X19ib2R5IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAgICAgLmwtY29scy5jLXBhZ2VIZWFkZXIgLmwtY29sIC5jLXByb2R1Y3RfX2J1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG4gICAgICAgIC5sLWNvbHMuYy1wYWdlSGVhZGVyIC5sLWNvbCBmaWd1cmUge1xuICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIC5sLWNvbHMuYy1wYWdlSGVhZGVyIC5sLWNvbCAuYy1idXR0b24tYmFyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmwtY29scy5jLXBhZ2VIZWFkZXIgLmwtY29sIC5jLWJ1dHRvbi1iYXIgLmMtcHJvZHVjdF9fYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubC1jb2wge1xuICAgIGZsZXg6IDE7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubC1jb2wtLWRvdWJsZSB7XG4gICAgZmxleDogMjsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sLWNvbC0td2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubC1jb2wtLWhhbGYge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4vKipcclxuICogRmVhdGhlcmxpZ2h0IOKAkyB1bHRyYSBzbGltIGpRdWVyeSBsaWdodGJveFxyXG4gKiBWZXJzaW9uIDEuNy4xMyAtIGh0dHA6Ly9ub2VsYm9zcy5naXRodWIuaW8vZmVhdGhlcmxpZ2h0L1xyXG4gKlxyXG4gKiBDb3B5cmlnaHQgMjAxOCwgTm/Dq2wgUmFvdWwgQm9zc2FydCAoaHR0cDovL3d3dy5ub2VsYm9zcy5jb20pXHJcbiAqIE1JVCBMaWNlbnNlZC5cclxuKiovXG5odG1sLndpdGgtZmVhdGhlcmxpZ2h0IHtcbiAgLyogZGlzYWJsZSBnbG9iYWwgc2Nyb2xsaW5nIHdoZW4gZmVhdGhlcmxpZ2h0cyBhcmUgdmlzaWJsZSAqL1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5mZWF0aGVybGlnaHQge1xuICBkaXNwbGF5OiBub25lO1xuICAvKiBkaW1lbnNpb25zOiBzcGFubmluZyB0aGUgYmFja2dyb3VuZCBmcm9tIGVkZ2UgdG8gZWRnZSAqL1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjE0NzQ4MzY0NztcbiAgLyogei1pbmRleCBuZWVkcyB0byBiZSA+PSBlbGVtZW50cyBvbiB0aGUgc2l0ZS4gKi9cbiAgLyogcG9zaXRpb246IGNlbnRlcmluZyBjb250ZW50ICovXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogaW5zdXJlcyB0aGF0IHRoZSA6OmJlZm9yZSBwc2V1ZG8gZWxlbWVudCBkb2Vzbid0IGZvcmNlIHdyYXAgd2l0aCBmaXhlZCB3aWR0aCBjb250ZW50OyAqL1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAvKiBzdHlsaW5nICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgLyogSUU4IFwiaGFja1wiIGZvciBuZXN0ZWQgZmVhdGhlcmxpZ2h0cyAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbi8qIHN1cHBvcnQgZm9yIG5lc3RlZCBmZWF0aGVybGlnaHRzLiBEb2VzIG5vdCB3b3JrIGluIElFOCAodXNlIEpTIHRvIGZpeCkgKi9cbi5mZWF0aGVybGlnaHQ6bGFzdC1vZi10eXBlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpOyB9XG5cbi5mZWF0aGVybGlnaHQ6YmVmb3JlIHtcbiAgLyogcG9zaXRpb246IHRyaWNrIHRvIGNlbnRlciBjb250ZW50IHZlcnRpY2FsbHkgKi9cbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcbiAgLyogbWFrZSBjb250ZW50IGNvbnRhaW5lciBmb3IgcG9zaXRpb25lZCBlbGVtZW50cyAoY2xvc2UgYnV0dG9uKSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiBkaW1lbnNpb25zOiBjdXQgb2ZmIGltYWdlcyAqL1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMjVweCAyNXB4IDA7XG4gIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIC8qIGRpbWVuc2lvbnM6IGhhbmRsaW5nIGxhcmdlIGNvbnRlbnQgKi9cbiAgbWFyZ2luLWxlZnQ6IDUlO1xuICBtYXJnaW4tcmlnaHQ6IDUlO1xuICBtYXgtaGVpZ2h0OiA5NSU7XG4gIC8qIHN0eWxpbmcgKi9cbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY3Vyc29yOiBhdXRvO1xuICAvKiByZXNldCB3aGl0ZS1zcGFjZSB3cmFwcGluZyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbi8qIGNvbnRhaW5zIHRoZSBjb250ZW50ICovXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtaW5uZXIge1xuICAvKiBtYWtlIHN1cmUgaXRzIHZpc2libGUgKi9cbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogZG9uJ3Qgc2hvdyB0aGVzZSB0aG91Z2ggKi9cbi5mZWF0aGVybGlnaHQgc2NyaXB0LmZlYXRoZXJsaWdodC1pbm5lcixcbi5mZWF0aGVybGlnaHQgbGluay5mZWF0aGVybGlnaHQtaW5uZXIsXG4uZmVhdGhlcmxpZ2h0IHN0eWxlLmZlYXRoZXJsaWdodC1pbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb24ge1xuICAvKiBwb3NpdGlvbjogY2VudGVyaW5nIHZlcnRpY2FsIGFuZCBob3Jpem9udGFsICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgLyogZGltZW5zaW9uczogMjVweCB4IDI1cHggKi9cbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHdpZHRoOiAyNXB4O1xuICAvKiBzdHlsaW5nICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIC8qIFNldCB0aGUgYmFja2dyb3VuZCBpbiBjYXNlIGl0IG92ZXJsYXBzIHRoZSBjb250ZW50ICovXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgY29sb3I6ICMwMDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKiBTZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjA3NzM0MS9ob3ctdG8tcmVzZXQtYWxsLWRlZmF1bHQtc3R5bGVzLW9mLXRoZS1odG1sNS1idXR0b24tZWxlbWVudCAqL1xuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNsb3NlLWljb246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWltYWdlIHtcbiAgLyogc3R5bGluZyAqL1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZmVhdGhlcmxpZ2h0LWlmcmFtZSAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xuICAvKiByZW1vdmVkIHRoZSBib3JkZXIgZm9yIGltYWdlIGNyb3Bpbmcgc2luY2UgaWZyYW1lIGlzIGVkZ2UgdG8gZWRnZSAqL1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cblxuLmZlYXRoZXJsaWdodCBpZnJhbWUge1xuICAvKiBzdHlsaW5nICovXG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uZmVhdGhlcmxpZ2h0ICoge1xuICAvKiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZWxib3NzL2ZlYXRoZXJsaWdodC9pc3N1ZXMvNDIgKi9cbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLyogaGFuZGxpbmcgcGhvbmVzIGFuZCBzbWFsbCBzY3JlZW5zICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY29udGVudCB7XG4gICAgLyogZGltZW5zaW9uczogbWF4aW1pemUgbGlnaHRib3ggd2l0aCBmb3Igc21hbGwgc2NyZWVucyAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXgtaGVpZ2h0OiA5OCU7XG4gICAgcGFkZGluZzogMTBweCAxMHB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDsgfSB9XG5cbi8qIGhpZGUgbm9uIGZlYXRoZXJsaWdodCBpdGVtcyB3aGVuIHByaW50aW5nICovXG5AbWVkaWEgcHJpbnQge1xuICBodG1sLndpdGgtZmVhdGhlcmxpZ2h0ID4gKiA+IDpub3QoLmZlYXRoZXJsaWdodCkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4vKiBQcmlzbUpTIDEuMTQuMFxyXG5odHRwOi8vcHJpc21qcy5jb20vZG93bmxvYWQuaHRtbCN0aGVtZXM9cHJpc20mbGFuZ3VhZ2VzPW1hcmt1cCtjc3MrY2xpa2UramF2YXNjcmlwdCttYXJrdXAtdGVtcGxhdGluZytwaHArcHl0aG9uICovXG4vKipcclxuICogcHJpc20uanMgZGVmYXVsdCB0aGVtZSBmb3IgSmF2YVNjcmlwdCwgQ1NTIGFuZCBIVE1MXHJcbiAqIEJhc2VkIG9uIGRhYmJsZXQgKGh0dHA6Ly9kYWJibGV0LmNvbSlcclxuICogQGF1dGhvciBMZWEgVmVyb3VcclxuICovXG5jb2RlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSxcbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xuICBjb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtc2hhZG93OiAwIDFweCB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBNb25hY28sICdBbmRhbGUgTW9ubycsICdVYnVudHUgTW9ubycsIG1vbm9zcGFjZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIC1tb3otdGFiLXNpemU6IDQ7XG4gIC1vLXRhYi1zaXplOiA0O1xuICB0YWItc2l6ZTogNDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBub25lO1xuICAtbW96LWh5cGhlbnM6IG5vbmU7XG4gIC1tcy1oeXBoZW5zOiBub25lO1xuICBoeXBoZW5zOiBub25lOyB9XG5cbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl06Oi1tb3otc2VsZWN0aW9uLCBwcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIDo6LW1vei1zZWxlY3Rpb24sXG5jb2RlW2NsYXNzKj1cImxhbmd1YWdlLVwiXTo6LW1vei1zZWxlY3Rpb24sIGNvZGVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIDo6LW1vei1zZWxlY3Rpb24ge1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZDogI2IzZDRmYzsgfVxuXG5wcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdOjpzZWxlY3Rpb24sIHByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0gOjpzZWxlY3Rpb24sXG5jb2RlW2NsYXNzKj1cImxhbmd1YWdlLVwiXTo6c2VsZWN0aW9uLCBjb2RlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSA6OnNlbGVjdGlvbiB7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiAjYjNkNGZjOyB9XG5cbkBtZWRpYSBwcmludCB7XG4gIGNvZGVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdLFxuICBwcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgfSB9XG5cbi8qIENvZGUgYmxvY2tzICovXG5wcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIHtcbiAgcGFkZGluZzogMWVtO1xuICBtYXJnaW46IC41ZW0gMDtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuOm5vdChwcmUpID4gY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0sXG5wcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjJmMDsgfVxuXG4vKiBJbmxpbmUgY29kZSAqL1xuOm5vdChwcmUpID4gY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xuICBwYWRkaW5nOiAuMWVtO1xuICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbi50b2tlbi5jb21tZW50LFxuLnRva2VuLnByb2xvZyxcbi50b2tlbi5kb2N0eXBlLFxuLnRva2VuLmNkYXRhIHtcbiAgY29sb3I6IHNsYXRlZ3JheTsgfVxuXG4udG9rZW4ucHVuY3R1YXRpb24ge1xuICBjb2xvcjogIzk5OTsgfVxuXG4ubmFtZXNwYWNlIHtcbiAgb3BhY2l0eTogLjc7IH1cblxuLnRva2VuLnByb3BlcnR5LFxuLnRva2VuLnRhZyxcbi50b2tlbi5ib29sZWFuLFxuLnRva2VuLm51bWJlcixcbi50b2tlbi5jb25zdGFudCxcbi50b2tlbi5zeW1ib2wsXG4udG9rZW4uZGVsZXRlZCB7XG4gIGNvbG9yOiAjOTA1OyB9XG5cbi50b2tlbi5zZWxlY3Rvcixcbi50b2tlbi5hdHRyLW5hbWUsXG4udG9rZW4uc3RyaW5nLFxuLnRva2VuLmNoYXIsXG4udG9rZW4uYnVpbHRpbixcbi50b2tlbi5pbnNlcnRlZCB7XG4gIGNvbG9yOiAjNjkwOyB9XG5cbi50b2tlbi5vcGVyYXRvcixcbi50b2tlbi5lbnRpdHksXG4udG9rZW4udXJsLFxuLmxhbmd1YWdlLWNzcyAudG9rZW4uc3RyaW5nLFxuLnN0eWxlIC50b2tlbi5zdHJpbmcge1xuICBjb2xvcjogIzlhNmUzYTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi50b2tlbi5hdHJ1bGUsXG4udG9rZW4uYXR0ci12YWx1ZSxcbi50b2tlbi5rZXl3b3JkIHtcbiAgY29sb3I6ICMwN2E7IH1cblxuLnRva2VuLmZ1bmN0aW9uLFxuLnRva2VuLmNsYXNzLW5hbWUge1xuICBjb2xvcjogI0RENEE2ODsgfVxuXG4udG9rZW4ucmVnZXgsXG4udG9rZW4uaW1wb3J0YW50LFxuLnRva2VuLnZhcmlhYmxlIHtcbiAgY29sb3I6ICNlOTA7IH1cblxuLnRva2VuLmltcG9ydGFudCxcbi50b2tlbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnRva2VuLml0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4udG9rZW4uZW50aXR5IHtcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbi8qIEZhbGxiYWNrLCBpbiBjYXNlIEpTIGRvZXMgbm90IHJ1biwgdG8gZW5zdXJlIHRoZSBjb2RlIGlzIGF0IGxlYXN0IHZpc2libGUgKi9cbltjbGFzcyo9J2xhbmctJ10gc2NyaXB0W3R5cGU9J3RleHQvcGxhaW4nXSxcbltjbGFzcyo9J2xhbmd1YWdlLSddIHNjcmlwdFt0eXBlPSd0ZXh0L3BsYWluJ10sXG5zY3JpcHRbdHlwZT0ndGV4dC9wbGFpbiddW2NsYXNzKj0nbGFuZy0nXSxcbnNjcmlwdFt0eXBlPSd0ZXh0L3BsYWluJ11bY2xhc3MqPSdsYW5ndWFnZS0nXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiAxMDAlIENvbnNvbGFzLCBNb25hY28sIG1vbm9zcGFjZTtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLmMtYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjg3NXJlbTtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjZDczZTAyICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIG1pbi13aWR0aDogOS4zNzVyZW07XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNzNlMDIgIWltcG9ydGFudDsgfVxuICAuYy1idXR0b246Zm9jdXMsIC5jLWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI2Q3M2UwMiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZDczZTAyICFpbXBvcnRhbnQ7IH1cbiAgLmMtYnV0dG9uOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDczZTAyOyB9XG4gIC5jLWJ1dHRvbi5jLWJ1dHRvbi1maWxsLS13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuICAuYy1idXR0b24uYy1idXR0b24tZmlsbC0tYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NTU2NjtcbiAgICBib3JkZXItY29sb3I6ICM0NDU1NjY7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAuYy1idXR0b24uYy1idXR0b24tZmlsbC0tYmx1ZTpob3ZlciwgLmMtYnV0dG9uLmMtYnV0dG9uLWZpbGwtLWJsdWU6Zm9jdXMge1xuICAgICAgY29sb3I6ICM0NDU1NjY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYy1idXR0b24uYy1idXR0b24tZmlsbC0tdHJhbnNwYXJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5jLWJ1dHRvbi5jLWJ1dHRvbi1zdHJva2UtLW9yYW5nZSB7XG4gICAgY29sb3I6ICNkNzNlMDI7XG4gICAgYm9yZGVyLWNvbG9yOiAjZDczZTAyOyB9XG4gICAgLmMtYnV0dG9uLmMtYnV0dG9uLXN0cm9rZS0tb3JhbmdlOmhvdmVyLCAuYy1idXR0b24uYy1idXR0b24tc3Ryb2tlLS1vcmFuZ2U6Zm9jdXMge1xuICAgICAgY29sb3I6ICNkNzNlMDI7XG4gICAgICBib3JkZXItY29sb3I6ICNkNzNlMDI7IH1cbiAgLmMtYnV0dG9uLmMtYnV0dG9uLXN0cm9rZS0td2hpdGUge1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGJvcmRlci1jb2xvcjogI0ZGRkZGRjsgfVxuICAuYy1idXR0b24uYy1idXR0b24tc3Ryb2tlLS1ibGFjayB7XG4gICAgY29sb3I6ICMyRDJEMkQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMkQyRDJEOyB9XG4gICAgLmMtYnV0dG9uLmMtYnV0dG9uLXN0cm9rZS0tYmxhY2s6aG92ZXIsIC5jLWJ1dHRvbi5jLWJ1dHRvbi1zdHJva2UtLWJsYWNrOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZDczZTAyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZDczZTAyOyB9XG4gIC5jLWJ1dHRvbi5jLWJ1dHRvbi1zdHJva2UtLWJsdWUge1xuICAgIGNvbG9yOiAjNDQ1NTY2O1xuICAgIGJvcmRlci1jb2xvcjogIzQ0NTU2NjsgfVxuICAgIC5jLWJ1dHRvbi5jLWJ1dHRvbi1zdHJva2UtLWJsdWU6aG92ZXIsIC5jLWJ1dHRvbi5jLWJ1dHRvbi1zdHJva2UtLWJsdWU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNkNzNlMDI7XG4gICAgICBib3JkZXItY29sb3I6ICNkNzNlMDI7IH1cbiAgLmMtYnV0dG9uLmMtYnV0dG9uLS1sb25nIHtcbiAgICBtaW4td2lkdGg6IDEyLjVyZW07IH1cbiAgLmMtYnV0dG9uLmMtYnV0dG9uLS1zbWFsbCB7XG4gICAgbWluLXdpZHRoOiA2LjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmMtYnV0dG9uLmMtYnV0dG9uLS1leHNoYWRvdyB7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW46IDAgLjkzNzVyZW0gLjkzNzVyZW0gMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmMtYnV0dG9uLmMtYnV0dG9uLS1leHNoYWRvdyB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjY4NzVyZW07IH0gfVxuICAuYy1idXR0b24uYy1idXR0b24tLWxpbmVkIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYy1idXR0b24uYy1idXR0b24tLWxpbmVkOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDExMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgIGxlZnQ6IC01JTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IC0xOyB9XG5cbi5jLWJ1dHRvbkxpbmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmMtYnV0dG9uTGluZWQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q3M2UwMjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB6LWluZGV4OiAtMTsgfVxuXG4uYy1idXR0b25Db3B5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIHRvcDogLTUzcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmMtYnV0dG9uQ29weSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdG9wOiAtNjNweDsgfSB9XG5cbnByZTpob3ZlciArIC5jLWJ1dHRvbkNvcHksIC5jLWJ1dHRvbkNvcHk6aG92ZXIge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5jLWJ1dHRvbi1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5jLWJ1dHRvbi1iYXIgLmMtYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1idXR0b24tYmFyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAgIC5jLWJ1dHRvbi1iYXIgLmMtYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9IH1cblxuLmMtZXhwYW5kYWJsZSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG5cbi5jLWV4cGFuZGFibGVfX2NvbnRlbnQge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIG1heC1oZWlnaHQ6IDE1LjYyNXJlbTsgfVxuICAuYy1leHBhbmRhYmxlLS1zaG9ydCAuYy1leHBhbmRhYmxlX19jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxMS42MjVyZW07IH1cbiAgLmlzLWFjdGl2ZSAuYy1leHBhbmRhYmxlX19jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiA5OTllbTsgfVxuXG4uYy1leHBhbmRhYmxlX19saW5rIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjMkQyRDJEO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYy1leHBhbmRhYmxlX19saW5rOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHdoaXRlIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgIGhlaWdodDogNi4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDkwdnc7IH1cbiAgICAuaXMtYWN0aXZlIC5jLWV4cGFuZGFibGVfX2xpbms6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmMtZXhwYW5kYWJsZV9fbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmMtZXhwYW5kYWJsZV9fbGFiZWw6YmVmb3JlLCAuYy1leHBhbmRhYmxlX19sYWJlbDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZmxleDogMSAxIDMwJTtcbiAgICBoZWlnaHQ6IDAuMDYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUFBO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jLWV4cGFuZGFibGVfX2xhYmVsOmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuYy1leHBhbmRhYmxlX19sYWJlbDphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTsgfVxuXG4uaXMtYWN0aXZlIC5jLWV4cGFuZGFibGVfX2xhYmVsLS1vcGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYy1leHBhbmRhYmxlX19sYWJlbC0tY2xvc2Uge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5pcy1hY3RpdmUgLmMtZXhwYW5kYWJsZV9fbGFiZWwtLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5jLXBpbGwge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMS44NzVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDVweCByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuMjUpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCA1cHggcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjI1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDVweCByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuMjUpO1xuICBjb2xvcjogIzJEMkQyRDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jLXBpbGwge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICAuYy1waWxsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG5cbi5maXJtZS1tdWx0aXBsZSB7XG4gIG1hcmdpbjogMS41cmVtIDA7IH1cbiAgLmZpcm1lLW11bHRpcGxlIHAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7IH1cblxuLmMtbWFpbkl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5jLW1haW5JdGVtLmlzLXNpbmdsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTQ5cHgpIHtcbiAgICAuYy1tYWluSXRlbS5sLW1vZHVsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0OCwgMTUyLCAyOSwgMC4yKTtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41NjI1cmVtOyB9XG4gICAgLmMtbWFpbkl0ZW0gLmMtYWJzdHJhY3RfX2F1dGhvciB7XG4gICAgICAvKm1hcmdpbi1ib3R0b206IDA7Ki8gfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLW1haW5JdGVtIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtbWFpbkl0ZW0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jLW1haW5JdGVtOjpiZWZvcmUsIC5jLW1haW5JdGVtOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgICAgLmMtbWFpbkl0ZW06OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5jLW1haW5JdGVtIC5jLXBhZ2VIZWFkZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA2MCU7IH1cbiAgICAgIC5jLW1haW5JdGVtIC5jLW1haW5JdGVtX19pbmZvIC5jLXBhZ2VIZWFkZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtbWFpbkl0ZW0uaXMtc2luZ2xlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmMtbWFpbkl0ZW1fX2ZpZ3VyZSB7XG4gIHBhZGRpbmc6IDEuNTYyNXJlbSAwO1xuICBvcmRlcjogMjsgfVxuICAuYy1tYWluSXRlbV9fZmlndXJlLmlzLXNpbmdsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYy1tYWluSXRlbV9fZmlndXJlIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLW1haW5JdGVtX19maWd1cmUge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07XG4gICAgICBvcmRlcjogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAgIC5jLW1haW5JdGVtX19maWd1cmUuaXMtc2luZ2xlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jLW1haW5JdGVtX19maWd1cmUuaXMtY2VudGVyZWQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLW1haW5JdGVtX19maWd1cmUge1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH1cbiAgICAgIC5pcy1zaW5nbGUgLmMtbWFpbkl0ZW1fX2ZpZ3VyZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAuYy1tYWluSXRlbV9fZmlndXJlIGltZyB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC4yNSk7XG4gICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC4yNSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDVweCByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuMjUpO1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYy1tYWluSXRlbV9fZmlndXJlIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDUzMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gIC5jLW1haW5JdGVtX19pbmZvIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuLmMtbWFpbkl0ZW1fX2luZm8ucmVwZWF0ZWQgLmMtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1tYWluSXRlbV9faW5mby5yZXBlYXRlZCAuYy1idXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmMtbWFpbkl0ZW1fX2luZm8ge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG4uaXMtc2luZ2xlIC5jLW1haW5JdGVtX19pbmZvIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaXMtc2luZ2xlIC5jLW1haW5JdGVtX19pbmZvIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG4uYy1tYWluSXRlbV9fZm9ybSB7XG4gIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICBvcmRlcjogMzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1tYWluSXRlbV9fZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtbWFpbkl0ZW1fX2Zvcm0ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uYy1tYWluSXRlbV9fdGl0bGUge1xuICBtYXJnaW46IDAgYXV0byAwLjMxMjVyZW07IH1cblxuLmMtbWFpbkl0ZW1fX2Fic3RyYWN0IHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbi5jLW1haW5JdGVtX19hdXRob3Ige1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG5cbi5jLW1haW5JdGVtX19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy1tYWluSXRlbV9fZmlndXJlQmxvY2sge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLmlzLXNpbmdsZSAuYy1tYWluSXRlbV9fYm94ZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jLW1haW5JdGVtX19jdGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmlzLXNpbmdsZSAuYy1tYWluSXRlbV9fcGxhdGZvcm1zIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYy1tYWluSXRlbS1jdGEge1xuICBvcmRlcjogMjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLW1haW5JdGVtLWN0YSB7XG4gICAgICBtYXJnaW4tbGVmdDogNDAlO1xuICAgICAgZmxleC1iYXNpczogNjAlO1xuICAgICAgbWF4LXdpZHRoOiA2MCU7IH0gfVxuXG4uYy1wcmljZUJveGVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG5cbi5jLXByaWNlQm94ZXNfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1wcmljZUJveGVzX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIGdhcDogMTBweDsgfSB9XG5cbi5jLXByaWNlQm94ZXNfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLXByaWNlQm94ZXNfX2l0ZW0ge1xuICAgICAgZmxleDogYXV0bzsgfSB9XG4gIC5jLXByaWNlQm94ZXNfX2l0ZW0uYy1wcmljZUJveGVzX19pdGVtLS1ub3RBdmFpbGFibGUge1xuICAgIGNvbG9yOiAjQUFBOyB9XG4gIC5jLXByaWNlQm94ZXNfX2l0ZW0gZm9ybSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmMtcHJpY2VCb3hlc19faXRlbSBmb3JtIC5jLXByaWNlQm94IHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuXG4uYy1wcmljZUJveCB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtcHJpY2VCb3gge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5jLXByaWNlQm94X19sYWJlbHMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM2NWVtKSB7XG4gICAgLmMtcHJpY2VCb3hfX2xhYmVscyB7XG4gICAgICB3aWR0aDogNTglOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtcHJpY2VCb3hfX2xhYmVscyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYy1wcmljZUJveF9fcHJpY2luZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzY1ZW0pIHtcbiAgICAuYy1wcmljZUJveF9fcHJpY2luZyB7XG4gICAgICB3aWR0aDogMzIlOyB9IH1cblxuLmMtcHJpY2VCb3hfX2NoZWNrIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNjVlbSkge1xuICAgIC5jLXByaWNlQm94X19jaGVjayB7XG4gICAgICB3aWR0aDogMTAlOyB9IH1cblxuLmMtcHJpY2VCb3hfX2F2YWlsYWJpbGl0eSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxvcmFcIiwgR2VvcmdpYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGhlaWdodDogMTVweDsgfVxuXG4uYy1wcmljZUJveF9fZm9ybWF0IHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLXByaWNlQm94X19mb3JtYXQ6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9IH1cblxuLmMtcHJpY2VCb3hfX2luZm8gc3ZnIHtcbiAgZmxleC1zaHJpbms6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gIC5jLXByaWNlQm94X19pbmZvIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmMtcHJpY2VCb3hfX2luZm8uYy1wcmljZUJveF9faW5mby0tcHJpbmNpbmcge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLXByaWNlQm94X19pbmZvLmMtcHJpY2VCb3hfX2luZm8tLXByaW5jaW5nIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogNDBweDsgfSB9XG5cbi5jLXByaWNlQm94X19zaGlwIHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuICAuYy1wcmljZUJveF9fc2hpcCAuaWNvbi1zdGFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgdG9wOiAtMXB4OyB9XG5cbi5jLXByaWNlQm94X19uZXdQcmljZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjI1OyB9XG5cbi5jLXByaWNlQm94X19vZmZlciB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmMtcHJpY2VCb3hfX29sZFByaWNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmMtcHJpY2VCb3hfX29sZFByaWNlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgdG9wOiA1MCU7IH1cblxuLmMtcHJpY2VCb3hfX2xhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuYy1wcmljZUJveF9fbGFiZWw6Zm9jdXMsIC5jLXByaWNlQm94X19sYWJlbDpob3ZlciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIG9wYWNpdHk6IDAuMDM7IH1cbiAgaW5wdXQ6Y2hlY2tlZCAuYy1wcmljZUJveF9fbGFiZWwgKyBsYWJlbCxcbiAgaW5wdXQ6Y2hlY2tlZCArIC5jLXByaWNlQm94X19sYWJlbCxcbiAgaW5wdXQ6Y2hlY2tlZCArIC5jLXByaWNlQm94X19sYWJlbDpmb2N1cyxcbiAgaW5wdXQ6Y2hlY2tlZCArIC5jLXByaWNlQm94X19sYWJlbDpob3ZlciB7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2Q3M2UwMjtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyAuYy1wcmljZUJveF9fbGFiZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4uYy1wcmljZUJveF9fcmFkaW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uYy1wcmljZUJveF9fY3VzdG9tUmFkaW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGhlaWdodDogMjRweDtcbiAgd2lkdGg6IDI0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMUU4RUQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0Y5RkE7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5jLXByaWNlQm94X19jdXN0b21SYWRpbzo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjQzNzVyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNDM3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGhlaWdodDogMC44NzVyZW07XG4gICAgd2lkdGg6IDAuODc1cmVtO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cblxuaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCB+IC5jLXByaWNlQm94X19jdXN0b21SYWRpbzo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmMtcHJpY2VCb3hlc19faXRlbS0tbm90QXZhaWxhYmxlIC5jLXByaWNlQm94X19sYWJlbCB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuICAuYy1wcmljZUJveGVzX19pdGVtLS1ub3RBdmFpbGFibGUgLmMtcHJpY2VCb3hfX2xhYmVsOmZvY3VzLCAuYy1wcmljZUJveGVzX19pdGVtLS1ub3RBdmFpbGFibGUgLmMtcHJpY2VCb3hfX2xhYmVsOmhvdmVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4uYy1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU0OXB4KSB7XG4gICAgLmMtaGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NDlweCkge1xuICAgIC5jLWhlYWRlci5pcy1hY3RpdmUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAuYy1oZWFkZXIuaXMtYWN0aXZlIC5jLWhlYWRlcl9fdG9wYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtaGVhZGVyIHtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfSB9XG5cbi5jLWhlYWRlcl9fdG9wYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NTU2NjtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtaGVhZGVyX190b3BiYXIge1xuICAgICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG4uYy1oZWFkZXJfX3dyYXBwZXIge1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5jLWhlYWRlcl9fZm9ybWF0cyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtaGVhZGVyX19mb3JtYXRzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG4uYy1oZWFkZXJfX2xvZ28ge1xuICB3aWR0aDogMTI1cHg7XG4gIGhlaWdodDogMjZweDtcbiAgZmxleC1zaHJpbms6IDA7IH1cbiAgLmMtaGVhZGVyX19sb2dvIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmMtaGVhZGVyX19sb2dvIHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIGhlaWdodDogNTJweDsgfVxuICAgICAgLmMtaGVhZGVyX19sb2dvIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uYy1oZWFkZXJfX21haW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA1NTBweCkge1xuICAgIC5jLWhlYWRlcl9fbWFpbiB7XG4gICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNTUwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAuYy1oZWFkZXJfX21haW4ge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1oZWFkZXJfX21haW4ge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLmMtaGVhZGVyX190b2dnbGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1oZWFkZXJfX3RvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyogLmMtaGVhZGVyVG9nZ2xlTWVudXtcclxuQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbmRpc3BsYXk6IG5vbmU7XHJcbn1cclxufSAqL1xuLmMtaGVhZGVyVG9nZ2xlTWVudSB7XG4gIHdpZHRoOiA0MnB4OyB9XG5cbi5qLWhlYWRlci5pcy1hY3RpdmUgLmMtaGVhZGVyVG9nZ2xlX19sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmMtaGVhZGVyVG9nZ2xlX19sYWJlbC5jLWhlYWRlclRvZ2dsZV9fbGFiZWwtLWNsb3NlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuai1oZWFkZXIuaXMtYWN0aXZlIC5jLWhlYWRlclRvZ2dsZV9fbGFiZWwuYy1oZWFkZXJUb2dnbGVfX2xhYmVsLS1jbG9zZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmMtaGVhZGVyX19uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIC8qIHRvcDogNjZweDsgKi9cbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ1NTY2O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDYwMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTQ5cHgpIHtcbiAgICAuYy1oZWFkZXJfX25hdiB7XG4gICAgICAvKiBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTsgKi9cbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDY2cHgpO1xuICAgICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDY2cHgpO1xuICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgIG1hcmdpbi10b3A6IDY2cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNjZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLWhlYWRlcl9fbmF2IHtcbiAgICAgIC8qIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBtYXgtd2lkdGg6ICRzLWhlYWRlcm5hdi1tYXgtd2lkdGg7XHJcbiAgICAgICAgdG9wOiA3MHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkcy1oZWFkZXJuYXYtbWF4LXdpZHRoKTsgKi9cbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYy1oZWFkZXJOYXZiYXJfX3NlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2NnB4O1xuICByaWdodDogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NDU1NjY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgLypAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NTBweCkgYW5kIChtYXgtaGVpZ2h0OiAxMTk5cHgpIHtcclxuICAgICAgICAgICAgdG9wOiA1NHB4IWltcG9ydGFudDtcclxuICAgIH0qLyB9XG4gIC5jLWhlYWRlck5hdmJhcl9fc2VhcmNoLmlzLXZpc2libGUge1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgbGluZWFyO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLWhlYWRlck5hdmJhcl9fc2VhcmNoIHtcbiAgICAgIG1heC13aWR0aDogMjMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1oZWFkZXJOYXZiYXJfX3NlYXJjaCB7XG4gICAgICB0b3A6IDcwcHg7IH0gfVxuXG4uYy1oZWFkZXIuaXMtYWN0aXZlIC5jLWhlYWRlcl9fbmF2IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5jLWhlYWRlcl9fYm90dG9tYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtaGVhZGVyX19ib3R0b21iYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYy1oZWFkZXJOYXZiYXIge1xuICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gIC5jLWhlYWRlck5hdmJhcl9fZm9ybWF0cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYy1oZWFkZXJOYXZiYXJfX25hdk1lbnUge1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfSB9XG5cbi5jLXNlYXJjaEJveF9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jLXNlYXJjaEJveF9fbGFiZWwge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjkzNzVyZW07XG4gIHRvcDogMC4zMTI1cmVtOyB9XG4gIC5jLXNlYXJjaEJveF9fbGFiZWwgc3ZnIHtcbiAgICBzdHJva2U6ICM4Nzk4YTc7IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXS5jLXNlYXJjaEJveF9faW5wdXQge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm94LXNoYWRvdzogaW5pdGlhbDtcbiAgY29sb3I6ICM4Nzk4YTc7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0uYy1zZWFyY2hCb3hfX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM4Nzk4YTc7IH1cblxuLmMtbmF2Rm9ybWF0cyB7XG4gIC8qICYuYy1oZWFkZXJOYXZiYXJfX2Zvcm1hdHMge1xyXG4gICAgbWFyZ2luLXRvcDogJHMtZm9ybWF0LXBhZC10b3A7XHJcbiAgfSAqLyB9XG4gIC5jLW5hdkZvcm1hdHMgYSB7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLW5hdkZvcm1hdHNfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmMtbmF2Rm9ybWF0c19faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1uYXZGb3JtYXRzX19pdGVtIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQxNDsgfSB9XG5cbi5jLW5hdkZvcm1hdHNfX2xpbmsge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYy1uYXZGb3JtYXRzX19saW5rLmlzLWFjdGl2ZSB7XG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYy1uYXZGb3JtYXRzX19saW5rLmlzLW5ldyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmMtbmF2Rm9ybWF0c19fbGluayB7XG4gICAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfSB9XG4gIC5jLWZvb3Rlcl9fbmF2Rm9ybWF0cyAuYy1uYXZGb3JtYXRzX19saW5rLFxuICAuYy1oZWFkZXJfX2Zvcm1hdHMgLmMtbmF2Rm9ybWF0c19fbGluayB7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtIDA7IH1cbiAgLmMtaGVhZGVyTmF2YmFyX19mb3JtYXRzIC5jLW5hdkZvcm1hdHNfX2xpbmsge1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbSAwIDAuOTM3NXJlbTsgfVxuXG4uYy1uYXZGb3JtYXRzX19uZXdzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB3aWR0aDogMTIwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jLW5hdkZvcm1hdHNfX2hpZ2hsaWdodCAuYy1oaWdobGlnaHRfX2ljb24ge1xuICBzdHJva2Utd2lkdGg6IDJweDsgfVxuXG4uYy1uYXZNZW51IHtcbiAgZmxleC1zaHJpbms6IDA7IH1cbiAgLmMtbmF2TWVudSBhIHtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmMtbmF2TWVudS5jLWhlYWRlcl9fbmF2TWVudSBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jLW5hdk1lbnUuYy1oZWFkZXJfX25hdk1lbnUgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuYy1uYXZNZW51LmMtaGVhZGVyX19uYXZNZW51IHNwYW4uY2FydF9xdWFudGl0eSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0b3A6IC0xMnB4O1xuICAgICAgcmlnaHQ6IC02cHg7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmMtbmF2TWVudS5jLWhlYWRlcl9fbmF2TWVudSBzcGFuLmNhcnRfcXVhbnRpdHkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDJweDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87IH0gfVxuICAuYy1uYXZNZW51IC53cmFwLWNhcnRfcXVhbnRpdHkge1xuICAgIGNvbG9yOiAjZTFlOGVkO1xuICAgIC8qbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTFweDsqLyB9XG4gICAgLmMtbmF2TWVudSAud3JhcC1jYXJ0X3F1YW50aXR5LmZpcnN0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1uYXZNZW51LmMtaGVhZGVyTmF2YmFyX19uYXZNZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYy1uYXZNZW51X19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAuYy1uYXZNZW51X19saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cblxuLmMtbmF2TWVudV9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1uYXZNZW51X19pdGVtIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQxNDtcbiAgICAgIG1hcmdpbjogMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuYy1uYXZNZW51X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4uYy1uYXZNZW51LmMtaGVhZGVyTmF2YmFyX19uYXZNZW51IC5jLW5hdk1lbnVfX2l0ZW0tLXNlYXJjaCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1uYXZNZW51LmMtaGVhZGVyTmF2YmFyX19uYXZNZW51IC5jLW5hdk1lbnVfX2l0ZW0tLXNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uYy1uYXZNZW51X19pdGVtLS1jYXJ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfVxuXG4uYy1oZWFkZXJfX21haW4gLmMtbmF2TWVudV9faXRlbS0tc2VhcmNoIHtcbiAgbWFyZ2luOiAwIDAuOTM3NXJlbTsgfVxuXG4uYy1uYXZNZW51X19saW5rIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLW5hdk1lbnVfX2xpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG4uYy1zaG9wIHtcbiAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5jLXNob3Agc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTllbSkge1xuICAuYy1uYXZNZW51X19waXBlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmMtbmF2Q2F0ZWdvcmllcyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLW5hdkNhdGVnb3JpZXMuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgYSB7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5jLWhlYWRlcl9fYm90dG9tYmFyIC5jLW5hdkNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jLWhlYWRlcl9fYm90dG9tYmFyIC5jLW5hdkNhdGVnb3JpZXMgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtaGVhZGVyX19ib3R0b21iYXIgLmMtbmF2Q2F0ZWdvcmllcyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jLW5hdkNhdGVnb3JpZXNfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5jLWhlYWRlcl9fYm90dG9tYmFyIC5jLW5hdkNhdGVnb3JpZXNfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAuYy1mb290ZXJfX25hdkNhdGVnb3JpZXMgLmMtbmF2Q2F0ZWdvcmllc19fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLmMtaGVhZGVyTmF2YmFyX19jYXRlZ29yaWVzIC5jLW5hdkNhdGVnb3JpZXNfX2l0ZW0ge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0FBQTsgfVxuXG4uYy1oZWFkZXJfX2JvdHRvbWJhciAuYy1uYXZDYXRlZ29yaWVzX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH1cblxuLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzIC5jLW5hdkNhdGVnb3JpZXNfX2l0ZW0ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzIC5jLW5hdkNhdGVnb3JpZXNfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDIwJTsgfSB9XG5cbi5jLW5hdkNhdGVnb3J5X19saW5rIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYy1uYXZDYXRlZ29yeV9fbGluay5pcy1hY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAuYy1uYXZDYXRlZ29yeV9fbGluayB7XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuICAuYy1mb290ZXJfX25hdkNhdGVnb3JpZXMgLmMtbmF2Q2F0ZWdvcnlfX2xpbmsge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd29yZC1icmVhazogbm9ybWFsOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jLWZvb3Rlcl9fbmF2Q2F0ZWdvcmllcyAuYy1uYXZDYXRlZ29yeV9fbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xOyB9IH1cblxuLyotLS0tLS0tLS0tICBTdWJjYXRlZ29yeSAgLS0tLS0tLS0tLSovXG4uYy1oZWFkZXJfX2JvdHRvbWJhciAuYy1uYXZDYXRlZ29yeV9fc3ViQ2F0ZWdvcmllcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtaGVhZGVyX19ib3R0b21iYXIgLmMtbmF2Q2F0ZWdvcnlfX3N1YkNhdGVnb3JpZXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgLmMtbmF2Q2F0ZWdvcnlfX3N1YkNhdGVnb3J5IHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjI1czsgfVxuXG4uYy1mb290ZXJfX25hdkNhdGVnb3JpZXMgLmMtbmF2Q2F0ZWdvcnlfX3N1YkNhdGVnb3J5IHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cblxuLmMtbmF2Q2F0ZWdvcnkuaXMtYWN0aXZlIC5jLW5hdkNhdGVnb3J5X19zdWJDYXRlZ29yeSB7XG4gIG1heC1oZWlnaHQ6IDYwMHB4OyB9XG5cbi5jLXN1YkNhdGVnb3J5IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7IH1cbiAgLmMtaGVhZGVyTmF2YmFyX19jYXRlZ29yaWVzIC5jLXN1YkNhdGVnb3J5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgLmMtc3ViQ2F0ZWdvcnk6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBQUE7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwOyB9XG5cbi5jLXN1YkNhdGVnb3J5X19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmMtaGVhZGVyTmF2YmFyX19jYXRlZ29yaWVzIC5jLXN1YkNhdGVnb3J5X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgLmMtc3ViQ2F0ZWdvcnlfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLmMtc3ViQ2F0ZWdvcnlfX2xpbmsge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYy1zdWJDYXRlZ29yeV9fbGluazpob3ZlciwgLmMtc3ViQ2F0ZWdvcnlfX2xpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5jLXN1YkNhdGVnb3J5X19saW5rLmlzLWFjdGl2ZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAuYy1zdWJDYXRlZ29yeV9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC42MjVyZW07IH1cblxuLmMtbmF2TWFpbkNhdGVnb3JpZXNfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyRDJEMkQ7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmMtbmF2TWFpbkNhdGVnb3JpZXNfX2l0ZW0ge1xuICAvKm1hcmdpbi1ib3R0b206IDA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtczsqL1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtbmF2TWFpbkNhdGVnb3JpZXNfX2l0ZW0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbi5jLW5hdk1haW5DYXRlZ29yaWVzX19saW5rIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLW5hdk1haW5DYXRlZ29yaWVzX19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9IH1cbiAgLmlzLWFjdGl2ZSA+IC5jLW5hdk1haW5DYXRlZ29yaWVzX19saW5rIHtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmMtbmF2U3ViQ2F0ZWdvcnkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuYy1uYXZTdWJDYXRlZ29yeS5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jLW5hdlN1YkNhdGVnb3J5X19pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLW5hdlN1YkNhdGVnb3J5X19pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07IH0gfVxuXG4uYy1uYXZTdWJDYXRlZ29yeV9fbGluayB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmMtbmF2U3ViQ2F0ZWdvcnlfX2xpbmsuaXMtYWN0aXZlIHtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmMtYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgICAuYy1icmVhZGNydW1iIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYy1icmVhZGNydW1iX19yb290IHtcbiAgY29sb3I6ICMyRDJEMkQ7IH1cblxuLmMtYnJlYWRjcnVtYl9fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxuICAuYy1icmVhZGNydW1iX19tYWluOm50aC1jaGlsZCg0KSB7XG4gICAgei1pbmRleDogMTA7IH1cbiAgLmMtYnJlYWRjcnVtYl9fbWFpbjpudGgtY2hpbGQoMykge1xuICAgIHotaW5kZXg6IDIwOyB9XG4gIC5jLWJyZWFkY3J1bWJfX21haW46bnRoLWNoaWxkKDIpIHtcbiAgICB6LWluZGV4OiAzMDsgfVxuICAuYy1icmVhZGNydW1iX19tYWluOm50aC1jaGlsZCgxKSB7XG4gICAgei1pbmRleDogNDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmMtYnJlYWRjcnVtYl9fbWFpbjpsYXN0LWNoaWxkIC5jLWJyZWFkY3J1bWJfX2xhYmVsIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMS42MjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDEuNjI1cmVtOyB9XG5cbi5jLWJyZWFkY3J1bWJfX2xhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIHBhZGRpbmc6IDAuMzEyNXJlbSAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDtcbiAgLyogYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRzLWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cztcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM7ICovXG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qICAmOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OjI2cHg7XHJcbiAgICB3aWR0aDoxMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAkcy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMgJHMtYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzIDA7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxufSAqLyB9XG4gIC5jLWJyZWFkY3J1bWJfX2xhYmVsOmhvdmVyLCAuYy1icmVhZGNydW1iX19sYWJlbDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NTU2NjtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIC5jLWJyZWFkY3J1bWJfX2xhYmVsOmhvdmVyIHN2ZywgLmMtYnJlYWRjcnVtYl9fbGFiZWw6Zm9jdXMgc3ZnIHtcbiAgICAgIHN0cm9rZTogI0ZGRkZGRjsgfVxuICAuYy1icmVhZGNydW1iX19sYWJlbC5jLWJyZWFkY3J1bWJfX3Jvb3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5jLWJyZWFkY3J1bWJfX2xhYmVsLmMtYnJlYWRjcnVtYl9fcm9vdDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuc3Bhbi5jLWJyZWFkY3J1bWJfX2xhYmVsIHtcbiAgY29sb3I6ICMyRDJEMkQ7IH1cbiAgc3Bhbi5jLWJyZWFkY3J1bWJfX2xhYmVsOmhvdmVyLCBzcGFuLmMtYnJlYWRjcnVtYl9fbGFiZWw6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMUU4RUQ7XG4gICAgY29sb3I6ICMyRDJEMkQ7IH1cblxuLmMtYnJlYWRjcnVtYl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAycHg7IH1cbiAgLmlzLW9wZW4gLmMtYnJlYWRjcnVtYl9fbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6ICNFMUU4RUQ7XG4gICAgei1pbmRleDogMTA7IH1cblxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbjogMDsgfVxuXG4uYy1icmVhZGNydW1iX19saW5rIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgY29sb3I6ICMyRDJEMkQ7IH1cbiAgLmMtYnJlYWRjcnVtYl9fbGluazpob3ZlciwgLmMtYnJlYWRjcnVtYl9fbGluazpmb2N1cyB7XG4gICAgLyogY29sb3I6IGluaXRpYWw7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci13aGl0ZSwgMTAlKTsgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ1NTY2O1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5jLWJyZWFkY3J1bWItbW9iaWxlIC5jLWJyZWFkY3J1bWJfX2xpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLXRvcDogLTIwcHg7IH1cbiAgLmMtYnJlYWRjcnVtYi1tb2JpbGUgLmMtYnJlYWRjcnVtYl9fbGluazpob3ZlciwgLmMtYnJlYWRjcnVtYi1tb2JpbGUgLmMtYnJlYWRjcnVtYl9fbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICBjb2xvcjogIzJEMkQyRDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgLmMtYnJlYWRjcnVtYi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYy1icmVhZGNydW1iX19pY29uIHtcbiAgc3Ryb2tlLXdpZHRoOiAwLjEyNXJlbTsgfVxuICAuYy1icmVhZGNydW1iX19tYWluLmlzLW9wZW4gLmMtYnJlYWRjcnVtYl9faWNvbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4uYy1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ1NTY2O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMC42MjVyZW07IH1cbiAgLmMtZm9vdGVyIGEge1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gICAgLmMtZm9vdGVyIGE6aG92ZXIsIC5jLWZvb3RlciBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLWZvb3Rlcl9fdG9wYmFyIHtcbiAgcGFkZGluZy1ib3R0b206IDEuNTYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0ZGRkZGRjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1mb290ZXJfX3RvcGJhciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5jLWZvb3Rlcl9fbG9nbyB7XG4gIHdpZHRoOiAxMjVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYzLjk5ZW0pIHtcbiAgICAuYy1mb290ZXJfX2xvZ28ge1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfSB9XG4gIC5jLWZvb3Rlcl9fbG9nbyBpbWcge1xuICAgIHdpZHRoOiAxMjVweDsgfVxuXG4uYy1mb290ZXJfX25hdkZvcm1hdHMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLWZvb3Rlcl9fbmF2Rm9ybWF0cyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5jLWZvb3Rlcl9fbmF2TWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1mb290ZXJfX25hdk1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYy1mb290ZXJfX2JvZHkge1xuICAvKiBAaW5jbHVkZSBtcSh3aWRlKSB7XHJcblxyXG4gICAgQHN1cHBvcnRzKGRpc3BsYXk6IGdyaWQpIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyIDFmcjtcclxuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XHJcbiAgICBcImEgYyBjIGIgZVwiXHJcbiAgICBcIi4gYyBjIGQgZVwiO1xyXG59XHJcbn0gKi8gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1mb290ZXJfX2JvZHkge1xuICAgICAgZGlzcGxheTogLW1zLWdyaWQ7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnI7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAuYy1mb290ZXJfX2JvZHkge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYSBiXCIgXCJjIGNcIiBcImYgZlwiIFwiZSBlXCI7IH0gfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtZm9vdGVyX19ib2R5IHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnI7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAuYy1mb290ZXJfX2JvZHkge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImMgY1wiIFwiYSBiXCIgXCJmIGZcIiBcImUgZVwiOyB9IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLWZvb3Rlcl9fYm9keSB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAuYy1mb290ZXJfX2JvZHkge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImMgYyBjIGNcIiBcImEgYSBiIGJcIiBcImYgZiBmIGZcIiBcImUgZSBlIGVcIjsgfSB9IH1cblxuLmMtZm9vdGVyX19hYm91dCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1mb290ZXJfX2Fib3V0IHtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogMTtcbiAgICAgIC8qYmFja2dyb3VuZC1jb2xvcjogI2YwMDsqLyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLmMtZm9vdGVyX19hYm91dCB7XG4gICAgICAgICAgZ3JpZC1hcmVhOiBhOyB9IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLWZvb3Rlcl9fYWJvdXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbjogMS8zO1xuICAgICAgLW1zLWdyaWQtcm93OiAyO1xuICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDI7IH1cbiAgICAgIC5jLWZvb3Rlcl9fYWJvdXQgdWwge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAuYy1mb290ZXJfX2Fib3V0IHVsOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgLmMtZm9vdGVyX19hYm91dCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7IH1cblxuLmMtZm9vdGVyX19wYXltZW50cyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmZmY7XG4gIC1tcy1ncmlkLWNvbHVtbjogMTtcbiAgLypiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwOyovXG4gIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiA0O1xuICAtbXMtZ3JpZC1yb3c6IDM7IH1cbiAgLmMtZm9vdGVyX19wYXltZW50cyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5jLWZvb3Rlcl9fcGF5bWVudHMgdWwgbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIC5jLWZvb3Rlcl9fcGF5bWVudHMgdWwgbGkucmlnaHQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgLmMtZm9vdGVyX19wYXltZW50cyB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtZm9vdGVyX19wYXltZW50cyB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XG4gICAgICAtbXMtZ3JpZC1yb3c6IDM7IH1cbiAgICAgIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAuYy1mb290ZXJfX3BheW1lbnRzIHtcbiAgICAgICAgICBncmlkLWFyZWE6IGY7XG4gICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzOyB9IH0gfVxuXG4uYy1mb290ZXJfX2Fib3V0IHNtYWxsIGVtLCAuYy1mb290ZXJfX2NvbnRhY3RzIHNtYWxsIGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjIyNTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSBhbmQgKG1heC13aWR0aDogNDcuOTllbSkge1xuICAgIC5jLWZvb3Rlcl9fYWJvdXQgc21hbGwgZW0sIC5jLWZvb3Rlcl9fY29udGFjdHMgc21hbGwgZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuXG4uYy1mb290ZXJfX2Fib3V0IHNtYWxsIGVtIHtcbiAgcGFkZGluZy1yaWdodDogN3Z3OyB9XG5cbi53cmFwLWNvbnRhY3RzIHtcbiAgLyogQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICA+IGRpdntcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgd2lkdGg6IDUwJTtcclxufVxyXG59ICovIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSBhbmQgKG1heC13aWR0aDogNjMuOTllbSkge1xuICAgIC53cmFwLWNvbnRhY3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDY1cHg7IH0gfVxuXG4uYy1mb290ZXJfX25hdkNhdGVnb3JpZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNDtcbiAgICAgIC1tcy1ncmlkLXJvdzogMTtcbiAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgcGFkZGluZy10b3A6IDEuNTYyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjU2MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2ZmZjsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5jLWZvb3Rlcl9fbmF2Q2F0ZWdvcmllcyB7XG4gICAgICAgICAgZ3JpZC1hcmVhOiBjO1xuICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMzsgfSB9IH1cblxuLmMtZm9vdGVyX19jb250YWN0cyB7XG4gIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiA0OyB9XG4gIC5jLWZvb3Rlcl9fY29udGFjdHMgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAuYy1mb290ZXJfX2NvbnRhY3RzIGxpIHtcbiAgICBtYXJnaW46IDAuNjI1cmVtIDA7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtZm9vdGVyX19jb250YWN0cyB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTsgfVxuICAgICAgQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5jLWZvb3Rlcl9fY29udGFjdHMge1xuICAgICAgICAgIGdyaWQtYXJlYTogYjtcbiAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7IH0gfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtZm9vdGVyX19jb250YWN0cyB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMjtcbiAgICAgIC1tcy1ncmlkLXJvdzogMjtcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgIC8qYmFja2dyb3VuZC1jb2xvcjogI2YwMDsqLyB9IH1cblxuLmMtZm9vdGVyX19lZGl0b3Ige1xuICAtbXMtZ3JpZC1yb3c6IDQ7IH1cbiAgLmMtZm9vdGVyX19lZGl0b3IgZW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtZm9vdGVyX19lZGl0b3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyOyB9XG4gICAgICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICAgICAgLmMtZm9vdGVyX19lZGl0b3Ige1xuICAgICAgICAgIGdyaWQtYXJlYTogZTsgfSB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1mb290ZXJfX2VkaXRvciB7XG4gICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNDsgfSB9XG5cbi5jLWZvb3Rlcl9fYm90dG9tTGluZSBwIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLmMtZm9vdGVyX19ib3R0b21MaW5lIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmMtZm9vdGVyX19zb2NpYWwge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAubm8tY3NzZ3JpZCAuYy1mb290ZXJfX2VkaXRvciwgLm5vLWNzc2dyaWQgLmMtZm9vdGVyX19zb2NpYWwsIC5uby1jc3NncmlkIGMtZm9vdGVyX19wYXltZW50cywgLm5vLWNzc2dyaWQgLmMtZm9vdGVyX19jb250YWN0cyB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm5vLWNzc2dyaWQgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzIHtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH0gfVxuXG4jY29va2llQ2hvaWNlSW5mbyB7XG4gIHotaW5kZXg6IDIwMDAwMDAwMDAwOyB9XG5cbi5jLWNvbnRhY3RzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5jLWNvbnRhY3RzX19uZXdzbGV0dGVyIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmMtY29udGFjdHNfX25ld3NsZXR0ZXIgaDUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuXG4uYy1jb250YWN0c19fZW1haWxbdHlwZT1cImVtYWlsXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0ZGRkZGRjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1heC13aWR0aDogODAlOyB9XG4gIC5jLWNvbnRhY3RzX19lbWFpbFt0eXBlPVwiZW1haWxcIl06Zm9jdXM6aW52YWxpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1czsgfVxuXG4uYy1jb250YWN0c19fbGFiZWwge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG5cbi5jLWNvbnRhY3RzX19idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbjogMC45Mzc1cmVtIDAgMDsgfVxuICAuYy1jb250YWN0c19fYnV0dG9uW3R5cGU9c3VibWl0XSB7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAuYy1jb250YWN0c19fYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlciB7XG4gICAgICBjb2xvcjogI2Q3M2UwMjsgfVxuXG4uYy1zb2NpYWxMaXN0IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtc29jaWFsTGlzdCB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfVxuICAgICAgLmMtc29jaWFsTGlzdCB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG5cbi5jLXNvY2lhbExpc3QgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtc29jaWFsTGlzdCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLmMtc29jaWFsTGlzdCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLXNvY2lhbExpc3Qgc3BhbiB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5jLXNvY2lhbExpc3Qgc3Bhbjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLWVkaXRvcnMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1lZGl0b3JzIHVsIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIGNvbHVtbi1nYXA6IDBweDsgfVxuICAgICAgLmMtZWRpdG9ycyB1bCBsaSB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtZWRpdG9ycyB1bCB7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICBjb2x1bW4tZ2FwOiAwcHg7IH0gfVxuXG4uYy1lZGl0b3JzIGxpIHtcbiAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAwLjYyNXJlbSAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uYy1zZWN0aW9uVGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAubC1tb2R1bGUgLmMtc2VjdGlvblRpdGxlLFxuICAubC1tb2R1bGUtLWhhbGYgLmMtc2VjdGlvblRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmMtc2VjdGlvblRpdGxlX19tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cblxuLmMtc2VjdGlvblRpdGxlX19sYWJlbCB7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDA7IH1cblxuLmMtc2VjdGlvblRpdGxlX19oaWdobGlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4uYy1zZWN0aW9uVGl0bGVfX2xpbmsge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICM0NDU1NjY7XG4gIG1hcmdpbi1ib3R0b206IDE3cHg7IH1cblxuLmMtYXR0YWNobWVudHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDsgfVxuXG4uYy1hdHRhY2htZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG5cbi5jLWF0dGFjaG1lbnRfX2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1hdHRhY2htZW50X19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uYy1hdHRhY2htZW50X19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jLWF0dGFjaG1lbnRfX3RpdGxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLWF0dGFjaG1lbnRfX3RpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtOyB9IH1cblxuLmMtYXR0YWNobWVudF9faW5mbyB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDEuMjI1OyB9XG5cbi5jLWF0dGFjaG1lbnRfX2ljb24ge1xuICBtYXJnaW4tdG9wOiAwLjM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfVxuXG4uYy1hdHRhY2htZW50X19pY29uLS1icmlnaHRlbmVkIHtcbiAgb3BhY2l0eTogMC4zOyB9XG5cbi5jLXJlbGF0ZWRMaW5rcyB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICM0NDU1NjY7IH1cbiAgLmMtcmVsYXRlZExpbmtzIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAgIC5jLXJlbGF0ZWRMaW5rcyB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9IH1cbiAgLmMtcmVsYXRlZExpbmtzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgLmMtcmVsYXRlZExpbmtzIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjYyNXJlbTtcbiAgICAgICAgZmxleDogMSAxIGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAyMHB4KTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jLXJlbGF0ZWRMaW5rcyBsaSB7XG4gICAgICAgIGZsZXg6IDEgMSBjYWxjKDMzJSAtIDIwcHgpO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMzMuMyUgLSAyMHB4KTsgfSB9XG4gICAgLmMtcmVsYXRlZExpbmtzIGxpIC5jLXByb2R1Y3RfX2F1dGhvciB7XG4gICAgICBmb250LXNpemU6IC45Mzc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICBmb250LWZhbWlseTogXCJMb3JhXCIsR2VvcmdpYSxzYW5zLXNlcmlmOyB9XG4gICAgICAuYy1yZWxhdGVkTGlua3MgbGkgLmMtcHJvZHVjdF9fYXV0aG9yIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxvcmFcIixHZW9yZ2lhLHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuICAuYy1yZWxhdGVkTGlua3MgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42NzU7XG4gICAgY29sb3I6ICMyRDJEMkQ7IH1cbiAgLmMtcmVsYXRlZExpbmtzIGEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmMtYnVsbGV0TGlzdCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBzcXVhcmU7XG4gIHBhZGRpbmctbGVmdDogMS41NjI1cmVtOyB9XG5cbi5jLWJ1bGxldExpc3QgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgY29sb3I6ICM0NDU1NjY7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuLmJ1bGxldExpc3Qge1xuICBsaXN0LXN0eWxlOiBzcXVhcmU7IH1cblxuLmMtY3VzdG9tUXVvdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG5cbi5jLWN1c3RvbVF1b3RlX19ib2R5IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMkQyRDJEO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cbiAgLmMtY3VzdG9tUXVvdGVfX2JvZHkgcCB7XG4gICAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQxNDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYy1jdXN0b21RdW90ZV9fYm9keSBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5jLWN1c3RvbVF1b3RlX19ib2R5OmJlZm9yZSwgLmMtY3VzdG9tUXVvdGVfX2JvZHk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB6LWluZGV4OiAtMTtcbiAgICB3aWR0aDogNi4yNXJlbTtcbiAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fwb2dlby1vZy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cbiAgICBAc3VwcG9ydHMgKG1hc2s6IHVybChcIi4uL2ltZy9hcG9nZW8tb2cuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlKSB7XG4gICAgICAuYy1jdXN0b21RdW90ZV9fYm9keTpiZWZvcmUsIC5jLWN1c3RvbVF1b3RlX19ib2R5OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDtcbiAgICAgICAgbWFzazogdXJsKFwiLi4vaW1nL2Fwb2dlby1vZy5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7IH0gfVxuICAuYy1jdXN0b21RdW90ZV9fYm9keTpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG4gIC5jLWN1c3RvbVF1b3RlX19ib2R5OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgtMSk7IH1cblxuLmMtaGlnaGxpZ2h0IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuICAuYy1oaWdobGlnaHQgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207IH1cblxuLmMtaGlnaGxpZ2h0X19pY29uIHtcbiAgdG9wOiAtMXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnNlY3Rpb24taG9tZSB7XG4gIHBhZGRpbmc6IDV2aCAwOyB9XG4gIC5zZWN0aW9uLWhvbWUuYmdDb2xvciB7XG4gICAgcGFkZGluZzogNXZoIDA7IH1cbiAgLnNlY3Rpb24taG9tZTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDIuNXZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuc2VjdGlvbi1ob21lOmZpcnN0LWNoaWxkIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA2OC43NXJlbTtcbiAgICAgIGJvdHRvbTogLThweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zZWN0aW9uLWhvbWU6Zmlyc3QtY2hpbGQgcGljdHVyZSB7XG4gICAgICAvKmZsb2F0OiBsZWZ0OyovIH1cbiAgLnNlY3Rpb24taG9tZSBoMSwgLnNlY3Rpb24taG9tZSBoMiB7XG4gICAgbWF4LXdpZHRoOiA0MGNoOyB9XG4gIC5zZWN0aW9uLWhvbWUgaDMsIC5zZWN0aW9uLWhvbWUgLmgzIHtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICAgIG1hcmdpbjogMCAwIC41cmVtIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAuc2VjdGlvbi1ob21lLmMtdGhyZWUtY29sIC5sLWNvbDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29sIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlY3Rpb24taG9tZS5jLXRocmVlLWNvbCAubC1jb2wtaW1nIHtcbiAgICBtYXJnaW46IDAgMS4yNXJlbTsgfVxuICAuc2VjdGlvbi1ob21lLmMtdGhyZWUtY29sIGltZyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggNXB4IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC4yNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgcCB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29scyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLnNlY3Rpb24taG9tZS5jLXRocmVlLWNvbCAubC1jb2w6bnRoLWNoaWxkKDIpIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgLnNlY3Rpb24taG9tZS5jLXRocmVlLWNvbCAubC1jb2w6bnRoLWNoaWxkKDEpLCAuc2VjdGlvbi1ob21lLmMtdGhyZWUtY29sIC5sLWNvbDpudGgtY2hpbGQoMykge1xuICAgICAgb3JkZXI6IDI7IH1cbiAgICAuc2VjdGlvbi1ob21lLmMtdGhyZWUtY29sIC5sLWNvbDpudGgtY2hpbGQoMSkgaDMsIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29sOm50aC1jaGlsZCgxKSAuaDMge1xuICAgICAgbWFyZ2luOiAwLjkzNzVyZW0gMDsgfVxuICAgIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29sOm50aC1jaGlsZCgxKSAuYy1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zZWN0aW9uLWhvbWUuYy10aHJlZS1jb2wgLmwtY29sOm50aC1jaGlsZCgzKSAuYy1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2VjdGlvbi1ob21lIGgzLCAuc2VjdGlvbi1ob21lIC5oMyB7XG4gICAgICBmb250LXNpemU6IDEuODhyZW07IH0gfVxuXG4vKlxyXG4uc2VjdGlvbi1ob21lICsgLnNlY3Rpb24taG9tZS5iZ0NvbG9ye1xyXG5tYXJnaW4tdG9wOiA1dmg7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWhvbWUuYmdDb2xvciArIC5zZWN0aW9uLWhvbWUuYmdDb2xvcntcclxubWFyZ2luOiAwO1xyXG59XHJcbiovXG4uYy1wYWdlSGVhZGVyLmMtaG9tZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYy1wYWdlSGVhZGVyLmMtaG9tZSAucGFnZUhlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IDEuODhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAuYy1wYWdlSGVhZGVyLmMtaG9tZSAucGFnZUhlYWRsaW5lLCAuYy1wYWdlSGVhZGVyLmMtaG9tZSAucGFnZVN1YnRpdGxlIHtcbiAgICBjb2xvcjogIzQ0NTU2NjsgfVxuICAuYy1wYWdlSGVhZGVyLmMtaG9tZSAucGFnZVN1YnRpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDQwY2g7XG4gICAgbWFyZ2luOiAwIGF1dG8gNXZoOyB9XG4gIC5jLXBhZ2VIZWFkZXIuYy1ob21lIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtcGFnZUhlYWRlci5jLWhvbWUgLnBhZ2VIZWFkbGluZSwgLmMtcGFnZUhlYWRlci5jLWhvbWUgaDEge1xuICAgICAgZm9udC1zaXplOiAzLjQ0cmVtOyB9IH1cblxuLnByb21vIHtcbiAgZm9udC1zaXplOiAwLjg4cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmFydGljbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzQ0NTU2NjsgfVxuICBhcnRpY2xlIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIGFydGljbGUubC1jb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgYXJ0aWNsZSAubC1jb2wge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgICBhcnRpY2xlIC5sLWNvbC5sLWNvbC1pbWcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgYXJ0aWNsZSAubC1jb2wubC1jb2wtaW1nIGltZyB7XG4gICAgICAgIC8qbWF4LWhlaWdodDogNTB2aDsqL1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICBhcnRpY2xlIHAge1xuICAgIHBhZGRpbmctdG9wOiAuNzVyZW07XG4gICAgbWFyZ2luLXRvcDogLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNDQ1NTY2OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNjZweCkge1xuICAgICAgYXJ0aWNsZSBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIGFydGljbGUgLmMtY3RhX19idXR0b24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGFydGljbGUgLmMtcHJvZHVjdF9fdHlwZS5jLXByb2R1Y3RfX3R5cGUtLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYXJ0aWNsZSAubC1jb2wubC1jb2wtaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgIGFydGljbGUgLmwtY29sLmwtY29sLWltZyBpbWcge1xuICAgICAgICAvKm1heC1oZWlnaHQ6IDQwdmg7Ki9cbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICBhcnRpY2xlIC5sLWNvbC10eHQge1xuICAgICAgb3JkZXI6IDI7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBhcnRpY2xlLmwtY29scyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgYXJ0aWNsZSAubC1jb2wge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIG1hcmdpbjogMCAxJTsgfSB9XG5cbi5jLXNlY3Rpb25UaXRsZS5ob21lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjg4cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICM0NDU1NjY7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogNXZoIDAgLjVyZW0gMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmMtc2VjdGlvblRpdGxlLmhvbWUge1xuICAgICAgZm9udC1zaXplOiAyLjI1cmVtOyB9IH1cblxuLmMtc2VjdGlvblRpdGxlLmhvbWUgKyBwLnN1YnRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNjBjaDsgfVxuXG4uYmdDb2xvci1kYXJrIGFydGljbGUge1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuICAuYmdDb2xvci1kYXJrIGFydGljbGUgcCB7XG4gICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cbiAgLmJnQ29sb3ItZGFyayBhcnRpY2xlIC5jLWJ1dHRvbiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cblxubWFpbiAuc2VjdGlvbi1ob21lOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU0OXB4KSB7XG4gICAgbWFpbiAuc2VjdGlvbi1ob21lOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLmMtcHJvbW8gLnByb21vIHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5jLXByb21vIGgzLCAuYy1wcm9tbyAuaDMge1xuICBmb250LXNpemU6IDEuODhyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jLXByb21vIGgzLCAuYy1wcm9tbyAuaDMge1xuICAgICAgZm9udC1zaXplOiAzcmVtOyB9XG4gICAgICAuYy1wcm9tbyBoMyAucHJvbW8sIC5jLXByb21vIC5oMyAucHJvbW8ge1xuICAgICAgICBmb250LXNpemU6IDEuMzVyZW07IH0gfVxuXG4uYy1wcm9tbyBwIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uYmlnLXR4dCB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5jLXNlbGVjdHMgZm9ybSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbjogMS44NzVyZW0gMDsgfVxuXG4uYy1zZWxlY3RzIC5sLWNvbCB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1zZWxlY3RzIC5sLWNvbCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAuYy1zZWxlY3RzIC5sLWNvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIC5jLXNlbGVjdHMgLmwtY29sOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH0gfVxuXG4uYy1zZWxlY3Qtb3JkZXIge1xuICBtYXgtd2lkdGg6IDQwMHB4OyB9XG4gIC5jLXNlbGVjdC1vcmRlciBzZWxlY3Qge1xuICAgIC8qIFxyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIixBcmlhbCxzYW5zLXNlcmlmOyBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjY4NzVyZW07ICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDtcbiAgICBib3JkZXItY29sb3I6ICNFMUU4RUQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jLXNlbGVjdC1vcmRlciBzZWxlY3Q6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTI5RkVBOyB9XG5cbi5jLXBsYXRmb3JtcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMS41NjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtcGxhdGZvcm1zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuLmMtcGxhdGZvcm1zX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxvcmFcIiwgR2VvcmdpYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uYy1wbGF0Zm9ybXNfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmMtcGxhdGZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1wbGF0Zm9ybSB7XG4gICAgICBtYXJnaW4tbGVmdDogMy4xMjVyZW07IH0gfVxuXG4uYy1wbGF0Zm9ybV9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMy4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYy1wbGF0Zm9ybV9faW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LWhlaWdodDogMS41NjI1cmVtOyB9XG5cbi5jLXJldmlld3Mge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmMtcmV2aWV3c19fbGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYy1yZXZpZXdzX19saW5lOjpiZWZvcmUsIC5jLXJldmlld3NfX2xpbmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBmbGV4OiAxO1xuICAgIGhlaWdodDogMC4wNjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyRDJEMkQ7IH1cblxuLmMtcmV2aWV3c19fbGluZS0tc3RhcnM6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cblxuLmMtcmV2aWV3c19fbGluZS0tc3RhcnM6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi5jLXJldmlld3NfX3N0YXIge1xuICBtYXJnaW46IDAuMzEyNXJlbTsgfVxuXG4uYy1yZXZpZXdzX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfVxuXG4uYy1yZXZpZXdzX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7IH1cblxuLmMtcmV2aWV3IHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH1cblxuLmMtcmV2aWV3X19ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtOyB9XG4gIC5jLXJldmlld19fYmxvY2txdW90ZSBwIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5jLXJldmlld19fYmxvY2txdW90ZSBwOjpiZWZvcmUge1xuICAgICAgY29udGVudDogb3Blbi1xdW90ZTsgfVxuICAgIC5jLXJldmlld19fYmxvY2txdW90ZSBwOjphZnRlciB7XG4gICAgICBjb250ZW50OiBjbG9zZS1xdW90ZTsgfVxuXG4uYy1yZXZpZXdfX2F1dGhvciB7XG4gIGNvbG9yOiAjNDQ1NTY2OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sLWFkdmFudGFnZXMgaDMge1xuICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9IH1cblxuLmMtYXV0aG9yc19fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5jLWF1dGhvcnMtLWdyaWQgLmMtYXV0aG9yc19fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLmMtYXV0aG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1hdXRob3Ige1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgLmMtYXV0aG9ycy0tZ3JpZCAuYy1hdXRob3Ige1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jLWF1dGhvcnMtLWdyaWQgLmMtYXV0aG9yIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH0gfVxuICAgIC5jLWF1dGhvcnMtLWdyaWQgLmMtYXV0aG9yOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuXG4uYy1hdXRob3JfX2ZpZ3VyZSB7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICB3aWR0aDogMTAwcHg7XG4gIG1pbi13aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIGZsZXgtc2hyaW5rOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtYXV0aG9yX19maWd1cmUge1xuICAgICAgbWFyZ2luOiAwIDAuOTM3NXJlbSAwIDA7IH1cbiAgICAgIC5jLWV4cGFuZGFibGUgLmMtYXV0aG9yX19maWd1cmUge1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogODUuNDI3NWVtKSB7XG4gICAgLmMtYXV0aG9yX19maWd1cmUge1xuICAgICAgbWluLXdpZHRoOiA1MHB4OyB9XG4gICAgICAuYy1hdXRob3JzLS1ncmlkIC5jLWF1dGhvcl9fZmlndXJlIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sLXBhZ2VDb250ZW50X19zaWRlIC5jLWF1dGhvcl9fZmlndXJlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG4uYy1hdXRob3JfX2ltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uYy1hdXRob3JfX25hbWUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uYy1hdXRob3JfX3JvbGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLmMtYXV0aG9yX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42NzU7XG4gIGNvbG9yOiAjNDQ1NTY2O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uYy1hdXRob3JfX2NvdXJzZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNDQ1NTY2OyB9XG5cbi5jLWF1dGhvcl9fYXR0YWNobWVudExpc3Qge1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gIC5jLWF1dGhvcl9fYXR0YWNobWVudExpc3QgLmMtYXR0YWNobWVudF9fdGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi5jLWF1dGhvcnNfX2NvbmNsdXNpb24ge1xuICBmb250LWZhbWlseTogXCJMb3JhXCIsIEdlb3JnaWEsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5jLXBhZ2VIZWFkZXJfX3RvcC1maWd1cmVXcmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jLXBhZ2VIZWFkZXJfX3RvcC1maWd1cmVXcmFwIC5jLWF1dGhvcl9fZmlndXJlIHtcbiAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiA3NXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMC42MjVyZW0gMCAwOyB9XG4gICAgLmMtcGFnZUhlYWRlcl9fdG9wLWZpZ3VyZVdyYXAgLmMtYXV0aG9yX19maWd1cmUgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNzVweDsgfVxuXG4uYy1jdGEge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTFFOEVEO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC42MjVyZW0gMS41NjI1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4NS40Mzc1ZW0pIHtcbiAgICAuYy1jdGEge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtZmxvdzogcm93OyB9IH1cbiAgLmMtY3RhIHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uYy1idXR0b24uYy1jdGFfX2J1dHRvbiwgLmMtY3RhX19idXR0b24ge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg1LjQzNzVlbSkge1xuICAgIC5jLWJ1dHRvbi5jLWN0YV9fYnV0dG9uLCAuYy1jdGFfX2J1dHRvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLmMtcHJvZHVjdF9fYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMS41NjI1cmVtOyB9XG5cbi5jLXBpbGxzX19pdGVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1waWxsc19faXRlbSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG5cbi5jLXNvY2lhbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG4gIC5jLXNvY2lhbCAuYy1zb2NpYWxfX2xhYmVsIHtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IC45Mzc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5jLXNvY2lhbF9fbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbWFyZ2luOiAwIC43NXJlbTsgfVxuXG4uYy1uZXdzbGV0dGVyQmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAuYy1uZXdzbGV0dGVyQmxvY2sgaDIsIC5jLW5ld3NsZXR0ZXJCbG9jayBoMywgLmMtbmV3c2xldHRlckJsb2NrIC5oMyB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsQXJpYWwsc2Fucy1zZXJpZjsgfVxuICAuYy1uZXdzbGV0dGVyQmxvY2sgaDMsIC5jLW5ld3NsZXR0ZXJCbG9jayAuaDMge1xuICAgIGNvbG9yOiAjNDQ1NTY2O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG5cbi8qIC5jLW5ld3NsZXR0ZXJCbG9ja19faW1nIHtcclxuZmxleDogMCAwIDM1JTtcclxudGV4dC1hbGlnbjogcmlnaHQ7XHJcbnBhZGRpbmc6ICRzcGFjZS14cztcclxufSAqL1xuLmMtbmV3c2xldHRlckJsb2NrX19jb250ZW50IHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgLmMtbmV3c2xldHRlckJsb2NrX19jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5jLW5ld3NsZXR0ZXJCbG9ja19fY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1uZXdzbGV0dGVyQmxvY2tfX2NvbnRlbnQge1xuICAgICAgZmxleDogMCAwIDYyJTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMS41NjI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1uZXdzbGV0dGVyQmxvY2tfX2NvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9IH1cblxuLnBhZ2UgLnBvc3RDb250ZW50IC5jLW5ld3NsZXR0ZXJCbG9jayB7XG4gIG9yZGVyOiAyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UgLnBvc3RDb250ZW50IC5jLW5ld3NsZXR0ZXJCbG9jayB7XG4gICAgICBtYXJnaW4tbGVmdDogMCU7XG4gICAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG5cbi5zaW5nbGUtcG9zdCAucG9zdENvbnRlbnQgLmMtbmV3c2xldHRlckJsb2NrIHtcbiAgb3JkZXI6IDI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2luZ2xlLXBvc3QgLnBvc3RDb250ZW50IC5jLW5ld3NsZXR0ZXJCbG9jayB7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jLW5ld3NsZXR0ZXJCbG9ja19faW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm5ld3NsZXR0ZXItcG9wdXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3NCUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3gtc2hhZG93OiAwIDAgMjVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0OyB9XG4gIC5uZXdzbGV0dGVyLXBvcHVwICNwb3B1cF9mcm1fZmllbGRfNjlfY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5uZXdzbGV0dGVyLXBvcHVwIGgzLCAubmV3c2xldHRlci1wb3B1cCAuaDMsIC5uZXdzbGV0dGVyLXBvcHVwIHAge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgLm5ld3NsZXR0ZXItcG9wdXAgaDMsIC5uZXdzbGV0dGVyLXBvcHVwIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5uZXdzbGV0dGVyLXBvcHVwIHAge1xuICAgIGZvbnQtc2l6ZTogLjk1cmVtO1xuICAgIGNvbG9yOiAjQUFBO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtIDAgMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5uZXdzbGV0dGVyLXBvcHVwIC5uZXdzbGV0dGVyLXBvcHVwX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxLjU2MjVyZW0gMS44NzVyZW0gMS41NjI1cmVtIDEuNTYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGOyB9XG4gICAgLm5ld3NsZXR0ZXItcG9wdXAgLm5ld3NsZXR0ZXItcG9wdXBfX2NvbnRlbnQgLmZybV9tZXNzYWdlIHAge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLm5ld3NsZXR0ZXItcG9wdXAgLmMtY29udGFjdHNfX2J1dHRvblt0eXBlPXN1Ym1pdF0ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAubmV3c2xldHRlci1wb3B1cCAuYy1jb250YWN0c19fYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlciwgLm5ld3NsZXR0ZXItcG9wdXAgLmMtY29udGFjdHNfX2J1dHRvblt0eXBlPXN1Ym1pdF06YWN0aXZlLCAubmV3c2xldHRlci1wb3B1cCAuYy1jb250YWN0c19fYnV0dG9uW3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2Q3M2UwMjsgfVxuICAubmV3c2xldHRlci1wb3B1cC5pcy1ob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbjsgfVxuICAubmV3c2xldHRlci1wb3B1cC5pcy1leHBhbmRlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbjsgfVxuICAubmV3c2xldHRlci1wb3B1cC5pcy1jZW50ZXJlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTUwdmggKyA1MCUpKSB0cmFuc2xhdGVYKGNhbGMoLTUwdncgKyA1MCUpKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5uZXdzbGV0dGVyLXBvcHVwIC5jbG9zZS1wb3B1cCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTVweDtcbiAgICByaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2xvc2UtcG9wdXAuc3ZnKSBuby1yZXBlYXQgMCAwO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA1NDBweCkge1xuICAgIC5uZXdzbGV0dGVyLXBvcHVwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTV2dztcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGxhY2Vob2xkZXItbmV3c2xldHRlci5qcGcpIG5vLXJlcGVhdCAwIDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG4gICAgICAubmV3c2xldHRlci1wb3B1cCBoMywgLm5ld3NsZXR0ZXItcG9wdXAgLmgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIC5uZXdzbGV0dGVyLXBvcHVwIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAubmV3c2xldHRlci1wb3B1cCB7XG4gICAgICBtYXgtd2lkdGg6IDY1dnc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3BsYWNlaG9sZGVyLW5ld3NsZXR0ZXIuanBnKSBuby1yZXBlYXQgMCAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIC5uZXdzbGV0dGVyLXBvcHVwIC5jbG9zZS1wb3B1cCB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2Fycm93LXBvcHVwLnN2Zykgbm8tcmVwZWF0IDAgMDsgfVxuICAgIC5uZXdzbGV0dGVyLXBvcHVwLmlzLWV4cGFuZGVkIC5jbG9zZS1wb3B1cCwgLm5ld3NsZXR0ZXItcG9wdXAuaXMtaG92ZXIgLmNsb3NlLXBvcHVwIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2xvc2UtcG9wdXAuc3ZnKSBuby1yZXBlYXQgMCAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5uZXdzbGV0dGVyLXBvcHVwIHtcbiAgICAgIG1heC13aWR0aDogNjI0cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIyNnB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9IH1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5ib2R5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7IH1cblxuYm9keS5vdmVybGF5OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXIgLjE1czsgfVxuXG4uYy10YWJsZVByaWNlX19yb3cge1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgLyogdGR7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgIH0gKi8gfVxuICAuYy10YWJsZVByaWNlX19yb3c6aG92ZXIsIC5jLXRhYmxlUHJpY2VfX3Jvdzpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lOiBzb2xpZCAxcHggI2Q3M2UwMjtcbiAgICBjb2xvcjogIzJEMkQyRDsgfVxuICAuYy10YWJsZVByaWNlX19yb3cuZmlsbC0tbXlzdGljIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTFFOEVEOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtdGFibGVQcmljZV9fcm93IC5jLXRhYmxlUHJpY2VfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYy10YWJsZVByaWNlX19kZXNjcmlwdGlvbiBwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4uYy10YWJsZVByaWNlX19yZW1haW5pbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjNDQ1NTY2O1xuICBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuXG4uYy10YWJsZVByaWNlX19hdmFpbGFibGUge1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW4tdG9wOiA1cHg7IH1cblxuLmMtdGFibGVQcmljZV9fZWFybHlCaXJkTGFiZWwge1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy10YWJsZVByaWNlX19wcmljZS5pcy1vbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICM0NDU1NjY7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtOyB9XG4gIC5jLXRhYmxlUHJpY2VfX3ByaWNlLmlzLW9sZDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgIHRvcDogNTAlOyB9XG5cbi5jLXRhYmxlUHJpY2VfX3JvdyB0ZCB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmMtdGFibGVQcmljZV9fcm93IHRkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEyMHB4OyB9IH1cblxuLmMtdGFibGVQcmljZV9fYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtdGFibGVQcmljZV9fYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy10YWJsZVByaWNlX19idXR0b24ge1xuICAgICAgcGFkZGluZzogMC4zMTI1cmVtIDA7XG4gICAgICBtaW4td2lkdGg6IDEyMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gIC5jLXRhYmxlUHJpY2VfX2Rlc2NyaXB0aW9uIC5jLXRhYmxlUHJpY2VfX2F2YWlsYWJsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jLXRhYmxlUHJpY2VfX2N0YSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtdGFibGVQcmljZV9fY3RhIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYy1wYWcge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmMtcGFnX19pY29uIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmMtcGFnX19sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1wYWdfX2xhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmMtcGFnX19zaW5nbGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5jLXBhZ19fbnVtYmVycyB7XG4gIG1hcmdpbjogMCAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtcGFnX19udW1iZXJzIHtcbiAgICAgIG1hcmdpbjogMCA0LjM3NXJlbTsgfSB9XG4gIC5jLXBhZ19fbnVtYmVycyAucGFnZS1udW1iZXJzIHtcbiAgICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLmMtcGFnX19udW1iZXIge1xuICBwYWRkaW5nOiAwLjYyNXJlbTsgfVxuICAuYy1wYWdfX251bWJlci5pcy1hY3RpdmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYy1wYWdlSGVhZGVyX190b3AgcCB7XG4gIGNvbG9yOiAjNDQ1NTY2O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jLXBhZ2VIZWFkZXJfX2F1dGhvciB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuXG4uYy1wYWdlSGVhZGVyX19ib2R5IHtcbiAgY29sb3I6ICMyRDJEMkQ7XG4gIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG5cbi5jLXZpZGVvUHJldmlld19fdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmMtdmlkZW9QcmV2aWV3X192aWRlbyAuYy12aWRlb1ByZXZpZXdfX2ltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmMtZXhwYW5kYWJsZSAuYy12aWRlb1ByZXZpZXdfX3ZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmMtdmlkZW9QcmV2aWV3X19wbGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmMtZW5yb2xsIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLmMtZW5yb2xsX19maWd1cmUge1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jLWVucm9sbF9fZmlndXJlIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIyNXB4O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG9yZGVyOiAyOyB9IH1cblxuLndvb2NvbW1lcmNlIC5jLWVucm9sbF9faW1nLCAuYy1lbnJvbGxfX2ltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLndvb2NvbW1lcmNlIC5jLWVucm9sbF9faW1nLCAuYy1lbnJvbGxfX2ltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47IH0gfVxuXG4ud29vY29tbWVyY2UgI3BheW1lbnQgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMzBweDsgfVxuXG4uYy1lbnJvbGxfX2JvZHkge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NTU2NjtcbiAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1lbnJvbGxfX2JvZHkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbSAxLjI1cmVtOyB9IH1cbiAgLmMtZW5yb2xsX19ib2R5IGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmMtZW5yb2xsX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1lbnJvbGxfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuXG4uYy1lbnJvbGxfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jLWVucm9sbF9fZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuXG4ucmliYm9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3M2UwMjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZmZjsgfVxuICAucmliYm9uIC5sLW1haW5XcmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDA7IH1cbiAgLnJpYmJvbiBoNCwgLnJpYmJvbiBoMiwgLnJpYmJvbiBwLCAucmliYm9uIGEge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIC5yaWJib24gaDQsIC5yaWJib24gaDIge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpOyB9XG4gIC5yaWJib24gcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbSAwOyB9XG4gIC5yaWJib24gaDQsIC5yaWJib24gaDIsIC5yaWJib24gYSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZmxleC1zaHJpbms6IDA7IH1cbiAgLnJpYmJvbiBhIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnJpYmJvbiBhOmhvdmVyLCAucmliYm9uIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLnJpYmJvbiBidXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2cHg7XG4gICAgcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU0OXB4KSB7XG4gICAgLnJpYmJvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA2NnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTY2cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yaWJib24gLmwtbWFpbldyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgICAucmliYm9uIGg0LCAucmliYm9uIGgyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAucmliYm9uIHAge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJpYmJvbiAubC1tYWluV3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDA7IH1cbiAgICAucmliYm9uIGg0LCAucmliYm9uIGgyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMS4yNXJlbSAwIDA7IH1cbiAgICAucmliYm9uIGJ1dHRvbiB7XG4gICAgICB0b3A6IDEycHg7IH0gfVxuXG5bZGF0YS10b29sdGlwXSxcbi50b29sdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIsXG4udG9vbHRpcDpiZWZvcmUsXG4udG9vbHRpcDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSAwLjJzIGVhc2UtaW4tb3V0LCAtd2Via2l0LXRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjcxLCAxLjcsIDAuNzcsIDEuMjQpO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSAwLjJzIGVhc2UtaW4tb3V0LCAtbW96LXRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjcxLCAxLjcsIDAuNzcsIDEuMjQpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMC4ycyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMnMgY3ViaWMtYmV6aWVyKDAuNzEsIDEuNywgMC43NywgMS4yNCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5bZGF0YS10b29sdGlwXTpob3ZlcjpiZWZvcmUsXG5bZGF0YS10b29sdGlwXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdOmZvY3VzOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdOmZvY3VzOmFmdGVyLFxuLnRvb2x0aXA6aG92ZXI6YmVmb3JlLFxuLnRvb2x0aXA6aG92ZXI6YWZ0ZXIsXG4udG9vbHRpcDpmb2N1czpiZWZvcmUsXG4udG9vbHRpcDpmb2N1czphZnRlciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnRvb2x0aXA6YmVmb3JlLFxuW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxMDAxOyB9XG5cbi50b29sdGlwOmFmdGVyLFxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdG9vbHRpcCk7XG4gIHBhZGRpbmc6IDAuMzEyNXJlbSAwLjkzNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNzNlMDI7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgei1pbmRleDogMTAwMDsgfVxuXG5bZGF0YS10b29sdGlwXTpiZWZvcmUsXG5bZGF0YS10b29sdGlwXTphZnRlcixcbi50b29sdGlwOmJlZm9yZSxcbi50b29sdGlwOmFmdGVyIHtcbiAgYm90dG9tOiAxMDAlO1xuICByaWdodDogLTZweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7IH1cblxuW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxuLnRvb2x0aXA6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTFweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2Q3M2UwMjsgfVxuXG5bZGF0YS10b29sdGlwXTpob3ZlcjpiZWZvcmUsXG5bZGF0YS10b29sdGlwXTpob3ZlcjphZnRlcixcbltkYXRhLXRvb2x0aXBdOmZvY3VzOmJlZm9yZSxcbltkYXRhLXRvb2x0aXBdOmZvY3VzOmFmdGVyLFxuLnRvb2x0aXA6aG92ZXI6YmVmb3JlLFxuLnRvb2x0aXA6aG92ZXI6YWZ0ZXIsXG4udG9vbHRpcDpmb2N1czpiZWZvcmUsXG4udG9vbHRpcDpmb2N1czphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG5cbi5wb3N0Q29udGVudCAubC1wYWdlQ29udGVudF9fbWFpbiAubC1tb2R1bGUgaW1nIHtcbiAgbWF4LWhlaWdodDogNTB2aDtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggNXB4IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC4yNSk7XG4gIG1hcmdpbjogMCA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4ucG9zdENvbnRlbnQgLmwtcGFnZUNvbnRlbnRfX21haW4gLmwtbW9kdWxlIGRpdiB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnBvc3RDb250ZW50IC5sLXBhZ2VDb250ZW50X19tYWluIC5sLW1vZHVsZSBwOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucG9zdENvbnRlbnQgZmlndXJlLCAucG9zdENvbnRlbnQgLndwLWNhcHRpb24tdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucG9zdENvbnRlbnQgLndwLWNhcHRpb24tdGV4dCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLnBvc3RDb250ZW50IC53cC1jYXB0aW9uIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxucHJlLCBwLmNvZGUtd3JhcCB7XG4gIHBhZGRpbmc6IDFlbTtcbiAgbWFyZ2luOiAuNWVtIDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjZjVmMmYwO1xuICBjb2xvcjogYmxhY2s7XG4gIHRleHQtc2hhZG93OiAwIDFweCB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIC1tb3otdGFiLXNpemU6IDQ7XG4gIC1vLXRhYi1zaXplOiA0O1xuICB0YWItc2l6ZTogNDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBub25lO1xuICAtbXMtaHlwaGVuczogbm9uZTtcbiAgaHlwaGVuczogbm9uZTsgfVxuXG50YWJsZS5zaG9wX3RhYmxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UxRThFRDsgfVxuICB0YWJsZS5zaG9wX3RhYmxlIHRkIHtcbiAgICBib3JkZXItY29sb3I6ICNFMUU4RUQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgdGFibGUuc2hvcF90YWJsZSB0aCxcbiAgdGFibGUuc2hvcF90YWJsZSB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0YWJsZS5zaG9wX3RhYmxlIHRoIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLndvb2NvbW1lcmNlLWVycm9yLFxuLndvb2NvbW1lcmNlLWluZm8sXG4ud29vY29tbWVyY2UtbWVzc2FnZSB7XG4gIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIC53b29jb21tZXJjZS1lcnJvcjpiZWZvcmUsXG4gIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSxcbiAgLndvb2NvbW1lcmNlLW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lOyB9XG5cbi53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgbGkuaXMtYWN0aXZlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUuc2hvcF90YWJsZSB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlLnNob3BfdGFibGUgdGQge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2dyYXk7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwLjkzNzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAud29vY29tbWVyY2UtY2FydC1mb3JtIHRhYmxlLnNob3BfdGFibGUgdGQucHJvZHVjdC1uYW1lIGEge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUuc2hvcF90YWJsZSB0aCB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwLjkzNzVyZW07IH1cblxuLmZsZXgtYWxpZ24tcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5mbGV4LWFsaWduLXJpZ2h0IC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IHtcbiAgICBwYWRkaW5nOiAwOyB9XG5cbi53b29jb21tZXJjZSBhLnJlbW92ZSB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC53b29jb21tZXJjZSBhLnJlbW92ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL2NvbnRyaWIvdGhlbWVzL2Fwb2dlb25saW5lL2Rpc3QvaW1nL2Nsb3NlLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDsgfVxuICAud29vY29tbWVyY2UgYS5yZW1vdmU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5jb3Vwb24ge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRoIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3JkZXItd2lkdGg6IDJweDsgfVxuICAud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQgKyBidXR0b24ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xOyB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgYnV0dG9uIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgLndvb2NvbW1lcmNlIHRhYmxlLmNhcnQgdGQuYWN0aW9ucyBidXR0b24uZGUtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGNvbG9yOiAjNDQ1NTY2O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbnRyLnN0cmVubmEgdGQuYWN0aW9ucyB7XG4gIHBhZGRpbmc6IDA7IH1cblxudHIuc3RyZW5uYSAuc3RyZW5uYS1jb250IHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMjVweDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NDlweCkge1xuICAgIHRyLnN0cmVubmEgLnN0cmVubmEtY29udCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICB0ci5zdHJlbm5hIC5zdHJlbm5hLWNvbnQgLmZpZ3VyZSB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NDlweCkge1xuICAgICAgdHIuc3RyZW5uYSAuc3RyZW5uYS1jb250IC5maWd1cmUge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAgIHRyLnN0cmVubmEgLnN0cmVubmEtY29udCAuZmlndXJlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICB0ci5zdHJlbm5hIC5zdHJlbm5hLWNvbnQgLnR4dCB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICBjb2xvcjogIzQzNTY2NztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NDlweCkge1xuICAgICAgdHIuc3RyZW5uYSAuc3RyZW5uYS1jb250IC50eHQge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAgIHRyLnN0cmVubmEgLnN0cmVubmEtY29udCAudHh0IC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLnRvZ2dsZS1jb3Vwb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuICAudG9nZ2xlLWNvdXBvbiA+IGJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICM0NDU1NjY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLnRvZ2dsZS1jb3Vwb24gPiBidXR0b246Zm9jdXMge1xuICAgICAgLypvdXRsaW5lOiBub25lOyovIH1cbiAgICAudG9nZ2xlLWNvdXBvbiA+IGJ1dHRvbjpob3ZlciB7XG4gICAgICBjb2xvcjogI2Q3M2UwMjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi53b29jb21tZXJjZS1jYXJ0IC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IGEuY2hlY2tvdXQtYnV0dG9uIHtcbiAgcGFkZGluZzogLjVlbSAxZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4ud29vY29tbWVyY2Utc2hpcHBpbmctY2FsY3VsYXRvciBwIHtcbiAgbWFyZ2luOiAxcmVtIDA7IH1cblxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWNhbGN1bGF0b3IgaW5wdXQsXG4ud29vY29tbWVyY2Utc2hpcHBpbmctY2FsY3VsYXRvciAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBoZWlnaHQ6IDM0cHg7IH1cblxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWNhbGN1bGF0b3IgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3JkZXItY29sb3I6ICMwMDAwMDA7IH1cblxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWNhbGN1bGF0b3IgYSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNhcnRfdG90YWxzIHRhYmxlLnNob3BfdGFibGUge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmNhcnRfdG90YWxzIHRhYmxlLnNob3BfdGFibGUgdGQge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAuY2FydF90b3RhbHMgdGFibGUuc2hvcF90YWJsZSB0aCB7XG4gICAgZm9udC1mYW1pbHk6IFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5wLnN0cmVuZ2h0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0uNWVtOyB9XG4gIHAuc3RyZW5naHRzIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiAjNDQ1NTY2OyB9XG5cbiNhZGRfcGF5bWVudF9tZXRob2QgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRyIHRkLFxuI2FkZF9wYXltZW50X21ldGhvZCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdHIgdGgsXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdHIgdGQsXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdHIgdGgsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRyIHRkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0ciB0aCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxZW07IH1cblxuLndvb2NvbW1lcmNlIHVsI3NoaXBwaW5nX21ldGhvZCBsaSB7XG4gIHBhZGRpbmc6IC4yNWVtIDAgLjI1ZW0gMzBweDtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC53b29jb21tZXJjZSB1bCNzaGlwcGluZ19tZXRob2QgbGkgbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDBweDsgfVxuICAud29vY29tbWVyY2UgdWwjc2hpcHBpbmdfbWV0aG9kIGxpIGlucHV0IHtcbiAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7IH1cblxuLndvb2NvbW1lcmNlLWNhcnQgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRhYmxlIHRoIHtcbiAgd2lkdGg6IDMwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdGFibGUgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbi53b29jb21tZXJjZS1jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0YWJsZSB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCAud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3ggKyBzcGFuOmJlZm9yZSxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCArIHNwYW46YmVmb3JlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCArIHNwYW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuXG4ucGF5bWVudF9tZXRob2RfcGF5cGFsIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuICAucGF5bWVudF9tZXRob2RfcGF5cGFsIHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxudGFibGUgKyAud2MtcHJvY2VlZC10by1jaGVja291dCB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuXG4uYXJnb21lbnRpID4gc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uYWNjb3VudC1uZXdzbGV0dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDtcbiAgcGFkZGluZzogMTBweCAyMHB4IDBweCAyMHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5hY2NvdW50LW5ld3NsZXR0ZXIgLmMtY29udGFjdHNfX2J1dHRvblt0eXBlPXN1Ym1pdF0ge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cbiAgLmFjY291bnQtbmV3c2xldHRlciAuY2hlY2tib3gtZmllbGQgbGFiZWw6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGOyB9XG5cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luLCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciB7XG4gIG1heC13aWR0aDogNTUwcHg7IH1cblxuLndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94ICsgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3ggKyBzcGFuOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTFFOEVEO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cblxuLndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94OmNoZWNrZWQgKyBzcGFuOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvY29udHJpYi90aGVtZXMvYXBvZ2VvbmxpbmUvZGlzdC9pbWcvY2hlY2suc3ZnKTtcbiAgdHJhbnNpdGlvbjogYWxsIC4yczsgfVxuXG4ud29vY29tbWVyY2UtaW5wdXQtd3JhcHBlciBsYWJlbC5jaGVja2JveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAud29vY29tbWVyY2UtaW5wdXQtd3JhcHBlciBsYWJlbC5jaGVja2JveCAud29vY29tbWVyY2UtSW5wdXQtLWNoZWNrYm94ICsgc3BhbjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMnB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UxRThFRDtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIC53b29jb21tZXJjZS1pbnB1dC13cmFwcGVyIGxhYmVsLmNoZWNrYm94IC53b29jb21tZXJjZS1JbnB1dC0tY2hlY2tib3g6Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2NvbnRyaWIvdGhlbWVzL2Fwb2dlb25saW5lL2Rpc3QvaW1nL2NoZWNrLnN2Zyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4yczsgfVxuXG4uanMtdG9nZ2xlLWZvcm0ge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi53b29jb21tZXJjZS1mb3JtLXJlZ2lzdGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAjNDQ1NTY2O1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAud29vY29tbWVyY2UtZm9ybS1jb3Vwb24tdG9nZ2xlIC53b29jb21tZXJjZS1pbmZvIGEge1xuICAgIGNvbG9yOiAjNDQ1NTY2OyB9XG4gICAgLndvb2NvbW1lcmNlLWZvcm0tY291cG9uLXRvZ2dsZSAud29vY29tbWVyY2UtaW5mbyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZDczZTAyOyB9XG5cbi53b29jb21tZXJjZSBmb3JtLmNoZWNrb3V0X2NvdXBvbi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWF4LXdpZHRoOiA0MjBweDsgfVxuICAud29vY29tbWVyY2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LWZpcnN0LFxuICAud29vY29tbWVyY2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LWxhc3Qge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC53b29jb21tZXJjZSBmb3JtLmNoZWNrb3V0X2NvdXBvbi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3ctZmlyc3Qge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAud29vY29tbWVyY2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZDNjZWQyO1xuICAgIG1heC13aWR0aDogMzAwcHg7IH1cbiAgLndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXRfY291cG9uLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXRfY291cG9uLndvb2NvbW1lcmNlLWZvcm0tY291cG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC53b29jb21tZXJjZSBmb3JtLmNoZWNrb3V0X2NvdXBvbi53b29jb21tZXJjZS1mb3JtLWNvdXBvbiAuZm9ybS1yb3ctZmlyc3QsXG4gICAgICAud29vY29tbWVyY2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24gLmZvcm0tcm93LWxhc3Qge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi53Y19wYXltZW50X21ldGhvZHMucGF5bWVudF9tZXRob2RzIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5wYXltZW50X21ldGhvZF9wYXlwYWwgbGFiZWwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IH1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgLnBheW1lbnRfbWV0aG9kX3BheXBhbCAuYWJvdXRfcGF5cGFsIHtcbiAgbGluZS1oZWlnaHQ6IDI7IH1cblxudGFibGUuc2hvcF90YWJsZS53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgdGFibGUuc2hvcF90YWJsZS53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUgdGgsXG4gIHRhYmxlLnNob3BfdGFibGUud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHRkLFxuICB0YWJsZS5zaG9wX3RhYmxlLndvb2NvbW1lcmNlLWNoZWNrb3V0LXJldmlldy1vcmRlci10YWJsZSB0Zm9vdCB0ZCxcbiAgdGFibGUuc2hvcF90YWJsZS53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUgdGZvb3QgdGgge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGFibGUuc2hvcF90YWJsZS53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUgLnByb2R1Y3QtbmFtZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5pbnB1dCxcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGhlaWdodDogNDBweDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGhlaWdodDogMzZweDsgfVxuXG5idXR0b24ud29vY29tbWVyY2UtQnV0dG9uLmMtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG5bZGlzYWJsZWRdW3R5cGU9c3VibWl0XSxcbmJ1dHRvbltkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuICBbZGlzYWJsZWRdW3R5cGU9c3VibWl0XTpob3ZlcixcbiAgYnV0dG9uW2Rpc2FibGVkXTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cblxuLndvb2NvbW1lcmNlIGZvcm0gLmMtYnV0dG9uICsgbGFiZWwuaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC50aXRsZSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAudGl0bGUgLmVkaXQge1xuICBmbG9hdDogbm9uZTtcbiAgY29sb3I6ICM0NDU1NjY7IH1cblxuLndvb2NvbW1lcmNlLUFkZHJlc3MgYWRkcmVzcyB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzIHRhYmxlLnNob3BfdGFibGUgdGQge1xuICBib3JkZXItY29sb3I6ICNFMUU4RUQ7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTsgfVxuXG4ud29vY29tbWVyY2Utb3JkZXItZGV0YWlscyB0YWJsZS5zaG9wX3RhYmxlIC53b29jb21tZXJjZS10YWJsZV9fcHJvZHVjdC1uYW1lLnByb2R1Y3QtbmFtZSBhIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLndvb2NvbW1lcmNlLW9yZGVycy10YWJsZSBzcGFuIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4ud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHRpbWUge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbiAgLndvb2NvbW1lcmNlLWNhcnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24gLmlucHV0LXRleHQgKyBidXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgLndvb2NvbW1lcmNlIGZvcm0gLmMtYnV0dG9uICsgbGFiZWwuaW5saW5lIHtcbiAgICBtYXJnaW46IDAgMCAwIDEuMjVyZW07IH1cbiAgICAud29vY29tbWVyY2UgZm9ybSAuYy1idXR0b24gKyBsYWJlbC5pbmxpbmUgaW5wdXQgKyBzcGFuOmJlZm9yZSB7XG4gICAgICB0b3A6IDNweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAuYWNjb3VudC1uZXdzbGV0dGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgLmFjY291bnQtbmV3c2xldHRlciAuY2hlY2tib3gtZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5hY2NvdW50LW5ld3NsZXR0ZXIgLmNoZWNrYm94LWZpZWxkIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndvb2NvbW1lcmNlLWNhcnQtZm9ybV9fY2FydC1pdGVtLmNhcnRfaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGRhcmtncmF5OyB9XG4gIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHIgdGQsXG4gIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ciB0ZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ciB0ZDpiZWZvcmUsXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyIHRkOmJlZm9yZSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyIHRkLnByb2R1Y3QtcmVtb3ZlLFxuICAgIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0ciB0ZC5wcm9kdWN0LXJlbW92ZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyOm50aC1jaGlsZCgybikgdGQsXG4gIC53b29jb21tZXJjZS1wYWdlIHRhYmxlLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB0cjpudGgtY2hpbGQoMm4pIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB0ZCB7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtOyB9XG4gIC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgLnByb2R1Y3QtdGh1bWJuYWlsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5hY2NvdW50LW5ld3NsZXR0ZXIge1xuICAgIHBhZGRpbmc6IDEwcHggNDBweCAxMHB4IDQwcHg7IH1cbiAgICAuYWNjb3VudC1uZXdzbGV0dGVyIC5jaGVja2JveC1maWVsZCBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgbGFiZWwuY2hlY2tib3gsXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyBsYWJlbC5jaGVja2JveCB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IGRpdi5wYXltZW50X2JveCBwIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLmMtcHJvZHVjdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtcHJvZHVjdHNGaWx0ZXIgLmMtcHJvZHVjdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8qIGhlaWdodDogMTAwJTsgKi9cbiAgICAgIC8qIGRpc3BsYXk6IGZsZXg7ICovXG4gICAgICAvKiBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAqL1xuICAgICAgLyogYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7ICovXG4gICAgICAvKiBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7ICovIH0gfVxuXG4uYy1wcm9kdWN0X190aXRsZSwgLmMtcHJvZHVjdF9fc3VidGl0bGUsIC5jLXJlbGF0ZWRMaW5rcyBhIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLmMtcHJvZHVjdF9fdGl0bGUsIC5jLXByb2R1Y3RfX3N1YnRpdGxlLCAuYy1yZWxhdGVkTGlua3MgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi5jLXByb2R1Y3RfX3RpdGxlLCAuYy1wcm9kdWN0X19zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmMtcmVsYXRlZExpbmtzIGEge1xuICBjb2xvcjogIzQ0NTU2NjsgfVxuXG4uYy1wcm9kdWN0X19zdWJ0aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uYy1wcm9kdWN0X19maWd1cmUge1xuICBtYXJnaW46IDEuMjVyZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiAyNDU1cHg7IH1cbiAgLmMtcHJvZHVjdF9fZmlndXJlIGltZyB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCA1cHggcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjI1KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCA1cHggcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjI1KTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLCAxNzAsIDE3MCwgMC4yNSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1wcm9kdWN0X19maWd1cmUge1xuICAgICAgbWF4LWhlaWdodDogMjc1cHg7IH1cbiAgICAgIC5jLXByb2R1Y3RfX2ZpZ3VyZSBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyNzVweDsgfSB9XG4gIC5jLXByb2R1Y3RfX2ZpZ3VyZSBhIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmMtcHJvZHVjdHNGaWx0ZXIgLmMtcHJvZHVjdF9fZmlndXJlIHtcbiAgICBtYXJnaW46IDAgMCAwLjYyNXJlbSAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jLXByb2R1Y3RzRmlsdGVyIC5jLXByb2R1Y3RfX2ZpZ3VyZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC8qXHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMyMHB4OyAvLyBoYXJkY29kZWQgYmVjYXVzZSBvZiBkaWZmZXJlbnQgYm9vayBmb3JtYXRzXHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7IC8vIG5lZWRlZCBzaW5jZSB3ZSByZW1vdmVkIHNoYWRvd1xyXG4gICAgICAgICAgICAqL1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmMtcHJvZHVjdHNGaWx0ZXIgLmMtcHJvZHVjdF9fZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAyNzVweDsgfSB9XG5cbi5jLXByb2R1Y3RfX2ZpZ3VyZV9fd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy1wcm9kdWN0X19maWd1cmVfX3dyYXAge1xuICAgICAgaGVpZ2h0OiBpbmhlcml0OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy1wcm9kdWN0X19maWd1cmVfX3dyYXAge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMjc1cHg7IH0gfVxuICAuYy1wcm9kdWN0X19maWd1cmVfX3dyYXAgaW1nIHtcbiAgICAvKndpZHRoOiAxMDAlOyovIH1cblxuLmMtcHJvZHVjdHNGaWx0ZXIgLmMtcHJvZHVjdF9faW1nU2hhZG93IHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4uYy1wcm9kdWN0c0dyaWQgLmMtcHJvZHVjdF9faW1nU2hhZG93IHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0c0dyaWQgLmMtcHJvZHVjdF9faW1nU2hhZG93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uYy1wcm9kdWN0X19pbmZvIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5jLXByb2R1Y3RfX2luZm8gYSB7XG4gICAgY29sb3I6ICM0NDU1NjY7IH1cbiAgICAuYy1wcm9kdWN0X19pbmZvIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNkNzNlMDI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYy1wcm9kdWN0c0ZpbHRlciAuYy1wcm9kdWN0X19pbmZvIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLmMtcHJvZHVjdF9fdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjNDQ1NTY2OyB9XG4gIC5jLXByb2R1Y3RfX3R5cGUuYy1wcm9kdWN0X190eXBlLS1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICB3aWR0aDogMTIycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAuYy1wcm9kdWN0X190eXBlLmMtcHJvZHVjdF9fdHlwZS0tb3ZlcmxheSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9IH1cbiAgLmMtcHJvZHVjdF9fdHlwZS5maWxsLWdyZWVuLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3MUIyMEU7IH1cbiAgLmMtcHJvZHVjdF9fdHlwZS5maWxsLXB1cnBsZS1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0YwMjUwOyB9XG4gIC5jLXByb2R1Y3RfX3R5cGUuZmlsbC1ibHVlLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzdlYWY7IH1cbiAgLmMtcHJvZHVjdF9fdHlwZS5maWxsLWJsdWUtZWJvb2stb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JmNGQ3ZjsgfVxuICAuYy1wcm9kdWN0X190eXBlLmZpbGwteWVsbG93LW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MTczMDA7IH1cbiAgLmMtcHJvZHVjdF9fdHlwZS5sYWJlbC1hbG9uZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAuNjI1cmVtIDAgMC45Mzc1cmVtIDA7IH1cblxuLmMtcHJvZHVjdF9fY3RhIHtcbiAgcGFkZGluZzogMzBweCAxMnB4IDE2cHg7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gIC5jLXByb2R1Y3RfX2N0YSAuYy1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uYy1wcm9kdWN0X19vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLmMtcHJvZHVjdF9fb3B0aW9ucyBzdmcge1xuICAgIGhlaWdodDogMzBweDsgfVxuICAuYy1wcm9kdWN0X19vcHRpb25zIGRpdiB7XG4gICAgZmxleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAuYy1wcm9kdWN0X19vcHRpb25zIGRpdjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0NDU1NjY7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgLmMtcHJvZHVjdF9fb3B0aW9ucyBkaXYub3B0aW9uLWlubGluZSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgICAgLmMtcHJvZHVjdF9fb3B0aW9ucyBkaXYub3B0aW9uLWlubGluZSBzdmcge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgICAgIC5jLXByb2R1Y3RfX29wdGlvbnMgZGl2Lm9wdGlvbi1pbmxpbmUgZGl2Om5vdChmaXJzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgLmMtcHJvZHVjdF9fb3B0aW9ucyBwIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmMtcHJvZHVjdF9fb3B0aW9ucyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDI4cHg7XG4gICAgbWF4LXdpZHRoOiA2MDBweDsgfVxuICAuYy1wcm9kdWN0X19vcHRpb25zIC5wcmljZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgfVxuICAuYy1wcm9kdWN0X19vcHRpb25zIC5kaXNjb3VudCB7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAuYy1wcm9kdWN0X19vcHRpb25zIC5kaXNjb3VudCBzcGFuIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5jLXByb2R1Y3RfX29wdGlvbnMgLmRpc2NvdW50IHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmMtcHJvZHVjdF9fb3B0aW9ucyAuaWNvbi1wcmljZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuYy1wcm9kdWN0X19vcHRpb25zIC5pY29uLXByaWNlIHN2ZyB7XG4gICAgICBtYXgtd2lkdGg6IDM4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgICAuYy1wcm9kdWN0X19vcHRpb25zIC5pY29uLXByaWNlIC5wcmljZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cbiAgICAuYy1wcm9kdWN0X19vcHRpb25zIC5pY29uLXByaWNlIC5kaXNjb3VudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cbiAgICAgIC5jLXByb2R1Y3RfX29wdGlvbnMgLmljb24tcHJpY2UgLmRpc2NvdW50IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG4gICAgLmMtcHJvZHVjdF9fb3B0aW9ucyAuaWNvbi1wcmljZSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLmMtcHJvZHVjdF9fYXV0aG9yIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzQ0NTU2NjtcbiAgZm9udC1zaXplOiAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5jLXByb2R1Y3RzRmlsdGVyIC5jLXByb2R1Y3RfX2F1dGhvciB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLmMtcHJvZHVjdF9fZGF0ZSB7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5jLXByb2R1Y3RfX2J1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuXG4uYy1wcm9kdWN0X19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMCAwIDAuNjI1cmVtIDA7IH1cbiAgLmMtcHJvZHVjdF9fZGVzY3JpcHRpb24gcCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICAuYy1wcm9kdWN0c0ZpbHRlciAuYy1wcm9kdWN0X19kZXNjcmlwdGlvbiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIC5jLXByb2R1Y3RfX2Rlc2NyaXB0aW9uIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzQ0NTU2NjsgfVxuICAuYy1wcm9kdWN0c0ZpbHRlciAuYy1wcm9kdWN0X19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmMtcHJvZHVjdF9fZGVzY3JpcHRpb246ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNhcnQtcmliYm9uIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3M2UwMjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zMTI1cmVtIDA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNhcnQtcmliYm9uLmlzLXZpc2libGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYXJ0LXJpYmJvbiAubC1tYWluV3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IC45Mzc1cmVtIDA7IH1cbiAgLmNhcnQtcmliYm9uIGEsIC5jYXJ0LXJpYmJvbiBoNCwgLmNhcnQtcmliYm9uIHAge1xuICAgIGZvbnQtc2l6ZTogLjkzNzVyZW07IH1cbiAgLmNhcnQtcmliYm9uIGEsIC5jYXJ0LXJpYmJvbiBoNCB7XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLEFyaWFsLHNhbnMtc2VyaWY7XG4gICAgZmxleC1zaHJpbms6IDA7IH1cbiAgLmNhcnQtcmliYm9uIGg0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTsgfVxuICAuY2FydC1yaWJib24gcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC45Mzc1cmVtIDA7IH1cbiAgLmNhcnQtcmliYm9uIGEge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAuY2FydC1yaWJib24gYTpob3ZlciwgLmNhcnQtcmliYm9uIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLmNhcnQtcmliYm9uIGJ1dHRvbiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogMCAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDZweDtcbiAgICByaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjBlbSkge1xuICAgIC5jYXJ0LXJpYmJvbiB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuY2FydC1yaWJib24gcCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjBlbSkge1xuICAgIC5jYXJ0LXJpYmJvbiAubC1tYWluV3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC5jYXJ0LXJpYmJvbiBoNCB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC42MjVyZW07IH1cbiAgICAuY2FydC1yaWJib24gcCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FydC1yaWJib24gLmwtbWFpbldyYXBwZXIge1xuICAgICAgcGFkZGluZzogMS4yNXJlbSAwOyB9XG4gICAgLmNhcnQtcmliYm9uIGg0IHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMS4yNXJlbSAwIDA7IH1cbiAgICAuY2FydC1yaWJib24gYnV0dG9uIHtcbiAgICAgIHRvcDogMTJweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAuYy1wcm9kdWN0c0dyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogbGVmdDsgfSB9XG5cbi5jLXByb2R1Y3RzR3JpZF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICBtYXgtd2lkdGg6IDI3NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtcHJvZHVjdHNHcmlkX19pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICBmbGV4OiAxIDEgY2FsYyg1MCUgLSAyMHB4KTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtcHJvZHVjdHNHcmlkX19pdGVtIHtcbiAgICAgIGZsZXg6IDEgMSBjYWxjKDMzJSAtIDIwcHgpO1xuICAgICAgbWF4LXdpZHRoOiAzMyU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICAuYy1wcm9kdWN0c0dyaWRfX2V4dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jLXByb2R1Y3RzTGlzdF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5jLXByb2R1Y3RzTGlzdF9faXRlbSAuYy1wcm9kdWN0X19maWd1cmUge1xuICAgIG1heC13aWR0aDogMzMlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7IH1cbiAgLmMtcHJvZHVjdHNMaXN0X19pdGVtIC5jLXByb2R1Y3RfX2luZm8ge1xuICAgIHdpZHRoOiA2MyU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLXByb2R1Y3RzTGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5jLXByb2R1Y3RzRmlsdGVyIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jLXByb2R1Y3RzRmlsdGVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDsgfSB9XG5cbi5jLXByb2R1Y3RzRmlsdGVyX19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDI3NXB4O1xuICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmMtcHJvZHVjdHNGaWx0ZXJfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgZmxleDogY2FsYyg1MCUgLSAyMHB4KTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmMtcHJvZHVjdHNGaWx0ZXJfX2l0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzJSAtIDIwcHgpO1xuICAgICAgZmxleDogY2FsYygzMy4zMzMlIC0gMjBweCk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLXByb2R1Y3RzRmlsdGVyX19pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMyUgLSAyMHB4KTtcbiAgICAgIGZsZXg6IGNhbGMoMzMuMzMzJSAtIDIwcHgpOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYy1wcm9kdWN0c0ZpbHRlcl9faXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICAgIGZsZXg6IGNhbGMoMjUlIC0gMjBweCk7IH0gfVxuICAuYy1wcm9kdWN0c0ZpbHRlcl9faXRlbS5jLXByb2R1Y3RzRmlsdGVyX19pdGVtLWF0YyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA4NnB4OyB9XG4gICAgLmMtcHJvZHVjdHNGaWx0ZXJfX2l0ZW0uYy1wcm9kdWN0c0ZpbHRlcl9faXRlbS1hdGMgLmMtcHJvZHVjdF9fY3RhIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDsgfVxuXG5ib2R5LmhpZGRlblgge1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuLnUtZm9udC1ub3JtYWwge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7IH1cblxuLnUtZm9udC1tZWRpdW0ge1xuICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7IH1cblxuLnUtZm9udC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50OyB9XG5cbi51LWFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLnUtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi51LXRleHQteHMge1xuICBmb250LXNpemU6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXRleHQtcyB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtdGV4dC1tIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXRleHQtbCB7XG4gIGZvbnQtc2l6ZTogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtdGV4dC14bCB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4udS10ZXh0LXh4bCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgLnUtaGlkZGVuLW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTllbSkge1xuICAudS1oaWRkZW4tdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA4NS40Mjc1ZW0pIHtcbiAgLnUtaGlkZGVuLWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4NS40Mzc1ZW0pIHtcbiAgLnUtaGlkZGVuLXcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gIC51LWhpZGRlbi1zIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAudS1oaWRkZW4tbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnUtbGlzdHJlc2V0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7IH1cblxuLmRlYnVnLWJvcmRlcnMge1xuICBib3gtc2hhZG93OiAwIDAgMXB4IDFweCByZWQgaW5zZXQ7IH1cblxuLmRlYnVnLWJvcmRlcnMtbmVzdGVkIHtcbiAgYm94LXNoYWRvdzogMCAwIDFweCAxcHggcmVkIGluc2V0OyB9XG4gIC5kZWJ1Zy1ib3JkZXJzLW5lc3RlZCAqIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4IDFweCBvcmFuZ2UgaW5zZXQ7IH1cblxuLmRlYnVnLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7IH1cblxuLmRlYnVnLWFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5jLWNvZGVfX3dyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmMtY29kZV9fd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDU1MHB4O1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuYy1jb2RlX193cmFwcGVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiByaWdodDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmMtY29kZV9fd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDY2MHB4OyB9IH1cblxuLmMtY29kZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLyogLS0gRmVhdGhlcmxpZ2h0cyBvdmVycmlkZXMgLS0gKi9cbi5mZWF0aGVybGlnaHQ6bGFzdC1vZi10eXBlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5mZWF0aGVybGlnaHQtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4iLCIvLyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxyXG4vLyAgICAjQ09MT1JTXHJcbi8vICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXHJcblxyXG4vKlxyXG4gKiBDb2xvcnMucHJpbWFyeSAoZG8gTk9UIHVzZSBpbiB0aGUgc3R5bGVzKVxyXG5cdCogICBzb3VyY2U6IGh0dHA6Ly9jaGlyLmFnL3Byb2plY3RzL25hbWUtdGhhdC1jb2xvci9cclxuICovXHJcblxyXG4kY29sb3Itc29saWQtYmxhY2s6ICAgICAgICMwMDAwMDA7IC8vIHN1cGVyIGJsYWNrXHJcbiRjb2xvci1maW9yZDogICAgICAgICAgICAgIzQ0NTU2NjsgLy8gZGFyayBibHVlXHJcbiRjb2xvci1sb2Jsb2xseTogICAgICAgICAgI0IzQkVDNzsgLy8gbWlkLWdyZXlcclxuJGNvbG9yLW15c3RpYzogICAgICAgICAgICAjRTFFOEVEOyAvLyBsaWdodC1ncmV5XHJcbiRjb2xvci1hcXVhLWhhemU6ICAgICAgICAgI0Y3RjlGQTtcclxuLy8kY29sb3ItdHJlZS1wb3BweTogICAgICAjRjg5ODFEOyAvLyBvcmFuZ2VcclxuJGNvbG9yLXRyZWUtcG9wcHk6XHRcdCAgI2Q3M2UwMjsgLy8gb3JhbmdlIG5ld1xyXG4kY29sb3ItY3VyaW91cy1ibHVlOiAgICAgICMxODk2REU7IC8vIGxpZ2h0IGJsdWVcclxuJGNvbG9yLWN1cmlvdXMtYmx1ZS1uZXc6ICAjMTc3ZWFmOyAvLyBsaWdodCBibHVlIG5ld1xyXG4kY29sb3ItY3VyaW91cy1ibHVlLW5ldy1lYm9vazogI2JmNGQ3ZjsgLy8gbGlnaHQgYmx1ZSBuZXcgcGVyIGVib29rXHJcbiRjb2xvci1maW9yZDogICAgICAgICAgICAgIzQ0NTU2NjsgLy8gZGFyayBibHVlIChhbG1vc3QgZ3JheSlcclxuJGNvbG9yLW15c3RpYzogICAgICAgICAgICAjRTFFOEVEOyAvLyB2ZXJ5IGxpZ2h0IGJsdWVcclxuXHJcbiRjb2xvci13aGl0ZTogICAgICAgICAgICAgI0ZGRkZGRjtcclxuJGNvbG9yLWdhbGxlcnk6ICAgICAgICAgICAjRUZFRkVGO1xyXG4kY29sb3Itc2lsdmVyLWNoYWxpY2U6ICAgICNBQUE7XHJcbiRjb2xvci1zaWx2ZXItc2NvcnBpb246ICAgIzVGNUY1RjtcclxuJGNvbG9yLWJsYWNrOiAgICAgICAgICAgICAjMkQyRDJEO1xyXG4kY29sb3ItZ3JheS1saWdodDogICAgICAgICNGOEY4Rjg7XHJcblxyXG4kY29sb3ItcHVycGxlOiAgICAgICAgICAgICM3RjAyNTA7XHJcbiRjb2xvci1ncmVlbjogICAgICAgICAgICAgIzcxQjIwRTtcclxuJGNvbG9yLXllbGxvdzogICAgICAgICAgICAjZjNjMjA1O1xyXG4kY29sb3IteWVsbG93LW5ldzogICAgICAgICM5MTczMDA7IC8vIHllbGxvdyBuZXdcclxuXHJcbi8qXHJcbiAqIENvbG9ycy5uZXV0cmFsIChkbyBOT1QgdXNlIGluIHRoZSBzdHlsZXMpXHJcbiAqL1xyXG5cclxuJF9jb2xvci13aGl0ZS0xMDogICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4kX2NvbG9yLXdoaXRlLTIwOiAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiRfY29sb3Itd2hpdGUtMzA6ICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuJF9jb2xvci13aGl0ZS00MDogICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG4kX2NvbG9yLXdoaXRlLTUwOiAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiRfY29sb3Itd2hpdGUtNjA6ICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcclxuJF9jb2xvci13aGl0ZS03MDogICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xyXG4kX2NvbG9yLXdoaXRlLTgwOiAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiRfY29sb3Itd2hpdGUtOTA6ICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuXHJcbiRfY29sb3ItYmxhY2stMTA6ICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuJF9jb2xvci1ibGFjay0yMDogICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4kX2NvbG9yLWJsYWNrLTMwOiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiRfY29sb3ItYmxhY2stNDA6ICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC40KTtcclxuJF9jb2xvci1ibGFjay01MDogICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4kX2NvbG9yLWJsYWNrLTYwOiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiRfY29sb3ItYmxhY2stNzA6ICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC43KTtcclxuJF9jb2xvci1ibGFjay04MDogICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4kX2NvbG9yLWJsYWNrLTkwOiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuOSk7XHJcblxyXG4vLyAqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlxyXG5cclxuLypcclxuICogQ29sb3JzLmFsaWFzZXMgKHVzZSB0aGVzZSBpbiB0aGUgc3R5bGVzKVxyXG4gKi9cclxuXHJcbiRjb2xvci10ZXh0OiAgICAgICAgICAgICRjb2xvci1ibGFjaztcclxuJGNvbG9yLWJvcmRlcjogICAgICAgICAgJGNvbG9yLXNpbHZlci1jaGFsaWNlO1xyXG4iLCIkZm9udC1wYXRoOiBcIi4uL2Fzc2V0cy9mb250cy9cIjtcclxuXHJcbi8vICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXHJcbi8vICAgICNGT05UIEZBTUlMSUVTXHJcbi8vICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXHJcblxyXG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TG9yYTo0MDAsNDAwaSw3MDAsNzAwaXxNb250c2VycmF0OjUwMCw3MDApO1xyXG4iLCIvLyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxyXG4vLyAgICAjVFlQT0dSQVBIWVxyXG4vLyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxyXG5cclxuLypcclxuICogVHlwb2dyYXBoeS50eXBlZmFjZVxyXG4gKi9cclxuXHJcbiRmb250LXNhbnM6ICAgXCJNb250c2VycmF0XCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1zZXJpZjogIFwiTG9yYVwiLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xyXG5cclxuJGZvbnQtc2l6ZS14czogIHB4KDExKTtcclxuJGZvbnQtc2l6ZS1zOiAgIHB4KDE1KTtcclxuJGZvbnQtc2l6ZS1tOiAgIHB4KDE4KTtcclxuJGZvbnQtc2l6ZS1sOiAgIHB4KDI1KTtcclxuJGZvbnQtc2l6ZS14bDogIHB4KDMwKTtcclxuJGZvbnQtc2l6ZS14eGw6IHB4KDQwKTtcclxuXHJcbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcclxuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xyXG4kZm9udC13ZWlnaHQtYm9sZDogICA3MDA7XHJcblxyXG4kbGluZS1oZWlnaHQteHhzOiAxO1xyXG4kbGluZS1oZWlnaHQteHM6ICAxLjE7XHJcbiRsaW5lLWhlaWdodC1zOiAgIDEuMjI1O1xyXG4kbGluZS1oZWlnaHQtbTogICAxLjQxNDtcclxuJGxpbmUtaGVpZ2h0LWw6ICAgMS42MTg7XHJcbiRsaW5lLWhlaWdodC14bDogIDEuNjc1O1xyXG4kbGluZS1oZWlnaHQteHhsOiAxLjgyNTtcclxuXHJcbi8qXHJcbiAqIFR5cG9ncmFwaHkuZGVmYXVsdHNcclxuICovXHJcblxyXG4kZm9udC1mYW1pbHktZGVmYXVsdDogICAkZm9udC1zZXJpZjtcclxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAgICAgJGZvbnQtc2l6ZS1tO1xyXG4kbGluZS1oZWlnaHQtZGVmYXVsdDogICAkbGluZS1oZWlnaHQtbTtcclxuXHJcbi8qXHJcbiAqIFV0aWxpdHkgbWl4aW5zXHJcbiAqL1xyXG5cclxuQG1peGluIHNhbnMtYm9sZCB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xyXG59XHJcblxyXG5AbWl4aW4gc2Fucy1yZWd1bGFyIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcclxufVxyXG5cclxuQG1peGluIHNlcmlmLWJvbGQge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZXJpZjtcclxuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbn1cclxuXHJcbkBtaXhpbiBzZXJpZi1yZWd1bGFyIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbn1cclxuXHJcbkBtaXhpbiBzZXJpZi1pdGFsaWMge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZXJpZjtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbkBtaXhpbiBzZXJpZi1pdGFsaWMtYm9sZCB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuIiwiLyoqXHJcbiAqIFotSU5ERVggU0NBTEUuXHJcbiAqXHJcbiAqIFotaW5kZXggdmFsdWVzIHNob3VsZCBhbHdheXMgYmUgZGVmaW5lZCBpbiBfei1pbmRleC5zY3NzLiBUaGlzXHJcbiAqIGFsbG93cyB1cyB0byBhdCBhIGdsYW5jZSBkZXRlcm1pbmUgcmVsYXRpdmUgbGF5ZXJzIG9mIG91ciBhcHBsaWNhdGlvbiBhbmQgcHJldmVudHMgYnVnc1xyXG4gKiBhcnJpc2luZyBmcm9tIGFyYml0cmFyeSB6LWluZGV4IHZhbHVlcy4gRG8gbm90IGVkaXQgdGhlIHotaW5kZXggc2NhbGUhIE9ubHkgYWRkIGFwcGxpY2F0aW9uXHJcbiAqIHNjb3BlZCB6LWluZGV4IHZhbHVlcy5cclxuICovXHJcblxyXG5cclxuJHotMDogICAgIDA7ICAvKiBzcGVjaWFsIHotaW5kZXggdmFsdWUgdXNlZCB0byBjcmVhdGVzIGEgWiBjb250ZXh0ICovXHJcblxyXG5cclxuJHotMTogICAxMDA7XHJcbiR6LTI6ICAgMjAwO1xyXG4kei0zOiAgIDMwMDsgXHJcbiR6LTQ6ICAgNDAwO1xyXG4kei01OiAgIDUwMDtcclxuJHotNjogICA2MDA7XHJcbiR6LTc6ICAgNzAwO1xyXG4kei04OiAgIDgwMDtcclxuJHotOTogICA5MDA7XHJcbiR6LTEwOiAxMDAwO1xyXG5cclxuXHJcbiR6LWNvbnRlbnQ6ICAkei0zICFnbG9iYWw7XHJcbiR6LWZvb3RlcjogICAkei01ICFnbG9iYWw7XHJcbiR6LWhlYWRlcjogICAkei02ICFnbG9iYWw7XHJcbiR6LWRyb3Bkb3duOiAkei03ICFnbG9iYWw7XHJcbiR6LW92ZXJsYXk6ICAkei04ICFnbG9iYWw7XHJcbiR6LW1vZGFsOiAgICAkei05ICFnbG9iYWw7XHJcbiIsIi8qXHJcblx0ICNJY29uc1xyXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1peGluIGljb25TaXplKCRzaXplKXtcclxuXHRoZWlnaHQ6ICRzaXplICogMXB4O1xyXG5cdHdpZHRoOiAkc2l6ZSAqIDFweDtcclxufVxyXG5cclxuQG1peGluIGljb25Db2xvcigkY29sb3IpIHtcclxuXHRzdmcge1xyXG5cdFx0ZmlsbDogJGNvbG9yO1xyXG5cdFx0c3Ryb2tlOiAkY29sb3I7XHJcblx0fVxyXG59XHJcbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxyXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xyXG4gIC8vIEluaXRpYWxpemUgdGhlIGdsb2JhbCB2YXJpYWJsZXMgbmVlZGVkIGJ5IHRoaXMgZnVuY3Rpb24uXHJcbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xyXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcclxuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6ICgpICFnbG9iYWw7XHJcbiAgfVxyXG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cclxuICBAaWYgJGV4Y2x1ZGUgIT0gbnVsbCB7XHJcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XHJcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcclxuICAgIC8vIHZhbHVlcyBpbnRvIGdsb2JhbCB2YXJpYWJsZXMgc28gd2UgY2FuIGFjY2VzcyB0aGVtIGluIGZ1dHVyZSBjYWxscy5cclxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XHJcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xyXG4gICAgQHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLy8gQ2hlY2sgaWYgJHNlY3Rpb24gaXMgaW4gdGhlICRpbmNsdWRlIGxpc3QuXHJcbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XHJcbiAgICBAcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cclxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcclxuICAgIEByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbiAgQHJldHVybiBmYWxzZTtcclxufVxyXG5cclxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xyXG4gICAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXHJcbiAgICAkaW5pdDogX25vcm1hbGl6ZS1pbmNsdWRlKCRpbmNsdWRlLCAkZXhjbHVkZSk7XHJcblxyXG4gICAgLy8gSWYgd2UndmUgY3VzdG9taXplZCBhbnkgZm9udCB2YXJpYWJsZXMsIHdlJ2xsIG5lZWQgZXh0cmEgcHJvcGVydGllcy5cclxuICAgIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweCBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4IG9yICRiYXNlLXVuaXQgIT0gJ2VtJyBvciAkaDEtZm9udC1zaXplICE9IDIgKiAkYmFzZS1mb250LXNpemUgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgKiAkYmFzZS1mb250LXNpemUgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplIG9yICRoNC1mb250LXNpemUgIT0gMSAqICRiYXNlLWZvbnQtc2l6ZSBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemUgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcclxuICAgICAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xyXG4gICAgfVxyXG4gICAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcclxuICAgICAgICAvKiBEb2N1bWVudFxyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cclxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cclxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cclxuICAgICAqL1xyXG4gICAgICAgIGh0bWwge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cclxuICAgICAgICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcclxuICAgICAgICAgICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxyXG4gICAgICAgICAgICAgICAgLy8gd2hlbiByb290IGZvbnQtc2l6ZSBpcyBzZXQgd2l0aCBweCBvciBlbS5cclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cclxuICAgICAgICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2VjdGlvbnMpIHtcclxuICAgICAgICAvKiBTZWN0aW9uc1xyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuICAgICAgICAvKipcclxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gICAgICovXHJcbiAgICAgICAgYm9keSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICAgICAqL1xyXG4gICAgICAgIGFydGljbGUsXHJcbiAgICAgICAgYXNpZGUsXHJcbiAgICAgICAgZm9vdGVyLFxyXG4gICAgICAgIGhlYWRlcixcclxuICAgICAgICBuYXYsXHJcbiAgICAgICAgc2VjdGlvbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcclxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXHJcbiAgICAgKi9cclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XHJcblxyXG4gICAgICAgICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xyXG4gICAgICAgICAgICAgICAgLyogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbnMuICovXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLjY3ZW0gMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDItZm9udC1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDMtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDQtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDUtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDYge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDYtZm9udC1zaXplKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGdyb3VwaW5nKSB7XHJcbiAgICAgICAgLyogR3JvdXBpbmcgY29udGVudFxyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuICAgICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xyXG4gICAgICAgICAgICAvKipcclxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cclxuICAgICAgICovXHJcbiAgICAgICAgICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZGwsXHJcbiAgICAgICAgICAgIG9sLFxyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxyXG4gICAgICAgKi9cclxuICAgICAgICAgICAgb2wsXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIG9sLFxyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgb2wsXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAgICAgKi9cclxuICAgICAgICBmaWdjYXB0aW9uLFxyXG4gICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cclxuICAgICAqL1xyXG4gICAgICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMWVtICRpbmRlbnQtYW1vdW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cclxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxyXG4gICAgICovXHJcbiAgICAgICAgaHIge1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cclxuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cclxuICAgICAqL1xyXG4gICAgICAgIG1haW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XHJcbiAgICAgICAgICAgIC8qKlxyXG4gICAgICAgKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxyXG4gICAgICAgKi9cclxuICAgICAgICAgICAgcCxcclxuICAgICAgICAgICAgcHJlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAgICAgKi9cclxuICAgICAgICBwcmUge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cclxuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xyXG4gICAgICAgIC8qIExpbmtzXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gICAgICAgIC8qKlxyXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxyXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxyXG4gICAgICovXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXHJcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcclxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gICAgICovXHJcbiAgICAgICAgYTphY3RpdmUsXHJcbiAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgIG91dGxpbmUtd2lkdGg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUodGV4dCkge1xyXG4gICAgICAgIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gICAgICAgIC8qKlxyXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxyXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cclxuICAgICAqL1xyXG4gICAgICAgIGFiYnJbdGl0bGVdIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cclxuICAgICAqL1xyXG4gICAgICAgIGIsXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cclxuICAgICAqL1xyXG4gICAgICAgIGIsXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4gICAgICovXHJcbiAgICAgICAgY29kZSxcclxuICAgICAgICBrYmQsXHJcbiAgICAgICAgc2FtcCB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cclxuICAgICAqL1xyXG4gICAgICAgIGRmbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXHJcbiAgICAgKi9cclxuICAgICAgICBtYXJrIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZThlZDtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAgICAgKi9cclxuICAgICAgICBzbWFsbCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogODAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxyXG4gICAgICogYWxsIGJyb3dzZXJzLlxyXG4gICAgICovXHJcbiAgICAgICAgc3ViLFxyXG4gICAgICAgIHN1cCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzUlO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzdWIge1xyXG4gICAgICAgICAgICBib3R0b206IC0wLjI1ZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzdXAge1xyXG4gICAgICAgICAgICB0b3A6IC0wLjVlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xyXG4gICAgICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcclxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICAgICAqL1xyXG4gICAgICAgIGF1ZGlvLFxyXG4gICAgICAgIHZpZGVvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXHJcbiAgICAgKi9cclxuICAgICAgICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXHJcbiAgICAgKi9cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXHJcbiAgICAgKi9cclxuICAgICAgICBzdmc6bm90KDpyb290KSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZm9ybXMpIHtcclxuICAgICAgICAvKiBGb3Jtc1xyXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXHJcbiAgICAgKi9cclxuICAgICAgICBidXR0b24sXHJcbiAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgb3B0Z3JvdXAsXHJcbiAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5OyAvKiAxICovXHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xyXG4gICAgICAgICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBtYXJnaW46IDA7IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cclxuICAgICAqL1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxyXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxyXG4gICAgICovXHJcbiAgICAgICAgYnV0dG9uLFxyXG4gICAgICAgIHNlbGVjdCB7IC8qIDEgKi9cclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXHJcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXHJcbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gICAgICovXHJcbiAgICAgICAgYnV0dG9uLFxyXG4gICAgICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cclxuICAgICAgICBbdHlwZT1cInJlc2V0XCJdLFxyXG4gICAgICAgIFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGJ1dHRvbixcclxuICAgICAgICBbdHlwZT1cImJ1dHRvblwiXSxcclxuICAgICAgICBbdHlwZT1cInJlc2V0XCJdLFxyXG4gICAgICAgIFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXHJcbiAgICAgICAqL1xyXG4gICAgICAgICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyoqXHJcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cclxuICAgICAgICovXHJcbiAgICAgICAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cclxuICAgICAqL1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxyXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cclxuICAgICAqL1xyXG4gICAgICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbiAgICAgICAgW3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICAgICAgICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cclxuICAgICAqL1xyXG4gICAgICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG4gICAgICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxyXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXHJcbiAgICAgKi9cclxuICAgICAgICBbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbiAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXHJcbiAgICAgICAgICAgIC8qKlxyXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxyXG4gICAgICAgKi9cclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcclxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxyXG4gICAgICovXHJcbiAgICAgICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXHJcbiAgICAgICAgICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgLyoqXHJcbiAgICAgKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICAgICAqL1xyXG4gICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDJweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXHJcbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXHJcbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XHJcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cclxuICAgICAqL1xyXG4gICAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cclxuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cclxuICAgICAqL1xyXG4gICAgICAgIHByb2dyZXNzIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKipcclxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXHJcbiAgICAgKi9cclxuICAgICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XHJcbiAgICAgICAgLyogSW50ZXJhY3RpdmVcclxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbiAgICAgICAgLypcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cclxuICAgICAqL1xyXG4gICAgICAgIGRldGFpbHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgLypcclxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cclxuICAgICAqL1xyXG4gICAgICAgIHN1bW1hcnkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qXHJcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICAgICAqL1xyXG4gICAgICAgIG1lbnUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XHJcbiAgICAgICAgICAgICAgICAvKlxyXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXHJcbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xyXG4gICAgICAgICAgICAgICAgLyoqXHJcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXHJcbiAgICAgICAgICovXHJcbiAgICAgICAgICAgICAgICBtZW51ICYsXHJcbiAgICAgICAgICAgICAgICBvbCAmLFxyXG4gICAgICAgICAgICAgICAgdWwgJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XHJcbiAgICAgICAgLyogU2NyaXB0aW5nXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAgICAgKi9cclxuICAgICAgICBjYW52YXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAgICAgKi9cclxuICAgICAgICB0ZW1wbGF0ZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XHJcbiAgICAgICAgLyogSGlkZGVuXHJcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4gICAgICAgIC8qKlxyXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxyXG4gICAgICovXHJcbiAgICAgICAgW2hpZGRlbl0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL1xyXG4vLyBWZXJ0aWNhbCBSaHl0aG1cclxuLy9cclxuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcclxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcclxuLy8gbGlicmFyeS4gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vanB0YXJhbnRvL3R5cGV5XHJcblxyXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xyXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gcHgge1xyXG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XHJcbiAgfVxyXG4gIEBpZiAkdW5pdCA9PSByZW0ge1xyXG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XHJcbiAgfVxyXG4gIEBlbHNlIGlmICR1bml0ID09IGVtIHtcclxuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XHJcbiAgfVxyXG4gIEBlbHNlIHsgLy8gJHVuaXQgPT0gcHhcclxuICAgIEByZXR1cm4gJHZhbHVlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xyXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3B4JyB7XHJcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcclxuICB9XHJcbiAgZm9udC1zaXplOiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvKTtcclxufVxyXG5cclxuQG1peGluIG5vcm1hbGl6ZS1yaHl0aG0oJHByb3BlcnR5LCAkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xyXG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xyXG4gICRzZXA6IHNwYWNlO1xyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdsaXN0JyB7XHJcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XHJcbiAgfVxyXG5cclxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xyXG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XHJcbiAgICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgJHZhbHVlICE9IDAge1xyXG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XHJcbiAgICB9XHJcbiAgICAkbm9ybWFsaXplZC12YWx1ZXM6IGFwcGVuZCgkbm9ybWFsaXplZC12YWx1ZXMsICR2YWx1ZSwgJHNlcCk7XHJcbiAgfVxyXG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xyXG59XHJcblxyXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xyXG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obWFyZ2luLCAkdmFsdWVzLCAkcmVsYXRpdmUtdG8pO1xyXG59XHJcblxyXG5AbWl4aW4gbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRmb250LXNpemUsICRtaW4tbGluZS1wYWRkaW5nOiAycHgpIHtcclxuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcclxuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cclxuICBAaWYgKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJGZvbnQtc2l6ZSkgPCAoJG1pbi1saW5lLXBhZGRpbmcgKiAyKSB7XHJcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obGluZS1oZWlnaHQsICRsaW5lcywgJGZvbnQtc2l6ZSk7XHJcbn1cclxuIiwiLy9cclxuLy8gVmFyaWFibGVzXHJcbi8vXHJcbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3NcclxuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cclxuXHJcbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cclxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXHJcbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxyXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cclxuJGJhc2UtdW5pdDogJ2VtJyAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxyXG4kYmFzZS1mb250LWZhbWlseTogc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cclxuJGgxLWZvbnQtc2l6ZTogMiAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGg0LWZvbnQtc2l6ZTogMSAgICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cclxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcclxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcclxuLy8gdmVydGljYWwgcmh5dGhtIG9uIHRoZSBwYWdlLCB3aGljaCBkaWZmZXJzIGZyb20gdGhlIG9yaWdpbmFsIE5vcm1hbGl6ZS5jc3MuXHJcbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2VcclxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cclxuJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG06IGZhbHNlICFkZWZhdWx0O1xyXG4iLCIvLyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxyXG4vLyAgICAjQkFTRVxyXG4vLyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxyXG5cclxuKiB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogMzIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJi5sb2FkaW5nOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjc1KTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTAwO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluO1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLWluO1xyXG4gICAgfVxyXG5cclxuICAgICYubG9hZGluZzphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDYwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgIHRvcDogLXdlYmtpdC1jYWxjKDUwJSAtIDUwcHgpO1xyXG4gICAgICAgIHRvcDogLW1vei1jYWxjKDUwJSAtIDUwcHgpO1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA1MHB4KTtcclxuICAgICAgICBsZWZ0OiAtd2Via2l0LWNhbGMoNTAlIC0gMzBweCk7XHJcbiAgICAgICAgbGVmdDogLW1vei1jYWxjKDUwJSAtIDMwcHgpO1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzBweCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBib3JkZXI6IDdweCBzb2xpZCByZ2JhKDI0OCwxNTIsMjksLjIpO1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNGODk4MUQ7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgIC1tb3otYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcclxuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB6LWluZGV4OiAyMDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbm1haW4ge1xyXG4gICAgQG1lZGlhKG1heC13aWR0aDo1NDlweCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDkwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbmltZyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgYSA+ICYge1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbmZpZ3VyZSB7XHJcbiAgICBtYXJnaW46ICRzcGFjZS1zIDA7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNlLW0gMDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNlLWwgMDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgJi5sLWNvbCB7XHJcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UtbSAwIDAgMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5maWdjYXB0aW9uLCAud3AtY2FwdGlvbi10ZXh0IHtcclxuICAgIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxufVxyXG5cclxudWwge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2UteHhsO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UteHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbm9sIHtcclxuICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWwgb3V0c2lkZSBub25lO1xyXG4gICAgLy8gbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2UtcztcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGl0ZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXhzO1xyXG4gICAgICAgIC8qICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoaXRlbSknLic7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1zO1xyXG4gICAgICAgIG1pbi13aWR0aDogcHgoMjUpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfSAqL1xyXG4gICAgfVxyXG59XHJcblxyXG5ibG9ja3F1b3RlIHtcclxuICAgIEBpbmNsdWRlIHNlcmlmLWl0YWxpYztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXhsO1xyXG4gICAgYm9yZGVyLWxlZnQ6ICRzcGFjZS1zIHNvbGlkICRjb2xvci1teXN0aWM7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjZS1sO1xyXG4gICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxufVxyXG5cclxuaHIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItbXlzdGljO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLnNyLW9ubHkge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbWFyZ2luOiAtMXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG59XHJcblxyXG4uc2tpcC1saW5rIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGhlaWdodDogMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGNvbG9yOiAkY29sb3Itc29saWQtYmxhY2sgIWltcG9ydGFudDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaDIge1xyXG4gICAgZm9udC1zaXplOiAxLjg3NXJlbSFpbXBvcnRhbnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yMjUhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOjk5MXB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW0haW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcclxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxyXG5cclxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XHJcbi8vLyBAdHlwZSBOdW1iZXIgKHVuaXQpXHJcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcclxuXHJcbi8vLyBSZXNwb25zaXZlIG1vZGVcclxuLy8vXHJcbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcclxuLy8vIChJRSA8PSA4LCBGaXJlZm94IDw9IDMsIE9wZXJhIDw9IDkpXHJcbi8vL1xyXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxyXG4vLy8gd2hlcmUgQG1lZGlhIHF1ZXJpZXMgYXJlIHJhc3Rlcml6ZWRcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gb2xkLWllLnNjc3NcclxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XHJcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXHJcbi8vL1xyXG4vLy8gQHR5cGUgQm9vbGVhblxyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb2ZmIERpc2FibGVkIHJlc3BvbnNpdmUgbW9kZSBkb2N1bWVudGF0aW9uXHJcbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8vIEJyZWFrcG9pbnQgbGlzdFxyXG4vLy9cclxuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXHJcbi8vLyBhY3Jvc3MgdGVhbSBtZW1iZXJzLiBJdCB3aWxsIGltcHJvdmUgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXHJcbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXHJcbi8vL1xyXG4vLy8gQHR5cGUgTWFwXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuJG1xLWJyZWFrcG9pbnRzOiAoXHJcbiAgICBtb2JpbGU6ICAzMjBweCxcclxuICAgIHRhYmxldDogIDc0MHB4LFxyXG4gICAgZGVza3RvcDogOTgwcHgsXHJcbiAgICB3aWRlOiAgICAxMzAwcHhcclxuKSAhZGVmYXVsdDtcclxuXHJcbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXdpZHRoIGxheW91dHMpXHJcbi8vL1xyXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXHJcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgd2lkdGggZm9yIHRoZSBmaXhlZC13aWR0aCBsYXlvdXRcclxuLy8vIChpLmUuIHdoZW4gJG1xLXJlc3BvbnNpdmUgaXMgc2V0IHRvICdmYWxzZScpIGluIGEgb2xkLWllLnNjc3NcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gdGFibGV0LW9ubHkuc2Nzc1xyXG4vLy8gIC8vXHJcbi8vLyAgLy8gSWdub3JlIGFsbCBzdHlsZXMgYWJvdmUgdGFibGV0IGJyZWFrcG9pbnQsXHJcbi8vLyAgLy8gYW5kIGZpeCB0aGUgc3R5bGVzIChlLmcuIGxheW91dCkgYXQgdGFibGV0IHdpZHRoXHJcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xyXG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xyXG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvIHRhYmxldFxyXG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxyXG4vLy9cclxuLy8vIEB0eXBlIFN0cmluZ1xyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcclxuLy8vXHJcbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxyXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcclxuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxyXG4vLy9cclxuLy8vIEB0eXBlIG1hcFxyXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XHJcblxyXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcclxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIOKApmApXHJcbi8vL1xyXG4vLy8gQHR5cGUgU3RyaW5nXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2NoYW5naW5nLW1lZGlhLXR5cGUgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xyXG4kbXEtbWVkaWEtdHlwZTogYWxsICFkZWZhdWx0O1xyXG5cclxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UtZm9udC1zaXplICgkbXEtYmFzZS1mb250LXNpemUpIC0gYDxib2R5PmAgZm9udCBzaXplXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gICRmb250LXNpemUtaW4tZW1zOiBtcS1weDJlbSgxNnB4KTtcclxuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyAkbXEtYmFzZS1mb250LXNpemVcclxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XHJcbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XHJcbiAgICBAaWYgdW5pdGxlc3MoJHB4KSB7XHJcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XHJcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XHJcbiAgICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XHJcbiAgICAgICAgQHJldHVybiAkcHg7XHJcbiAgICB9XHJcbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZS1mb250LXNpemUpICogMWVtO1xyXG59XHJcblxyXG4vLy8gR2V0IGEgYnJlYWtwb2ludCdzIHdpZHRoXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aChkZXNrdG9wKSkge31cclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBWYWx1ZSBpbiBwaXhlbHNcclxuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG5hbWUpIHtcclxuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAd2FybiBcIkJyZWFrcG9pbnQgI3skbmFtZX0gd2Fzbid0IGZvdW5kIGluICRicmVha3BvaW50cy5cIjtcclxuICAgIH1cclxufVxyXG5cclxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkZnJvbSAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLXR5cGUgKCRtcS1tZWRpYS10eXBlKSAtIE1lZGlhIHR5cGU6IHNjcmVlbiwgcHJpbnTigKZcclxuLy8vXHJcbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcclxuLy8vIEBpZ25vcmUgQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKVxyXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50ICgkbXEtc3RhdGljLWJyZWFrcG9pbnQpXHJcbi8vL1xyXG4vLy8gQGNvbnRlbnQgc3R5bGluZyBydWxlcywgd3JhcHBlZCBpbnRvIGEgQG1lZGlhIHF1ZXJ5IHdoZW4gJHJlc3BvbnNpdmUgaXMgdHJ1ZVxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxyXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cclxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLWdldC1icmVha3BvaW50LXdpZHRoXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gIC5lbGVtZW50IHtcclxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGUpIHtcclxuLy8vICAgICAgY29sb3I6IHJlZDtcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XHJcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEobW9iaWxlLCB0YWJsZXQpIHtcclxuLy8vICAgICAgY29sb3I6IGdyZWVuO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJGFuZDogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScpIHtcclxuLy8vICAgICAgY29sb3I6IHRlYWw7XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcSg5NTBweCkge1xyXG4vLy8gICAgICBjb2xvcjogaG90cGluaztcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKHRhYmxldCwgJG1lZGlhLXR5cGU6IHNjcmVlbikge1xyXG4vLy8gICAgICBjb2xvcjogaG90cGluaztcclxuLy8vICAgIH1cclxuLy8vICAgIC8vIEFkdmFuY2VkIHVzZTpcclxuLy8vICAgICRteS1icmVha3BvaW50czogKEw6IDkwMHB4LCBYTDogMTIwMHB4KTtcclxuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcclxuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG5AbWl4aW4gbXEoXHJcbiAgICAkZnJvbTogZmFsc2UsXHJcbiAgICAkdW50aWw6IGZhbHNlLFxyXG4gICAgJGFuZDogZmFsc2UsXHJcbiAgICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXHJcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcclxuICAgICRyZXNwb25zaXZlOiAkbXEtcmVzcG9uc2l2ZSxcclxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbikge1xyXG4gICAgJG1pbi13aWR0aDogMDtcclxuICAgICRtYXgtd2lkdGg6IDA7XHJcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xyXG5cclxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxyXG4gICAgQGlmICRmcm9tIHtcclxuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0oJGZyb20pO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcclxuICAgIEBpZiAkdW50aWwge1xyXG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0oJHVudGlsKTtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpKSAtIC4wMWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZGlzYWJsZWQsIHJhc3Rlcml6ZSB0aGUgb3V0cHV0IG91dHNpZGUgQG1lZGlhIGJsb2Nrc1xyXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cclxuICAgIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XHJcbiAgICAgICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XHJcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcclxuXHJcbiAgICAgICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcclxuICAgICAgICBAaWYgKFxyXG4gICAgICAgICAgICAkYW5kID09IGZhbHNlXHJcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgYW5kIChcclxuICAgICAgICAgICAgICAgICR1bnRpbCA9PSBmYWxzZSBvciAkbWF4LXdpZHRoID49ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxyXG5cclxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcclxuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcclxuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xyXG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy8gQWRkIGEgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICBAaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludCh0dnNjcmVlbiwgMTkyMHB4KTtcclxuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cclxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcclxuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkd2lkdGgpO1xyXG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XHJcbn1cclxuXHJcbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3NcclxuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xyXG4vLy9cclxuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xyXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xyXG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XHJcbiAgICBib2R5OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XHJcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XHJcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcclxuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTAwO1xyXG5cclxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXHJcbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XHJcbiAgICAgICAgICAgICR3aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xyXG4gICAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcclxufVxyXG4iLCIvLy8gUmVtb3ZlIHRoZSB1bml0IG9mIGEgbGVuZ3RoXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bWJlciAtIE51bWJlciB0byByZW1vdmUgdW5pdCBmcm9tXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcclxuXHRAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcclxuXHRcdEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xyXG5cdH1cclxuXHJcblx0QHJldHVybiAkbnVtYmVyO1xyXG59XHJcblxyXG4kYmFzZS1mb250LXNpemU6IDE2cHg7XHJcblxyXG4vLyBhbGlhcyB0byBtcS1weDJlbSBmcm9tIHNhc3MtbXE7IHJlcGxhY2UgaWYgc2Fzcy1tcSBpcyByZW1vdmVkXHJcbkBmdW5jdGlvbiBweDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XHJcblx0QHJldHVybiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBweDJyZW0oJHB4KSB7XHJcblx0QHJldHVybiBzdHJpcC11bml0KG1xLXB4MmVtKCRweCwgJGJhc2UtZm9udC1zaXplKSkgKyAwcmVtO1xyXG59XHJcblxyXG4vLyBzaG9ydGN1dCBmb3IgdGhlIHByZWZlcnJlZCBweC1jb252ZXJzaW9uIGZ1bmN0aW9uXHJcbkBmdW5jdGlvbiBweCgkcHgpIHtcclxuXHRAcmV0dXJuIHB4MnJlbShzdHJpcC11bml0KCRweCkgKiAxcHgpO1xyXG59XHJcbiIsIiRhcnItdC1wYXJhZ3JhcGhzLXNpemVzOiAgJGZvbnQtc2l6ZS1zLCAkZm9udC1zaXplLXMsICRmb250LXNpemUtbTsgLy8gMTUsMTUsMjBcclxuJHQtYXV0aG9yOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLXM7XHJcbiR0LXNtYWxsLXRleHQ6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1zO1xyXG4kdC1yZWxhdGVkbGlzdHM6ICAgICAgICAgICRmb250LXNpemUteHM7XHJcblxyXG4vLyBjb2xvclxyXG4kbGlua0hvdmVyOiAgICAgICAgICAgICAgICRjb2xvci10cmVlLXBvcHB5O1xyXG5cclxuLyotLS0tLS0tLS0tICBCb2R5ICAtLS0tLS0tLS0tKi9cclxuXHJcbioge1xyXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyAvLyBvdXRsaW5lLWNvbG9yOiAkY29sb3Itb3V0bGluZTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG5cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1kZWZhdWx0O1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtZGVmYXVsdDtcclxuXHJcbiAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtbDtcclxuICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLSAgUGFyYWdyYXBocyAgLS0tLS0tLS0tLSovXHJcblxyXG5wIHtcclxuICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuXHJcbiAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcclxuICB9XHJcblxyXG4gIC5sLXBhZ2VDb250ZW50X19zaWRlICYge1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1tO1xyXG4gICAgfVxyXG4gIH1cclxuICAgIFxyXG4gICAgJi5pbmRlbnQtdHh0e1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNlLXM7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0gIERlZmF1bHQgdGV4dCAgLS0tLS0tLS0tLSovXHJcblxyXG5hIHtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgfVxyXG59XHJcblxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxufVxyXG5cclxuZW0ge1xyXG4gIEBpbmNsdWRlIHNlcmlmLWl0YWxpYztcclxufVxyXG5cclxuaHIge1xyXG4gIG1hcmdpbjogMXJlbSAwO1xyXG59XHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiAkdC1zbWFsbC10ZXh0O1xyXG59XHJcblxyXG5maWdjYXB0aW9uLCAud3AtY2FwdGlvbi10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgY29sb3I6ICRjb2xvci1zaWx2ZXItc2NvcnBpb247XHJcbn1cclxuLndwLWNhcHRpb24tdGV4dCB7XHJcblxyXG4gICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xyXG59XHJcbm1hcmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW15c3RpYztcclxufVxyXG5cclxuXHJcblxyXG4iLCIkYXJyLXQtaDE6ICBweCgyNSksIHB4KDMwKSwgcHgoNDApO1xyXG4kYXJyLXQtaDI6ICBweCgyMiksIHB4KDI1KSwgcHgoMzApO1xyXG4kYXJyLXQtaDM6ICBweCgyMCksIHB4KDIyKSwgcHgoMjUpO1xyXG4kYXJyLXQtaDQ6ICBweCgyMCksIHB4KDIwKSwgcHgoMjApO1xyXG4kYXJyLXQtaDU6ICBweCgxNSksIHB4KDE1KSwgcHgoMTUpO1xyXG5cclxuJGMtaGVhZGxpbmU6ICRjb2xvci1zb2xpZC1ibGFjaztcclxuJGMtc3VidGl0bGU6ICRjb2xvci1maW9yZDtcclxuJHQtaGVhZC1saW5laGVpZ2h0OiAkbGluZS1oZWlnaHQtcztcclxuXHJcbi8qLS0tLS0tLS0tLSAgSGVhZGluZyAgLS0tLS0tLS0tLSovXHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUge1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGluZS1oZWlnaHQ6ICR0LWhlYWQtbGluZWhlaWdodDtcclxufVxyXG5cclxuaDEsXHJcbi5oMSxcclxuJWZvbnQtaDEge1xyXG4gIEBpbmNsdWRlIHNhbnMtYm9sZDtcclxuICBmb250LXNpemU6IG50aCgkYXJyLXQtaDEsIDEpO1xyXG5cclxuICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgIGZvbnQtc2l6ZTogbnRoKCRhcnItdC1oMSwgMik7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICBmb250LXNpemU6IG50aCgkYXJyLXQtaDEsIDMpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gbm90ZTogZGVmYXVsdCBoMiBpcyBib2xkXHJcbmgyLFxyXG4uaDIsXHJcbiVmb250LWgyIHtcclxuICBAaW5jbHVkZSBzYW5zLWJvbGQ7XHJcbiAgZm9udC1zaXplOiBudGgoJGFyci10LWgyLCAxKTtcclxuXHJcbiAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICBmb250LXNpemU6IG50aCgkYXJyLXQtaDIsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgZm9udC1zaXplOiBudGgoJGFyci10LWgyLCAzKTtcclxuICB9XHJcbn1cclxuXHJcbmgzLFxyXG4uaDMsXHJcbiVmb250LWgzIHtcclxuICBAaW5jbHVkZSBzZXJpZi1ib2xkO1xyXG4gIGZvbnQtc2l6ZTogbnRoKCRhcnItdC1oMywgMSk7XHJcbiAgbWFyZ2luLWJvdHRvbTogcHgoMjUpO1xyXG5cclxuICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgIGZvbnQtc2l6ZTogbnRoKCRhcnItdC1oMywgMik7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICBmb250LXNpemU6IG50aCgkYXJyLXQtaDMsIDMpO1xyXG4gIH1cclxufVxyXG5cclxuaDQsXHJcbi5oNCxcclxuJWZvbnQtaDQge1xyXG4gIEBpbmNsdWRlIHNlcmlmLWJvbGQ7XHJcbiAgZm9udC1zaXplOiBudGgoJGFyci10LWg0LCAxKTtcclxufVxyXG5cclxuaDUsXHJcbi5oNSxcclxuJWZvbnQtaDUge1xyXG4gIEBpbmNsdWRlIHNhbnMtYm9sZDtcclxuICBmb250LXNpemU6IG50aCgkYXJyLXQtaDUsIDEpIWltcG9ydGFudDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4ucG9zdENvbnRlbnQgaDIge1xyXG4gICAgQGluY2x1ZGUgc2VyaWYtYm9sZDtcclxuICAgIFxyXG59XHJcblxyXG4ucG9zdENvbnRlbnQgaDUge1xyXG4gICAgQGluY2x1ZGUgc2VyaWYtYm9sZDtcclxuICAgIHRleHQtdHJhbnNmb3JtOm5vbmU7IFxyXG4gICAgZm9udC1zaXplOiBudGgoJGFyci10LWg0LCAxKTtcclxuICAgIG1hcmdpbi1ib3R0b206IHB4KDI1KTtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICBmb250LXNpemU6IG50aCgkYXJyLXQtaDQsIDIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBmb250LXNpemU6IG50aCgkYXJyLXQtaDQsIDMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0gIEdlbmVyaWMgaGVhZGxpbmVzICAtLS0tLS0tLS0tKi9cclxuLnBhZ2VIZWFkbGluZSB7XHJcbiAgICBAZXh0ZW5kICVmb250LWgxO1xyXG4gICAgY29sb3I6ICRjLWhlYWRsaW5lO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLW07XHJcbn1cclxuXHJcbi5wYWdlU3VidGl0bGUge1xyXG4gIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtbDtcclxuICBjb2xvcjogJGMtc3VidGl0bGU7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XHJcblxyXG4gIC5jLW1haW5JdGVtX19pbmZvICYge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnZVN1YnRpdGxlICsgaW1ne1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbn1cclxuXHJcbi5jLWF1dGhvcl9fYXR0YWNobWVudExpc3QgaDUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAuOTM3NXJlbSAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luOiAwIC4zMTI1cmVtIDAgMCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLEFyaWFsLHNhbnMtc2VyaWYhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucG9zdENvbnRlbnQgb2wge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcclxufSIsIlxyXG4vKiBGb3Jtc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCxcclxub3B0Z3JvdXAsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBmb250OiBpbmhlcml0O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4qIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxyXG4qL1xyXG5cclxuYnV0dG9uIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLyoqXHJcbiogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcclxuKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cclxuKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbiogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXHJcbiovXHJcblxyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXHJcbnNlbGVjdCB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xyXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXHJcbn1cclxuXHJcbi8qKlxyXG4qIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiovXHJcblxyXG5idXR0b25bZGlzYWJsZWRdLFxyXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbmJ1dHRvbjpkaXNhYmxlZCxcclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuYnV0dG9uOmRpc2FibGVkOmhvdmVyLFxyXG5idXR0b25bZGlzYWJsZWRdOmhvdmVyIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gICAgY29sb3I6ICM2NjY7XHJcbn1cclxuXHJcbi8qKlxyXG4qIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuKi9cclxuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyoqXHJcbiogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxyXG4qIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4qL1xyXG5cclxuaW5wdXQge1xyXG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLyoqXHJcbiogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4qIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXHJcbipcclxuKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4qIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbiovXHJcblxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXHJcbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4qIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXHJcbiogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcclxuKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiovXHJcblxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuKi9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XHJcbiAgICAvKiAxICovXHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAgIC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXHJcbiogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xyXG4qIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuKi9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vKipcclxuKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiovXHJcblxyXG5maWVsZHNldCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xyXG4gICAgbWFyZ2luOiAwIDJweDtcclxufVxyXG5cclxuLyoqXHJcbiogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxyXG4qIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuKi9cclxuXHJcbmxlZ2VuZCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICAvKiAxICovXHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4qL1xyXG5cclxudGV4dGFyZWEge1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4qIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cclxuKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuKi9cclxuXHJcbm9wdGdyb3VwIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuaW5wdXRbdHlwZT1cInRleHRcIl0sXHJcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcclxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxyXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxyXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXHJcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXHJcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcclxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXHJcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgICBwYWRkaW5nOiAwLjc1ZW0gMC42ZW07XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAvL2JveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCAjZGRkOyAvLyBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIG1hcmdpbjogMC4yNWVtIDA7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKlxyXG5OZWVkIHRvIHNlcGFyYXRlIG91dCB0aGUgOm5vdCgpIHNlbGVjdG9yIGZyb20gdGhlIHJlc3Qgb2YgdGhlIENTUyAyLjEgc2VsZWN0b3JzXHJcbnNpbmNlIElFOCB3b24ndCBleGVjdXRlIENTUyB0aGF0IGNvbnRhaW5zIGEgQ1NTMyBzZWxlY3Rvci5cclxuKi9cclxuXHJcbmlucHV0Om5vdChbdHlwZV0pIHtcclxuICAgIHBhZGRpbmc6IDAuNWVtIDAuNmVtO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCAjZGRkO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLyogQ2hyb21lIChhcyBvZiB2LjMyLzM0IG9uIE9TIFgpIG5lZWRzIGFkZGl0aW9uYWwgcm9vbSBmb3IgY29sb3IgdG8gZGlzcGxheS4gKi9cclxuXHJcbi8qIE1heSBiZSBhYmxlIHRvIHJlbW92ZSB0aGlzIHR3ZWFrIGFzIGNvbG9yIGlucHV0cyBiZWNvbWUgbW9yZSBzdGFuZGFyZGl6ZWQgYWNyb3NzIGJyb3dzZXJzLiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cImNvbG9yXCJdIHtcclxuICAgIHBhZGRpbmc6IDAuMmVtIDAuNWVtO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcclxuaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcclxuc2VsZWN0OmZvY3VzLFxyXG50ZXh0YXJlYTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMTI5RkVBO1xyXG59XHJcblxyXG4vKlxyXG5OZWVkIHRvIHNlcGFyYXRlIG91dCB0aGUgOm5vdCgpIHNlbGVjdG9yIGZyb20gdGhlIHJlc3Qgb2YgdGhlIENTUyAyLjEgc2VsZWN0b3JzXHJcbnNpbmNlIElFOCB3b24ndCBleGVjdXRlIENTUyB0aGF0IGNvbnRhaW5zIGEgQ1NTMyBzZWxlY3Rvci5cclxuKi9cclxuXHJcbmlucHV0Om5vdChbdHlwZV0pOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBib3JkZXItY29sb3I6ICMxMjlGRUE7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJmaWxlXCJdOmZvY3VzLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiB0aGluIHNvbGlkICMxMjlGRUE7XHJcbiAgICBvdXRsaW5lOiAxcHggYXV0byAjMTI5RkVBO1xyXG59XHJcblxyXG4vLyAucHVyZS1jaGVja2JveCxcclxuLy8gLnB1cmUtcmFkaW8ge1xyXG4vLyAgICAgbWFyZ2luOiAwLjVlbSAwO1xyXG4vLyAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vIH1cclxuaW5wdXRbdHlwZT1cInRleHRcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwiZW1haWxcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwidXJsXCJdW2Rpc2FibGVkXSxcclxuaW5wdXRbdHlwZT1cImRhdGVcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwibW9udGhcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwidGltZVwiXVtkaXNhYmxlZF0sXHJcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXVtkaXNhYmxlZF0sXHJcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXVtkaXNhYmxlZF0sXHJcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdW2Rpc2FibGVkXSxcclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXVtkaXNhYmxlZF0sXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl1bZGlzYWJsZWRdLFxyXG5pbnB1dFt0eXBlPVwidGVsXCJdW2Rpc2FibGVkXSxcclxuaW5wdXRbdHlwZT1cImNvbG9yXCJdW2Rpc2FibGVkXSxcclxuc2VsZWN0W2Rpc2FibGVkXSxcclxudGV4dGFyZWFbZGlzYWJsZWRdIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZGVkO1xyXG4gICAgY29sb3I6ICNjYWQyZDM7XHJcbn1cclxuXHJcbi8qXHJcbk5lZWQgdG8gc2VwYXJhdGUgb3V0IHRoZSA6bm90KCkgc2VsZWN0b3IgZnJvbSB0aGUgcmVzdCBvZiB0aGUgQ1NTIDIuMSBzZWxlY3RvcnNcclxuc2luY2UgSUU4IHdvbid0IGV4ZWN1dGUgQ1NTIHRoYXQgY29udGFpbnMgYSBDU1MzIHNlbGVjdG9yLlxyXG4qL1xyXG5cclxuaW5wdXQ6bm90KFt0eXBlXSlbZGlzYWJsZWRdIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZGVkO1xyXG4gICAgY29sb3I6ICNjYWQyZDM7XHJcbn1cclxuXHJcbmlucHV0W3JlYWRvbmx5XSxcclxuc2VsZWN0W3JlYWRvbmx5XSxcclxudGV4dGFyZWFbcmVhZG9ubHldIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbiAgICAvKiBtZW51IGhvdmVyIGJnIGNvbG9yICovXHJcbiAgICBjb2xvcjogIzc3NztcclxuICAgIC8qIG1lbnUgdGV4dCBjb2xvciAqL1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjY2NjO1xyXG59XHJcblxyXG5pbnB1dDpmb2N1czppbnZhbGlkLFxyXG50ZXh0YXJlYTpmb2N1czppbnZhbGlkLFxyXG5zZWxlY3Q6Zm9jdXM6aW52YWxpZCB7XHJcbiAgICBjb2xvcjogI2I5NGE0ODtcclxuICAgIGJvcmRlci1jb2xvcjogI2U5MzIyZDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXM6aW52YWxpZDpmb2N1cyxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzOmludmFsaWQ6Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1czppbnZhbGlkOmZvY3VzIHtcclxuICAgIG91dGxpbmUtY29sb3I6ICNlOTMyMmQ7XHJcbn1cclxuXHJcbnNlbGVjdCB7XHJcbiAgICAvKiBOb3JtYWxpemVzIHRoZSBoZWlnaHQ7IHBhZGRpbmcgaXMgbm90IHN1ZmZpY2llbnQuICovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1maW9yZDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDU0cHg7XHJcbiAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogJHNwYWNlLXhzICRzcGFjZS14bCAkc3BhY2UteHMgJHNwYWNlLW07XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXM7XHJcblxyXG4gICAgbGFiZWwgKyAmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UteHhzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VsZWN0X193cmFwcGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NoZXZyb24tZG93bi5zdmcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweCAzMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk2JSBjZW50ZXI7XHJcblxyXG4gICAgICAgICY6Oi1tcy1leHBhbmQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCArICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS14eHM7XHJcbiAgICB9XHJcbiAgICAvKiAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb250ZW50OiAnICc7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvY2hldnJvbi1kb3duLnN2ZycpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjJweCAzMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6ICRzcGFjZS1sO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xOyAvLyBkZXZlIHN0YXJlIHNvdHRvIGFsbGEgc2VsZWN0LCBpbiBxdWVzdG8gbW9kbyBhbmNoZSBsYSBpY29uIGFwcmUgbGEgdGVuZGluYVxyXG4gICAgfSAqL1xyXG59XHJcblxyXG5sYWJlbCB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIG1hcmdpbjogMC41ZW0gMCAwLjJlbTtcclxuICAgIGNvbG9yOiBpbml0aWFsO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcclxufVxyXG5cclxubGFiZWwgKyBpbnB1dFt0eXBlPVwiZGF0ZVwiXSB7XHJcbiAgICBtYXgtd2lkdGg6IDgwJTtcclxufVxyXG5cclxuLmNoZWNrYm94LWZpZWxkIHtcclxuICAgIGxhYmVsIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbXlzdGljO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4MCU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvY29udHJpYi90aGVtZXMvYXBvZ2VvbmxpbmUvZGlzdC9pbWcvY2hlY2suc3ZnKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xyXG4gICAgfVxyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMCAwLjc1ZW07XHJcbiAgICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbmxlZ2VuZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMC4zZW0gMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuM2VtO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLXhzO1xyXG59XHJcblxyXG4uZm9ybS1maWVsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtbTtcclxufVxyXG5cclxuLndvb2NvbW1lcmNlLXJvdy1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLndvb2NvbW1lcmNlLXJvdy1tYWtldmlzaWJsZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1oZWxwLXRpcDo6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogMTRweDtcclxuICAgIGhlaWdodDogMTRweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbnRlbnQ6IFwiP1wiO1xyXG4gICAgY3Vyc29yOiBoZWxwO1xyXG4gICAgYmFja2dyb3VuZDogIzY2NjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBmb250LXdlaWdodDogMTAwO1xyXG59XHJcblxyXG4jdGlwdGlwX2hvbGRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgei1pbmRleDogODY3NTMwOTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDBcclxufVxyXG5cclxuI3RpcHRpcF9ob2xkZXIudGlwX3RvcCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4XHJcbn1cclxuXHJcbiN0aXB0aXBfaG9sZGVyLnRpcF90b3AgI3RpcHRpcF9hcnJvd19pbm5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02cHg7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMzMzXHJcbn1cclxuXHJcbiN0aXB0aXBfaG9sZGVyLnRpcF9ib3R0b20ge1xyXG4gICAgcGFkZGluZy10b3A6IDVweFxyXG59XHJcblxyXG4jdGlwdGlwX2hvbGRlci50aXBfYm90dG9tICN0aXB0aXBfYXJyb3dfaW5uZXIge1xyXG4gICAgbWFyZ2luLXRvcDogLTVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzMzM1xyXG59XHJcblxyXG4jdGlwdGlwX2hvbGRlci50aXBfcmlnaHQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1cHhcclxufVxyXG5cclxuI3RpcHRpcF9ob2xkZXIudGlwX3JpZ2h0ICN0aXB0aXBfYXJyb3dfaW5uZXIge1xyXG4gICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMzMzXHJcbn1cclxuXHJcbiN0aXB0aXBfaG9sZGVyLnRpcF9sZWZ0IHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDVweFxyXG59XHJcblxyXG4jdGlwdGlwX2hvbGRlci50aXBfbGVmdCAjdGlwdGlwX2Fycm93X2lubmVyIHtcclxuICAgIG1hcmdpbi10b3A6IC02cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTdweDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMzMzXHJcbn1cclxuXHJcbiN0aXB0aXBfY29udGVudCwgLmNoYXJ0LXRvb2x0aXAsIC53Y19lcnJvcl90aXAge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBmb250LXNpemU6IC44ZW07XHJcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgYmFja2dyb3VuZDogIzMzMztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIHBhZGRpbmc6IC42MThlbSAxZW07XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwuMilcclxufVxyXG5cclxuI3RpcHRpcF9jb250ZW50IGNvZGUsIC5jaGFydC10b29sdGlwIGNvZGUsIC53Y19lcnJvcl90aXAgY29kZSB7XHJcbiAgICBwYWRkaW5nOiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjODg4XHJcbn1cclxuXHJcbiN0aXB0aXBfYXJyb3csICN0aXB0aXBfYXJyb3dfaW5uZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6IDZweDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHdpZHRoOiAwXHJcbn1cclxuXHJcbltpZCQ9YXV0b2NvbXBsZXRlLWxpc3RdIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlIGZvcm0uY2hlY2tvdXQsIC53b29jb21tZXJjZS1FZGl0QWNjb3VudEZvcm0ge1xyXG4gICAgI2FjY291bnRfbmV3c2xldHRlcl9maWVsZCB7XHJcbiAgICAgICAgKyAuYXJnb21lbnRpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY2hlY2tlZCArIC5hcmdvbWVudGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mcm1fZXJyb3Ige1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgY29sb3I6ICNiOTRhNDg7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkcywgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB7XHJcbiAgICAuZm9ybS1yb3c6bm90KFtpZCQ9X2FkZHJlc3NfMl9maWVsZF0pOm5vdChbaWQkPWlzY29tcGFueV9maWVsZF0pIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA4NXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGVnYWwge1xyXG4gICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgZm9udC1zaXplOiAxMHB4O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgICYud29vY29tbWVyY2UtaW52YWxpZCB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAjYTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZmllbGRzZXQubGVnYWwge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XHJcblxyXG4gICAgbGVnZW5kIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIG1hcmdpbjogMCAzcHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB0b3A6IDNweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNwbGFjZV9vcmRlciB7XHJcbiAgICBtYXJnaW46IDIwcHggMDtcclxufVxyXG5cclxuLnJlcXVpcmVkLW1lc3NhZ2Uge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGNvbG9yOiByZWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmZvcm0ge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGNsaXA6IHVuc2V0O1xyXG5cclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAmICsgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJ0YWJsZSB7XHJcbiAgICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG5cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7IC8vIG9yYW5nZVxyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG5cclxuICAgICAgICAmLndvb2NvbW1lcmNlLVByaWNlLWN1cnJlbmN5U3ltYm9sIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxudGhlYWQge1xyXG4gICAgQGluY2x1ZGUgc2VyaWYtaXRhbGljO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbn1cclxuXHJcbnRoIHtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG59XHJcblxyXG50Ym9keSB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG50ciB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLW15c3RpYztcclxufVxyXG5cclxudGQge1xyXG4gICAgcGFkZGluZzogJHNwYWNlLXhzO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcblxyXG4gICAgPnAge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIH1cclxufVxyXG5cclxuLnBvc3RDb250ZW50IHtcclxuXHJcbiAgICB0ZCxcclxuICAgIHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UteHMgJHNwYWNlLXM7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICB0cjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY2Zjg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNob3BfdGFibGUge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgICAgICAgICYubXNnLWNhcnQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgIHRkIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLypiYWNrZ3JvdW5kOiAjZWFlYWVhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA0cHggM3B4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNmQ2ZDY7Ki9cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlIHtcclxuICAgICAgICAud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlX19jZWxsLW9yZGVyLWFjdGlvbnMge1xyXG4gICAgICAgICAgICAuYy1idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZSB7XHJcbiAgICAud29vY29tbWVyY2UtUHJpY2UtYW1vdW50LCAud29vY29tbWVyY2UtUHJpY2UtY3VycmVuY3lTeW1ib2wge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdHJlZS1wb3BweTsgXHJcbiAgICB9XHJcbn0iLCIkaWNvbi1zaXplLXhzOiAgMTA7XHJcbiRpY29uLXNpemUtczogICAxMjtcclxuJGljb24tc2l6ZS1tOiAgIDE2O1xyXG4kaWNvbi1zaXplLWw6ICAgMjA7XHJcbiRpY29uLXNpemUteGw6ICAyNDtcclxuJGljb24tc2l6ZS14eGw6IDMwO1xyXG5cclxuJGljb24tbWFyZ2luLWZyb20tdGV4dDogcHgoNSk7XHJcblxyXG5bY2xhc3NePSdpY29uLSddIHtcclxuIC8qICB3aWR0aDogcHgoNDgpO1xyXG4gIGhlaWdodDogcHgoNDgpOyAqL1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gIC8vIHN2ZyBkZWZhdWx0c1xyXG4gIC8vIFNlIGxlIGljb25lIHNvbm8gXCJ2dW90ZVwiIGNvbiBsYSBzdHJva2UgY29tZSBuZWwgY2FzbyBmZWF0aGVyIGljb25zXHJcbiAgZmlsbDogbm9uZTtcclxuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxufVxyXG5cclxuLy8gbW9kaWZpZXIgcGVyIGljb25lIFwicGllbmVcIiBlcy4gRmFjZWJvb2sgZSBUd2l0dGVyIChFbnR5cG8rKVxyXG5bY2xhc3NePSdpY29uLSddLmljb24tLWZpbGxlZCB7XHJcbiAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gIGZpbGwtcnVsZTogZXZlbm9kZDtcclxuICBzdHJva2U6IG5vbmU7XHJcbn1cclxuXHJcbi5pY29uLXhzIHtcclxuICBAaW5jbHVkZSBpY29uU2l6ZSgkaWNvbi1zaXplLXhzKTtcclxufVxyXG5cclxuLmljb24tcyB7XHJcbiAgQGluY2x1ZGUgaWNvblNpemUoJGljb24tc2l6ZS1zKTtcclxufVxyXG5cclxuLmljb24tbSB7XHJcbiAgQGluY2x1ZGUgaWNvblNpemUoJGljb24tc2l6ZS1tKTtcclxufVxyXG5cclxuLmljb24tbCB7XHJcbiAgQGluY2x1ZGUgaWNvblNpemUoJGljb24tc2l6ZS1sKTtcclxufVxyXG5cclxuLmljb24teGwge1xyXG4gIEBpbmNsdWRlIGljb25TaXplKCRpY29uLXNpemUteGwpO1xyXG59XHJcblxyXG4uaWNvbi14eGwge1xyXG4gIEBpbmNsdWRlIGljb25TaXplKCRpY29uLXNpemUteHhsKTtcclxufVxyXG4iLCIvKlxyXG5cclxubW9iaWxld2lkZTogICA1NTBweCxcclxudGFibGV0OiAgICAgICA3NjhweCxcclxuZGVza3RvcDogICAgICAxMDI0cHgsXHJcbmJpZ2Rlc2s6ICAgICAgMTIwMHB4LFxyXG53aWRlOiAgICAgICAgIDEzNjdweCxcclxuZnVsbGhkOiAgICAgICAxOTIwcHhcclxuKi9cclxuJGwtZGVmYXVsdC13aWR0aDogOTUlO1xyXG4kYXJyLWwtbWFpbndyYXA6IDU0MCwgNjAwLCA5MDAsIDExMDA7IC8vIDU0MC81NTAsIDYwMC83NjgsIDkwMC8xMDI0LCAxMjAwLzEzNjdcclxuJGFyci1sLXNpbmdsZXdyYXA6IDUwMCwgNjAwLCA3MDA7XHJcblxyXG4vLyBtYWluIHdyYXBwZXIgLSBleGFtcGxlOiBoZWFkZXJcclxuLmwtbWFpbldyYXBwZXIge1xyXG4gICAgd2lkdGg6IDkyJTtcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogOTAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIC8vIG1heC13aWR0aDogcHgobnRoKCRhcnItbC1tYWlud3JhcCwyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIG1heC13aWR0aDogcHgobnRoKCRhcnItbC1tYWlud3JhcCwzKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoYmlnZGVzaykge1xyXG4gICAgICAgIG1heC13aWR0aDogcHgobnRoKCRhcnItbC1tYWlud3JhcCw0KSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtYnJlYWRjcnVtYiB+ICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UteHhsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gc21hbGxlciB3cmFwcGVyIC0gZXhhbXBsZTogUmVsYXRlZCBsaW5rcyAoQXJ0aWNvbGkgY29ycmVsYXRpKVxyXG4ubC1zaW5nbGVXcmFwcGVyIHtcclxuICAgIHdpZHRoOiA5NSU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBweChudGgoJGFyci1sLXNpbmdsZXdyYXAsMSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHB4KG50aCgkYXJyLWwtc2luZ2xld3JhcCwyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEod2lkZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogcHgobnRoKCRhcnItbC1zaW5nbGV3cmFwLDMpKTtcclxuICAgIH1cclxuXHJcbiAgICAubC1tYWluV3JhcHBlciAmIHtcclxuICAgICAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sLXBhZ2VDb250ZW50IHtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcblxyXG5cclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcblxyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi5sLXBhZ2VDb250ZW50X19tYWluIHtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcblxyXG5cclxuICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICBmbGV4OiAwIDAgNjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNjAlO1xyXG5cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5sLXBhZ2VDb250ZW50X19zZWNvbmRhcnkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG5cclxuICAgICAgICBvcmRlcjogMztcclxuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmwtcGFnZUNvbnRlbnRfX3NpZGUge1xyXG5cclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG5cclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICBmbGV4OiAwIDEgMzclO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMlO1xyXG5cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLypcclxuLmwtcGFnZUNvbnRlbnQge1xyXG5cclxuQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG5cclxuLm5vLWNzc2dyaWQgJiB7XHJcbmRpc3BsYXk6IGZsZXg7XHJcbmZsZXgtZmxvdzogcm93IHdyYXA7XHJcbn1cclxuXHJcbi5jc3NncmlkICYge1xyXG5kaXNwbGF5OiBncmlkO1xyXG4vLyBncmlkLWdhcDogNXB4O1xyXG5ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDRmciA2ZnI7XHJcbmdyaWQtdGVtcGxhdGUtYXJlYXM6XHJcblwiYiBhXCJcclxuXCJjIGNcIjtcclxufVxyXG59XHJcbn1cclxuXHJcbi5sLXBhZ2VDb250ZW50X19tYWluIHtcclxuXHJcbkBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuXHJcbi5jc3NncmlkICYge1xyXG5ncmlkLWFyZWE6IGE7XHJcbn1cclxuXHJcbi5uby1jc3NncmlkICYge1xyXG5vcmRlcjogMjtcclxuZmxleDogMCAwIDYwJTtcclxufVxyXG59XHJcblxyXG59XHJcblxyXG4ubC1wYWdlQ29udGVudF9fc2Vjb25kYXJ5IHtcclxuXHJcbkBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuXHJcbi5jc3NncmlkICYge1xyXG5ncmlkLWFyZWE6IGM7XHJcbn1cclxuXHJcbi5uby1jc3NncmlkICYge1xyXG5vcmRlcjogMztcclxuZmxleDogMCAwIDEwMCU7XHJcbn1cclxufVxyXG59XHJcblxyXG4ubC1wYWdlQ29udGVudF9fc2lkZSB7XHJcblxyXG5AaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcblxyXG4uY3NzZ3JpZCAmIHtcclxuZ3JpZC1hcmVhOiBiO1xyXG5wYWRkaW5nLXJpZ2h0OiA3MHB4O1xyXG59XHJcblxyXG4ubm8tY3NzZ3JpZCAmIHtcclxub3JkZXI6IDE7XHJcbmZsZXg6IDAgMSAzNyU7XHJcbnBhZGRpbmctcmlnaHQ6IDMlO1xyXG59XHJcbn1cclxufVxyXG4qL1xyXG5cclxuLmZiX2RpYWxvZyB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6IDE4cHQ7XHJcbn1cclxuXHJcbi5mYi1jdXN0b21lcmNoYXQgaWZyYW1lIHtcclxuICAgIGxlZnQ6IDlwdDtcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG59IiwiLy8gc3BhY2luZ1xyXG4kcy1tb2R1bGUtYm90dG9tOiAgICAgICAkc3BhY2UteHhsO1xyXG4kcy1tb2R1bGUtaGFsZi1ib3R0b206ICAkc3BhY2UteGw7XHJcblxyXG4ubC1tb2R1bGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHMtbW9kdWxlLWhhbGYtYm90dG9tO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXh4cztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHMtbW9kdWxlLWJvdHRvbTtcclxuICAgIH1cclxufVxyXG5cclxuLmwtbW9kdWxlLS1oYWxmIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLW1vZHVsZS1oYWxmLWJvdHRvbTtcclxufSIsIi5sLWNvbHMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xyXG5cclxuICAgICAgICAmLnJvdy1yZXZlcnNlIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5qdXN0aWZ5LWJldHdlZW4ge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmp1c3RpZnktbGVmdCB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuanVzdGlmeS1yaWdodCB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFsaWduLXRvcCB7XHJcbiAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFsaWduLWNlbnRlciB7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgJi5jLXBhZ2VIZWFkZXIge1xyXG5cclxuICAgICAgICAgICAgLmwtY29se1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0OSU7XHJcblxyXG4gICAgICAgICAgICAgICAgLnBhZ2VTdWJ0aXRsZSwgLmMtYWJzdHJhY3RfX2JvZHl7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNlLXM7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmMtcHJvZHVjdF9fYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS1zO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGZpZ3VyZXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmMtYnV0dG9uLWJhcntcclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTAyM3B4KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYy1wcm9kdWN0X19idXR0b257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ubC1jb2wge1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sLWNvbC0tZG91YmxlIHtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICBmbGV4OiAyO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubC1jb2wtLXdpZGUge1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubC1jb2wtLWhhbGYge1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4iLCIvKipcclxuICogRmVhdGhlcmxpZ2h0IOKAkyB1bHRyYSBzbGltIGpRdWVyeSBsaWdodGJveFxyXG4gKiBWZXJzaW9uIDEuNy4xMyAtIGh0dHA6Ly9ub2VsYm9zcy5naXRodWIuaW8vZmVhdGhlcmxpZ2h0L1xyXG4gKlxyXG4gKiBDb3B5cmlnaHQgMjAxOCwgTm/Dq2wgUmFvdWwgQm9zc2FydCAoaHR0cDovL3d3dy5ub2VsYm9zcy5jb20pXHJcbiAqIE1JVCBMaWNlbnNlZC5cclxuKiovXHJcblxyXG5odG1sLndpdGgtZmVhdGhlcmxpZ2h0IHtcclxuICAvKiBkaXNhYmxlIGdsb2JhbCBzY3JvbGxpbmcgd2hlbiBmZWF0aGVybGlnaHRzIGFyZSB2aXNpYmxlICovXHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmZlYXRoZXJsaWdodCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgLyogZGltZW5zaW9uczogc3Bhbm5pbmcgdGhlIGJhY2tncm91bmQgZnJvbSBlZGdlIHRvIGVkZ2UgKi9cclxuICBwb3NpdGlvbjpmaXhlZDtcclxuICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XHJcbiAgei1pbmRleDogMjE0NzQ4MzY0NzsgLyogei1pbmRleCBuZWVkcyB0byBiZSA+PSBlbGVtZW50cyBvbiB0aGUgc2l0ZS4gKi9cclxuXHJcbiAgLyogcG9zaXRpb246IGNlbnRlcmluZyBjb250ZW50ICovXHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAvKiBpbnN1cmVzIHRoYXQgdGhlIDo6YmVmb3JlIHBzZXVkbyBlbGVtZW50IGRvZXNuJ3QgZm9yY2Ugd3JhcCB3aXRoIGZpeGVkIHdpZHRoIGNvbnRlbnQ7ICovXHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHJcbiAgLyogc3R5bGluZyAqL1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kOiAjMzMzO1xyXG4gIC8qIElFOCBcImhhY2tcIiBmb3IgbmVzdGVkIGZlYXRoZXJsaWdodHMgKi9cclxuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xyXG59XHJcblxyXG4vKiBzdXBwb3J0IGZvciBuZXN0ZWQgZmVhdGhlcmxpZ2h0cy4gRG9lcyBub3Qgd29yayBpbiBJRTggKHVzZSBKUyB0byBmaXgpICovXHJcbi5mZWF0aGVybGlnaHQ6bGFzdC1vZi10eXBlIHtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbn1cclxuXHJcbi5mZWF0aGVybGlnaHQ6YmVmb3JlIHtcclxuICAvKiBwb3NpdGlvbjogdHJpY2sgdG8gY2VudGVyIGNvbnRlbnQgdmVydGljYWxseSAqL1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmZlYXRoZXJsaWdodCAuZmVhdGhlcmxpZ2h0LWNvbnRlbnQge1xyXG4gIC8qIG1ha2UgY29udGVudCBjb250YWluZXIgZm9yIHBvc2l0aW9uZWQgZWxlbWVudHMgKGNsb3NlIGJ1dHRvbikgKi9cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC8qIHBvc2l0aW9uOiBjZW50ZXJpbmcgdmVydGljYWwgYW5kIGhvcml6b250YWwgKi9cclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAvKiBkaW1lbnNpb25zOiBjdXQgb2ZmIGltYWdlcyAqL1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG4gIHBhZGRpbmc6IDI1cHggMjVweCAwO1xyXG4gIGJvcmRlci1ib3R0b206IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gIC8qIGRpbWVuc2lvbnM6IGhhbmRsaW5nIGxhcmdlIGNvbnRlbnQgKi9cclxuICBtYXJnaW4tbGVmdDogNSU7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1JTtcclxuICBtYXgtaGVpZ2h0OiA5NSU7XHJcblxyXG4gIC8qIHN0eWxpbmcgKi9cclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIGN1cnNvcjogYXV0bztcclxuXHJcbiAgLyogcmVzZXQgd2hpdGUtc3BhY2Ugd3JhcHBpbmcgKi9cclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBjb250YWlucyB0aGUgY29udGVudCAqL1xyXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtaW5uZXIge1xyXG4gIC8qIG1ha2Ugc3VyZSBpdHMgdmlzaWJsZSAqL1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKiBkb24ndCBzaG93IHRoZXNlIHRob3VnaCAqL1xyXG4uZmVhdGhlcmxpZ2h0IHNjcmlwdC5mZWF0aGVybGlnaHQtaW5uZXIsXHJcbi5mZWF0aGVybGlnaHQgbGluay5mZWF0aGVybGlnaHQtaW5uZXIsXHJcbi5mZWF0aGVybGlnaHQgc3R5bGUuZmVhdGhlcmxpZ2h0LWlubmVyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbiB7XHJcbiAgLyogcG9zaXRpb246IGNlbnRlcmluZyB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbCAqL1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB6LWluZGV4OiA5OTk5O1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuXHJcbiAgLyogZGltZW5zaW9uczogMjVweCB4IDI1cHggKi9cclxuICBsaW5lLWhlaWdodDogMjVweDtcclxuICB3aWR0aDogMjVweDtcclxuXHJcbiAgLyogc3R5bGluZyAqL1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7IC8qIFNldCB0aGUgYmFja2dyb3VuZCBpbiBjYXNlIGl0IG92ZXJsYXBzIHRoZSBjb250ZW50ICovXHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG4gIGNvbG9yOiAjMDAwO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBTZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNjA3NzM0MS9ob3ctdG8tcmVzZXQtYWxsLWRlZmF1bHQtc3R5bGVzLW9mLXRoZS1odG1sNS1idXR0b24tZWxlbWVudCAqL1xyXG4uZmVhdGhlcmxpZ2h0IC5mZWF0aGVybGlnaHQtY2xvc2UtaWNvbjo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1pbWFnZSB7XHJcbiAgLyogc3R5bGluZyAqL1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLmZlYXRoZXJsaWdodC1pZnJhbWUgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcclxuICAvKiByZW1vdmVkIHRoZSBib3JkZXIgZm9yIGltYWdlIGNyb3Bpbmcgc2luY2UgaWZyYW1lIGlzIGVkZ2UgdG8gZWRnZSAqL1xyXG4gIGJvcmRlci1ib3R0b206IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn1cclxuXHJcbi5mZWF0aGVybGlnaHQgaWZyYW1lIHtcclxuICAvKiBzdHlsaW5nICovXHJcbiAgYm9yZGVyOiBub25lO1xyXG59XHJcblxyXG4uZmVhdGhlcmxpZ2h0ICogeyAvKiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL25vZWxib3NzL2ZlYXRoZXJsaWdodC9pc3N1ZXMvNDIgKi9cclxuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8qIGhhbmRsaW5nIHBob25lcyBhbmQgc21hbGwgc2NyZWVucyAqL1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gIC5mZWF0aGVybGlnaHQgLmZlYXRoZXJsaWdodC1jb250ZW50IHtcclxuICAgIC8qIGRpbWVuc2lvbnM6IG1heGltaXplIGxpZ2h0Ym94IHdpdGggZm9yIHNtYWxsIHNjcmVlbnMgKi9cclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgbWF4LWhlaWdodDogOTglO1xyXG5cclxuICAgIHBhZGRpbmc6IDEwcHggMTBweCAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICB9XHJcbn1cclxuXHJcbi8qIGhpZGUgbm9uIGZlYXRoZXJsaWdodCBpdGVtcyB3aGVuIHByaW50aW5nICovXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgaHRtbC53aXRoLWZlYXRoZXJsaWdodCA+ICogPiA6bm90KC5mZWF0aGVybGlnaHQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiIsIi8qIFByaXNtSlMgMS4xNC4wXHJcbmh0dHA6Ly9wcmlzbWpzLmNvbS9kb3dubG9hZC5odG1sI3RoZW1lcz1wcmlzbSZsYW5ndWFnZXM9bWFya3VwK2NzcytjbGlrZStqYXZhc2NyaXB0K21hcmt1cC10ZW1wbGF0aW5nK3BocCtweXRob24gKi9cclxuLyoqXHJcbiAqIHByaXNtLmpzIGRlZmF1bHQgdGhlbWUgZm9yIEphdmFTY3JpcHQsIENTUyBhbmQgSFRNTFxyXG4gKiBCYXNlZCBvbiBkYWJibGV0IChodHRwOi8vZGFiYmxldC5jb20pXHJcbiAqIEBhdXRob3IgTGVhIFZlcm91XHJcbiAqL1xyXG5cclxuY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0sXHJcbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xyXG5cdGNvbG9yOiBibGFjaztcclxuXHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdHRleHQtc2hhZG93OiAwIDFweCB3aGl0ZTtcclxuXHRmb250LWZhbWlseTogQ29uc29sYXMsIE1vbmFjbywgJ0FuZGFsZSBNb25vJywgJ1VidW50dSBNb25vJywgbW9ub3NwYWNlO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0d2hpdGUtc3BhY2U6IHByZTtcclxuXHR3b3JkLXNwYWNpbmc6IG5vcm1hbDtcclxuXHR3b3JkLWJyZWFrOiBub3JtYWw7XHJcblx0d29yZC13cmFwOiBub3JtYWw7XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHJcblx0LW1vei10YWItc2l6ZTogNDtcclxuXHQtby10YWItc2l6ZTogNDtcclxuXHR0YWItc2l6ZTogNDtcclxuXHJcblx0LXdlYmtpdC1oeXBoZW5zOiBub25lO1xyXG5cdC1tb3otaHlwaGVuczogbm9uZTtcclxuXHQtbXMtaHlwaGVuczogbm9uZTtcclxuXHRoeXBoZW5zOiBub25lO1xyXG59XHJcblxyXG5wcmVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdOjotbW96LXNlbGVjdGlvbiwgcHJlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSA6Oi1tb3otc2VsZWN0aW9uLFxyXG5jb2RlW2NsYXNzKj1cImxhbmd1YWdlLVwiXTo6LW1vei1zZWxlY3Rpb24sIGNvZGVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIDo6LW1vei1zZWxlY3Rpb24ge1xyXG5cdHRleHQtc2hhZG93OiBub25lO1xyXG5cdGJhY2tncm91bmQ6ICNiM2Q0ZmM7XHJcbn1cclxuXHJcbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl06OnNlbGVjdGlvbiwgcHJlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSA6OnNlbGVjdGlvbixcclxuY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl06OnNlbGVjdGlvbiwgY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0gOjpzZWxlY3Rpb24ge1xyXG5cdHRleHQtc2hhZG93OiBub25lO1xyXG5cdGJhY2tncm91bmQ6ICNiM2Q0ZmM7XHJcbn1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcblx0Y29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0sXHJcblx0cHJlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSB7XHJcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIENvZGUgYmxvY2tzICovXHJcbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xyXG5cdHBhZGRpbmc6IDFlbTtcclxuXHRtYXJnaW46IC41ZW0gMDtcclxuXHRvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuOm5vdChwcmUpID4gY29kZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0sXHJcbnByZVtjbGFzcyo9XCJsYW5ndWFnZS1cIl0ge1xyXG5cdGJhY2tncm91bmQ6ICNmNWYyZjA7XHJcbn1cclxuXHJcbi8qIElubGluZSBjb2RlICovXHJcbjpub3QocHJlKSA+IGNvZGVbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdIHtcclxuXHRwYWRkaW5nOiAuMWVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IC4zZW07XHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxufVxyXG5cclxuLnRva2VuLmNvbW1lbnQsXHJcbi50b2tlbi5wcm9sb2csXHJcbi50b2tlbi5kb2N0eXBlLFxyXG4udG9rZW4uY2RhdGEge1xyXG5cdGNvbG9yOiBzbGF0ZWdyYXk7XHJcbn1cclxuXHJcbi50b2tlbi5wdW5jdHVhdGlvbiB7XHJcblx0Y29sb3I6ICM5OTk7XHJcbn1cclxuXHJcbi5uYW1lc3BhY2Uge1xyXG5cdG9wYWNpdHk6IC43O1xyXG59XHJcblxyXG4udG9rZW4ucHJvcGVydHksXHJcbi50b2tlbi50YWcsXHJcbi50b2tlbi5ib29sZWFuLFxyXG4udG9rZW4ubnVtYmVyLFxyXG4udG9rZW4uY29uc3RhbnQsXHJcbi50b2tlbi5zeW1ib2wsXHJcbi50b2tlbi5kZWxldGVkIHtcclxuXHRjb2xvcjogIzkwNTtcclxufVxyXG5cclxuLnRva2VuLnNlbGVjdG9yLFxyXG4udG9rZW4uYXR0ci1uYW1lLFxyXG4udG9rZW4uc3RyaW5nLFxyXG4udG9rZW4uY2hhcixcclxuLnRva2VuLmJ1aWx0aW4sXHJcbi50b2tlbi5pbnNlcnRlZCB7XHJcblx0Y29sb3I6ICM2OTA7XHJcbn1cclxuXHJcbi50b2tlbi5vcGVyYXRvcixcclxuLnRva2VuLmVudGl0eSxcclxuLnRva2VuLnVybCxcclxuLmxhbmd1YWdlLWNzcyAudG9rZW4uc3RyaW5nLFxyXG4uc3R5bGUgLnRva2VuLnN0cmluZyB7XHJcblx0Y29sb3I6ICM5YTZlM2E7XHJcblx0YmFja2dyb3VuZDogaHNsYSgwLCAwJSwgMTAwJSwgLjUpO1xyXG59XHJcblxyXG4udG9rZW4uYXRydWxlLFxyXG4udG9rZW4uYXR0ci12YWx1ZSxcclxuLnRva2VuLmtleXdvcmQge1xyXG5cdGNvbG9yOiAjMDdhO1xyXG59XHJcblxyXG4udG9rZW4uZnVuY3Rpb24sXHJcbi50b2tlbi5jbGFzcy1uYW1lIHtcclxuXHRjb2xvcjogI0RENEE2ODtcclxufVxyXG5cclxuLnRva2VuLnJlZ2V4LFxyXG4udG9rZW4uaW1wb3J0YW50LFxyXG4udG9rZW4udmFyaWFibGUge1xyXG5cdGNvbG9yOiAjZTkwO1xyXG59XHJcblxyXG4udG9rZW4uaW1wb3J0YW50LFxyXG4udG9rZW4uYm9sZCB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnRva2VuLml0YWxpYyB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4udG9rZW4uZW50aXR5IHtcclxuXHRjdXJzb3I6IGhlbHA7XHJcbn1cclxuXHJcbiIsIi8qIEZhbGxiYWNrLCBpbiBjYXNlIEpTIGRvZXMgbm90IHJ1biwgdG8gZW5zdXJlIHRoZSBjb2RlIGlzIGF0IGxlYXN0IHZpc2libGUgKi9cclxuW2NsYXNzKj0nbGFuZy0nXSBzY3JpcHRbdHlwZT0ndGV4dC9wbGFpbiddLFxyXG5bY2xhc3MqPSdsYW5ndWFnZS0nXSBzY3JpcHRbdHlwZT0ndGV4dC9wbGFpbiddLFxyXG5zY3JpcHRbdHlwZT0ndGV4dC9wbGFpbiddW2NsYXNzKj0nbGFuZy0nXSxcclxuc2NyaXB0W3R5cGU9J3RleHQvcGxhaW4nXVtjbGFzcyo9J2xhbmd1YWdlLSddIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250OiAxMDAlIENvbnNvbGFzLCBNb25hY28sIG1vbm9zcGFjZTtcclxuXHR3aGl0ZS1zcGFjZTogcHJlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbiIsIi8vIHR5cG9ncmFwaHlcclxuJHQtYnV0dG9uLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgJGZvbnQtc2FucztcclxuJHQtYnV0dG9uLWZvbnQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1tO1xyXG4kdC1idXR0b24tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZDtcclxuJHQtYnV0dG9uLWxpbmVoZWlnaHQ6ICAgICAgICAgICAgICAgJGxpbmUtaGVpZ2h0LXhzO1xyXG5cclxuXHJcbi8vIG1haW4gYnV0dG9uOiBiZyBvcmFuZ2UsIGNvbG9yIHdoaXRlXHJcbi5jLWJ1dHRvbiB7XHJcbiAgICBmb250LWZhbWlseTogJHQtYnV0dG9uLWZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC1zaXplOiAkdC1idXR0b24tZm9udDtcclxuICAgIGZvbnQtd2VpZ2h0OiAkdC1idXR0b24tZm9udC13ZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogJHQtYnV0dG9uLWxpbmVoZWlnaHQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogcHgoMTApIHB4KDMwKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHB4KDMwKTtcclxuICAgIGJvcmRlcjogcHgoMikgc29saWQgJGNvbG9yLXRyZWUtcG9wcHkgIWltcG9ydGFudDsgLy8gZGVmYXVsdDogb3JhbmdlXHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgIG1pbi13aWR0aDogcHgoMTUwKTtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGUgIWltcG9ydGFudDsgLy8gZGVmYXVsdDogd2hpdGVcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10cmVlLXBvcHB5ICFpbXBvcnRhbnQ7IC8vIGRlZmF1bHQ6IG9yYW5nZVxyXG5cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10cmVlLXBvcHB5ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5IWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItdHJlZS1wb3BweTtcclxuICAgIH1cclxuICAgIC8vIGJ1dHRvbiBjb2xvcjogYmFja2dyb3VuZCAvLyBkYSByaW11b3ZlcmVcclxuICAgICYuYy1idXR0b24tZmlsbC0td2hpdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmMtYnV0dG9uLWZpbGwtLWJsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jLWJ1dHRvbi1maWxsLS10cmFuc3BhcmVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgICAvLyBidXR0b24gY29sb3I6IGxhYmVsICsgYm9yZGVyXHJcbiAgICAmLmMtYnV0dG9uLXN0cm9rZS0tb3JhbmdlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItdHJlZS1wb3BweTtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmMtYnV0dG9uLXN0cm9rZS0td2hpdGUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jLWJ1dHRvbi1zdHJva2UtLWJsYWNrIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYy1idXR0b24tc3Ryb2tlLS1ibHVlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWZpb3JkO1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gYnV0dG9uIHNpemU6IGxvbmdcclxuICAgICYuYy1idXR0b24tLWxvbmcge1xyXG4gICAgICAgIG1pbi13aWR0aDogcHgoMjAwKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmMtYnV0dG9uLS1zbWFsbCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiBweCgxMDApO1xyXG4gICAgICAgIHBhZGRpbmc6IHB4KDcpIHB4KDE1KTtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIH1cclxuXHJcbiAgICAmLmMtYnV0dG9uLS1leHNoYWRvdyB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDAgLjkzNzVyZW0gLjkzNzVyZW0gMDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjdweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IC42ODc1cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIGJ1dHRvbiBkZWNvcmF0aW9uOiBsaW5lZFxyXG4gICAgJi5jLWJ1dHRvbi0tbGluZWQge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTEwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IC01JTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWJ1dHRvbkxpbmVkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10cmVlLXBvcHB5OyAvLyBkZWZhdWx0OiBvcmFuZ2VcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgIH1cclxufVxyXG5cclxuLmMtYnV0dG9uQ29weSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgdG9wOiAtNTNweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDsgXHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRvcDogLTYzcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbnByZTpob3ZlciArIC5jLWJ1dHRvbkNvcHksIC5jLWJ1dHRvbkNvcHk6aG92ZXJ7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uYy1idXR0b24tYmFye1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgXHJcbiAgICAuYy1idXR0b257XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLXhzO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAuYy1idXR0b257XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtLS0tLSBsaW5lV3JhcHBlciAtLS0tICh3cmFwcGVyIGVzdGVybm8gYWwgYnV0dG9uIHF1YW5kbyBuZWNlc3NhcmlvLCBpbiBxdWVzdG8gbW9kbyBidXR0b24gw6ggdHV0dG8gY2xpY2NhYmlsZSlcclxuXHJcbi8vIDxkaXYgY2xhc3M9XCJjLWJ1dHRvbl9fbGluZVwiPlxyXG4vLyAgIHslIGluY2x1ZGUgJ21vbGVjdWxlcy1idXR0b24nIHdpdGggeydzdHlsZU1vZGlmaWVyJzogJ2MtYnV0dG9uJ30gJX1cclxuLy8gPC9kaXY+XHJcblxyXG5cclxuIiwiJGV4cGFuZGFibGUtbGluZS1jb2xvcjogJGNvbG9yLXNpbHZlci1jaGFsaWNlO1xyXG4kZXhwYW5kYWJsZS1saW5lLWhlaWdodDogcHgoMSk7XHJcbiRleHBhbmRhYmxlLWxpbmUtZnJvbS10ZXh0OiBweCg1KTtcclxuXHJcbiRleHBhbmRhYmxlLWhlaWdodC0tc21hbGw6IHB4KDE4Nik7XHJcbiRleHBhbmRhYmxlLWhlaWdodDogcHgoMjUwKTtcclxuJGV4cGFuZGFibGUtb3ZlcmxheS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XHJcbiRleHBhbmRhYmxlLW92ZXJsYXktaGVpZ2h0OiBweCgxMDApO1xyXG5cclxuLmMtZXhwYW5kYWJsZSB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbn1cclxuXHJcbi5jLWV4cGFuZGFibGVfX2NvbnRlbnQge1xyXG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgbWF4LWhlaWdodDogJGV4cGFuZGFibGUtaGVpZ2h0O1xyXG5cclxuICAgIC5jLWV4cGFuZGFibGUtLXNob3J0ICYge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6ICRleHBhbmRhYmxlLWhlaWdodC0tc21hbGw7XHJcbiAgICB9XHJcblxyXG4gICAgLmlzLWFjdGl2ZSAmIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA5OTllbTtcclxuICAgIH1cclxufVxyXG5cclxuLmMtZXhwYW5kYWJsZV9fbGluayB7XHJcbiAgICBAaW5jbHVkZSBzYW5zLWJvbGQ7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgIGNvbG9yOiAkY29sb3ItdGV4dDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMHZ3OyAvLyBNZXR0ZXJsbyAlIG5vbiBzaSBwdcOyLCBtZXR0ZXJsbyBpbiBweD9cclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZXhwYW5kYWJsZS1vdmVybGF5LWdyYWRpZW50O1xyXG4gICAgICAgIGhlaWdodDogJGV4cGFuZGFibGUtb3ZlcmxheS1oZWlnaHQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5MHZ3O1xyXG5cclxuICAgICAgICAuaXMtYWN0aXZlICYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtZXhwYW5kYWJsZV9fbGFiZWwge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBmbGV4OiAxIDEgMzAlO1xyXG4gICAgICAgIGhlaWdodDogJGV4cGFuZGFibGUtbGluZS1oZWlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGV4cGFuZGFibGUtbGluZS1jb2xvcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZXhwYW5kYWJsZS1saW5lLWZyb20tdGV4dDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkZXhwYW5kYWJsZS1saW5lLWZyb20tdGV4dDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtZXhwYW5kYWJsZV9fbGFiZWwtLW9wZW4ge1xyXG4gICAgLmlzLWFjdGl2ZSAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1leHBhbmRhYmxlX19sYWJlbC0tY2xvc2Uge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAuaXMtYWN0aXZlICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJHNwYWNlLXhsO1xyXG5cclxuLy8gY29sb3JcclxuJGMtcGlsbC1iZzogICAgICAgICAgICAgICAgICAgICAgICRjb2xvci13aGl0ZTtcclxuJGMtcGlsbC1sYWJlbDogICAgICAgICAgICAgICAgICAgICRjb2xvci10ZXh0O1xyXG5cclxuXHJcbi5jLXBpbGwge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC14cztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6ICRzcGFjZS14cyAkc3BhY2UtcztcclxuICAgIGJvcmRlci1yYWRpdXM6ICRzLXBpbGwtYm9yZGVyLXJhZGl1cztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLDE3MCwxNzAsLjI1KTtcclxuICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDVweCByZ2JhKDE3MCwxNzAsMTcwLC4yNSk7XHJcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLDE3MCwxNzAsLjI1KTtcclxuXHJcbiAgICBjb2xvcjogJGMtcGlsbC1sYWJlbDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXBpbGwtYmc7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYy1waWxsLWJnLCAxMCUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHt9XHJcblxyXG59XHJcbiIsIi8vIHNwYWNpbmdcclxuJHMtbWFpbml0ZW0tdGl0bGUtdmVydC1tYXJnaW5zOiAkc3BhY2UteHM7XHJcbiRzLW1haW5pdGVtLWF1dGgtYm90dG9tLW1hcmdpbjogJHNwYWNlLXhsO1xyXG4kcy1tYWluaXRlbS1maWd1cmUtdG9wOiAkc3BhY2UtcztcclxuJHMtbWFpbkl0ZW0taW5mby1wYWRkaW5nOiAkc3BhY2UtbDtcclxuJHMtbWFpbkl0ZW0taW5mby1wYWRkaW5nLXdpZGU6ICRzcGFjZS14bDtcclxuJHMtbWFpbkl0ZW0taW5mby1tYXJnaW46ICRzcGFjZS14bDtcclxuJHMtbWFpbkl0ZW0tZm9ybS1tYXJnaW46ICRzcGFjZS14eGw7XHJcblxyXG4kcy1pbWFnZS1tYWluSXRlbS1tYXgtd2lkdGg6IHB4KDE3MCk7XHJcbiRzLWltYWdlLW1haW5JdGVtLW1heC13aWR0aC1kZXNrdG9wOiBweCgyODApO1xyXG5cclxuLmZpcm1lLW11bHRpcGxlIHtcclxuICAgIG1hcmdpbjogMS41cmVtIDA7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtbWFpbkl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgJi5pcy1zaW5nbGUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOjU0OXB4KSB7XHJcbiAgICAgICAgJi5sLW1vZHVsZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ4LDE1MiwyOSwuMik7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICRzcGFjZS1tICRzcGFjZS1sO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmMtYWJzdHJhY3RfX2F1dGhvciB7XHJcbiAgICAgICAgICAgIC8qbWFyZ2luLWJvdHRvbTogMDsqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2Y7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgIC5jLXBhZ2VIZWFkZXIge1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYy1tYWluSXRlbV9faW5mbyAuYy1wYWdlSGVhZGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuXHJcbiAgICAgICAgJi5pcy1zaW5nbGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX19maWd1cmUge1xyXG4gICAgLy9tYXJnaW46IDAgYXV0bztcclxuICAgIHBhZGRpbmc6ICRzcGFjZS1sIDA7XHJcbiAgICBvcmRlcjogMjtcclxuICAgIC8vcGFkZGluZy1ib3R0b206ICRzLW1haW5pdGVtLWZpZ3VyZS10b3A7XHJcbiAgICAvL3RleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICYuaXMtc2luZ2xlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBmaWd1cmUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2UteGw7XHJcbiAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcblxyXG4gICAgICAgICYuaXMtc2luZ2xlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWNlbnRlcmVkIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2UteHhsO1xyXG5cclxuICAgICAgICAuaXMtc2luZ2xlICYge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICAvL21heC13aWR0aDogJHMtaW1hZ2UtbWFpbkl0ZW0tbWF4LXdpZHRoO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDVweCByZ2JhKDE3MCwxNzAsMTcwLC4yNSk7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLDE3MCwxNzAsLjI1KTtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLDE3MCwxNzAsLjI1KTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtbWFpbkl0ZW1fX2luZm8ge1xyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS14cztcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgICYucmVwZWF0ZWQgLmMtYnV0dG9uIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5pcy1zaW5nbGUgJiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcy1tYWluSXRlbS1pbmZvLXBhZGRpbmc7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKGJpZ2Rlc2spIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcy1tYWluSXRlbS1pbmZvLXBhZGRpbmctd2lkZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX19mb3JtIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLW1haW5JdGVtLWZvcm0tbWFyZ2luO1xyXG4gICAgb3JkZXI6IDM7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRzLW1haW5JdGVtLWZvcm0tbWFyZ2luO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX190aXRsZSB7XHJcbiAgICBtYXJnaW46IDAgYXV0byBweCg1KTtcclxufVxyXG5cclxuLmMtbWFpbkl0ZW1fX2Fic3RyYWN0IHtcclxuICAgIG1hcmdpbi10b3A6ICRzLW1haW5pdGVtLXRpdGxlLXZlcnQtbWFyZ2lucztcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLW1haW5pdGVtLXRpdGxlLXZlcnQtbWFyZ2lucztcclxufVxyXG5cclxuLmMtbWFpbkl0ZW1fX2F1dGhvciB7XHJcbiAgICBAaW5jbHVkZSBzZXJpZi1yZWd1bGFyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHMtbWFpbml0ZW0tYXV0aC1ib3R0b20tbWFyZ2luO1xyXG59XHJcblxyXG4uYy1tYWluSXRlbV9fbGluayB7XHJcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX19maWd1cmVCbG9jayB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX19ib3hlcyB7XHJcbiAgICAuaXMtc2luZ2xlICYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLW1haW5JdGVtX19jdGEge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYy1tYWluSXRlbV9fcGxhdGZvcm1zIHtcclxuICAgIC5pcy1zaW5nbGUgJiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmMtbWFpbkl0ZW0tY3RhIHtcclxuICAgIG9yZGVyOiAyO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQwJTtcclxuICAgICAgICBmbGV4LWJhc2lzOiA2MCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTWljcm8gY2xlYXJmaXggKFNhc3MpXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBjZiB7XHJcblx0Jjo6YmVmb3JlLFxyXG5cdCY6OmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ZGlzcGxheTogdGFibGU7XHJcblx0fVxyXG5cclxuXHQmOjphZnRlciB7XHJcblx0XHRjbGVhcjogYm90aDtcclxuXHR9XHJcbn1cclxuIiwiXHJcbi5jLXByaWNlQm94ZXMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcHgoMjUpO1xyXG59XHJcblxyXG4uYy1wcmljZUJveGVzX19saXN0IHtcclxuICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByaWNlQm94ZXNfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgZmxleDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAmLmMtcHJpY2VCb3hlc19faXRlbS0tbm90QXZhaWxhYmxlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNpbHZlci1jaGFsaWNlO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcm0ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgLmMtcHJpY2VCb3gge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIExpc3QgcmVzZXRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIFVzYWdlOlxyXG4vLyBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbkBtaXhpbiBsaXN0cmVzZXQge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG4iLCIvLyB0eXBvXHJcbiR0LW5ld3ByaWNlOiAkZm9udC1zaXplLXhsO1xyXG4kdC1wcmljZUJveC1zaGlwOiAkZm9udC1zaXplLXhzO1xyXG5cclxuLy8gY29sb3JzXHJcbiRjLXByaWNlQm94ZXMtYm9yZGVyOiAkY29sb3ItdHJlZS1wb3BweTtcclxuXHJcbi8vIHNwYWNpbmdcclxuJHMtcHJpY2Vib3gtcGFkZGluZzogJHNwYWNlLXhzO1xyXG4kcy1wcmljZWJveC1sYWJlbHMtcGFkZGluZzogJHNwYWNlLXh4cztcclxuJHMtcHJpY2VCb3gtY3VzdG9tUmFkaW8tbWFyZ2luOiAkc3BhY2UtcztcclxuJHMtcHJpY2VCb3gtY3VzdG9tUmFkaW8td2lkdGg6ICRzcGFjZS1sO1xyXG4kcy1wcmljZUJveC1jdXN0b21SYWRpby1pbm5lci13aWR0aDogcHgoMTQpO1xyXG4kYy1wcmljZUJveC1jdXN0b21SYWRpby1pbm5lcjogJGNvbG9yLXNvbGlkLWJsYWNrO1xyXG5cclxuLmMtcHJpY2VCb3gge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAkcy1wcmljZWJveC1wYWRkaW5nO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1wcmljZUJveF9fbGFiZWxzIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRzLXByaWNlYm94LWxhYmVscy1wYWRkaW5nO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogbW9iaWxld2lkZSkge1xyXG4gICAgICAgIHdpZHRoOiA1OCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmMtcHJpY2VCb3hfX3ByaWNpbmcge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogbW9iaWxld2lkZSkge1xyXG4gICAgICAgIHdpZHRoOiAzMiU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByaWNlQm94X19jaGVjayB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiBtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwJTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gbGFiZWxzXHJcbi5jLXByaWNlQm94X19hdmFpbGFiaWxpdHkge1xyXG4gICAgQGluY2x1ZGUgc2VyaWYtcmVndWxhcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIGhlaWdodDogMTVweDtcclxufVxyXG5cclxuLmMtcHJpY2VCb3hfX2Zvcm1hdCB7XHJcbiAgICBAaW5jbHVkZSBzZXJpZi1ib2xkO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW07XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByaWNlQm94X19pbmZvIHtcclxuXHJcbiAgICBzdmcge1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYuYy1wcmljZUJveF9faW5mby0tcHJpbmNpbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByaWNlQm94X19zaGlwIHtcclxuICAgIEBpbmNsdWRlIHNlcmlmLWJvbGQ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAkdC1wcmljZUJveC1zaGlwO1xyXG5cclxuICAgIC5pY29uLXN0YXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICB0b3A6IC0xcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIHByaWNpbmdcclxuLmMtcHJpY2VCb3hfX25ld1ByaWNlIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogJHQtbmV3cHJpY2U7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yMjU7XHJcbn1cclxuXHJcbi5jLXByaWNlQm94X19vZmZlciB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmMtcHJpY2VCb3hfX29sZFByaWNlIHtcclxuICAgIEBpbmNsdWRlIGxpbmV0aHJvdWdoO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4uYy1wcmljZUJveF9fZGlzY291bnQge1xyXG59XHJcblxyXG4vLyBjaGVjayByYWRpb1xyXG5cclxuLmMtcHJpY2VCb3hfX2xhYmVsIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNvbGlkLWJsYWNrO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zb2xpZC1ibGFjaztcclxuICAgICAgICBvcGFjaXR5OiAwLjAzO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0OmNoZWNrZWQgJiArIGxhYmVsLFxyXG4gICAgaW5wdXQ6Y2hlY2tlZCArICYsXHJcbiAgICBpbnB1dDpjaGVja2VkICsgJjpmb2N1cyxcclxuICAgIGlucHV0OmNoZWNrZWQgKyAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkYy1wcmljZUJveGVzLWJvcmRlcjtcclxuICAgICAgICBvcGFjaXR5OiAxIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgJiB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMC4wMztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc29saWQtYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByaWNlQm94X19yYWRpbyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uYy1wcmljZUJveF9fY3VzdG9tUmFkaW8ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiAkcy1wcmljZUJveC1jdXN0b21SYWRpby1tYXJnaW47XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItbXlzdGljO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFxdWEtaGF6ZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLy8gYmlnIGJsYWNrIHJhZGlvIGJ1dHRvblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gKCRzLXByaWNlQm94LWN1c3RvbVJhZGlvLWlubmVyLXdpZHRoIC8gMik7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLSAoJHMtcHJpY2VCb3gtY3VzdG9tUmFkaW8taW5uZXItd2lkdGggLyAyKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogJHMtcHJpY2VCb3gtY3VzdG9tUmFkaW8taW5uZXItd2lkdGg7XHJcbiAgICAgICAgd2lkdGg6ICRzLXByaWNlQm94LWN1c3RvbVJhZGlvLWlubmVyLXdpZHRoO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjLXByaWNlQm94LWN1c3RvbVJhZGlvLWlubmVyO1xyXG4gICAgfVxyXG59XHJcblxyXG5pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmMtcHJpY2VCb3hfX2N1c3RvbVJhZGlvOjpiZWZvcmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5jLXByaWNlQm94ZXNfX2l0ZW0tLW5vdEF2YWlsYWJsZSAuYy1wcmljZUJveF9fbGFiZWwge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuICAgICY6Zm9jdXMsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBodHRwczovL2NvZGVwZW4uaW8vcmphbmppYy9wZW4vb2JkRWJ2L1xyXG5AbWl4aW4gbGluZXRocm91Z2gge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XHJcbiAgICB0b3A6IDUwJTtcclxuXHJcbiAgICAvLyB0b3A6IDQ1JTsgLy8gcHJlenpvIHNiYXJyYXRvIHN0b3J0b1xyXG4gICAgLy8gdHJhbnNmb3JtOiBza2V3WSgtMjBkZWcpOyAvLyBwcmV6em8gc2JhcnJhdG8gc3RvcnRvXHJcbiAgfVxyXG59XHJcbiIsIi8vIHNwYWNpbmdcclxuJGMtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICRzcGFjZS1tLCAkc3BhY2UtcztcclxuJGMtaGVhZGVyLWxvZ28td2lkdGg6ICAgICAgIDEyNXB4LCAyNTBweDtcclxuJGMtaGVhZGVyLWxvZ28taGVpZ2h0OiAgICAgIDI2cHgsIDUycHg7XHJcbiRzLWhlYWRlcm5hdi1tYXgtd2lkdGg6ICAgICBweCgzNzApO1xyXG4kcy1oZWFkZXItdG9nZ2xlLXdpZHRoOiAgICAgcHgoNjUpO1xyXG4kcy1oZWFkZXItYm90dG9tYmFyLW1hcmdpbjogJHNwYWNlLXhzO1xyXG5cclxuLy8gY29sb3JzXHJcbiRjLWhlYWRlci1iZzogICAgICAgICAgICAgICAkY29sb3ItZmlvcmQ7XHJcbiRjLWhlYWRlci10b3BiYXItdGV4dDogICAgICAkY29sb3Itd2hpdGU7XHJcblxyXG4vLyB0eXBvXHJcbiR0LWhlYWRlci10b2dnbGU6ICAgICAgICAgICAkZm9udC1zaXplLXhzO1xyXG5cclxuXHJcbi5jLWhlYWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvL292ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgIEBtZWRpYShtYXgtd2lkdGg6NTQ5cHgpIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDo1NDlweCkge1xyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICAuYy1oZWFkZXJfX3RvcGJhciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICB9XHJcbn0gXHJcblxyXG5cclxuLmMtaGVhZGVyX190b3BiYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtaGVhZGVyLWJnO1xyXG4gICAgcGFkZGluZy10b3A6IG50aCgkYy1oZWFkZXItcGFkZGluZywxKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBudGgoJGMtaGVhZGVyLXBhZGRpbmcsMSk7XHJcblxyXG4gICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogbnRoKCRjLWhlYWRlci1wYWRkaW5nLDIpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBudGgoJGMtaGVhZGVyLXBhZGRpbmcsMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWhlYWRlcl9fd3JhcHBlcntcclxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5jLWhlYWRlcl9fZm9ybWF0cyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1oZWFkZXJfX2xvZ28ge1xyXG4gICAgd2lkdGg6IG50aCgkYy1oZWFkZXItbG9nby13aWR0aCwxKTtcclxuICAgIGhlaWdodDogbnRoKCRjLWhlYWRlci1sb2dvLWhlaWdodCwxKTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGJpZ2Rlc2spIHtcclxuICAgICAgICB3aWR0aDogbnRoKCRjLWhlYWRlci1sb2dvLXdpZHRoLDIpO1xyXG4gICAgICAgIGhlaWdodDogbnRoKCRjLWhlYWRlci1sb2dvLWhlaWdodCwgMik7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1oZWFkZXJfX21haW4ge1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDo1NTBweCl7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDo1NTBweClhbmQobWF4LXdpZHRoOjEwMjNweCl7XHJcbiAgICAgICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWhlYWRlcl9fdG9nZ2xlIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICAgIGZvbnQtc2l6ZTogJHQtaGVhZGVyLXRvZ2dsZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogJGMtaGVhZGVyLXRvcGJhci10ZXh0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgLy9tYXJnaW4tbGVmdDogJHNwYWNlLXhzOyAgICBcclxuICAgIC8vbWluLXdpZHRoOiAkcy1oZWFkZXItdG9nZ2xlLXdpZHRoO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAuYy1oZWFkZXJUb2dnbGVNZW51e1xyXG5AaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuZGlzcGxheTogbm9uZTtcclxufVxyXG59ICovXHJcblxyXG4uYy1oZWFkZXJUb2dnbGVNZW51e1xyXG4gICAgd2lkdGg6IDQycHg7XHJcbn1cclxuXHJcbi5jLWhlYWRlclRvZ2dsZV9fbGFiZWwge1xyXG5cclxuICAgIC5qLWhlYWRlci5pcy1hY3RpdmUgJntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYuYy1oZWFkZXJUb2dnbGVfX2xhYmVsLS1jbG9zZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgLmotaGVhZGVyLmlzLWFjdGl2ZSAmIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBOYXZiYXJcclxuLmMtaGVhZGVyX19uYXYge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0b3A6IDEwMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgLyogdG9wOiA2NnB4OyAqLyBcclxuICAgIHRvcDowO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWhlYWRlci1iZztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHotaW5kZXg6ICR6LWhlYWRlcjtcclxuXHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDo1NDlweCl7XHJcbiAgICAgICAgLyogaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7ICovXHJcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjZweCk7XHJcbiAgICAgICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDY2cHgpO1xyXG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XHJcblxyXG4gICAgICAgIG1hcmdpbi10b3A6IDY2cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTY2cHg7XHJcbiAgICB9ICBcclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICAvKiBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAkcy1oZWFkZXJuYXYtbWF4LXdpZHRoO1xyXG4gICAgICAgIHRvcDogNzBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHMtaGVhZGVybmF2LW1heC13aWR0aCk7ICovXHJcblxyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uYy1oZWFkZXJOYXZiYXJfX3NlYXJjaCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDY2cHg7XHJcbiAgICByaWdodDogMDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAkc3BhY2UtcztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICYuaXMtdmlzaWJsZSB7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogJHMtaGVhZGVybmF2LW1heC13aWR0aDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICB0b3A6IDcwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLypAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NTBweCkgYW5kIChtYXgtaGVpZ2h0OiAxMTk5cHgpIHtcclxuICAgICAgICAgICAgdG9wOiA1NHB4IWltcG9ydGFudDtcclxuICAgIH0qL1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuLmMtaGVhZGVyLmlzLWFjdGl2ZSAuYy1oZWFkZXJfX25hdiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5jLWhlYWRlcl9fYm90dG9tYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBtYXJnaW4tdG9wOiAkcy1oZWFkZXItYm90dG9tYmFyLW1hcmdpbjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gY29sb3JzXHJcbiRjLWhlYWRlcm5hdi1saW5rOiAkY29sb3Itd2hpdGU7XHJcbi8vIHR5cG9cclxuXHJcbi8vIHNwYWNpbmdcclxuJHMtaGVhZGVybmF2LXBhZGRpbmc6ICRzcGFjZS1zO1xyXG5cclxuLmMtaGVhZGVyTmF2YmFyIHtcclxuICBwYWRkaW5nOiAkcy1oZWFkZXJuYXYtcGFkZGluZztcclxufVxyXG5cclxuLmMtaGVhZGVyTmF2YmFyX19zZWFyY2gge1xyXG5cclxufVxyXG5cclxuLmMtaGVhZGVyTmF2YmFyX19mb3JtYXRzIHtcclxuICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmMtaGVhZGVyTmF2YmFyX19jYXRlZ29yaWVzIHtcclxuICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmMtaGVhZGVyTmF2YmFyX19uYXZNZW51IHtcclxuICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi10b3A6ICRzLWhlYWRlcm5hdi1wYWRkaW5nO1xyXG4gIH1cclxufVxyXG4iLCIvLyBjb2xvcnNcclxuJGMtaW5wdXQtY29sb3I6IGRhcmtlbigkY29sb3ItbG9ibG9sbHksIDE1JSk7IC8vIG5vbi1zdGFuZGFyZCBjb2xvciBieSBkZXNpZ25cclxuXHJcbi8vIHR5cG9cclxuJHQtc2VhcmNoLWlucHV0OiAkZm9udC1zaXplLW07XHJcblxyXG4vLyBzcGFjaW5nXHJcbiRzLXNlYXJjaC1wYWRkaW5nOiAkc3BhY2UteHhsO1xyXG4kcy1zZWFyY2gtbGFiZWwtbGVmdDogJHNwYWNlLXM7XHJcblxyXG4uYy1zZWFyY2hCb3gge1xyXG59XHJcblxyXG4uYy1zZWFyY2hCb3hfX2Zvcm0ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmMtc2VhcmNoQm94X19sYWJlbCB7XHJcbiAgQGluY2x1ZGUgc2VyaWYtaXRhbGljO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAkcy1zZWFyY2gtbGFiZWwtbGVmdDtcclxuICB0b3A6ICRzcGFjZS14eHM7XHJcblxyXG4gIHN2ZyB7XHJcbiAgICBzdHJva2U6ICRjLWlucHV0LWNvbG9yO1xyXG4gIH1cclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXS5jLXNlYXJjaEJveF9faW5wdXQge1xyXG4gIEBpbmNsdWRlIHNlcmlmLWl0YWxpYztcclxuICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gIGJveC1zaGFkb3c6IGluaXRpYWw7XHJcbiAgY29sb3I6ICRjLWlucHV0LWNvbG9yO1xyXG4gIGZvbnQtc2l6ZTogJHQtc2VhcmNoLWlucHV0O1xyXG4gIHBhZGRpbmctbGVmdDogJHMtc2VhcmNoLXBhZGRpbmc7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICY6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkYy1pbnB1dC1jb2xvcjtcclxuICB9XHJcbn1cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1mb3JtYXQtcGFkLXRvcDogICAgICAgICAgJHNwYWNlLWw7XHJcbiRzLWZvcm1hdC1saW5rLXBhZC10b3A6ICAgICAkc3BhY2UtcztcclxuJHMtZm9ybWF0LWxpbmstcGFkLWJvdHRvbTogICRzcGFjZS1zO1xyXG4kcy1mb3JtYXQtbGluay1wYWQtc2lkZTogICAgJHNwYWNlLXhzO1xyXG4kcy1mb3JtYXQtbGluay10b3BiYXItc2lkZTogJHNwYWNlLXhzO1xyXG5cclxuLy8gdHlwb1xyXG4kdC1mb3JtYXQtc2l6ZTogJGZvbnQtc2l6ZS1tLCAkZm9udC1zaXplLWw7XHJcblxyXG4vLyBjb2xvclxyXG4kYy1uYXZmb3JtYXQtYWN0aXZlOiAkY29sb3ItdHJlZS1wb3BweTtcclxuXHJcbi5jLW5hdkZvcm1hdHMge1xyXG5cclxuICBhIHtcclxuICAgIGNvbG9yOiAkYy1oZWFkZXJuYXYtbGluaztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcblxyXG4gIC8qICYuYy1oZWFkZXJOYXZiYXJfX2Zvcm1hdHMge1xyXG4gICAgbWFyZ2luLXRvcDogJHMtZm9ybWF0LXBhZC10b3A7XHJcbiAgfSAqL1xyXG59XHJcblxyXG4uYy1uYXZGb3JtYXRzX19saXN0IHtcclxuICBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cclxuICAuYy1oZWFkZXJOYXZiYXJfX2Zvcm1hdHMgJiB7XHJcbiAgICAvLyBtYXJnaW46ICRzLWZvcm1hdC1saW5rLXRvcGJhci1zaWRlIDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1uYXZGb3JtYXRzX19pdGVtIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWRlZmF1bHQ7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1uYXZGb3JtYXRzX19saW5rIHtcclxuICBAaW5jbHVkZSBzYW5zLWJvbGQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiBudGgoJHQtZm9ybWF0LXNpemUsMSk7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZSFpbXBvcnRhbnQ7IFxyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG5cclxuICAmLmlzLW5ldyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtcShiaWdkZXNrKSB7XHJcbiAgICBmb250LXNpemU6IG50aCgkdC1mb3JtYXQtc2l6ZSwyKTtcclxuICB9XHJcblxyXG4gIC5jLWZvb3Rlcl9fbmF2Rm9ybWF0cyAmLFxyXG4gIC5jLWhlYWRlcl9fZm9ybWF0cyAmIHtcclxuICAgIHBhZGRpbmc6ICRzLWZvcm1hdC1saW5rLXBhZC10b3AgJHMtZm9ybWF0LWxpbmstcGFkLXNpZGUgMDtcclxuICB9XHJcblxyXG4gIC5jLWhlYWRlck5hdmJhcl9fZm9ybWF0cyAmIHtcclxuICAgIHBhZGRpbmc6ICRzLWZvcm1hdC1saW5rLXBhZC10b3AgMCAkcy1mb3JtYXQtbGluay1wYWQtYm90dG9tO1xyXG4gIH1cclxufVxyXG5cclxuLmMtbmF2Rm9ybWF0c19fbmV3cyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIGZvbnQtc2l6ZTogMTFweDsgLy90ZW1wXHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgd2lkdGg6IDEyMCU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vLyBoaWdobGlnaHRcclxuXHJcbi5jLW5hdkZvcm1hdHNfX2hpZ2hsaWdodCB7XHJcbiAgLmMtaGlnaGxpZ2h0X19pY29uIHtcclxuICAgIHN0cm9rZS13aWR0aDogMnB4O1xyXG4gIH1cclxufVxyXG4iLCIvLyB0eXBvXHJcbiR0LW5hdm1lbnUtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuXHJcbi8vIHNwYWNlXHJcbiR0LW5hdm1lbnUtbWFyZ2luOiAkc3BhY2UtbDtcclxuJHMtbmF2bWVudS1kZXNrdG9wLW1hcmdpbjogJHNwYWNlLXhzO1xyXG5cclxuXHJcbi5jLW5hdk1lbnUge1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRjLWhlYWRlcm5hdi1saW5rO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmMtaGVhZGVyX19uYXZNZW51IHNwYW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmNhcnRfcXVhbnRpdHkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdG9wOiAtMTJweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC02cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDJweDtcclxuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53cmFwLWNhcnRfcXVhbnRpdHkge1xyXG4gICAgICAgIGNvbG9yOiAjZTFlOGVkO1xyXG4gICAgICAgIC8qbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTFweDsqL1xyXG4gICAgICAgICYuZmlyc3Qge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmMtaGVhZGVyTmF2YmFyX19uYXZNZW51IHtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtbmF2TWVudV9fbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cclxuICAgIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAmIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkdC1uYXZtZW51LW1hcmdpbjtcclxuICAgIH1cclxufVxyXG5cclxuLmMtbmF2TWVudV9faXRlbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWRlZmF1bHQ7XHJcbiAgICAgICAgbWFyZ2luOiAkcy1uYXZtZW51LWRlc2t0b3AtbWFyZ2luO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLW5hdk1lbnUuYy1oZWFkZXJOYXZiYXJfX25hdk1lbnUgLmMtbmF2TWVudV9faXRlbS0tc2VhcmNoIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLmMtbmF2TWVudV9faXRlbS0tY2FydCB7XHJcbiAgICBtYXJnaW4tbGVmdDogJHNwYWNlLXM7XHJcbn1cclxuXHJcbi5jLWhlYWRlcl9fbWFpbiAuYy1uYXZNZW51X19pdGVtLS1zZWFyY2gge1xyXG4gICAgbWFyZ2luOiAwICRzcGFjZS1zO1xyXG59XHJcblxyXG4uYy1uYXZNZW51X19saW5rIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICAgIGZvbnQtc2l6ZTogJHQtbmF2bWVudS1zaXplO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1zaG9wIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1uYXZNZW51X19waXBlIHtcclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogZGVza3RvcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gdHlwb1xyXG4kdC1jYXRlZ29yeS1saW5rLWhlYWRlcjogJGZvbnQtc2l6ZS14cztcclxuJHQtY2F0ZWdvcnktbGluay1uYXZIZWFkZXI6ICRmb250LXNpemUtcztcclxuJHQtc3ViY2F0ZWdvcnktbGluazogJGZvbnQtc2l6ZS14cztcclxuXHJcbi8vIHNwYWNlXHJcbiRzLWNhdGVnb3J5LXBhZGRpbmc6ICRzcGFjZS1zO1xyXG4kcy1zdWJjYXRlZ29yeS1wYWRkaW5nOiAkc3BhY2UteHM7XHJcbiRzLWV4cGFuZGVkLXN1Ym1lbnUtbWFyZ2luOiAkc3BhY2UteHM7XHJcblxyXG4vLyBjb2xvclxyXG4kYy1jYXRlZ29yaWVzLWJvcmRlcjogJGNvbG9yLWJvcmRlcjtcclxuJHQtY2F0ZWdvcnktbGluay1oZWFkZXItY29sb3I6ICRjb2xvci1zb2xpZC1ibGFjaztcclxuJHQtY2F0ZWdvcnktYm9yZGVyLWhlYWRlci1jb2xvcjokY29sb3Itc29saWQtYmxhY2s7XHJcblxyXG5cclxuLmMtbmF2Q2F0ZWdvcmllcyB7XHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYy1oZWFkZXJuYXYtbGluaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtaGVhZGVyX19ib3R0b21iYXIgJiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdC1jYXRlZ29yeS1saW5rLWhlYWRlci1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1uYXZDYXRlZ29yaWVzX19saXN0IHtcclxuICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAuYy1oZWFkZXJfX2JvdHRvbWJhciAmIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1uYXZDYXRlZ29yaWVzX19pdGVtIHtcclxuXHJcbiAgICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgJiB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjLWNhdGVnb3JpZXMtYm9yZGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWhlYWRlcl9fYm90dG9tYmFyICYge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLXM7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzICYge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQteHhzO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICRzcGFjZS14cztcclxuXHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICB9XHJcblxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLy8gLmMtbmF2Q2F0ZWdvcnkge31cclxuXHJcbi5jLW5hdkNhdGVnb3J5X19saW5rIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAmIHtcclxuICAgICAgICBAaW5jbHVkZSBzYW5zLWJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAkdC1jYXRlZ29yeS1saW5rLW5hdkhlYWRlcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAkcy1jYXRlZ29yeS1wYWRkaW5nO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWZvb3Rlcl9fbmF2Q2F0ZWdvcmllcyAmIHtcclxuICAgICAgICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC14cztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKi0tLS0tLS0tLS0gIFN1YmNhdGVnb3J5ICAtLS0tLS0tLS0tKi9cclxuXHJcbi5jLW5hdkNhdGVnb3J5X19zdWJDYXRlZ29yaWVzIHtcclxuXHJcbiAgICAuYy1oZWFkZXJfX2JvdHRvbWJhciAmIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtbmF2Q2F0ZWdvcnlfX3N1YkNhdGVnb3J5IHtcclxuXHJcbiAgICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgJiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4yNXM7XHJcbiAgICB9XHJcblxyXG4gICAgLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS14cztcclxuICAgIH1cclxufVxyXG5cclxuLmMtbmF2Q2F0ZWdvcnkuaXMtYWN0aXZlIC5jLW5hdkNhdGVnb3J5X19zdWJDYXRlZ29yeSB7XHJcbiAgICAvLyBxdWFuZG8gPGxpPiBoYSAnaXMtYWN0aXZlJywgbGEgc3VhIDx1bD4gw6ggYXBlcnRhXHJcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDtcclxufVxyXG5cclxuXHJcbi5jLXN1YkNhdGVnb3J5IHtcclxuICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuXHJcbiAgICAuYy1oZWFkZXJOYXZiYXJfX2NhdGVnb3JpZXMgJiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWNhdGVnb3JpZXMtYm9yZGVyO1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXN1YkNhdGVnb3J5X19pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweCFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLmMtaGVhZGVyTmF2YmFyX19jYXRlZ29yaWVzICYge1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogJHMtc3ViY2F0ZWdvcnktcGFkZGluZztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzLXN1YmNhdGVnb3J5LXBhZGRpbmc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1zdWJDYXRlZ29yeV9fbGluayB7XHJcbiAgICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgICBmb250LXNpemU6ICR0LXN1YmNhdGVnb3J5LWxpbms7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2Fucy1ib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWhlYWRlck5hdmJhcl9fY2F0ZWdvcmllcyAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAkcy1zdWJjYXRlZ29yeS1wYWRkaW5nO1xyXG4gICAgfVxyXG59IiwiLy8gc3BhY2luZ1xyXG4kcy1uYXYtbWFpbmNhdGVnb3JpZXMtbGluZS1tYXJnaW46ICAgICAkc3BhY2UteHhzO1xyXG5cclxuLy8gdHlwb2dyYXBoeVxyXG4kdC1uYXYtbWFpbmNhdGVnb3JpZXMtZm9udDogICAgICAgICAgICAkZm9udC1zaXplLXhzO1xyXG4kdC1uYXYtbWFpbmNhdGVnb3JpZXMtZm9udC1kZXNrdG9wOiAgICAkZm9udC1zaXplLXM7XHJcblxyXG4vLyBjb2xvcnNcclxuJGMtbmF2LW1haW5jYXRlZ29yaWVzLWxpbmU6ICAgICAgICAgICAgJGNvbG9yLWJsYWNrO1xyXG5cclxuXHJcbi5jLW5hdk1haW5DYXRlZ29yaWVzX19saXN0IHtcclxuICBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLW5hdi1tYWluY2F0ZWdvcmllcy1saW5lO1xyXG4gIG1hcmdpbi1ib3R0b206ICRzLW5hdi1tYWluY2F0ZWdvcmllcy1saW5lLW1hcmdpbjtcclxuICBwYWRkaW5nLWJvdHRvbTogJHMtbmF2LW1haW5jYXRlZ29yaWVzLWxpbmUtbWFyZ2luO1xyXG4gIGRpc3BsYXk6ZmxleDtcclxuICBmbGV4LXdyYXA6d3JhcDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuLmMtbmF2TWFpbkNhdGVnb3JpZXNfX2l0ZW0ge1xyXG4gIC8qbWFyZ2luLWJvdHRvbTogMDtcclxuICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1zOyovXHJcbiAgbWFyZ2luLXJpZ2h0OiAwIWltcG9ydGFudDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLXh4bDtcclxuICB9XHJcbn1cclxuXHJcbi5jLW5hdk1haW5DYXRlZ29yaWVzX19saW5rIHtcclxuICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6ICR0LW5hdi1tYWluY2F0ZWdvcmllcy1mb250O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgZm9udC1zaXplOiAkdC1uYXYtbWFpbmNhdGVnb3JpZXMtZm9udC1kZXNrdG9wO1xyXG4gIH1cclxuXHJcbiAgLmlzLWFjdGl2ZSA+ICYge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1ib2xkO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcbiIsIi8vIHNwYWNpbmdcclxuXHJcbi8vIHR5cG9ncmFwaHlcclxuJHQtbmF2LW1haW5jYXRlZ29yaWVzLWZvbnQ6ICAgICAkZm9udC1zaXplLXhzO1xyXG5cclxuXHJcbi5jLW5hdlN1YkNhdGVnb3J5IHtcclxuICBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1uYXZTdWJDYXRlZ29yeV9faXRlbSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtcztcclxuXHJcbiAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UteGw7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1uYXZTdWJDYXRlZ29yeV9fbGluayB7XHJcbiAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC1zaXplOiAkdC1uYXYtbWFpbmNhdGVnb3JpZXMtZm9udDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtYm9sZDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxufVxyXG4iLCIvLyBzcGFjaW5nXHJcbiRzLWJyZWFkY3J1bWItYm9yZGVyOiAgICAgICAgICAgICAkc3BhY2UteHhzO1xyXG4kcy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgcHgoMjYpO1xyXG4kcy1icmVhZGNydW1iLWl0ZW0tdG9wOiAgICAgICAgICAgJHNwYWNlLXh4cztcclxuJHMtYnJlYWRjcnVtYi1pdGVtLWxlZnQ6ICAgICAgICAgICRzcGFjZS1zO1xyXG4kcy1icmVhZGNydW1iLWl0ZW0tb3Blbi1sZWZ0OiAgICAgJHNwYWNlLXhzO1xyXG5cclxuLy8gY29sb3JzXHJcbiRjLWJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkY29sb3ItbXlzdGljO1xyXG4kYy1icmVhZGNydW1iLWJvcmRlci1jb2xvcjogICAgICAgJGNvbG9yLXdoaXRlO1xyXG4kYy1icmVhZGNydW1iLW9wZW4tYmc6ICAgICAgICAgICAgJGNvbG9yLXdoaXRlO1xyXG5cclxuLy8gdHlwb2dyYXBoeVxyXG4kdC1icmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS14cztcclxuXHJcbi5jLWJyZWFkY3J1bWIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuLmMtYnJlYWRjcnVtYl9fcm9vdCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxufVxyXG5cclxuLmMtYnJlYWRjcnVtYl9fbWFpbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuXHJcbiAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgIHotaW5kZXg6IDIwO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICB6LWluZGV4OiAzMDtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgei1pbmRleDogNDA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIC5jLWJyZWFkY3J1bWJfX2xhYmVse1xyXG5cclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHMtYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWJyZWFkY3J1bWJfX2xhYmVsIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICAgIGZvbnQtc2l6ZTogJHQtYnJlYWRjcnVtYi1mb250LXNpemU7XHJcbiAgICBwYWRkaW5nOiAkcy1icmVhZGNydW1iLWl0ZW0tdG9wICRzLWJyZWFkY3J1bWItaXRlbS1vcGVuLWxlZnQ7XHJcbiAgICAvL3BhZGRpbmctbGVmdDogJHMtYnJlYWRjcnVtYi1pdGVtLW9wZW4tbGVmdCAqIDI7IC8vIHBhZGRpbmcgbmVjZXNzYXJpbyBkb3Z1dG8gYWwgY2VyY2hpbyBiZWZvcmUgZWxlbWVudFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtYnJlYWRjcnVtYi1iZztcclxuICAgIC8qIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcy1icmVhZGNydW1iLWJvcmRlci1yYWRpdXM7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHMtYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOyAqL1xyXG4gICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAgICAgICBzdmd7XHJcbiAgICAgICAgICAgIHN0cm9rZTogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiAgJjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDoyNnB4O1xyXG4gICAgd2lkdGg6MTJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAgJHMtYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzICRzLWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cyAwO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbn0gKi9cclxuXHJcbiAgICAmLmMtYnJlYWRjcnVtYl9fcm9vdCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5zcGFuLmMtYnJlYWRjcnVtYl9fbGFiZWx7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG5cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1icmVhZGNydW1iLWJnO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWJyZWFkY3J1bWJfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxuXHJcbiAgICAuaXMtb3BlbiAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGMtYnJlYWRjcnVtYi1iZztcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtYnJlYWRjcnVtYl9faXRlbSB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4uYy1icmVhZGNydW1iX19saW5rIHtcclxuICAgIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAkdC1icmVhZGNydW1iLWZvbnQtc2l6ZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHBhZGRpbmc6ICRzcGFjZS14cyAkcy1icmVhZGNydW1iLWl0ZW0tbGVmdDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIC8qIGNvbG9yOiBpbml0aWFsO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3Itd2hpdGUsIDEwJSk7ICovXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuLmMtYnJlYWRjcnVtYi1tb2JpbGUge1xyXG4gICAgLmMtYnJlYWRjcnVtYl9fbGluayB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcbi5jLWJyZWFkY3J1bWJfX2ljb24ge1xyXG4gICAgc3Ryb2tlLXdpZHRoOiBweCgyKTtcclxuXHJcbiAgICAuYy1icmVhZGNydW1iX19tYWluLmlzLW9wZW4gJiB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiAgcm90YXRlKDE4MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gdHlwb1xyXG5cclxuLy8gY29sb3JzXHJcbiRjLWZvb3Rlci1iZzogJGNvbG9yLWZpb3JkO1xyXG4kYy1mb290ZXItdGV4dDogJGNvbG9yLXdoaXRlO1xyXG4kYy1mb290ZXItYm9yZGVyOiAkY29sb3Itd2hpdGU7XHJcblxyXG4vLyBzcGFjZXNcclxuJHMtZm9vdGVyLW1haW4tcGFkZGluZzogJHNwYWNlLXhzO1xyXG4kcy1mb290ZXItdG9wYmFyLXNwYWNpbmc6ICRzcGFjZS1sO1xyXG4kcy1mb290ZXItbG9nby13aWR0aDogMTI1cHg7XHJcblxyXG4uYy1mb290ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtZm9vdGVyLWJnO1xyXG4gICAgY29sb3I6ICRjLWZvb3Rlci10ZXh0O1xyXG4gICAgcGFkZGluZzogJHMtZm9vdGVyLW1haW4tcGFkZGluZztcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGMtZm9vdGVyLXRleHQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYy1mb290ZXItdGV4dDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtZm9vdGVyX190b3BiYXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzLWZvb3Rlci10b3BiYXItc3BhY2luZztcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLWZvb3Rlci10b3BiYXItc3BhY2luZztcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkYy1mb290ZXItYm9yZGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1mb290ZXJfX2xvZ28ge1xyXG4gICAgd2lkdGg6ICRzLWZvb3Rlci1sb2dvLXdpZHRoO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtbTtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6IGRlc2t0b3ApIHtcclxuICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHNwYWNlLW07XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogJHMtZm9vdGVyLWxvZ28td2lkdGg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWZvb3Rlcl9fbmF2Rm9ybWF0cyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLmMtZm9vdGVyX19uYXZNZW51IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1mb290ZXJfX2JvZHkge1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiAtbXMtZ3JpZDtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnI7XHJcblxyXG4gICAgICAgIEBzdXBwb3J0cyhkaXNwbGF5OiBncmlkKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgIC8vZ3JpZC1nYXA6ICRzcGFjZS1zO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYSBiXCIgXCJjIGNcIiBcImYgZlwiIFwiZSBlXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnI7XHJcblxyXG4gICAgICAgIEBzdXBwb3J0cyhkaXNwbGF5OiBncmlkKSB7XHJcbiAgICAgICAgICAgIC8vZ3JpZC1nYXA6ICRzcGFjZS1tO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYyBjXCIgXCJhIGJcIiBcImYgZlwiIFwiZSBlXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XHJcblxyXG5cclxuICAgICAgICBAc3VwcG9ydHMoZGlzcGxheTogZ3JpZCkge1xyXG4gICAgICAgICAgICAvL2dyaWQtZ2FwOiAkc3BhY2UtbTtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XHJcbiAgICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjIGMgYyBjXCIgXCJhIGEgYiBiXCIgXCJmIGYgZiBmXCIgXCJlIGUgZSBlXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogQGluY2x1ZGUgbXEod2lkZSkge1xyXG5cclxuICAgIEBzdXBwb3J0cyhkaXNwbGF5OiBncmlkKSB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmciAxZnI7XHJcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxyXG4gICAgXCJhIGMgYyBiIGVcIlxyXG4gICAgXCIuIGMgYyBkIGVcIjtcclxufVxyXG59ICovXHJcbn1cclxuXHJcbi5jLWZvb3Rlcl9fYWJvdXQge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMTtcclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xyXG4gICAgICAgIC8qYmFja2dyb3VuZC1jb2xvcjogI2YwMDsqL1xyXG5cclxuICAgICAgICBAc3VwcG9ydHMoZGlzcGxheTogZ3JpZCkge1xyXG4gICAgICAgICAgICBncmlkLWFyZWE6IGE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMS8zO1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdzogMjtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogMjtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZS14cyAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1mb290ZXJfX3BheW1lbnRzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZmZmO1xyXG4gICAgLW1zLWdyaWQtY29sdW1uOiAxO1xyXG4gICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwOyovXHJcbiAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNDtcclxuICAgIC1tcy1ncmlkLXJvdzogMztcclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgICAgICAgJi5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMTtcclxuICAgICAgICAtbXMtZ3JpZC1yb3c6IDM7XHJcblxyXG4gICAgICAgIEBzdXBwb3J0cyhkaXNwbGF5OiBncmlkKSB7XHJcbiAgICAgICAgICAgIGdyaWQtYXJlYTogZjtcclxuICAgICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtZm9vdGVyX19hYm91dCwgLmMtZm9vdGVyX19jb250YWN0cyB7XHJcbiAgICBzbWFsbCBlbSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS14cztcclxuXHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGV3aWRlLCAkdW50aWw6IHRhYmxldCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNlLXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1mb290ZXJfX2Fib3V0IHNtYWxsIGVtIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDd2dztcclxufVxyXG5cclxuLndyYXAtY29udGFjdHMge1xyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZXdpZGUsICR1bnRpbDogZGVza3RvcCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XHJcbiAgICB9XHJcbiAgICAvKiBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgID4gZGl2e1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB3aWR0aDogNTAlO1xyXG59XHJcbn0gKi9cclxufVxyXG5cclxuLmMtZm9vdGVyX19uYXZDYXRlZ29yaWVzIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNDtcclxuICAgICAgICAtbXMtZ3JpZC1yb3c6IDE7XHJcbiAgICAgICAgLy9ncmlkLWNvbHVtbjogMS81O1xyXG4gICAgICAgIGdyaWQtcm93OiAxO1xyXG5cclxuICAgICAgICBAc3VwcG9ydHMoZGlzcGxheTogZ3JpZCkge1xyXG4gICAgICAgICAgICBncmlkLWFyZWE6IGM7XHJcbiAgICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2UtbDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlLWw7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLWw7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNmZmY7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWZvb3Rlcl9fY29udGFjdHMge1xyXG4gICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDQ7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UteHMgMDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAxO1xyXG5cclxuXHJcbiAgICAgICAgQHN1cHBvcnRzKGRpc3BsYXk6IGdyaWQpIHtcclxuICAgICAgICAgICAgZ3JpZC1hcmVhOiBiO1xyXG4gICAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XHJcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLXNwYW46IDI7XHJcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgICAgICAvKmJhY2tncm91bmQtY29sb3I6ICNmMDA7Ki9cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5jLWZvb3Rlcl9fZWRpdG9yIHtcclxuICAgIC1tcy1ncmlkLXJvdzogNDtcclxuXHJcbiAgICBlbSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UteHM7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1zcGFuOiAyO1xyXG5cclxuICAgICAgICBAc3VwcG9ydHMoZGlzcGxheTogZ3JpZCkge1xyXG4gICAgICAgICAgICBncmlkLWFyZWE6IGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAtbXMtZ3JpZC1jb2x1bW4tc3BhbjogNDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtZm9vdGVyX19ib3R0b21MaW5lIHtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWZvb3Rlcl9fc29jaWFsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuXHJcbiAgICAubm8tY3NzZ3JpZCB7XHJcbiAgICAgICAgLmMtZm9vdGVyX19lZGl0b3IsIC5jLWZvb3Rlcl9fc29jaWFsLCBjLWZvb3Rlcl9fcGF5bWVudHMsIC5jLWZvb3Rlcl9fY29udGFjdHMge1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIC8vcGFkZGluZzogJHNwYWNlLXMgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jLWZvb3Rlcl9fbmF2Q2F0ZWdvcmllcyB7XHJcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNjb29raWVDaG9pY2VJbmZvIHtcclxuICAgIHotaW5kZXg6IDIwMDAwMDAwMDAwO1xyXG59IiwiLmMtY29udGFjdHNfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG59XHJcblxyXG4uYy1jb250YWN0c19fbmV3c2xldHRlciB7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWNvbnRhY3RzX19lbWFpbFt0eXBlPVwiZW1haWxcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAkYy1mb290ZXItYm9yZGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2xvcjogJGMtZm9vdGVyLXRleHQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UteHM7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlLXhzO1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZS14cztcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDgwJTtcclxuXHJcbiAgICAmOmZvY3VzOmludmFsaWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRfY29sb3Itd2hpdGUtOTA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1jb250YWN0c19fbGFiZWwge1xyXG4gICAgY29sb3I6ICRjLWZvb3Rlci10ZXh0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbn1cclxuXHJcbi5jLWNvbnRhY3RzX19idXR0b24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIG1hcmdpbjogJHNwYWNlLXMgMCAwO1xyXG5cclxuICAgICZbdHlwZT1zdWJtaXRde1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJcclxuLmMtc29jaWFsTGlzdCB7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UteHhzO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRzcGFjZS1zO1xyXG5cclxuXHJcbiAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UteHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS14eHM7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcblxyXG5cclxufVxyXG4iLCJcclxuLmMtZWRpdG9ycyB7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDBweDtcclxuXHJcbiAgICAgICAgICAgIGxpe1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgICAgICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgXHJcbiAgICAgICAgICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMztcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2VyaWYtYm9sZDtcclxuICAgICAgICBtYXJnaW46IDAgMCAkc3BhY2UteHMgMDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIH1cclxufVxyXG4iLCIvLyB0ZXh0XHJcbiR0LXNlY3Rpb24tdGl0bGUtZXh0cmE6ICAgICAgICRmb250LXNpemUteHM7XHJcbiR0LXNlY3Rpb24tdGl0bGUtcGFkZGluZy10b3A6ICRzcGFjZS14cztcclxuJHMtc2VjdGlvbnRpdGxlLWV4dHJhLXNwYWNpbmc6JHNwYWNlLXh4cztcclxuXHJcbi5jLXNlY3Rpb25UaXRsZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgLmwtbW9kdWxlICYsXHJcbiAgICAubC1tb2R1bGUtLWhhbGYgJiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXNlY3Rpb25UaXRsZV9fbWFpbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1tO1xyXG59XHJcblxyXG4uYy1zZWN0aW9uVGl0bGVfX2xhYmVsIHtcclxuICAgIG1hcmdpbjogJHNwYWNlLXMgMDtcclxufVxyXG5cclxuLmMtc2VjdGlvblRpdGxlX19oaWdobGlnaHQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxufVxyXG5cclxuLy8gdmVkaSB0dXR0aVxyXG4uYy1zZWN0aW9uVGl0bGVfX2xpbmsge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1ib2xkO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTdweDtcclxufVxyXG4iLCIvLyB0eXBvXHJcbiR0LWF0dGFjaC1pbmZvLXNpemU6ICRmb250LXNpemUtcztcclxuXHJcbi8vIGNvbG9yXHJcbiRjLWF0dGFjaC1pbmZvOiAkY29sb3ItZmlvcmQ7XHJcblxyXG4vLyBzcGFjaW5nXHJcbiRzLWF0dGFjaG1lbnQtbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiRzLWF0dGFjaG1lbnQtbWFyZ2luLXJpZ2h0OiAgJHNwYWNlLXh4cztcclxuXHJcblxyXG4uYy1hdHRhY2htZW50cyB7XHJcbiAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG59XHJcblxyXG4uYy1hdHRhY2htZW50IHtcclxuICBtYXJnaW4tYm90dG9tOiAkcy1hdHRhY2htZW50LW1hcmdpbi1ib3R0b207XHJcbn1cclxuXHJcbi5jLWF0dGFjaG1lbnRfX2xhYmVsIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1hdHRhY2htZW50X19saW5rIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG59XHJcblxyXG4uYy1hdHRhY2htZW50X190aXRsZSB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG5cclxuICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRzLWF0dGFjaG1lbnQtbWFyZ2luLXJpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuLmMtYXR0YWNobWVudF9faW5mbyB7XHJcbiAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gIGZvbnQtc2l6ZTogJHQtYXR0YWNoLWluZm8tc2l6ZTtcclxuICBjb2xvcjogJGMtYXR0YWNoLWluZm87XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXM7XHJcbn1cclxuXHJcbi5jLWF0dGFjaG1lbnRfX2ljb24ge1xyXG4gIC8vIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgbWFyZ2luLXRvcDogcHgoNik7XHJcbiAgbWFyZ2luLWxlZnQ6ICRzcGFjZS1zO1xyXG59XHJcblxyXG4uYy1hdHRhY2htZW50X19pY29uLS1icmlnaHRlbmVkIHtcclxuICBvcGFjaXR5OiAwLjM7XHJcbn1cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1yZWxhdGVkLW1hcmdpbi10b3A6ICRzcGFjZS1zO1xyXG4kcy1yZWxhdGVkLW1hcmdpbi1ib3R0b206ICRzcGFjZS14cztcclxuXHJcbi8vIGNvbG9yXHJcbiRjLXJlbGF0ZWRpbmZvOiAkY29sb3ItZmlvcmQ7XHJcblxyXG4vLyB0eXBvZ3JhcGh5XHJcbiR0LXJlbGF0ZWQtYm9keS1zaXplOiAkZm9udC1zaXplLXM7XHJcbiR0LXJlbGF0ZWQtYm9keS1saW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXhsO1xyXG4kYy1yZWxhdGVkLWRlc2NyaXB0aW9uOiAkY29sb3ItYmxhY2s7XHJcblxyXG5cclxuLmMtcmVsYXRlZExpbmtzIHtcclxuICAgIG1hcmdpbi10b3A6ICRzLXJlbGF0ZWQtbWFyZ2luLXRvcDtcclxuICAgIGNvbG9yOiAkYy1yZWxhdGVkaW5mbztcclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktbGlnaHQ7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLXM7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC42MjVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjYyNXJlbTtcclxuICAgICAgICAgICAgZmxleDogMSAxIGNhbGMoNTAlIC0gMjBweCk7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgY2FsYygzMyUgLSAyMHB4KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDMzLjMlIC0gMjBweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYy1wcm9kdWN0X19hdXRob3Ige1xyXG4gICAgICAgICAgICBmb250LXNpemU6IC45Mzc1cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkxvcmFcIixHZW9yZ2lhLHNhbnMtc2VyaWY7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkxvcmFcIixHZW9yZ2lhLHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC45Mzc1cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBmb250LXNpemU6ICR0LXJlbGF0ZWQtYm9keS1zaXplO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkdC1yZWxhdGVkLWJvZHktbGluZS1oZWlnaHQ7XHJcbiAgICAgICAgY29sb3I6ICRjLXJlbGF0ZWQtZGVzY3JpcHRpb247XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgQGV4dGVuZCAlZm9udC1oMztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIHNwYWNpbmdcclxuJHMtYnVsbGV0bGlzdC1pdGVtLWxlZnQ6ICAgICAgICAgICAgICAkc3BhY2UteHM7XHJcbiRzLWJ1bGxldGxpc3QtbGlzdC1sZWZ0OiAgICAgICAgICAgICAgJHNwYWNlLWw7XHJcblxyXG4vLyBjb2xvclxyXG4kYy1idWxsZXRsaXN0OiAkY29sb3ItZmlvcmQ7XHJcblxyXG4uYy1idWxsZXRMaXN0IHtcclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IHNxdWFyZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzLWJ1bGxldGxpc3QtbGlzdC1sZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgICAvL0BpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UteHM7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcy1idWxsZXRsaXN0LWl0ZW0tbGVmdDtcclxuICAgICAgICBjb2xvcjogJGMtYnVsbGV0bGlzdDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnVsbGV0TGlzdHtcclxuICAgIGxpc3Qtc3R5bGU6IHNxdWFyZTtcclxufVxyXG4iLCIvLyBzcGFjaW5nXHJcbiRzLWN1c3RvbVF1b3RlLWJvZHktcGFkZGluZzogJHNwYWNlLXhzO1xyXG4kcy1jdXN0b21RdW90ZS1wYWRkaW5nOiAkc3BhY2UtbTtcclxuJHMtc3ltYm9sLXdpZHRoOiBweCgxMDApO1xyXG4kcy1zeW1ib2wtaGVpZ2h0OiBweCg2MCk7XHJcblxyXG4vLyB0eXBvZ3JhcGh5XHJcbiR0LWN1c3RvbVF1b3RlLWxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQteHhsO1xyXG5cclxuLy8gY29sb3JcclxuJGMtY3VzdG9tUXVvdGUtbG9nby1jb2xvcjogICRjb2xvci1teXN0aWM7XHJcbiRjLWN1c3RvbVF1b3RlLXRleHQ6ICAgICAgICAkY29sb3ItdGV4dDtcclxuXHJcblxyXG4uYy1jdXN0b21RdW90ZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmctdG9wOiAkcy1jdXN0b21RdW90ZS1wYWRkaW5nO1xyXG59XHJcblxyXG4uYy1jdXN0b21RdW90ZV9fYm9keSB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBjb2xvcjogJGMtY3VzdG9tUXVvdGUtdGV4dDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGJvcmRlci1sZWZ0OiBub25lO1xyXG5cclxuICBwIHtcclxuICAgIHBhZGRpbmc6IDAgJHMtY3VzdG9tUXVvdGUtYm9keS1wYWRkaW5nO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLW07XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LW07XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIHdpZHRoOiAkcy1zeW1ib2wtd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRzLXN5bWJvbC1oZWlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXBvZ2VvLW9nLnBuZ1wiKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcblxyXG4gICAgQHN1cHBvcnRzIChtYXNrOiB1cmwoXCIuLi9pbWcvYXBvZ2VvLW9nLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJSkge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1jdXN0b21RdW90ZS1sb2dvLWNvbG9yO1xyXG4gICAgICBtYXNrOiB1cmwoXCIuLi9pbWcvYXBvZ2VvLW9nLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6YmVmb3JlIHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgtMSk7XHJcbiAgfVxyXG59XHJcbiIsIi8vIHR5cG9cclxuJHQtaGlnaGxpZ2h0LWZvbnRzaXplOiAkZm9udC1zaXplLXhzO1xyXG5cclxuLmMtaGlnaGxpZ2h0IHtcclxuICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgZm9udC1zaXplOiAkdC1oaWdobGlnaHQtZm9udHNpemU7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG5cclxuICBzdmcge1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xyXG4gIH1cclxufVxyXG5cclxuLmMtaGlnaGxpZ2h0X19pY29uIHtcclxuICB0b3A6IC0xcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59IiwiXHJcbi5zZWN0aW9uLWhvbWUge1xyXG4gICAgLy9wYWRkaW5nOiAxMHZoIDA7XHJcbiAgICBwYWRkaW5nOiA1dmggMDtcclxuXHJcbiAgICAmLmJnQ29sb3Ige1xyXG4gICAgICAgIC8vcGFkZGluZzogNXZoIDA7XHJcbiAgICAgICAgcGFkZGluZzogNXZoIDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIuNXZoO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2OC43NXJlbTtcclxuICAgICAgICAgICAgYm90dG9tOiAtOHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwaWN0dXJlIHtcclxuICAgICAgICAgICAgLypmbG9hdDogbGVmdDsqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMSwgaDIge1xyXG4gICAgICAgIG1heC13aWR0aDogNDBjaDtcclxuICAgIH1cclxuXHJcbiAgICBoMywgLmgzIHtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICAgICAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcclxuICAgICAgICBtYXJnaW46IDAgMCAuNXJlbSAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICAmLmMtdGhyZWUtY29sIHtcclxuXHJcbiAgICAgICAgLmwtY29sOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIC5sLWNvbHMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmwtY29sIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmwtY29sLWltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAkc3BhY2UtbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IDVweCByZ2JhKDE3MCwxNzAsMTcwLC4yNSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAmLmMtdGhyZWUtY29sIHtcclxuICAgICAgICAgICAgLmwtY29scyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubC1jb2w6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sLWNvbDpudGgtY2hpbGQoMSksIC5sLWNvbDpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sLWNvbDpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgICAgICAgaDMsIC5oMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAkc3BhY2UtcyAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5jLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcblxyXG4gICAgICAgICYuYy10aHJlZS1jb2wge1xyXG4gICAgICAgICAgICAubC1jb2w6bnRoLWNoaWxkKDMpIC5jLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgaDMsIC5oMyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44OHJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qXHJcbi5zZWN0aW9uLWhvbWUgKyAuc2VjdGlvbi1ob21lLmJnQ29sb3J7XHJcbm1hcmdpbi10b3A6IDV2aDtcclxufVxyXG5cclxuLnNlY3Rpb24taG9tZS5iZ0NvbG9yICsgLnNlY3Rpb24taG9tZS5iZ0NvbG9ye1xyXG5tYXJnaW46IDA7XHJcbn1cclxuKi9cclxuXHJcblxyXG4uYy1wYWdlSGVhZGVyLmMtaG9tZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLnBhZ2VIZWFkbGluZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjg4cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2VIZWFkbGluZSwgLnBhZ2VTdWJ0aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgIH1cclxuXHJcbiAgICAucGFnZVN1YnRpdGxlIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwY2g7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gNXZoO1xyXG4gICAgfVxyXG5cclxuICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6IDY0ZW0pIHtcclxuICAgICAgICAucGFnZUhlYWRsaW5lLCBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40NHJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9tbyB7XHJcbiAgICBmb250LXNpemU6IDAuODhyZW07XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcblxyXG5cclxuYXJ0aWNsZSB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuXHJcbiAgICBmaWd1cmUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmwtY29scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5sLWNvbCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcblxyXG4gICAgICAgICYubC1jb2wtaW1nIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIC8qbWF4LWhlaWdodDogNTB2aDsqL1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IC43NXJlbTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAuNzVyZW07XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1maW9yZDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMzY2cHgpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmMtY3RhX19idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLXByb2R1Y3RfX3R5cGUuYy1wcm9kdWN0X190eXBlLS1vdmVybGF5IHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXh4cztcclxuICAgIH1cclxuXHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDo3NjdweCkge1xyXG4gICAgICAgIC5sLWNvbC5sLWNvbC1pbWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtbTtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAvKm1heC1oZWlnaHQ6IDQwdmg7Ki9cclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmwtY29sLXR4dCB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcbiAgICAgICAgJi5sLWNvbHMge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmwtY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDElO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLmMtc2VjdGlvblRpdGxlLmhvbWUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2FucztcclxuICAgIGZvbnQtc2l6ZTogMS44OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICBtYXJnaW46IDV2aCAwIC41cmVtIDA7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uYy1zZWN0aW9uVGl0bGUuaG9tZSArIHAuc3VidGl0bGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDYwY2g7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5iZ0NvbG9yLWRhcmsge1xyXG4gICAgYXJ0aWNsZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmMtYnV0dG9uIHtcclxuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxubWFpbiAuc2VjdGlvbi1ob21lOmZpcnN0LWNoaWxkIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6NTQ5cHgpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5jLXByb21vIHtcclxuXHJcbiAgICAucHJvbW8ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBoMywgLmgzIHtcclxuICAgICAgICBmb250LXNpemU6IDEuODhyZW07XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuXHJcblxyXG4gICAgICAgICAgICAucHJvbW8ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmlnLXR4dCB7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuIiwiLmMtc2VsZWN0cyB7XHJcbiAgICBmb3JtIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNlLXhsIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmwtY29sIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkc3BhY2UtbTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS14cztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2UteHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXNlbGVjdC1vcmRlciB7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICAgLyogXHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLEFyaWFsLHNhbnMtc2VyaWY7IGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAuNjg3NXJlbTsgKi9cclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbXlzdGljO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLW15c3RpYztcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTI5RkVBO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBzcGFjaW5nXHJcbiRzLXBsYXRmb3JtLWltZy13aWR0aDogICAgICAgICRzcGFjZS14eGw7XHJcbiRzLXBsYXRmb3Jtcy1pbWctbWF4LWhlaWdodDogICRzcGFjZS1sO1xyXG4kcy1wbGF0Zm9ybXMtaWNvbnMtbWFyZ2luOiAgICAkc3BhY2UteHhsO1xyXG4kcy1wbGF0Zm9ybXMtcGFkZGluZzogICAgICAgICAkc3BhY2UteHhzO1xyXG5cclxuXHJcbi5jLXBsYXRmb3JtcyB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLWw7XHJcblxyXG4gIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1wbGF0Zm9ybXNfX3RpdGxlIHtcclxuICBAaW5jbHVkZSBzZXJpZi1yZWd1bGFyO1xyXG59XHJcblxyXG4uYy1wbGF0Zm9ybXNfX2xpc3Qge1xyXG4gIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jLXBsYXRmb3JtIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBhZGRpbmc6ICRzLXBsYXRmb3Jtcy1wYWRkaW5nO1xyXG5cclxuICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkcy1wbGF0Zm9ybXMtaWNvbnMtbWFyZ2luO1xyXG4gIH1cclxufVxyXG5cclxuLmMtcGxhdGZvcm1fX2xpbmsge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAkcy1wbGF0Zm9ybS1pbWctd2lkdGg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYy1wbGF0Zm9ybV9faW1nIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIG1heC1oZWlnaHQ6ICRzLXBsYXRmb3Jtcy1pbWctbWF4LWhlaWdodDtcclxufVxyXG4iLCIvLyBjb2xvcnNcclxuJGMtcmV2aWV3cy1hdXRob3ItY29sb3I6ICRjb2xvci1maW9yZDtcclxuJGMtcmV2aWV3cy1saW5lLWNvbG9yOiAkY29sb3ItdGV4dDtcclxuXHJcbi8vIGxheW91dFxyXG4kbC1yZXZpZXdzLXN0YXJzLW1hcmdpbjogJHNwYWNlLXh4cztcclxuJGwtcmV2aWV3cy1saW5lLW1hcmdpbjogJHNwYWNlLXhzO1xyXG4kbC1yZXZpZXdzLW1hcmdpbjogJHNwYWNlLXM7XHJcbiRsLXJldmlldy1tYXJnaW46ICRzcGFjZS14eGw7XHJcbiRsLXJldmlldy1xdW90ZS1tYXJnaW46ICRzcGFjZS1sO1xyXG5cclxuXHJcbi5jLXJldmlld3Mge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYy1yZXZpZXdzX19saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGhlaWdodDogcHgoMXB4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1yZXZpZXdzLWxpbmUtY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXJldmlld3NfX2xpbmUtLXN0YXJzIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbC1yZXZpZXdzLWxpbmUtbWFyZ2luO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogJGwtcmV2aWV3cy1saW5lLW1hcmdpbjtcclxuICAgIH1cclxufVxyXG5cclxuLmMtcmV2aWV3c19fc3RhciB7XHJcbiAgICBtYXJnaW46ICRsLXJldmlld3Mtc3RhcnMtbWFyZ2luO1xyXG59XHJcblxyXG4uYy1yZXZpZXdzX190aXRsZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAkbC1yZXZpZXdzLW1hcmdpbjtcclxufVxyXG5cclxuLmMtcmV2aWV3c19fbGlzdCB7XHJcbiAgICBAaW5jbHVkZSBsaXN0cmVzZXQ7XHJcbn1cclxuXHJcbi8vIHNpbmdsZSByZXZpZXdcclxuLmMtcmV2aWV3IHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRsLXJldmlldy1tYXJnaW47XHJcbn1cclxuXHJcbi5jLXJldmlld19fYmxvY2txdW90ZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgJHNwYWNlLXhzO1xyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBvcGVuLXF1b3RlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBjbG9zZS1xdW90ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXJldmlld19fYXV0aG9yIHtcclxuICAgIGNvbG9yOiAkYy1yZXZpZXdzLWF1dGhvci1jb2xvcjtcclxufVxyXG5cclxuLmwtYWR2YW50YWdlcyB7XHJcbiAgICBoMyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyB0eXBvXHJcbiR0LWF1dGgtYm9keS1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQteGw7XHJcbiR0LWF1dGgtYm9keS1zaXplOiAgICAgICAgICAkZm9udC1zaXplLXM7XHJcbiR0LWF1dGgtY29uY2x1c2lvbjogICAgICAgICAkZm9udC1zaXplLXM7XHJcblxyXG4vLyBzcGFjaW5nXHJcbiRzLWF1dGhvcnMtbWFyZ2luOiAgICAgICAgICAkc3BhY2UteGw7XHJcbiRzLWF1dGgtcGFyYWdyYXBoLXNwYWNpbmc6ICAkc3BhY2UteHM7XHJcbiRzLWF1dGhvcnMtaW1nLXdpZHRoOiAgICAgICAxMDBweDtcclxuJHMtYXV0aG9ycy1pbWctaGVpZ2h0OiAgICAgIDEwMHB4O1xyXG4kcy1hdXRob3JzLWltZy1tYXJnaW46ICAgICAgMjBweDtcclxuXHJcbi8vIGNvbG9yc1xyXG4kYy1hdXRoLWRlc2NyaXB0aW9uOiAgICAgICAgJGNvbG9yLWZpb3JkO1xyXG4kYy1hdXRoLWNvdXJzZTogICAgICAgICAgICAgJGNvbG9yLWZpb3JkO1xyXG5cclxuXHJcbi8vIC5jLWF1dGhvcnMge31cclxuXHJcbi5jLWF1dGhvcnNfX2xpc3Qge1xyXG4gICAgQGluY2x1ZGUgbGlzdHJlc2V0O1xyXG5cclxuICAgIC5jLWF1dGhvcnMtLWdyaWQgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWF1dGhvciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkcy1hdXRob3JzLW1hcmdpbjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWF1dGhvcnMtLWdyaWQgJiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRzcGFjZS1tfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWF1dGhvcl9fZmlndXJlIHtcclxuICAgIG1hcmdpbjogJHNwYWNlLW0gYXV0bztcclxuICAgIHdpZHRoOiAkcy1hdXRob3JzLWltZy13aWR0aDtcclxuICAgIG1pbi13aWR0aDogJHMtYXV0aG9ycy1pbWctd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRzLWF1dGhvcnMtaW1nLWhlaWdodDtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpe1xyXG4gICAgICAgIG1hcmdpbjogMCAkc3BhY2UtcyAwIDA7XHJcbiAgICAgICAgXHJcbiAgICAgICAgLmMtZXhwYW5kYWJsZSAme1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3AsICR1bnRpbDogd2lkZSkge1xyXG4gICAgICAgIG1pbi13aWR0aDogJHMtYXV0aG9ycy1pbWctd2lkdGggLyAyO1xyXG5cclxuICAgICAgICAuYy1hdXRob3JzLS1ncmlkICYge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6ICRzLWF1dGhvcnMtaW1nLXdpZHRoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAubC1wYWdlQ29udGVudF9fc2lkZSAmIHtcclxuICAgIC8vICAgd2lkdGg6IHB4KDgwKTtcclxuICAgIC8vICAgaGVpZ2h0OiBweCg4MCk7XHJcbiAgICAvLyB9XHJcbn1cclxuXHJcblxyXG4gQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcblxyXG4ubC1wYWdlQ29udGVudF9fc2lkZSAuYy1hdXRob3JfX2ZpZ3VyZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1tO1xyXG59XHJcbn1cclxuXHJcbi5jLWF1dGhvcl9faW1nIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLmMtYXV0aG9yX19uYW1lIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkcy1hdXRoLXBhcmFncmFwaC1zcGFjaW5nO1xyXG59XHJcblxyXG4uYy1hdXRob3JfX3JvbGUge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLWF1dGgtcGFyYWdyYXBoLXNwYWNpbmc7XHJcbn1cclxuXHJcbi5jLWF1dGhvcl9fZGVzY3JpcHRpb24ge1xyXG4gICAgZm9udC1zaXplOiAkdC1hdXRoLWJvZHktc2l6ZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkdC1hdXRoLWJvZHktbGluZS1oZWlnaHQ7XHJcbiAgICBjb2xvcjogJGMtYXV0aC1kZXNjcmlwdGlvbjtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkcy1hdXRoLXBhcmFncmFwaC1zcGFjaW5nO1xyXG59XHJcblxyXG4uYy1hdXRob3JfX2NvdXJzZSB7XHJcbiAgICBAaW5jbHVkZSBzYW5zLXJlZ3VsYXI7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAkYy1hdXRoLWNvdXJzZTtcclxufVxyXG5cclxuLmMtYXV0aG9yX19hdHRhY2htZW50TGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtbTtcclxuXHJcbiAgICAuYy1hdHRhY2htZW50X190aXRsZXtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAvL2NvbG9yOiAkY29sb3ItZmlvcmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWF1dGhvcnNfX2NvbmNsdXNpb24ge1xyXG4gICAgQGluY2x1ZGUgc2VyaWYtYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogJHQtYXV0aC1jb25jbHVzaW9uO1xyXG5cclxuICAgIC8vIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgLy8gbWFyZ2luLWxlZnQ6ICRzLWF1dGhvcnMtaW1nLXdpZHRoICsgJHMtYXV0aG9ycy1pbWctbWFyZ2luOyAvLyBjb21tZW50ZWQgZHVlIHRvIGVtbWFib3NoaVxyXG4gICAgLy8gfVxyXG59XHJcblxyXG5cclxuLmMtcGFnZUhlYWRlcl9fdG9wLWZpZ3VyZVdyYXAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgLmMtYXV0aG9yX19maWd1cmUge1xyXG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IDc1cHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMCAkc3BhY2UteHMgMCAwO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLy8gY29sb3JzXHJcbiRjLWN0YS1iZzogICAgICAgICAkY29sb3ItbXlzdGljO1xyXG5cclxuXHJcbi5jLWN0YSB7XHJcbiAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWN0YS1iZztcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtZmxvdzogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBwYWRkaW5nOiAkc3BhY2UteHMgJHNwYWNlLWw7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgQGluY2x1ZGUgbXEod2lkZSkge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtZmxvdzogcm93O1xyXG4gIH1cclxuXHJcbiAgcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1idXR0b24uYy1jdGFfX2J1dHRvbiwgLmMtY3RhX19idXR0b24ge1xyXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgbWFyZ2luLXRvcDogJHNwYWNlLW07XHJcblxyXG4gIEBpbmNsdWRlIG1xKHdpZGUpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2UteHM7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmMtcHJvZHVjdF9fYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbTtcclxufSIsIlxyXG4uYy1waWxsc19faXRlbSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UteHhzO1xyXG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZS14eHM7XHJcblxyXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGV3aWRlKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS1zO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgfVxyXG5cclxuIFxyXG59XHJcbiIsIi5jLXNvY2lhbCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtcztcclxuXHJcbiAgICAuYy1zb2NpYWxfX2xhYmVsIHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsQXJpYWwsc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IC45Mzc1cmVtO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1zb2NpYWxfX2xpbmsge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgbWFyZ2luOiAwIC43NXJlbTtcclxufVxyXG4iLCIuYy1uZXdzbGV0dGVyQmxvY2sge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgaDIsIGgzLCAuaDMge1xyXG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLEFyaWFsLHNhbnMtc2VyaWY7XHJcbiAgICB9XHJcblxyXG4gICAgaDMsIC5oMyB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIH1cclxufVxyXG5cclxuLyogLmMtbmV3c2xldHRlckJsb2NrX19pbWcge1xyXG5mbGV4OiAwIDAgMzUlO1xyXG50ZXh0LWFsaWduOiByaWdodDtcclxucGFkZGluZzogJHNwYWNlLXhzO1xyXG59ICovXHJcblxyXG5cclxuXHJcbi5jLW5ld3NsZXR0ZXJCbG9ja19fY29udGVudCB7XHJcbiAgICBmbGV4OiAwIDAgMTAwJTtcclxuXHJcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAmICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIGZsZXg6IDAgMCA2MiU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogJHNwYWNlLWw7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRzcGFjZS14bDtcclxuICAgIH1cclxufVxyXG5cclxuLnBhZ2UgLnBvc3RDb250ZW50IC5jLW5ld3NsZXR0ZXJCbG9jayB7XHJcbiAgICBvcmRlcjogMjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogZGVza3RvcCkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwJTtcclxuICAgICAgICBmbGV4LWJhc2lzOiA2MCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaW5nbGUtcG9zdCAucG9zdENvbnRlbnQgLmMtbmV3c2xldHRlckJsb2NrIHtcclxuICAgIG9yZGVyOiAyO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XHJcbiAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDo3NjdweCkge1xyXG4gICAgLmMtbmV3c2xldHRlckJsb2NrX19pbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE5FV1NMRVRURVIgUE9QVVBcclxuXHJcbi5uZXdzbGV0dGVyLXBvcHVwIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDc0JSk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDI1cHggMTBweCByZ2JhKDAsMCwwLC43NSk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O1xyXG5cclxuICAgICNwb3B1cF9mcm1fZmllbGRfNjlfY29udGFpbmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGgzLCAuaDMsIHAge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xyXG4gICAgfVxyXG5cclxuICAgIGgzLCAuaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6IC45NXJlbTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNpbHZlci1jaGFsaWNlO1xyXG4gICAgICAgIG1hcmdpbjogJHNwYWNlLXMgMCAkc3BhY2UtbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgfVxyXG5cclxuICAgIC5uZXdzbGV0dGVyLXBvcHVwX19jb250ZW50IHtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtbCAkc3BhY2UteGwgJHNwYWNlLWwgJHNwYWNlLWw7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAgICAgICAuZnJtX21lc3NhZ2Uge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jLWNvbnRhY3RzX19idXR0b25bdHlwZT1zdWJtaXRdIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdHJlZS1wb3BweTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1ob3ZlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICAgICAgICAvL3RyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbjtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWV4cGFuZGVkIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlLWluO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtY2VudGVyZWQge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01MHZoICsgNTAlKSkgdHJhbnNsYXRlWChjYWxjKC01MHZ3ICsgNTAlKSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcclxuICAgIH1cclxuXHJcbiAgICAuY2xvc2UtcG9wdXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDE1cHg7XHJcbiAgICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2Nsb3NlLXBvcHVwLnN2Zykgbm8tcmVwZWF0IDAgMDtcclxuICAgICAgICB3aWR0aDogMzZweDtcclxuICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjU0MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXZ3O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGxhY2Vob2xkZXItbmV3c2xldHRlci5qcGcpIG5vLXJlcGVhdCAwIDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDE1cHggMHB4IHJnYmEoMCwwLDAsLjUpO1xyXG5cclxuICAgICAgICBoMywgLmgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjY0MHB4KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2NXZ3O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvcGxhY2Vob2xkZXItbmV3c2xldHRlci5qcGcpIG5vLXJlcGVhdCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1heC13aWR0aDoxMDIzcHgpIHtcclxuICAgICAgICAuY2xvc2UtcG9wdXAge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2Fycm93LXBvcHVwLnN2Zykgbm8tcmVwZWF0IDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtZXhwYW5kZWQsICYuaXMtaG92ZXIge1xyXG4gICAgICAgICAgICAuY2xvc2UtcG9wdXAge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jbG9zZS1wb3B1cC5zdmcpIG5vLXJlcGVhdCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDYyNHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjI2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuYm9keTpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43NSk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbmJvZHkub3ZlcmxheTpiZWZvcmUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyIC4xNXM7XHJcbn1cclxuIiwiLmMtdGFibGVQcmljZSB7XHJcbn1cclxuXHJcbi5jLXRhYmxlUHJpY2VfX3JvdyB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgLyogdGR7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgIH0gKi9cclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIG91dGxpbmU6IHNvbGlkIDFweCAkY29sb3ItdHJlZS1wb3BweTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgICYuZmlsbC0tbXlzdGljIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbXlzdGljO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLXRhYmxlUHJpY2VfX2Rlc2NyaXB0aW9uIHtcclxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmMtdGFibGVQcmljZV9fZGVzY3JpcHRpb24ge1xyXG5cclxuICAgIHAge1xyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtdGFibGVQcmljZV9fcmVtYWluaW5nIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGNvbG9yOiAkY29sb3ItZmlvcmQ7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUteHM7XHJcbn1cclxuXHJcbi5jLXRhYmxlUHJpY2VfX2F2YWlsYWJsZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi5jLXRhYmxlUHJpY2VfX2Vhcmx5QmlyZExhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5jLXRhYmxlUHJpY2VfX3ByaWNlIHtcclxuXHJcbiAgICAmLmlzLW9sZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGluZXRocm91Z2g7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZmlvcmQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy10YWJsZVByaWNlX19yb3cge1xyXG4gICAgdGQge1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZS14cyFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXRhYmxlUHJpY2VfX2J1dHRvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UteHM7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UteHhzIDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtdGFibGVQcmljZV9fZGVzY3JpcHRpb24gLmMtdGFibGVQcmljZV9fYXZhaWxhYmxlIHtcclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmMtdGFibGVQcmljZV9fY3RhIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG4iLCIuYy1wYWcge1xyXG4gIEBpbmNsdWRlIHNhbnMtcmVndWxhcjtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbn1cclxuXHJcbi5jLXBhZ19faWNvbiB7XHJcbiAgQGluY2x1ZGUgbXEoJGZyb206IGRlc2t0b3ApIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1wYWdfX2xhYmVsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gIEBpbmNsdWRlIG1xKCRmcm9tOiBkZXNrdG9wKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5jLXBhZ19fc2luZ2xlIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uYy1wYWdfX251bWJlcnMge1xyXG4gIG1hcmdpbjogMCAkc3BhY2UtbTtcclxuXHJcbiAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgbWFyZ2luOiAwIHB4KDcwKTtcclxuICB9XHJcblxyXG4gIC5wYWdlLW51bWJlcnMge1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG59XHJcbn1cclxuXHJcbi5jLXBhZ19fbnVtYmVyIHtcclxuICAvLyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2UtbTtcclxuICBwYWRkaW5nOiAkc3BhY2UteHM7XHJcblxyXG4gIC8vICY6bGFzdC1jaGlsZCB7XHJcbiAgLy8gICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIC8vIH1cclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1ib2xkO1xyXG4gIH1cclxufVxyXG4iLCJcclxuXHJcbi5jLXBhZ2VIZWFkZXJfX3RvcCB7XHJcbiAgcCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uYy1wYWdlSGVhZGVyX19hdXRob3Ige1xyXG4gIG1hcmdpbi10b3A6ICRzcGFjZS1sO1xyXG59XHJcblxyXG4uYy1wYWdlSGVhZGVyX19ib2R5IHtcclxuICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgbWFyZ2luLXRvcDogcHgoNDApOyAvLyBjdXN0b21cclxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtbDtcclxufVxyXG5cclxuIiwiLmMtdmlkZW9QcmV2aWV3X192aWRlbyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmMtdmlkZW9QcmV2aWV3X19pbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLWV4cGFuZGFibGUgJiB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy12aWRlb1ByZXZpZXdfX3BsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbn1cclxuIiwiJGMtZW5yb2xsLWJvZHktYmc6ICAgICAgICAgICRjb2xvci10cmVlLXBvcHB5O1xyXG4kYy1lbnJvbGwtYm9keS10ZXh0OiAgICAgICAgJGNvbG9yLXdoaXRlO1xyXG5cclxuXHJcbi5jLWVucm9sbCB7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWVucm9sbF9fZmlndXJlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjI1cHg7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBvcmRlcjogMjtcclxuICAgIH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlIC5jLWVucm9sbF9faW1nLCAuYy1lbnJvbGxfX2ltZyB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UgI3BheW1lbnQgaW1nIHtcclxuICAgIG1heC13aWR0aDogMTMwcHg7XHJcbn1cclxuXHJcbi5jLWVucm9sbF9fYm9keSB7XHJcbiAgICBjb2xvcjogJGMtZW5yb2xsLWJvZHktdGV4dDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgIHBhZGRpbmc6ICRzcGFjZS14cyAkc3BhY2UtcztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtcyAkc3BhY2UtbTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1lbnJvbGxfX3RpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQpIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUteGw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWVucm9sbF9fZGVzY3JpcHRpb24ge1xyXG4gICAgQGluY2x1ZGUgc2Fucy1yZWd1bGFyO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1tO1xyXG4gICAgfVxyXG59XHJcbiIsIi5yaWJib24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuXHJcbiAgICAubC1tYWluV3JhcHBlcntcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLXMgMDtcclxuICAgIH1cclxuICAgIGg0LCBoMiwgcCwgYXsgICAgICAgIFxyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBoNCwgaDJ7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcbiAgICB9XHJcbiAgICBwe1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtcyAwO1xyXG5cclxuICAgIH1cclxuICAgIGg0LCBoMiwgYXsgICAgICAgIFxyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIixBcmlhbCxzYW5zLXNlcmlmO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGF7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1c3tcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgYnV0dG9ue1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjZweDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOjU0OXB4KXtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2NnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC02NnB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIC5sLW1haW5XcmFwcGVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGg0LCBoMntcclxuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC0gMjBweCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS14cztcclxuICAgICAgICB9XHJcbiAgICAgICAgcHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtbTtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIC5sLW1haW5XcmFwcGVye1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAkc3BhY2UtbSAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoNCwgaDJ7XHJcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAkc3BhY2UtbSAwIDA7ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgdG9wOjEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4iLCJbZGF0YS10b29sdGlwXSxcclxuLnRvb2x0aXAge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5cclxuW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxyXG5bZGF0YS10b29sdGlwXTphZnRlcixcclxuLnRvb2x0aXA6YmVmb3JlLFxyXG4udG9vbHRpcDphZnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBcclxuICAgICAgICBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQsXHJcbiAgICAgICAgdmlzaWJpbGl0eSAwLjJzIGVhc2UtaW4tb3V0LFxyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtIDAuMnMgY3ViaWMtYmV6aWVyKDAuNzEsIDEuNywgMC43NywgMS4yNCk7XHJcbiAgICAtbW96LXRyYW5zaXRpb246ICAgIFxyXG4gICAgICAgIG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCxcclxuICAgICAgICB2aXNpYmlsaXR5IDAuMnMgZWFzZS1pbi1vdXQsXHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC43MSwgMS43LCAwLjc3LCAxLjI0KTtcclxuICAgIHRyYW5zaXRpb246ICAgICAgICAgXHJcbiAgICAgICAgb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0LFxyXG4gICAgICAgIHZpc2liaWxpdHkgMC4ycyBlYXNlLWluLW91dCxcclxuICAgICAgICB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC43MSwgMS43LCAwLjc3LCAxLjI0KTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogICAgICAgICB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5cclxuW2RhdGEtdG9vbHRpcF06aG92ZXI6YmVmb3JlLFxyXG5bZGF0YS10b29sdGlwXTpob3ZlcjphZnRlcixcclxuW2RhdGEtdG9vbHRpcF06Zm9jdXM6YmVmb3JlLFxyXG5bZGF0YS10b29sdGlwXTpmb2N1czphZnRlcixcclxuLnRvb2x0aXA6aG92ZXI6YmVmb3JlLFxyXG4udG9vbHRpcDpob3ZlcjphZnRlcixcclxuLnRvb2x0aXA6Zm9jdXM6YmVmb3JlLFxyXG4udG9vbHRpcDpmb2N1czphZnRlciB7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuXHJcbi50b29sdGlwOmJlZm9yZSxcclxuW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgei1pbmRleDogMTAwMTtcclxufVxyXG5cclxuLnRvb2x0aXA6YWZ0ZXIsXHJcbltkYXRhLXRvb2x0aXBdOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10b29sdGlwKTtcclxuICAgIHBhZGRpbmc6ICRzcGFjZS14eHMgJHNwYWNlLXM7XHJcbiAgICAvL3dpZHRoOiAxNjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxufVxyXG5cclxuXHJcbltkYXRhLXRvb2x0aXBdOmJlZm9yZSxcclxuW2RhdGEtdG9vbHRpcF06YWZ0ZXIsXHJcbi50b29sdGlwOmJlZm9yZSxcclxuLnRvb2x0aXA6YWZ0ZXIge1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgcmlnaHQ6IC02cHg7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZVkoNnB4KTtcclxuICAgIHRyYW5zZm9ybTogICAgICAgICB0cmFuc2xhdGVZKDZweCk7IFxyXG59XHJcblxyXG5bZGF0YS10b29sdGlwXTpiZWZvcmUsXHJcbi50b29sdGlwOmJlZm9yZXtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0xMXB4O1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbn1cclxuXHJcblxyXG5cclxuW2RhdGEtdG9vbHRpcF06aG92ZXI6YmVmb3JlLFxyXG5bZGF0YS10b29sdGlwXTpob3ZlcjphZnRlcixcclxuW2RhdGEtdG9vbHRpcF06Zm9jdXM6YmVmb3JlLFxyXG5bZGF0YS10b29sdGlwXTpmb2N1czphZnRlcixcclxuLnRvb2x0aXA6aG92ZXI6YmVmb3JlLFxyXG4udG9vbHRpcDpob3ZlcjphZnRlcixcclxuLnRvb2x0aXA6Zm9jdXM6YmVmb3JlLFxyXG4udG9vbHRpcDpmb2N1czphZnRlciB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06ICAgIHRyYW5zbGF0ZVkoMHB4KTtcclxuICAgIHRyYW5zZm9ybTogICAgICAgICB0cmFuc2xhdGVZKDBweCk7IFxyXG59ICIsIi5wb3N0Q29udGVudCB7XHJcbiAgICAubC1wYWdlQ29udGVudF9fbWFpbiAubC1tb2R1bGUge1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MHZoO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCA1cHggcmdiYSgxNzAsMTcwLDE3MCwuMjUpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcDplbXB0eSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZ3VyZSwgLndwLWNhcHRpb24tdGV4dCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAud3AtY2FwdGlvbi10ZXh0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC53cC1jYXB0aW9uIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxucHJlLCBwLmNvZGUtd3JhcCB7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICBtYXJnaW46IC41ZW0gMDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDogI2Y1ZjJmMDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIHRleHQtc2hhZG93OiAwIDFweCB3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xyXG4gICAgd29yZC1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAtbW96LXRhYi1zaXplOiA0O1xyXG4gICAgLW8tdGFiLXNpemU6IDQ7XHJcbiAgICB0YWItc2l6ZTogNDtcclxuICAgIC13ZWJraXQtaHlwaGVuczogbm9uZTtcclxuICAgIC1tcy1oeXBoZW5zOiBub25lO1xyXG4gICAgaHlwaGVuczogbm9uZTtcclxufVxyXG4iLCJ0YWJsZS5zaG9wX3RhYmxlIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1teXN0aWM7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLW15c3RpYztcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICB0aCxcclxuICAgIHRkIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBwZXIgRXhwbG9yZXJcclxuICAgIH1cclxuXHJcbiAgICB0aCB7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtZXJyb3IsXHJcbi53b29jb21tZXJjZS1pbmZvLFxyXG4ud29vY29tbWVyY2UtbWVzc2FnZSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gQ2FycmVsbG9cclxuXHJcbi53b29jb21tZXJjZS1jYXJ0LWZvcm0gdGFibGUuc2hvcF90YWJsZSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2dyYXk7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLW0gJHNwYWNlLXM7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblxyXG4gICAgICAgICYucHJvZHVjdC1uYW1lIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNvbGlkLWJsYWNrO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoIHtcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UtbSAkc3BhY2UtcztcclxuICAgIH1cclxufVxyXG5cclxuLmZsZXgtYWxpZ24tcmlnaHQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG4gICAgLndjLXByb2NlZWQtdG8tY2hlY2tvdXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZSBhLnJlbW92ZSB7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICB3aWR0aDogMjRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgvY29udHJpYi90aGVtZXMvYXBvZ2VvbmxpbmUvZGlzdC9pbWcvY2xvc2Uuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNvdXBvbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGgge1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcblxyXG4gICAgLmNvdXBvbiAuaW5wdXQtdGV4dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgIH1cclxuXHJcbiAgICAuY291cG9uIC5pbnB1dC10ZXh0K2J1dHRvbiB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLXhzICRzcGFjZS1zO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICB9XHJcblxyXG4gICAgYnV0dG9uIHtcclxuICAgICAgICAvL3BhZGRpbmc6ICRzcGFjZS14cyAkc3BhY2UtcztcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICAgICAgICAmLmRlLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjNDQ1NTY2O1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLy8gU3RyZW5uYVxyXG5cclxudHIuc3RyZW5uYSB7XHJcblxyXG5cclxuICAgIHRkLmFjdGlvbnMge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0cmVubmEtY29udCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcGFkZGluZzogMjVweDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NTQ5cHgpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmlndXJlIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIDIwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjU0OXB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnR4dCB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCA3NSU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNzUlO1xyXG4gICAgICAgICAgICBjb2xvcjogIzQzNTY2NztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo1NDlweCkge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBmaW5lIFN0cmVubmFcclxuLnRvZ2dsZS1jb3Vwb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIG1hcmdpbi10b3A6ICRzcGFjZS14eHM7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG4gICAgPmJ1dHRvbiB7XHJcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcblxyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgLypvdXRsaW5lOiBub25lOyovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jYXJ0IC53Yy1wcm9jZWVkLXRvLWNoZWNrb3V0IGEuY2hlY2tvdXQtYnV0dG9uIHtcclxuICAgIHBhZGRpbmc6IC41ZW0gMWVtO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWNhbGN1bGF0b3Ige1xyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAxcmVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQsXHJcbiAgICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gICAgICAgIGhlaWdodDogMzRweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc29saWQtYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FydF90b3RhbHMgdGFibGUuc2hvcF90YWJsZSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICB0aCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlcmlmO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxufVxyXG5cclxucC5zdHJlbmdodHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLy9iYWNrZ3JvdW5kOiByZ2JhKDI0OCwxNTIsMjksIC4xNSk7XHJcbiAgICBtYXJnaW4tdG9wOiAtLjVlbTtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgIH1cclxufVxyXG5cclxuI2FkZF9wYXltZW50X21ldGhvZCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdHIgdGQsXHJcbiNhZGRfcGF5bWVudF9tZXRob2QgLmNhcnQtY29sbGF0ZXJhbHMgLmNhcnRfdG90YWxzIHRyIHRoLFxyXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdHIgdGQsXHJcbi53b29jb21tZXJjZS1jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0ciB0aCxcclxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0ciB0ZCxcclxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0ciB0aCB7XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcclxufVxyXG5cclxuLndvb2NvbW1lcmNlIHVsI3NoaXBwaW5nX21ldGhvZCBsaSB7XHJcbiAgICBwYWRkaW5nOiAuMjVlbSAwIC4yNWVtIDMwcHg7XHJcbiAgICB0ZXh0LWluZGVudDogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtY2FydCAuY2FydC1jb2xsYXRlcmFscyAuY2FydF90b3RhbHMgdGFibGUgdGgge1xyXG4gICAgd2lkdGg6IDMwJTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jYXJ0IC5jYXJ0LWNvbGxhdGVyYWxzIC5jYXJ0X3RvdGFscyB0YWJsZSB7XHJcbiAgICB0aCB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIH1cclxuXHJcbiAgICB0ZCB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxufVxyXG5cclxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCxcclxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQsXHJcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB7XHJcblxyXG4gICAgLndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94K3NwYW46YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYXltZW50X21ldGhvZF9wYXlwYWwge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcztcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG50YWJsZSsud2MtcHJvY2VlZC10by1jaGVja291dCB7XHJcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtbDtcclxufVxyXG5cclxuLmFyZ29tZW50aT5zcGFuIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXhzO1xyXG59XHJcblxyXG5cclxuXHJcbi8vIEFjY291bnRcclxuXHJcbi5hY2NvdW50LW5ld3NsZXR0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW15c3RpYztcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweCAwcHggMjBweDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgLmMtY29udGFjdHNfX2J1dHRvblt0eXBlPXN1Ym1pdF0ge1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgLmNoZWNrYm94LWZpZWxkIGxhYmVsOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UgZm9ybSB7XHJcblxyXG4gICAgJi5sb2dpbixcclxuICAgICYucmVnaXN0ZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94K3NwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIHBhZGRpbmctbGVmdDogMzVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0ycHg7XHJcbiAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbXlzdGljO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94OmNoZWNrZWQrc3BhbjpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9jb250cmliL3RoZW1lcy9hcG9nZW9ubGluZS9kaXN0L2ltZy9jaGVjay5zdmcpO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcclxufVxyXG5cclxuXHJcbi53b29jb21tZXJjZS1pbnB1dC13cmFwcGVyIGxhYmVsLmNoZWNrYm94IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgLndvb2NvbW1lcmNlLUlucHV0LS1jaGVja2JveCtzcGFuOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0ycHg7XHJcbiAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbXlzdGljO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLndvb2NvbW1lcmNlLUlucHV0LS1jaGVja2JveDpjaGVja2VkK3NwYW46YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2NvbnRyaWIvdGhlbWVzL2Fwb2dlb25saW5lL2Rpc3QvaW1nL2NoZWNrLnN2Zyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIFJlZ2lzdHJhdGlcclxuXHJcbi5qcy10b2dnbGUtZm9ybSB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UtZm9ybS1yZWdpc3RlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5cclxuLy8gQ2hlY2tvdXRcclxuXHJcbi53b29jb21tZXJjZS1mb3JtLWNvdXBvbi10b2dnbGUgLndvb2NvbW1lcmNlLWluZm8ge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXhzO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZmlvcmQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRyZWUtcG9wcHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UgZm9ybS5jaGVja291dF9jb3Vwb24ud29vY29tbWVyY2UtZm9ybS1jb3Vwb24ge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDQyMHB4O1xyXG5cclxuICAgIC5mb3JtLXJvdy1maXJzdCxcclxuICAgIC5mb3JtLXJvdy1sYXN0IHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS1yb3ctZmlyc3Qge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xyXG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkM2NlZDI7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZS14cyAkc3BhY2UtcztcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiA0ODBweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIC5mb3JtLXJvdy1maXJzdCxcclxuICAgICAgICAuZm9ybS1yb3ctbGFzdCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndjX3BheW1lbnRfbWV0aG9kcy5wYXltZW50X21ldGhvZHMgbGkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnBheW1lbnRfbWV0aG9kX3BheXBhbCBsYWJlbCB7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XHJcbn1cclxuXHJcbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQgLnBheW1lbnRfbWV0aG9kX3BheXBhbCAuYWJvdXRfcGF5cGFsLFxyXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXHJcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwge1xyXG4gICAgbGluZS1oZWlnaHQ6IDI7XHJcbn1cclxuXHJcbnRhYmxlLnNob3BfdGFibGUud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuXHJcbiAgICB0aCxcclxuICAgIHRkLFxyXG4gICAgdGZvb3QgdGQsXHJcbiAgICB0Zm9vdCB0aCB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVjdC1uYW1lIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5pbnB1dCxcclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICAgIGhlaWdodDogNDBweDtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG4gICAgaGVpZ2h0OiAzNnB4O1xyXG59XHJcblxyXG4vLyBCb3R0b25pXHJcblxyXG5idXR0b24ud29vY29tbWVyY2UtQnV0dG9uLmMtYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6ICRzcGFjZS1zO1xyXG4gICAgLy9jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbn1cclxuXHJcbltkaXNhYmxlZF1bdHlwZT1zdWJtaXRdLFxyXG5idXR0b25bZGlzYWJsZWRdIHtcclxuICAgIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UgZm9ybSAuYy1idXR0b24rbGFiZWwuaW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi10b3A6ICRzcGFjZS14cztcclxufVxyXG5cclxuXHJcbi8vIEluZGlyaXp6aVxyXG5cclxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAudGl0bGUge1xyXG4gICAgaDMge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS14eHM7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmVkaXQge1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZmlvcmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1BZGRyZXNzIGFkZHJlc3Mge1xyXG4gICAgbWFyZ2luLXRvcDogJHNwYWNlLXM7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcblxyXG4vLyBPcmRpbmlcclxuLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgdGFibGUuc2hvcF90YWJsZSB7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLW15c3RpYztcclxuICAgICAgICBwYWRkaW5nOiAkc3BhY2UteHMgJHNwYWNlLXM7XHJcbiAgICB9XHJcblxyXG4gICAgLndvb2NvbW1lcmNlLXRhYmxlX19wcm9kdWN0LW5hbWUucHJvZHVjdC1uYW1lIGEge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itc29saWQtYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1vcmRlcnMtdGFibGUge1xyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1zb2xpZC1ibGFjaztcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgdGltZSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBtZWRpYShtaW4td2lkdGg6NDgwcHgpIHtcclxuICAgIC53b29jb21tZXJjZS1jYXJ0IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIHtcclxuXHJcbiAgICAgICAgLmlucHV0LXRleHQsXHJcbiAgICAgICAgLmlucHV0LXRleHQrYnV0dG9uIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmlucHV0LXRleHQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZS14cztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndvb2NvbW1lcmNlIGZvcm0gLmMtYnV0dG9uK2xhYmVsLmlubGluZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAkc3BhY2UtbTtcclxuXHJcbiAgICAgICAgaW5wdXQrc3BhbjpiZWZvcmUge1xyXG4gICAgICAgICAgICB0b3A6IDNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEobWluLXdpZHRoOjY0MHB4KSB7XHJcbiAgICAuYWNjb3VudC1uZXdzbGV0dGVyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG5cclxuXHJcbiAgICAgICAgLmNoZWNrYm94LWdyb3VwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNoZWNrYm94LWZpZWxkIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuQG1lZGlhKG1heC13aWR0aDo3NjhweCkge1xyXG5cclxuICAgIC53b29jb21tZXJjZS1jYXJ0LWZvcm1fX2NhcnQtaXRlbS5jYXJ0X2l0ZW0ge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBkYXJrZ3JheTtcclxuICAgIH1cclxuXHJcbiAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyIHRkLFxyXG4gICAgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyIHRkIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAvL21hcmdpbi1ib3R0b206ICRzcGFjZS14cztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UtcztcclxuICAgICAgICB9XHJcblxyXG5cclxuXHJcbiAgICAgICAgJi5wcm9kdWN0LXJlbW92ZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHRyOm50aC1jaGlsZCgybikgdGQsXHJcbiAgICAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUgdHI6bnRoLWNoaWxkKDJuKSB0ZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGQge1xyXG4gICAgICAgIHBhZGRpbmc6ICRzcGFjZS1zICRzcGFjZS14cztcclxuICAgIH1cclxuXHJcbiAgICAud29vY29tbWVyY2UtY2FydCB0YWJsZS5jYXJ0IC5wcm9kdWN0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhKG1pbi13aWR0aDo5OTJweCkge1xyXG4gICAgLmFjY291bnQtbmV3c2xldHRlciB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCA0MHB4IDEwcHggNDBweDtcclxuXHJcbiAgICAgICAgLmNoZWNrYm94LWZpZWxkIGxhYmVsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGxhYmVsLmNoZWNrYm94LFxyXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyBsYWJlbC5jaGVja2JveCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgZGl2LnBheW1lbnRfYm94IHAge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xyXG59IiwiXHJcbi8vIHNwYWNpbmdcclxuJHMtcHJvZHVjdC10eXBlLW1hcmdpbjogJHNwYWNlLXhzO1xyXG4kcy1wcm9kdWN0LXRpdGxlLW1hcmdpbjogJHNwYWNlLXhzO1xyXG4kcy1wcm9kdWN0LWZpZ3VyZS1zcXVhcmVkOiBweCgyNTIpO1xyXG4kcy1wcm9kdWN0LWluZm8tcGFkZGluZzogJHNwYWNlLXhsO1xyXG5cclxuLy8gY29sb3JzXHJcbiRjLXByb2R1Y3QtdHlwZTogJGNvbG9yLWZpb3JkO1xyXG4kYy1wcm9kdWN0LWF1dGhvcjogJGNvbG9yLWZpb3JkO1xyXG4kYy1wcm9kdWN0LWxpbms6ICRjb2xvci10ZXh0O1xyXG5cclxuXHJcbi5jLXByb2R1Y3Qge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgLmMtcHJvZHVjdHNGaWx0ZXIgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAvKiBoZWlnaHQ6IDEwMCU7ICovXHJcbiAgICAgICAgICAgIC8qIGRpc3BsYXk6IGZsZXg7ICovXHJcbiAgICAgICAgICAgIC8qIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47ICovXHJcbiAgICAgICAgICAgIC8qIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAqL1xyXG4gICAgICAgICAgICAvKiBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7ICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1wcm9kdWN0X190aXRsZSwgLmMtcHJvZHVjdF9fc3VidGl0bGUsIC5jLXJlbGF0ZWRMaW5rcyBhIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHMtcHJvZHVjdC10aXRsZS1tYXJnaW47XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX3RpdGxlLCAuYy1wcm9kdWN0X19zdWJ0aXRsZSwgLmMtcmVsYXRlZExpbmtzIGEge1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkcy1wcm9kdWN0LXRpdGxlLW1hcmdpbjtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1tO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLmMtcHJvZHVjdF9fdGl0bGUsIC5jLXByb2R1Y3RfX3N1YnRpdGxlIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5jLXJlbGF0ZWRMaW5rcyBhIHtcclxuICAgIGNvbG9yOiAkY29sb3ItZmlvcmQ7XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX3N1YnRpdGxlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX2ZpZ3VyZSB7XHJcbiAgICAvL3dpZHRoOiAzMyU7XHJcbiAgICAvL21heC13aWR0aDogMjQwcHg7XHJcbiAgICBtYXJnaW46ICRzcGFjZS1tIDA7XHJcbiAgICAvL3RleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vaGVpZ2h0OiAyNDVweDtcclxuICAgIG1heC1oZWlnaHQ6IDI0NTVweDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDEwcHggNXB4IHJnYmEoMTcwLDE3MCwxNzAsLjI1KTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMTBweCA1cHggcmdiYSgxNzAsMTcwLDE3MCwuMjUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCA1cHggcmdiYSgxNzAsMTcwLDE3MCwuMjUpO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbXEoZGVza3RvcCkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDI3NXB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNzVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYy1wcm9kdWN0c0ZpbHRlciAmIHtcclxuICAgICAgICBtYXJnaW46IDAgMCAkc3BhY2UteHMgMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIC8qXHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMyMHB4OyAvLyBoYXJkY29kZWQgYmVjYXVzZSBvZiBkaWZmZXJlbnQgYm9vayBmb3JtYXRzXHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7IC8vIG5lZWRlZCBzaW5jZSB3ZSByZW1vdmVkIHNoYWRvd1xyXG4gICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcShkZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMjc1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAvL2hlaWdodDogMjc1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX2ZpZ3VyZV9fd3JhcCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvL2hlaWdodDogMjQ1cHg7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XHJcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICAvL2hlaWdodDogMjc1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDI3NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgLyp3aWR0aDogMTAwJTsqL1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1wcm9kdWN0X19pbWdTaGFkb3cge1xyXG4gICAgLmMtcHJvZHVjdHNGaWx0ZXIgJiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLW07XHJcbiAgICB9XHJcblxyXG4gICAgLmMtcHJvZHVjdHNHcmlkICYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjZS1tO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxld2lkZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtcHJvZHVjdF9faW5mbyB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAvL3dpZHRoOiA2MyU7XHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWZpb3JkO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10cmVlLXBvcHB5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYy1wcm9kdWN0c0ZpbHRlciAmIHtcclxuICAgICAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX3R5cGUge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBjb2xvcjogJGMtcHJvZHVjdC10eXBlO1xyXG5cclxuICAgICYuYy1wcm9kdWN0X190eXBlLS1vdmVybGF5IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZzogJHNwYWNlLXh4cyAkc3BhY2UteHM7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXhzO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMjJweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGV3aWRlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmZpbGwtZ3JlZW4tb3ZlcmxheSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgfVxyXG5cclxuICAgICYuZmlsbC1wdXJwbGUtb3ZlcmxheSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXB1cnBsZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmZpbGwtYmx1ZS1vdmVybGF5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY3VyaW91cy1ibHVlLW5ldztcclxuICAgIH1cclxuXHJcbiAgICAmLmZpbGwtYmx1ZS1lYm9vay1vdmVybGF5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItY3VyaW91cy1ibHVlLW5ldy1lYm9vaztcclxuICAgIH1cclxuXHJcbiAgICAmLmZpbGwteWVsbG93LW92ZXJsYXkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci15ZWxsb3ctbmV3O1xyXG4gICAgfVxyXG5cclxuICAgICYubGFiZWwtYWxvbmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luOiAkc3BhY2UteHMgMCAkc3BhY2UtcyAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1wcm9kdWN0X19jdGEge1xyXG4gICAgcGFkZGluZzogMzBweCAxMnB4IDE2cHg7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XHJcbiAgICAuYy1idXR0b24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmMtcHJvZHVjdF9fb3B0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcztcclxuXHJcbiAgICBzdmcge1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICBkaXYge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3ItZmlvcmQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNlLXhzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5vcHRpb24taW5saW5lIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UteHhzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkaXY6bm90KGZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgIH1cclxuXHJcbiAgICAucHJpY2Uge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuZGlzY291bnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14cztcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaWNvbi1wcmljZSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2UteHhzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kaXNjb3VudCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUteHMgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXMgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX2F1dGhvciB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogJGMtcHJvZHVjdC1hdXRob3I7XHJcbiAgICBmb250LXNpemU6IC45Mzc1cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlLXM7XHJcblxyXG4gICAgLmMtcHJvZHVjdHNGaWx0ZXIgJiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX2RhdGUge1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNhbnM7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbn1cclxuXHJcbi5jLXByb2R1Y3RfX2J1dHRvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2UtbDtcclxufVxyXG5cclxuLmMtcHJvZHVjdF9fZGVzY3JpcHRpb24ge1xyXG4gICAgbWFyZ2luOiAwIDAgJHNwYWNlLXhzIDA7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXM7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2UtcztcclxuXHJcbiAgICAgICAgLmMtcHJvZHVjdHNGaWx0ZXIgJiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzbWFsbCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1maW9yZDtcclxuICAgICAgICAvL21hcmdpbi1ib3R0b206ICRzcGFjZS1zO1xyXG4gICAgfVxyXG5cclxuICAgIC5jLXByb2R1Y3RzRmlsdGVyICYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zO1xyXG4gICAgfVxyXG5cclxuICAgICY6ZW1wdHkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJ0LXJpYmJvbiB7XHJcbiAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGxpbmVhcjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1wcmljZUJveGVzLWJvcmRlcjtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgJi5pcy12aXNpYmxlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAubC1tYWluV3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IC45Mzc1cmVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgYSwgaDQsIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjkzNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgYSwgaDQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIixBcmlhbCxzYW5zLXNlcmlmO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogLjkzNzVyZW0gMDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblxyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IDAgMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA2cHg7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxlKSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZSkge1xyXG4gICAgICAgIC5sLW1haW5XcmFwcGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAtIDIwcHgpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNjI1cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcbiAgICAgICAgLmwtbWFpbldyYXBwZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxLjI1cmVtIDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHRvcDogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1wcm9kdWN0c0dyaWQtaXRlbS1tYXJnaW4tbW9iaWxlIDogJHNwYWNlLXhsO1xyXG4kcy1wcm9kdWN0c0dyaWQtaXRlbS1tYXJnaW4tZGVza3RvcDogJHNwYWNlLXhsO1xyXG5cclxuLmMtcHJvZHVjdHNHcmlkIHtcclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XHJcbiAgICB9XHJcblxyXG5cclxufVxyXG5cclxuLmMtcHJvZHVjdHNHcmlkX19pdGVtIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRzLXByb2R1Y3RzR3JpZC1pdGVtLW1hcmdpbi1tb2JpbGU7XHJcbiAgICBtYXgtd2lkdGg6IDI3NXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktbGlnaHQ7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzLXByb2R1Y3RzR3JpZC1pdGVtLW1hcmdpbi1kZXNrdG9wO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICBmbGV4OjEgMSBjYWxjKDUwJSAtIDIwcHgpO1xyXG4gICAgICAgIC8vbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDQwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xyXG4gICAgICAgIGZsZXg6MSAxIGNhbGMoMzMlIC0gMjBweCk7XHJcbiAgICAgICAgLy9tYXgtd2lkdGg6IGNhbGMoMzMuMyUgLSA0MHB4KTtcclxuICAgICAgICBtYXgtd2lkdGg6IDMzJTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5jLXByb2R1Y3RzR3JpZF9fZXh0IHtcclxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1wcm9kdWN0c0xpc3QtaXRlbS1tYXJnaW4tbW9iaWxlIDogJHNwYWNlLXh4bDtcclxuJHMtcHJvZHVjdHNMaXN0LWl0ZW0tbWFyZ2luLWRlc2t0b3A6ICRzcGFjZS14bDtcclxuXHJcblxyXG4uYy1wcm9kdWN0c0xpc3RfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHMtcHJvZHVjdHNMaXN0LWl0ZW0tbWFyZ2luLW1vYmlsZTtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBcclxuICAgIC5jLXByb2R1Y3RfX2ZpZ3VyZXtcclxuICAgICAgICBtYXgtd2lkdGg6IDMzJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgLmMtcHJvZHVjdF9faW5mb3tcclxuICAgICAgICB3aWR0aDo2MyU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkcy1wcm9kdWN0c0xpc3QtaXRlbS1tYXJnaW4tZGVza3RvcDtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiLy8gc3BhY2luZ1xyXG4kcy1wcm9kdWN0c0ZpbHRlci1pdGVtLW1hcmdpbi1tb2JpbGU6ICRzcGFjZS14bDtcclxuJHMtcHJvZHVjdHNGaWx0ZXItaXRlbS1tYXJnaW4tZGVza3RvcDogcHgoNDUpOyAvLyBjdXN0b21cclxuXHJcbiRzLXByb2R1Y3RzRmlsdGVyLWl0ZW06IGNhbGMoMjUlIC0gNDBweCk7IC8vIDEvNCAtICRzcGFjZS1zKjJcclxuXHJcbi5jLXByb2R1Y3RzRmlsdGVyIHtcclxuICAgIEBpbmNsdWRlIGxpc3RyZXNldDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcclxuICAgIH1cclxufVxyXG5cclxuLmMtcHJvZHVjdHNGaWx0ZXJfX2l0ZW0ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJHMtcHJvZHVjdHNGaWx0ZXItaXRlbS1tYXJnaW4tbW9iaWxlO1xyXG4gICAgd2lkdGg6IDEwMCU7IC8vIG5lY2Vzc2FyaW8gcGVyIGF2ZXJlIHR1dHRpIGdsaSBpdGVtIHVndWFsaSwgbm9uIGxhcmdoaSBpbiBiYXNlIGFsIGNvbnRlbnV0b1xyXG4gICAgbWF4LXdpZHRoOiAyNzVweDtcclxuICAgIHBhZGRpbmc6ICRzcGFjZS1zO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktbGlnaHQ7XHJcblxyXG4gICAgQGluY2x1ZGUgbXEobW9iaWxld2lkZSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRzLXByb2R1Y3RzRmlsdGVyLWl0ZW0tbWFyZ2luLWRlc2t0b3A7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBmYWxsYmFja1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpOyAvLyBmYWxsYmFja1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2UteHM7IC8vIGZhbGxiYWNrXHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2UteHM7IC8vIGZhbGxiYWNrXHJcbiAgICAgICAgZmxleDogY2FsYyg1MCUgLSAyMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXQpIHtcclxuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMlIC0gMjBweCk7IC8vIGZhbGxiYWNrXHJcbiAgICAgICAgZmxleDogY2FsYygzMy4zMzMlIC0gMjBweCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMlIC0gMjBweCk7IC8vIGZhbGxiYWNrXHJcbiAgICAgICAgZmxleDogY2FsYygzMy4zMzMlIC0gMjBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoYmlnZGVzaykge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIwcHgpOyAvLyBmYWxsYmFja1xyXG4gICAgICAgIGZsZXg6IGNhbGMoMjUlIC0gMjBweCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICYuYy1wcm9kdWN0c0ZpbHRlcl9faXRlbS1hdGMge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODZweDtcclxuXHJcbiAgICAgICAgLmMtcHJvZHVjdF9fY3RhIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJib2R5LmhpZGRlblggeyBvdmVyZmxvdy14OiBoaWRkZW47IH1cclxuXHJcbi51LWZvbnQtbm9ybWFsIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxyXG4udS1mb250LW1lZGl1bSB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtICFpbXBvcnRhbnQ7IH1cclxuLnUtZm9udC1ib2xkIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cclxuXHJcbi51LWFsaWduLWxlZnQgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cclxuLnUtYWxpZ24tcmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XHJcblxyXG4udS10ZXh0LXhzIHsgZm9udC1zaXplOiAkZm9udC1zaXplLXhzICFpbXBvcnRhbnQ7IH1cclxuLnUtdGV4dC1zIHsgZm9udC1zaXplOiAkZm9udC1zaXplLXMgIWltcG9ydGFudDsgfVxyXG4udS10ZXh0LW0geyBmb250LXNpemU6ICRmb250LXNpemUtbSAhaW1wb3J0YW50OyB9XHJcbi51LXRleHQtbCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sICFpbXBvcnRhbnQ7IH1cclxuLnUtdGV4dC14bCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS14bCAhaW1wb3J0YW50OyB9XHJcbi51LXRleHQteHhsIHsgZm9udC1zaXplOiAkZm9udC1zaXplLXh4bCAhaW1wb3J0YW50OyB9XHJcblxyXG4udS1oaWRkZW4tbSB7IEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XHJcbi51LWhpZGRlbi10IHsgQGluY2x1ZGUgbXEodGFibGV0LCBkZXNrdG9wKSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XHJcbi51LWhpZGRlbi1kIHsgQGluY2x1ZGUgbXEoZGVza3RvcCwgd2lkZSkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxyXG4udS1oaWRkZW4tdyB7IEBpbmNsdWRlIG1xKHdpZGUpIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cclxuXHJcbi51LWhpZGRlbi1zIHsgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cclxuLnUtaGlkZGVuLWwgeyBAaW5jbHVkZSBtcSgkZnJvbTogdGFibGV0KSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XHJcblxyXG4udS1saXN0cmVzZXQgeyBAaW5jbHVkZSBsaXN0cmVzZXQ7fVxyXG4iLCJAbWl4aW4gZGVidWctYm9yZGVycygkY29sb3IpIHtcclxuICBib3gtc2hhZG93OiAwIDAgMXB4IDFweCAkY29sb3IgaW5zZXQ7XHJcbn1cclxuXHJcbi5kZWJ1Zy1ib3JkZXJzIHtcclxuICBAaW5jbHVkZSBkZWJ1Zy1ib3JkZXJzKHJlZCk7XHJcbn1cclxuXHJcbi5kZWJ1Zy1ib3JkZXJzLW5lc3RlZCB7IC8vIGFkZCBib3JkZXJzIHRvIGFsbCBpdHMgY2hpbGRyZW5cclxuICBAaW5jbHVkZSBkZWJ1Zy1ib3JkZXJzKHJlZCk7XHJcblxyXG4gICoge1xyXG4gICAgQGluY2x1ZGUgZGVidWctYm9yZGVycyhvcmFuZ2UpO1xyXG4gIH1cclxufVxyXG5cclxuLmRlYnVnLWJhY2tncm91bmQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcclxufVxyXG5cclxuLmRlYnVnLWFsaWduLWxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuIiwiLmMtY29kZV9fd3JhcHBlciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKG1vYmlsZXdpZGUpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGRlc2t0b3ApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDU1MHB4O1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjbGVhcjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKGJpZ2Rlc2spIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDY2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKHdpZGUpIHtcclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLWNvZGUge1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxufVxyXG4iLCIvKiAtLSBGZWF0aGVybGlnaHRzIG92ZXJyaWRlcyAtLSAqL1xyXG5cclxuLmZlYXRoZXJsaWdodDpsYXN0LW9mLXR5cGUge1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpO1xyXG59XHJcblxyXG4uZmVhdGhlcmxpZ2h0LWNsb3NlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHBhZGRpbmc6ICRzcGFjZS1tO1xyXG4gIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLW07XHJcbn1cclxuIl19 */
