@charset "UTF-8";
/*
Theme Name: Ubudu
Author: Angèle Tenot
Author URI: http://www.ubudu.com/
Description: Ubudu new website Theme
Version: 1.0
License: Custom Client Theme. Should not be distributed.
*/
/*------------------------------------*    # Settings, Functions...
\*------------------------------------*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

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

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

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

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

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

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

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

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
/*
svg:not(:root) {
  overflow: hidden;
}
*/
/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

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

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
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"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

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

/**
 * 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"] {
  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 */
  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;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 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; }

/* Tables
gu

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

td,
th {
  padding: 0; }

h1, h2, h3, h4, h5, h6, .txtXXL, .txtXL, .txtL, .txtM, .txtS, .txtXS {
  margin: 0 0 1.25rem 0;
  font-family: "Droid Serif", serif;
  line-height: 1.25em;
  font-weight: 600;
  color: #13294B;
  text-rendering: optimizeLegibility; }
  h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child, .txtXXL:first-child, .txtXL:first-child, .txtL:first-child, .txtM:first-child, .txtS:first-child, .txtXS:first-child {
    margin-top: 0; }

.u-txtTruncate {
  max-width: 100%;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-wrap: normal !important; }

/*------------------------------------*    # Base
\*------------------------------------*/
@font-face {
  font-family: 'Droid Sans';
  src: url("fonts/DroidSans.eot");
  src: url("fonts/DroidSans.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSans.woff") format("woff"), url("fonts/DroidSans.svg#DroidSans") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Droid Sans';
  src: url("fonts/DroidSans-Bold.eot");
  src: url("fonts/DroidSans-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSans-Bold.woff") format("woff"), url("fonts/DroidSans-Bold.svg#DroidSans-Bold") format("svg");
  font-weight: bold;
  font-style: normal; }

@font-face {
  font-family: 'Droid Serif';
  src: url("fonts/DroidSerif-BoldItalic.eot");
  src: url("fonts/DroidSerif-BoldItalic.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSerif-BoldItalic.woff") format("woff"), url("fonts/DroidSerif-BoldItalic.svg#DroidSerif-BoldItalic") format("svg");
  font-weight: bold;
  font-style: italic; }

@font-face {
  font-family: 'Droid Serif';
  src: url("fonts/DroidSerif.eot");
  src: url("fonts/DroidSerif.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSerif.woff") format("woff"), url("fonts/DroidSerif.svg#DroidSerif") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'Droid Serif';
  src: url("fonts/DroidSerif-Italic.eot");
  src: url("fonts/DroidSerif-Italic.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSerif-Italic.woff") format("woff"), url("fonts/DroidSerif-Italic.svg#DroidSerif-Italic") format("svg");
  font-weight: normal;
  font-style: italic; }

@font-face {
  font-family: 'Droid Serif';
  src: url("fonts/DroidSerif-Bold.eot");
  src: url("fonts/DroidSerif-Bold.eot?#iefix") format("embedded-opentype"), url("fonts/DroidSerif-Bold.woff") format("woff"), url("fonts/DroidSerif-Bold.svg#DroidSerif-Bold") format("svg");
  font-weight: bold;
  font-style: normal; }

html,
body {
  margin: 0; }

html {
  box-sizing: border-box; }

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

body {
  position: relative;
  height: 100%;
  font-family: "Droid Sans", sans-serif;
  font-size: 0.875em;
  font-weight: 400;
  line-height: 1.3;
  color: #13294B;
  background: #fff;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

[tabindex="-1"]:focus {
  outline: none !important; }

.mainContainer {
  overflow: hidden; }

a {
  text-decoration: none;
  color: #13294B;
  transition: color 0.3s ease-in-out; }

ul, ol {
  margin-bottom: 0.8125em;
  padding-left: 1.625em; }
  ul:first-child, ol:first-child {
    margin-top: 0; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

dl {
  margin-bottom: 0.8125em; }
  dl dt {
    font-weight: bold;
    margin-top: 0.8125em; }
  dl dd {
    margin: 0; }

h1 {
  font-size: 2em; }

h2 {
  font-size: 1.75em; }

h3 {
  font-size: 1.5em; }

h4 {
  font-size: 1.25em; }

h5 {
  font-size: 1em; }

h6 {
  font-size: 1em; }

p {
  margin: 1.25rem 0; }
  p:first-child {
    margin-top: 0; }

small {
  font-size: 1em; }

abbr[title] {
  font-variant: small-caps;
  font-weight: 600;
  text-transform: lowercase; }

abbr,
acronym {
  cursor: help; }

img,
video {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

iframe {
  border: 0; }

figure {
  margin: 0 0 1.25rem 0; }

figcaption {
  font-style: italic;
  font-size: 0.875em; }

hr {
  margin: 3.25rem 0;
  border-bottom: 1px solid #cecece;
  border-left: none;
  border-right: none;
  border-top: none; }

blockquote {
  margin: 3.25rem 0;
  padding-left: 1.25rem;
  border-left: 2px solid #cecece;
  color: #224a88; }
  blockquote cite:before {
    content: '\2014 \00A0'; }

cite {
  color: #2d61b1;
  font-style: italic; }

pre {
  font-size: 0.8125em; }

code,
kbd,
pre,
samp {
  font-family: "Source Code Pro", Consolas, monospace;
  white-space: pre-line;
  white-space: pre-wrap; }

code {
  display: inline-block;
  vertical-align: top;
  padding: 0 .5em;
  font-size: .75em;
  border: 1px solid #e6f180;
  color: #CDE201;
  background-color: #f8fbd9;
  border-radius: 0.3rem; }

input,
label,
select {
  display: block;
  font-family: "Droid Sans", sans-serif;
  font-size: 1em; }

label {
  font-weight: bold;
  margin-bottom: 0.625rem;
  cursor: pointer; }
  label.required:after {
    content: " *"; }
  label abbr {
    display: none; }

textarea,
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select[multiple=multiple] {
  padding: 0.625em;
  width: 100%;
  margin-bottom: 1.25rem;
  border: 1px solid #cecece;
  background-color: #fff;
  font-family: "Droid Sans", sans-serif;
  font-size: 1em;
  border-radius: 0.3rem;
  box-shadow: none;
  transition: all 0.3s cubic-bezier(0.17, 0.67, 0.83, 0.67); }
  textarea:hover,
  input[type="email"]:hover,
  input[type="number"]:hover,
  input[type="password"]:hover,
  input[type="search"]:hover,
  input[type="tel"]:hover,
  input[type="text"]:hover,
  input[type="url"]:hover,
  select[multiple=multiple]:hover {
    border-color: #a5a5a5; }
  textarea:focus,
  input[type="email"]:focus,
  input[type="number"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  input[type="tel"]:focus,
  input[type="text"]:focus,
  input[type="url"]:focus,
  select[multiple=multiple]:focus {
    border-color: #13294B;
    box-shadow: none, 0 0 5px rgba(14, 30, 55, 0.7);
    outline: none; }

input[type=submit]:focus {
  outline: none; }

textarea {
  resize: vertical; }

input[type="checkbox"],
input[type="radio"] {
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.625rem; }

input[type="file"] {
  margin-bottom: 1.25rem;
  padding-bottom: 0.41667rem;
  width: 100%; }

select {
  width: auto;
  max-width: 100%;
  margin-bottom: 1.25rem; }

fieldset {
  margin: 0 0 0.8125em 0;
  padding: 1.625em;
  border: 1px solid #cecece;
  background: #eeeeee;
  border-radius: 0.3rem; }

input::-webkit-input-placeholder {
  color: #c2c2c2; }

input:-moz-placeholder {
  color: #c2c2c2; }

input::-moz-placeholder {
  color: #c2c2c2; }

input:-ms-input-placeholder {
  color: #c2c2c2; }

table {
  margin: 1.25rem 0;
  table-layout: fixed;
  width: 100%;
  border: 1px solid #cecece; }

tr,
td,
th {
  vertical-align: middle; }

th {
  padding: 1.25rem;
  border-bottom: 2px solid #cecece;
  font-weight: bold;
  text-align: left; }
  th + th {
    border-left: 1px solid #e7e7e7; }

tbody tr:nth-child(even) {
  background: #eeeeee; }

tbody td {
  padding: 0.625rem 1.25rem;
  border-bottom: 1px solid #cecece; }
  tbody td + td {
    border-left: 1px solid #e7e7e7; }

/*------------------------------------*    # Layout
\*------------------------------------*/
/**
 * Wrapper
 */
.wrapper {
  width: 80.625em;
  padding-left: 1.25rem;
  padding-right: 1.25rem; }
  @media (min-width: 30.0625em) {
    .wrapper {
      margin-right: auto;
      margin-left: auto;
      max-width: 80.625em; } }
  @media (max-width: 81.25em) {
    .wrapper {
      width: 100%;
      padding: 0 1.25rem; } }

.wrapper-s {
  width: 68.125em;
  padding: 0;
  margin-right: auto;
  margin-left: auto; }
  @media (max-width: 68.75em) {
    .wrapper-s {
      width: 100%;
      padding: 0 1.25rem; } }

.wrapper-l {
  width: 78.125em;
  padding: 0; }
  @media (max-width: 69.375em) {
    .wrapper-l {
      width: 100%; } }

/**
 * Grid
 */
@media (min-width: 30.0625em) {
  .grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
  .grid-1-4,
  .grid-2-4,
  .grid-3-4,
  .grid-4-4,
  .grid-1-3,
  .grid-2-3 {
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
  .grid-1-4 {
    width: 25%; }
  .grid-2-4 {
    width: 50%; }
  .grid-3-4 {
    width: 75%; }
  .grid-4-4 {
    width: 100%; }
  .grid-1-3 {
    width: 33.333%; }
  .grid-2-3 {
    width: 66.666%; } }

.clearfix {
  clear: both; }

.center,
.aligncenter {
  display: block;
  margin: 0 auto; }

.left,
.alignleft {
  float: left; }

.right,
.alignright {
  float: right; }

img.alignleft {
  margin-right: 0.9375em; }

img.alignright {
  margin-left: 0.9375em; }

.flexPush {
  width: 32%; }

.flexWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.fullWidth {
  width: 100% !important; }

.pageContainer {
  margin-top: -5em; }
  @media (max-width: 34.375em) {
    .pageContainer {
      margin-top: -3.125em; } }
  @media (max-width: 23.75em) {
    .pageContainer {
      margin-top: -1.875em; } }

.clr-bg,
.clr-bg-2 {
  background: #13294B;
  color: #fff; }

.gray-bg {
  background: #F9F9F9; }


.list-basic,
.list-reset {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none; }

.sub-menu,
.list-inline {
  padding-left: 0; }
  .sub-menu > li,
  .list-inline > li {
    display: inline-block;
    vertical-align: middle; }
    .sub-menu > li + li,
    .list-inline > li + li {
      margin-left: 0.3125rem; }


.list-basic {
  margin-top: 0; }
  
  .list-basic li:before {
    content: '-';
    margin-right: 0.25em; }

.txtXXL {
  font-size: 2em; }

.txtXL {
  font-size: 1.75em; }

.txtL {
  font-size: 1.5em; }

.txtM {
  font-size: 1.25em; }

.txtS {
  font-size: 1em; }

.txtXS {
  font-size: 1em; }

.txtLead {
  font-weight: bold;
  font-size: 1.25em;
  color: #333; }

.txtSmall {
  font-size: 0.75rem;
  line-height: 1.25em; }

::-moz-selection {
  background: #13294B;
  color: #fff; }

::selection {
  background: #13294B;
  color: #fff; }

#header {
  position: relative;
  background: #13294B;
  padding: 2.5em 0 2.1875em;
  margin-bottom: 3.8125em;
  z-index: 10; }
  @media (max-width: 60.625em) {
    #header {
      padding: 1.25em 0 0.9375em; } }
  @media (max-width: 34.375em) {
    #header {
      padding-bottom: 0;
      margin-bottom: 2.875em; } }
  @media (max-width: 20em) {
    #header {
      margin-bottom: 1.875em; } }
  #header:after {
    content: '';
    display: block;
    position: absolute;
    bottom: -3.8125em;
    background: url("images/vague-header-2.svg") repeat-x bottom center;
    height: 10em;
    width: 100%;
    z-index: -1; }
    @media (max-width: 60.625em) {
      #header:after {
        background: url("images/vague-header-mobile.svg") repeat-x bottom center;
        background-size: 103%;
        height: 3.4375em;
        bottom: -3.4375em; } }
    @media (max-width: 34.375em) {
      #header:after {
        height: 2.8125em;
        bottom: -2.8125em; } }
    @media (max-width: 20em) {
      #header:after {
        height: 2.1875em;
        bottom: -2.1875em; } }

.header-container,
.header-right {
  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; }

.header-left img {
  width: 14.9375em;
  height: auto; }
  @media (max-width: 31.25em) {
    .header-left img {
      width: 12.5em; } }

.header-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.header-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.375em;
  color: #CDE201; }
  .header-link:last-child {
    font-size: 1.375em;
    margin-left: 1.875rem; }
  .header-link:hover {
    color: #fff; }

.header-right .button {
  font-size: 1.0625em;
  margin-left: 2.5em;
  padding-top: 0.25em;
  padding-bottom: 0.25em; }

/* MOBILE */
@media (max-width: 60.625em) {
  .header-desktop {
    display: none; } }

.header-mobile {
  display: none; }
  @media (max-width: 60.625em) {
    .header-mobile {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  .header-mobile .icon {
    cursor: pointer;
    font-size: 1.875em;
    color: #CDE201; }
    .header-mobile .icon-search {
      font-size: 1.75em;
      margin-right: 1.25em; }

#footer {
  position: relative;
  background: #13294B;
  padding: 1.875em 0 2.1875em;
  margin-top: 5rem;
  z-index: 1000; }
  @media (max-width: 50em) {
    #footer {
      margin-top: 1.875em; } }
  #footer:after {
    content: '';
    display: block;
    position: absolute;
    top: -5rem;
    background: url("images/vagues/vague-top-bleu.svg") repeat-x top center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      #footer:after {
        top: -2rem;
        background: url("images/vagues/vague-top-bleu-xs.svg") repeat-x top center;
        height: 2.0625rem; } }

.footer-top,
.footer-middle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.footer-top {
  margin-bottom: 2.8125em; }

.footer-menu {
  margin-top: 2.5em;
  margin-right: 3.75em; }

.footer-info {
  position: relative;
  max-width: 30.3125em;
  color: #fff;
  border-left: 0.1875rem solid #CDE201;
  padding-left: 3.75em; }
  @media (max-width: 58.125em) {
    .footer-info {
      padding-left: 2.5em; } }
  .footer-info:before {
    content: url(images/logo-small.svg);
    position: absolute;
    top: 0;
    left: 1.375em; }
    @media (max-width: 58.125em) {
      .footer-info:before {
        content: ''; } }
  .footer-info p {
    font-size: 0.875em;
    margin: 0; }
    @media (max-width: 58.125em) {
      .footer-info p {
        font-size: 0.9375em; } }
    @media (max-width: 58.125em) {
      .footer-info p:before {
        content: '';
        position: relative;
        top: 0.25em;
        display: inline-block;
        height: 1.25em;
        width: 1.25em;
        background: url(images/logo-small.svg) no-repeat;
        background-size: 100%;
        margin-right: 0.3125rem; } }
  .footer-info span {
    color: #CDE201; }

.footer-socials {
  margin: 0 0 0 3.125em;
  padding-top: 0.25em; }
  .footer-socials li + li {
    margin-left: 1.5625em; }

.social-item {
  display: inline-block;
  width: 2.5em;
  height: 2.5em; }
  .social-item .icon {
    font-size: 2.5em;
    color: #fff; }

.footer-bottom {
  color: #fff;
  text-align: center;
  font-size: 0.875em; }

.footer-contact {
  margin: 2.1875em 0 0 !important; }
  .footer-contact a {
    color: #fff; }
    @media (max-width: 34.375em) {
      .footer-contact a:first-child {
        display: block;
        margin: 0.3125em 0; } }

.footer-copyright {
  display: inline-block;
  font-size: 0.875em;
  margin-top: 1.25rem !important; }
  @media (max-width: 34.375em) {
    .footer-copyright {
      display: block;
      margin: 0.3125em 0; } }

.footer-link {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 0.875em;
  margin-left: 0.4375em;
  padding-left: 0.625em; }
  @media (max-width: 34.375em) {
    .footer-link {
      margin-left: 0;
      padding-left: 0; } }
  .footer-link:before {
    content: '';
    display: inline-block;
    height: 0.8125em;
    position: absolute;
    top: 0.125rem;
    left: 0;
    border-left: 0.0625rem solid #CDE201; }
    @media (max-width: 34.375em) {
      .footer-link:before {
        display: none; } }
  .footer-link:hover {
    text-decoration: underline; }

/* MOBILE */
@media (max-width: 58.125em) {
  .mainFooter-desktop {
    display: none; } }

.mainFooter-mobile {
  display: none; }
  @media (max-width: 58.125em) {
    .mainFooter-mobile {
      display: block; } }
  .mainFooter-mobile .footer-socials {
    margin: 0 3.75em 0 0;
    padding-top: 0; }
    @media (max-width: 58.125em) {
      .mainFooter-mobile .footer-socials {
        margin: 0 2.5em 0 0; } }
    .mainFooter-mobile .footer-socials li + li {
      display: block;
      margin-left: 0; }
  .mainFooter-mobile .social-item {
    margin-bottom: 1.25em; }
    .mainFooter-mobile .social-item:last-child {
      margin-bottom: 0; }
  .mainFooter-mobile .footer-bottom {
    font-size: 1em; }
  @media (max-width: 31.25em) {
    .mainFooter-mobile .footer-menu .submenu-container {
      display: none; } }
  .mainFooter-mobile .menu-item {
    margin-bottom: 1.875em; }
  .mainFooter-mobile .footer-contact {
    font-size: 0.875em; }

.button, .buttonSecondary, .contact-form input[type="submit"] {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  margin: 0;
  padding: 0.4375em 1.0625em;
  margin: 0;
  position: relative;
  white-space: nowrap;
  text-align: center;
  cursor: pointer;
  text-decoration: none;
  font-size: 1.0625em;
  line-height: 1.5;
  font-weight: 800;
  border: 0.20625em solid #CDE201;
  transition: all 0.3s cubic-bezier(0.17, 0.67, 0.83, 0.67);
  -webkit-user-drag: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-appearance: none; }
  @media (min-width: 30.0625em) {
    .button + [class*=button], .buttonSecondary + [class*=button], .contact-form input[type="submit"] + [class*=button] {
      margin-left: 0.625rem; } }
  .button:disabled, .buttonSecondary:disabled, .contact-form input[type="submit"]:disabled, .is-disabled.button, .is-disabled.buttonSecondary, .contact-form input.is-disabled[type="submit"] {
    cursor: default;
    opacity: 0.35; }

/**
 * Base style
 */
.button {
  color: #13294B;
  background: #CDE201;
  border-radius: 0.5rem 0.5rem 0.5rem 0; }
  .button:hover, .button:focus {
    color: #CDE201;
    background-color: transparent; }
  .button:disabled:hover, .button.is-disabled:hover, .button.is-disabled:focus {
    color: #CDE201;
    background-color: transparent;
    outline: none; }
  .button.is-active {
    background: #7b8801; }

.buttonSecondary {
  color: #CDE201;
  background: transparent;
  border: 0.1875rem solid #CDE201;
  border-radius: 0.5rem 0.5rem 0 0.5rem; }
  .buttonSecondary:hover, .buttonSecondary:focus {
    color: #fff;
    background: #CDE201; }
  .buttonSecondary:disabled:hover, .buttonSecondary.is-disabled:hover, .buttonSecondary.is-disabled:focus {
    color: #13294B;
    background: #cecece;
    outline: none; }
  .buttonSecondary.is-active {
    color: #fff;
    background: #7c7c7c; }
  .buttonSecondary.up-left {
    border-radius: 0 0.5rem 0.5rem 0.5rem; }
  .buttonSecondary.up-right {
    border-radius: 0.5rem 0 0.5rem 0.5rem; }

/**
 * Modifier
 */
.button--small {
  padding: 0.23077em 0.76923em;
  font-size: 0.8125em; }

.button--big {
  padding: 0.75em 1.5em;
  font-size: 1.25em;
  line-height: 1.333; }

.button--block {
  display: block;
  width: 100%; }

@media (max-width: 30.0625em) {
  .button--mobileFull {
    display: block;
    width: 100%; } }

/*------------------------------------*  This file is automatically
  generated using gulp.

  Add .svg files to the assets/iconFont
  folder to add icons

  /!\ Do not modify /!\ !!!
\*------------------------------------*/
@font-face {
  font-family: "ubudu-icons";
  src: url("fonts/ubudu-icons.eot");
  src: url("fonts/ubudu-icons.eot?#iefix") format("eot"), url("fonts/ubudu-icons.woff") format("woff"), url("fonts/ubudu-icons.ttf") format("truetype"), url("fonts/ubudu-icons.svg#ubudu-icons") format("svg"); }

[class*="icon-"] {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-family: "ubudu-icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-decoration: inherit;
  text-transform: none; }

.icon-arrow:before {
  content: ""; }

.icon-burger:before {
  content: ""; }

.icon-dots:before {
  content: ""; }

.icon-hash:before {
  content: ""; }

.icon-linkedin:before {
  content: ""; }

.icon-rss:before {
  content: ""; }

.icon-search:before {
  content: ""; }

.icon-seemore:before {
  content: ""; }

.icon-team:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

.icon-user:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.header-menu {
  margin-right: 2.8125em; }

.menu-list {
  font-weight: bold;
  margin: 0; }
  .menu-list .menu-item a {
    color: #fff; }
    .menu-list .menu-item a:hover {
      color: #CDE201; }

.menu-list .menu-item.is-active > a {
  color: #CDE201; }

.menu-list.list-inline > li + li {
  margin-left: 3.125em; }

@media (max-width: 65.625em) {
  .footer-menu .menu-list.list-inline > li + li {
    margin-left: 1.25em; } }

@media (max-width: 31.25em) {
  .footer-menu .menu-list.list-inline > li {
    margin-left: 0.625em;
    margin-right: 0.625em; } }

.submenu-container {
  display: none;
  position: absolute;
  padding-top: 0.625em;
  max-width: 37.5em; }
  @media (max-width: 60.625em) {
    .submenu-container {
      max-width: none; } }
  .submenu-container .wrapper {
    padding-left: 0; }

.sub-menu {
  margin: 0.9375em 0 0; }
  .sub-menu li {
    position: relative;
    font-weight: normal;
    font-size: 0.875em; }
  .sub-menu > li + li {
    padding-left: 0.625em;
    margin-left: 0.625em; }
    .sub-menu > li + li:before {
      content: '-';
      color: #fff;
      position: absolute;
      left: -0.25rem; }

/* MOBILE */
.close {
  display: inline-block;
  position: absolute;
  right: 1.25em;
  top: 1.875em;
  cursor: pointer;
  width: 1.875em;
  height: 1.875em;
  z-index: 10; }
  .close:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0.6875rem;
    display: inline-block;
    height: 1.875em;
    border-left: 0.125rem solid #CDE201;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .close:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0.6875rem;
    display: inline-block;
    height: 1.875em;
    border-left: 0.125rem solid #CDE201;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }

.menu-mobile {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #13294B;
  text-align: center;
  padding-top: 9.375em; }
  .menu-mobile .header-left {
    position: absolute;
    top: 1.25em;
    left: 1.4375em; }
  .menu-mobile .header-menu {
    margin: 0; }
  .menu-mobile .list-inline li {
    display: block;
    margin-bottom: 2.1875em; }
    .menu-mobile .list-inline li a {
      font-size: 1.0625em; }
  .menu-mobile .list-inline li + li {
    margin-left: 0; }
  .menu-mobile .submenu-container {
    position: relative;
    padding-top: 1.25em; }
    .menu-mobile .submenu-container .wrapper {
      padding: 0; }
  .menu-mobile .header-button {
    margin-top: 3.125em; }
  .menu-mobile .header-link {
    display: block;
    font-size: 1.875em;
    margin: 1.25em 0 0; }

@media (max-width: 31.25em) {
  .footer-menu {
    max-width: 18.75em;
    margin-left: auto;
    margin-right: auto; } }

/* NEWSLETTER */
.newsletter-form {
  position: relative; }
  @media (max-width: 34.375em) {
    .newsletter-form {
      width: 100%; } }
  .newsletter-form .form-input {
    display: inline-block;
    width: 22.5em;
    font-size: 0.875em;
    color: #fff;
    background: transparent;
    border: 0.1875rem solid #CDE201;
    border-radius: 0.5rem 0.5rem 0 0.5rem;
    margin-right: 1.875em;
    margin-bottom: 0;
    padding: 0.84375em 1.5em; }
    @media (max-width: 34.375em) {
      .newsletter-form .form-input {
        width: 100%;
        padding: 0.875em 3.4375em 0.875em 0.875em;
        margin-right: 0; } }
    .newsletter-form .form-input:focus, .newsletter-form .form-input:hover {
      border: 0.1875rem solid #fff; }
  @media (max-width: 34.375em) {
    .newsletter-form input[type="submit"] {
      position: absolute;
      top: 0;
      right: 0;
      text-indent: -6.25rem;
      border-top-left-radius: 0;
      border-bottom-right-radius: 0;
      background: #CDE201 url("images/ico-search-white.svg") center center no-repeat;
      background-size: 60%; } }
  @media (max-width: 34.375em) {
    .newsletter-form input[type="submit"]:hover {
      background: #CDE201 url("images/ico-search-white.svg") center center no-repeat;
      background-size: 60%; } }

.newsletter-form .form-input::-webkit-input-placeholder {
  color: #fff; }

.newsletter-form .form-input:-moz-placeholder {
  color: #fff; }

.newsletter-form .form-input::-moz-placeholder {
  color: #fff; }

.newsletter-form .form-input:-ms-input-placeholder {
  color: #fff; }

/* CONTACT FORM */
.form-control {
  position: relative;
  margin-bottom: 1.25em; }
  .form-control input,
  .form-control textarea {
    font-family: "Droid Serif", serif;
    font-size: 1.0625em;
    color: #13294B;
    background: #fff;
    border: 0.125rem solid #F0F0F0;
    border-bottom-left-radius: 0;
    padding: 0.5625em;
    margin-bottom: 0;
    max-height: 11.25em; }
    @media (max-width: 33.75em) {
      .form-control input,
      .form-control textarea {
        font-size: 0.875em;
        max-height: 6.25em; } }
    @media (max-height: 840px) {
      .form-control input,
      .form-control textarea {
        max-height: 6.25em; } }
    .form-control input:hover,
    .form-control textarea:hover {
      border-color: #a5a5a5; }
    .form-control input:focus,
    .form-control textarea:focus {
      border-color: #13294B; }

.placeholder {
  position: absolute;
  pointer-events: none;
  left: 0.9375em;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-family: "Droid Serif", serif;
  font-size: 1.0625em;
  font-style: italic;
  color: #13294B;
  z-index: 1; }
  @media (max-width: 33.75em) {
    .placeholder {
      font-size: 0.875em; } }
  .placeholder span {
    color: #CDE201; }

.form-control textarea + .placeholder {
  top: 1.5625em; }

.ajax-loader {
  position: absolute;
  top: 3.125em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  margin: 0; }

.iconbox-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 4.6875em 0; }

.iconbox-item {
  width: 28%;
  text-align: center;
  margin: 0 0.9375em;
  padding: 0 2.5em; }
  .iconbox-item:first-child {
    margin-left: 0; }
  .iconbox-item:last-child {
    margin-right: 0; }

.iconbox-picto {
  max-width: 12.5em;
  height: auto;
  margin-bottom: 2.8125em; }
  @media (max-width: 48.125em) {
    .iconbox-picto {
      max-width: 14.375em; } }

.iconbox-title {
  font-weight: normal;
  font-size: 1.5em;
  letter-spacing: 0.0625rem; }
  @media (max-width: 48.125em) {
    .iconbox-title {
      font-size: 1.5625em; } }

.iconbox-tx {
  font-size: 1.0625em;
  line-height: 1.35em;
  letter-spacing: 0.025rem; }
  .iconbox-tx p {
    margin: 0.3125rem 0; }

.iconbox-wrapper.mobile-slider.slick-slider .iconbox-item {
  margin: 0; }

.iconbox-wrapper.mobile-slider.slick-slider .iconbox-picto {
  margin: 0 auto 1.875em; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-slide img {
  margin: 0 auto; }

.slick-slide:focus {
  outline: none; }

.slick-dots {
  list-style-type: none;
  padding: 0;
  text-align: center;
  margin-top: 2.5em; }
  .slick-dots li {
    display: inline-block;
    vertical-align: top; }
    .slick-dots li.slick-active button {
      background: #13294B; }
  .slick-dots button {
    display: inline-block;
    height: 0.75rem;
    width: 0.75rem;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    border-radius: 50%;
    background: #CDE201;
    margin: 0 0.5rem;
    color: transparent;
    padding: 0; }
    .slick-dots button:focus {
      outline: none; }

/* GENERAL */
.homepage-section {
  position: relative; }

.section-title {
  font-size: 2em; }
  @media (max-width: 34.375em) {
    .section-title {
      font-size: 1.875em; } }

.section-tx {
  font-size: 1.0625em;
  line-height: 1.35em; }

.section-content {
  position: relative; }

/* SECTION 1 */
.homepage-section:nth-child(1) {
  padding-bottom: 1.875em; }
  @media (max-width: 60.625em) {
    .homepage-section:nth-child(1) .wrapper {
      padding: 0; } }

.intro {
  width: 40%;
  padding: 8.75em 0 5.625em; }
  @media (max-width: 60.625em) {
    .intro {
      width: 31.25em;
      padding: 1.25em 1.25em 6.25em;
      margin: 0 auto; } }
  @media (max-width: 31.25em) {
    .intro {
      width: 100%;
      margin-top: 1.25em;
      padding: 1.25em 1.25em 4.375em; } }

.intro-title {
  font-weight: bold;
  font-size: 3em;
  color: #CDE201; }
  @media (max-width: 31.25em) {
    .intro-title {
      font-size: 2.5em; } }

.intro-tx {
  position: relative;
  max-width: 28.75em;
  margin: 1.875em 0 2.5em; }
  @media (max-width: 31.25em) {
    .intro-tx {
      max-width: 100%; } }
  .intro-tx p {
    font-size: 1.0625em;
    font-weight: bold;
    letter-spacing: 0.0125em;
    line-height: 1.34375em;
    padding-left: 8.125em; }
    @media (max-width: 31.25em) {
      .intro-tx p {
        font-size: 1em;
        padding-left: 5.625em; } }
    @media (max-width: 31.25em) {
      .intro-tx p br {
        display: none; } }
  .intro-tx:before {
    content: '';
    position: absolute;
    top: 0.375em;
    left: 1.875em;
    display: inline-block;
    width: 3rem;
    border-top: 0.25rem solid #CDE201; }
    @media (max-width: 31.25em) {
      .intro-tx:before {
        left: 0; } }

.home-slider {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  width: 62%;
  margin-left: -3.125em; }
  @media (max-width: 60.625em) {
    .home-slider {
      width: 100%;
      margin-left: 0; } }
  .home-slider .slider-item {
    position: relative;
    display: inline-block;
    height: 0;
    width: 100%;
    padding-bottom: 19%;
    overflow: hidden; }
    @media (max-width: 60.625em) {
      .home-slider .slider-item {
        padding-bottom: 20.5%; } }
  @media (max-width: 60.625em) {
    .home-slider .slider-img-desktop {
      display: none; } }
  .home-slider .slider-img-mobile {
    display: none; }
    @media (max-width: 60.625em) {
      .home-slider .slider-img-mobile {
        display: block; } }

/* SECTION 2 */
.homepage-section:nth-child(2) {
  padding-bottom: 5.9375em; }
  @media (max-width: 31.25em) {
    .homepage-section:nth-child(2) {
      padding: 1.875em 0 4.375em; } }
  .homepage-section:nth-child(2):before {
    content: '';
    display: block;
    position: absolute;
    top: -5rem;
    background: url("images/vagues/vague-reverse-top-blanc.svg") repeat-x top center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .homepage-section:nth-child(2):before {
        top: -2.0625rem;
        background: url("images/vagues/vague-reverse-top-blanc-xs.svg") repeat-x top center;
        height: 2.0625rem; } }
  .homepage-section:nth-child(2) .section-content {
    padding-top: 0.625em;
    padding-left: 6.875em; }
    @media (max-width: 63.75em) {
      .homepage-section:nth-child(2) .section-content {
        padding-left: 0; } }
  .homepage-section:nth-child(2) .section-title {
    position: relative;
    max-width: 31.25rem;
    padding-left: 2.1875rem;
    margin-bottom: 0.9375rem; }
    @media (max-width: 31.25em) {
      .homepage-section:nth-child(2) .section-title {
        padding-left: 3.125em; } }
    @media (max-width: 31.25em) {
      .homepage-section:nth-child(2) .section-title:before {
        content: '';
        background: url("images/logo-icono.svg") no-repeat;
        background-size: 100%;
        display: inline-block;
        height: 2.4375em;
        width: 2.4375em;
        position: absolute;
        top: 0;
        left: 0; } }
  .homepage-section:nth-child(2) .section-tx {
    position: relative;
	max-width: 31.25rem;
    padding-top: 2.1875em;
    padding-left: 6.25rem; }
    @media (max-width: 31.25em) {
      .homepage-section:nth-child(2) .section-tx {
        padding-left: 0;
        padding-top: 1.5625em; } }
    .homepage-section:nth-child(2) .section-tx:before {
      content: url("images/logo-icono.svg");
      display: inline-block;
      position: absolute;
      top: 0.4375em;
      left: 0; }
      @media (max-width: 31.25em) {
        .homepage-section:nth-child(2) .section-tx:before {
          content: ''; } }
    @media (max-width: 31.25em) {
      .homepage-section:nth-child(2) .section-tx br {
        display: none; } }
  .homepage-section:nth-child(2) .section-lines {
    position: absolute;
    bottom: -8rem;
    right: 1.5rem;
    width: 23.6875rem;
    height: auto; }
    @media (max-width: 71.875em) {
      .homepage-section:nth-child(2) .section-lines {
        bottom: -3.5rem;
        right: 2.1875rem;
        width: 18.75rem;
        height: auto; } }
    @media (max-width: 48.75em) {
      .homepage-section:nth-child(2) .section-lines {
        display: none; } }

/* SECTION 3 */
.homepage-section:nth-child(3) {
  padding-bottom: 3.125em;
  margin-bottom: 5em; }
  @media (max-width: 71.875em) {
    .homepage-section:nth-child(3) {
      padding-bottom: 3.75em; } }
  @media (max-width: 31.25em) {
    .homepage-section:nth-child(3) {
      padding-bottom: 2.5em; } }
  .homepage-section:nth-child(3):before {
    content: '';
    display: block;
    position: absolute;
    top: -5rem;
    background: url("images/vagues/vague-top-bleu.svg") repeat-x top center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .homepage-section:nth-child(3):before {
        top: -2.0625rem;
        background: url("images/vagues/vague-top-bleu-xs.svg") repeat-x top center;
        height: 2.0625rem; } }
  .homepage-section:nth-child(3):after {
    content: '';
    display: block;
    position: absolute;
    bottom: -5rem;
    background: url("images/vagues/vague-reverse-bottom-bleu.svg") repeat-x bottom center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .homepage-section:nth-child(3):after {
        bottom: -2rem;
        background: url("images/vagues/vague-bottom-bleu-xs.svg") repeat-x top center;
        height: 2.0625rem; } }
  .homepage-section:nth-child(3) .section-content {
    background: url("images/lines-section-3.svg") no-repeat center center;
    background-size: 100%;
    height: 51.125em;
    margin: 0 1.5625em; }
    @media (max-width: 71.875em) {
      .homepage-section:nth-child(3) .section-content {
        width: 59.375em;
        height: 41.25em;
        margin: 0 auto; } }
    @media (max-width: 56.25em) {
      .homepage-section:nth-child(3) .section-content {
        background: none;
        width: 100%;
        height: auto; } }

.assets-wrapper {
  position: relative;
  height: 100%;
  width: 100%; }
  @media (max-width: 56.25em) {
    .assets-wrapper {
      text-align: center;
      padding-top: 5em; } }
  @media (max-width: 31.25em) {
    .assets-wrapper {
      padding-top: 2.5em; } }

.asset-item {
  position: absolute;
  text-align: center;
  width: 21.25em; }
  @media (max-width: 56.25em) {
    .asset-item {
      position: relative;
      width: auto;
      max-width: 16.25rem;
      margin: 0 auto; } }

.homepage .asset-item:nth-child(1) {
  top: 12.9375em;
  right: 4.375em; }
  @media (max-width: 71.875em) {
    .homepage .asset-item:nth-child(1) {
      top: 7.5em;
      right: 0.9375em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(1) {
      top: initial;
      right: initial; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(1):before {
      content: '';
      display: inline-block;
      background: url("images/lines-section-3-mobile-1.svg") no-repeat;
      background-size: 100%;
      height: 11.125em;
      width: 17.125em;
      margin-bottom: -2.375em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(1):after {
      content: '';
      display: inline-block;
      background: url("images/lines-section-3-mobile-2.svg") no-repeat;
      background-size: 100%;
      height: 6.75em;
      width: 17.375em;
      margin-top: 1.25em;
      margin-bottom: -1.375em; } }

.homepage .asset-item:nth-child(2) {
  top: 15.9375em;
  left: 5.625em; }
  @media (max-width: 71.875em) {
    .homepage .asset-item:nth-child(2) {
      top: 11.5625em;
      left: 1.875em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(2) {
      top: initial;
      left: initial; } }

.homepage .asset-item:nth-child(3) {
  top: 33.75em;
  left: 28.125em; }
  @media (max-width: 71.875em) {
    .homepage .asset-item:nth-child(3) {
      top: 26.25em;
      left: 20.3125em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(3) {
      top: initial;
      left: initial; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(3):before {
      content: '';
      display: inline-block;
      background: url("images/lines-section-3-mobile-3.svg") no-repeat;
      background-size: 100%;
      height: 7.125em;
      width: 17.0625em;
      margin-top: 1.875em;
      margin-bottom: -1.5625em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(3):after {
      content: '';
      display: inline-block;
      background: url("images/lines-section-3-mobile-4.svg") no-repeat;
      background-size: 100%;
      height: 7.125em;
      width: 17.375em;
      margin-top: -2.1875em; } }
  @media (max-width: 56.25em) {
    .homepage .asset-item:nth-child(3) .asset-tx {
      max-width: 15.625em;
      margin: 0 auto; } }

.asset-title,
.asset-subtitle {
  color: #fff; }

.asset-subtitle {
  margin-bottom: 0.9375rem; }

.asset-title {
  font-size: 1.5em;
  margin-bottom: 0.625rem; }

.asset-tx p {
  font-size: 1.0625em;
  line-height: 1.35em;
  margin: 0.5em 0; }
  @media (max-width: 71.875em) {
    .asset-tx p {
      font-size: 1.125em; } }

/* SECTION 4 */
.homepage-section:nth-child(4) {
  padding: 5em 0; }
  @media (max-width: 48.125em) {
    .homepage-section:nth-child(4) {
      padding: 3.75em 0 3.125em; } }
  @media (max-width: 31.25em) {
    .homepage-section:nth-child(4) {
      padding: 1.25em 0 1.25em; } }
  .homepage-section:nth-child(4) .section-title {
    position: relative;
    text-align: center;
    padding-bottom: 1.875rem; }
    .homepage-section:nth-child(4) .section-title:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      display: inline-block;
      width: 3rem;
      border-top: 0.25rem solid #CDE201; }

/* SECTION 5 */
.homepage-section:nth-child(5) {
  padding: 1.5625em 0 0.0625em;
  margin-bottom: 5em; }
  @media (max-width: 31.25em) {
    .homepage-section:nth-child(5) {
      padding-top: 2.5em; } }
  .homepage-section:nth-child(5):before {
    content: '';
    display: block;
    position: absolute;
    top: -5rem;
    background: url("images/vagues/vague-reverse-top-bleu.svg") repeat-x top center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .homepage-section:nth-child(5):before {
        top: -2.0625rem;
        background: url("images/vagues/vague-reverse-top-bleu-xs.svg") repeat-x top center;
        height: 2.0625rem; } }
  .homepage-section:nth-child(5):after {
    content: '';
    display: block;
    position: absolute;
    bottom: -5rem;
    background: url("images/vagues/vague-reverse-bottom-bleu.svg") repeat-x bottom center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .homepage-section:nth-child(5):after {
        bottom: -2.0625rem;
        background: url("images/vagues/vague-reverse-bottom-bleu-xs.svg") repeat-x bottom center;
        height: 2.0625rem; } }
  .homepage-section:nth-child(5) .section-title {
    color: #CDE201;
    position: relative;
    padding-bottom: 1.875rem;
    margin-left: 11.25rem; }
    @media (max-width: 48.125em) {
      .homepage-section:nth-child(5) .section-title {
        text-align: center;
        margin-left: 0;
        margin: 0 auto; } }
    .homepage-section:nth-child(5) .section-title:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      display: inline-block;
      width: 3rem;
      border-top: 0.25rem solid #CDE201; }
      @media (max-width: 48.125em) {
        .homepage-section:nth-child(5) .section-title:after {
          left: 50%;
          -webkit-transform: translateX(-50%);
                  transform: translateX(-50%); } }

.caseStudy-slider {
  padding: 0 4.375em;
  margin: 3.75em 0; }
  @media (max-width: 48.125em) {
    .caseStudy-slider {
      padding: 0; } }

.caseStudy-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 48.125em) {
    .caseStudy-wrapper {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.caseStudy-img-wrapper {
  width: 64%; }
  @media (max-width: 48.125em) {
    .caseStudy-img-wrapper {
      width: 100%; } }
  .caseStudy-img-wrapper .caseStudy-img {
    width: 100%;
    height: auto; }

.caseStudy-details {
  width: 36%;
  padding-left: 4.375em;
  margin-top: 2.1875em; }
  @media (max-width: 48.125em) {
    .caseStudy-details {
      width: 100%;
      text-align: center;
      padding-left: 0; } }

.caseStudy-title {
  font-style: italic;
  color: #fff; }

.caseStudy-subtitle {
  font-family: "Droid Sans", sans-serif;
  font-size: 1.0625em;
  line-height: 1.35em;
  letter-spacing: 0.0125em;
  color: #fff;
  margin: 0.625rem 0; }

.caseStudy-tx {
  font-size: 1.0625em;
  line-height: 1.35em; }
  .caseStudy-tx p {
    margin: 0; }

.read-more {
  margin-top: 3.125em; }

.caseStudy-slider-nav {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }
  @media (max-width: 48.125em) {
    .caseStudy-slider-nav {
      top: 74%; } }
  @media (max-width: 37.5em) {
    .caseStudy-slider-nav {
      top: 70%; } }
  @media (max-width: 31.25em) {
    .caseStudy-slider-nav {
      top: 66%; } }
  @media (max-width: 25.9375em) {
    .caseStudy-slider-nav {
      top: 63%; } }
  @media (max-width: 24.375em) {
    .caseStudy-slider-nav {
      top: 61%; } }
  @media (max-width: 23.125em) {
    .caseStudy-slider-nav {
      top: 58%; } }
  @media (max-width: 20em) {
    .caseStudy-slider-nav {
      top: 56%; } }

.caseStudy-slider-nav .slider-nav-prev,
.caseStudy-slider-nav .slider-nav-next {
  cursor: pointer;
  position: absolute;
  top: 0; }

.caseStudy-slider-nav .slider-nav-prev {
  left: 0; }
  @media (max-width: 21.875em) {
    .caseStudy-slider-nav .slider-nav-prev {
      left: -0.3125em; } }

.caseStudy-slider-nav .slider-nav-next {
  right: 0; }
  @media (max-width: 21.875em) {
    .caseStudy-slider-nav .slider-nav-next {
      right: -0.3125em; } }

.caseStudy-slider-nav .icon-arrow {
  font-size: 2.0625em;
  color: #CDE201; }
  @media (max-width: 48.125em) {
    .caseStudy-slider-nav .icon-arrow {
      font-size: 1.25em; } }

.caseStudy-slider-nav .slider-nav-prev .icon-arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

/* SECTION 6 */
.homepage-section:nth-child(6) {
  padding: 6.25em 0 5.625em;
  margin-bottom: 3.75em; }
  @media (max-width: 48.125em) {
    .homepage-section:nth-child(6) {
      padding: 2.5em 0 0.625em; } }
  @media (max-width: 31.25em) {
    .homepage-section:nth-child(6) {
      padding: 1.875em 0 0.625em; } }

.testimonies-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media (max-width: 48.125em) {
    .testimonies-container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.testimony-item {
  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;
  width: 25%;
  margin: 0 1.5625em; }
  @media (max-width: 48.125em) {
    .testimony-item {
      margin: 0 0 3.125em;
      width: auto; } }

.testimony-logo {
  margin-bottom: 1.5625em; }

.testimony-tx {
  font-size: 1.0625em;
  line-height: 1.35em;
  text-align: center;
  margin: 0; }

.testimony-name {
  font-size: 0.875em;
  font-style: italic;
  text-align: center; }

.page-wrapper {
  padding-top: 3.125em;
  padding-bottom: 3.125em; }

.page-content {
  position: relative;
  padding-top: 5.625em; }
  .page-content.with-sidebar {
    width: 66%;
    padding: 5.625em 5.625em 5.625em 4.0625em; }
    @media (max-width: 56.25em) {
      .page-content.with-sidebar {
        padding: 5.625em 1.875em; } }
    @media (max-width: 41.25em) {
      .page-content.with-sidebar {
        width: 100%; } }

.page-intro-wrapper {
  padding: 9.6875em 0 8.875em; }
  @media (max-width: 34.375em) {
    .page-intro-wrapper {
      padding: 4.375em 0 5em; } }

.page-title {
  position: relative;
  font-size: 3em;
  margin-bottom: 1.03125em; }
  @media (max-width: 34.375em) {
    .page-title {
      font-size: 2.5em; } }
  .page-title:after {
    content: '';
    display: block;
    width: 3rem;
    border-bottom: 0.25rem solid #CDE201;
    margin-top: 0.625rem; }

.page-intro {
  font-weight: 700;
  font-size: 1.0625em;
  line-height: 1.35em;
  letter-spacing: 0.0125em;
  max-width: 37.5rem;
  margin: 0 auto; }
  @media (max-width: 34.375em) {
    .page-intro br {
      display: none; } }

.page-navigation {
  margin-top: 3.75em;
  margin-bottom: 0; }
  @media (max-width: 35.625em) {
    .page-navigation {
      margin-top: 2.5em; } }
  .page-navigation .page-navigation-item {
    position: relative;
    font-family: "Droid Serif", serif;
    font-size: 1.25em;
    font-weight: bold; }
    @media (max-width: 35.625em) {
      .page-navigation .page-navigation-item {
        display: block;
        padding: 1.5625rem 0 0;
        margin: 0 0 1.5625rem; } }
    .page-navigation .page-navigation-item:hover a,
    .page-navigation .page-navigation-item a.is-active {
      color: #CDE201; }
  .page-navigation li + li {
    padding-left: 2rem;
    margin-left: 1.75rem; }
  .page-navigation li + li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    height: 1.25rem;
    border-left: 0.1875rem solid #CDE201; }
    @media (max-width: 35.625em) {
      .page-navigation li + li:before {
        height: 0;
        width: 3.4375rem;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        border-bottom: 0.1875rem solid #CDE201; } }

.post-item {
  margin-bottom: 3.125em; }

.post-title {
  font-size: 2em;
  margin-bottom: 0.75em; }

.post-date {
  font-family: "Droid Serif", serif;
  font-size: 1.0625em;
  font-weight: 600;
  font-style: italic;
  margin: 0 0 1.4375em; }

.post-thumbnail img {
  margin-bottom: 0.3125em; }

.post-tags {
  margin-bottom: 1.5625em; }

.post-tags-item {
  font-size: 1em; }
  .post-tags-item:before {
    content: '#'; }

.posts-navigation {
  text-align: center;
  margin-top: 5em; }
  .posts-navigation .wp-pagenavi a,
  .posts-navigation .wp-pagenavi span {
    color: #13294B;
    border: none;
    margin: 0.125rem 0.5rem; }
  .posts-navigation .wp-pagenavi span.current {
    color: #CDE201; }

.tweets-container-mobile {
  display: none; }
  @media (max-width: 41.25em) {
    .tweets-container-mobile {
      display: block; } }
  .tweets-container-mobile .ctf-item {
    padding: 0 0.625rem !important; }

.tweet-slider-nav {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }

.tweet-slider-nav .slider-nav-prev,
.tweet-slider-nav .slider-nav-next {
  cursor: pointer;
  position: absolute;
  top: 0; }

.tweet-slider-nav .slider-nav-prev {
  left: 0.9375rem; }

.tweet-slider-nav .slider-nav-next {
  right: 0.9375rem; }

.tweet-slider-nav .icon-arrow {
  font-size: 1.875em;
  color: #CDE201; }

.tweet-slider-nav .slider-nav-prev .icon-arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

@media (max-width: 41.25em) {
  .tweets-container-desktop {
    display: none; } }

.tweets-container {
  margin-bottom: 11.25em; }
  @media (max-width: 41.25em) {
    .tweets-container {
      margin-bottom: 3.125em;
      padding: 0 1.875em; } }

#ctf .ctf-retweet-text {
  font-size: 1.0625em;
  letter-spacing: 0.0125em;
  line-height: 1.34375em; }

#ctf .ctf-item {
  padding: 1.25em 0;
  border-top: none;
  border-top: none; }

#ctf .ctf-author-box {
  font-family: "Droid Serif", serif;
  font-weight: bold;
  font-style: italic;
  min-height: auto !important; }
  #ctf .ctf-author-box:before {
    content: url(images/ico-twitter-blue.svg);
    display: inline-block;
    vertical-align: middle;
    margin-right: 0.375rem; }

#ctf .ctf-tweet-content {
  font-size: 0.9375em;
  color: #13294B; }

#ctf a {
  color: #13294B;
  font-weight: bold; }

#ctf.ctf-styles .ctf-author-screenname,
#ctf.ctf-styles .ctf-context,
#ctf.ctf-styles .ctf-twitterlink,
#ctf.ctf-styles .ctf-tweet-meta {
  font-size: 1em;
  color: #13294B; }

#ctf .ctf-tweet-media > a {
  margin: 0.0625rem !important; }

.page-aside {
  position: relative;
  width: 34%;
  padding: 7.8125em 4.375em 0;
  margin-bottom: -0.625em; }
  @media (max-width: 56.25em) {
    .page-aside {
      padding: 7.8125em 1.875em 0; } }
  @media (max-width: 41.25em) {
    .page-aside {
      width: 100%;
      text-align: center;
      padding-top: 1.25em;
      z-index: 15; } }
  @media (max-width: 41.25em) {
    .page-aside:before {
      content: '';
      display: block;
      position: absolute;
      width: 100%;
      left: 0;
      top: -2.0625rem;
      background: url("images/vagues/vague-reverse-top-gris-xs.svg") repeat-x top center;
      height: 2.0625rem; } }

.aside-title {
  display: inline-block;
  font-family: "Droid Sans", sans-serif;
  border-bottom: 0.25rem solid #CDE201;
  padding-bottom: 0.4375em; }
  @media (max-width: 41.25em) {
    .aside-title {
      margin-bottom: 1.875em; } }

.single-post .page-aside {
  display: none; }

.searchform {
  position: relative; }
  .searchform:after {
    content: '\E007';
    display: inline-block;
    vertical-align: middle;
    font-family: "ubudu-icons";
    font-size: 1.3125em;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    color: #13294B;
    position: absolute;
    right: 0.625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 1; }
  .searchform input[type="text"] {
    border-bottom-left-radius: 0; }

input[type="submit"].searchform-btn {
  position: absolute;
  right: 0;
  top: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 100%;
  width: 2.1875rem;
  border: none;
  background: transparent;
  z-index: 2; }

.page-news .searchform input[type="text"] {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 1em;
  background: #eeeeee;
  border-color: #eeeeee; }

.page-news .searchform input[type="text"]::-webkit-input-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875em; }

.page-news .searchform input[type="text"]:-moz-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875em; }

.page-news .searchform input[type="text"]::-moz-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875em; }

.page-news .searchform input[type="text"]:-ms-input-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875em; }

.search-title {
  font-size: 1.375em;
  font-weight: normal; }

#header-searchform {
  display: none;
  width: 11.25em;
  font-family: "Droid Serif", serif;
  color: #13294B; }
  #header-searchform input {
    font-size: 0.75em;
    margin: 0;
    padding: 0.5625em 1.875em 0.5em 0.625em; }
  #header-searchform:after {
    font-size: 1.1875rem; }

.header-search.is-visible #header-searchform {
  display: block; }

.header-search.is-visible .icon {
  display: none; }

#toggleForm {
  cursor: pointer; }

#header-searchform input[type="text"]::-webkit-input-placeholder,
#header-searchform-mobile input[type="text"]::-webkit-input-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875rem; }

#header-searchform input[type="text"]:-moz-placeholder,
#header-searchform-mobile input[type="text"]:-moz-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875rem; }

#header-searchform input[type="text"]::-moz-placeholder,
#header-searchform-mobile input[type="text"]::-moz-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875rem; }

#header-searchform input[type="text"]:-ms-input-placeholder,
#header-searchform-mobile input[type="text"]:-ms-input-placeholder {
  font-family: "Droid Serif", serif;
  font-style: italic;
  color: #13294B;
  font-size: 0.875rem; }

/* MOBILE */
.searchform-container-mobile {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #13294B;
  padding: 6.25em 1.5625em 1.875em; }

#header-searchform-mobile {
  font-size: 0.9375em;
  font-family: "Droid Serif", serif;
  color: #13294B; }
  #header-searchform-mobile input {
    margin: 0;
    padding: 0.625em 2.1875em 0.625em 0.625em; }
  #header-searchform-mobile:after {
    font-size: 1.25rem; }

.blog-header {
  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;
  margin-bottom: 3.125em; }
  .blog-header p,
  .blog-header input {
    margin-bottom: 0; }

@media (max-width: 41.25em) {
  .blog-header-desktop {
    display: none; } }

.blog-header-mobile {
  display: none; }
  @media (max-width: 41.25em) {
    .blog-header-mobile {
      position: fixed;
      top: 13.75em;
      right: 0;
      display: inline-block;
      background: #CDE201;
      border-top-left-radius: 0.5rem;
      padding: 0.625em 1.25em; } }
  @media (max-width: 20em) {
    .blog-header-mobile {
      top: 13.125em; } }

.blog-header-search,
.blog-header-hashtag {
  display: block; }
  .blog-header-search .icon,
  .blog-header-hashtag .icon {
    color: #13294B;
    font-size: 1.5em;
    margin: 0.3125em 0; }

@media (max-width: 41.25em) {
  .blog-search-desktop {
    display: none; } }

.blog-search-mobile {
  display: none; }
  @media (max-width: 41.25em) {
    .blog-search-mobile {
      position: fixed;
      top: 0;
      left: 0;
      height: 100vh;
      width: 100vw;
      background: #13294B;
      padding: 6.25em 1.5625em;
      z-index: 10; } }

.blog-search {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.tags-cloud {
  margin-left: 1.5625em; }

.tags-cloud,
.tags-title {
  display: inline-block;
  font-weight: bold;
  font-size: 0.9375em; }

.tag-cloud-link {
  color: #13294B;
  font-size: 0.9375em !important;
  margin-left: 0.1875rem; }
  .tag-cloud-link:before {
    content: '#'; }

@media (max-width: 41.25em) {
  .tags-cloud-desktop {
    display: none; } }

.tags-cloud.tags-cloud-mobile {
  display: none; }
  @media (max-width: 41.25em) {
    .tags-cloud.tags-cloud-mobile {
      position: fixed;
      top: 0;
      left: 0;
      height: 100vh;
      width: 100vw;
      background: #13294B;
      color: #fff;
      padding: 6.25em 1.5625em;
      margin: 0;
      z-index: 10; } }
  .tags-cloud.tags-cloud-mobile .tags-title {
    font-size: 1.75em; }
  .tags-cloud.tags-cloud-mobile .tag-cloud-link {
    display: block;
    color: #fff;
    font-size: 1.3125em !important;
    margin-bottom: 0.9375rem; }

.back {
  display: inline-block;
  font-family: "Droid Serif", serif;
  font-size: 0.875em;
  font-weight: bold;
  margin-bottom: 4.375em;
  margin-top: 1.5625em; }
  .back .icon {
    font-size: 1.25rem;
    color: #CDE201;
    margin-right: 0.9375rem;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

.post-img {
  margin-bottom: 1.5625em; }

.post-content {
  font-size: 1.0625em;
  letter-spacing: 0.0125em;
  line-height: 1.34375em; }
  .post-content p:last-child {
    margin-bottom: 0; }
  .post-content a {
    font-weight: bold; }
    .post-content a:hover {
      text-decoration: underline; }

.post-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.5625em; }
  .post-footer .post-tags {
    font-family: "Droid Serif", serif;
    font-style: italic;
    margin: 0; }
    .post-footer .post-tags ul {
      margin: 0;
      margin-top: 0.1875rem; }

.post-navigation {
  position: relative;
  width: 100%;
  font-family: "Droid Serif", serif;
  font-weight: bold;
  font-size: 0.875em; }
  .post-navigation .prev-post {
    position: absolute;
    left: 0; }
  .post-navigation .next-post {
    position: absolute;
    right: 0; }
  .post-navigation .prev-post:before {
    content: '\E001';
    display: inline-block;
    vertical-align: middle;
    font-family: "ubudu-icons";
    font-size: 1.5625em;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    color: #CDE201;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    padding-left: 1.25rem; }
  .post-navigation .next-post:after {
    content: '\E001';
    display: inline-block;
    vertical-align: middle;
    font-family: "ubudu-icons";
    font-size: 1.5625em;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    color: #CDE201;
    padding-left: 1.25rem; }

.post-share {
  position: relative;
  cursor: pointer;
  margin-top: 0.1875rem; }
  .post-share:hover .post-share-list {
    height: auto; }

.shareToggle {
  font-size: 1.875em;
  color: #13294B; }

.post-share-list {
  position: absolute;
  left: 50%;
  bottom: 88%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  transition: all 0.3s cubic-bezier(0.17, 0.67, 0.83, 0.67);
  height: 0;
  overflow: hidden; }

.share-item {
  display: block;
  background: #F9F9F9;
  padding: 0.375em 0.625em;
  border-bottom: 0.0625rem solid #eeeeee;
  min-width: 9.375em; }
  .share-item:hover {
    background: #eeeeee; }

.contact-form {
  display: none; }
  .contact-form input[type="submit"] {
    font-size: 1em;
    color: #13294B;
    background: #fff;
    border: 0.125rem solid #F0F0F0;
    border-radius: 0.5rem 0.5rem 0 0.5rem;
    padding: 0.8125em 1.875em; }
    @media (max-width: 34.375em) {
      .contact-form input[type="submit"] {
        font-size: 0.9375em;
        width: 100%;
        padding: 0.625em 1.875em;
        margin-top: 0.625em; } }
    .contact-form input[type="submit"]:hover, .contact-form input[type="submit"]:focus {
      color: #fff;
      background-color: #13294B; }

.contactform-outterWrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(19, 41, 75, 0.5);
  z-index: 2000; }

.contact-form-wrapper {
  box-sizing: initial;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 47.5rem;
  background: #FAF9F9;
  padding: 3.75em 9.375em;
  border-radius: 0.1875rem; }
  @media (max-width: 78.75em) {
    .contact-form-wrapper {
      width: 60%; } }
  @media (max-width: 68.75em) {
    .contact-form-wrapper {
      padding: 2.5em 6.25em; } }
  @media (max-width: 48.125em) {
    .contact-form-wrapper {
      width: 70%;
      padding: 3.75em 4.375em; } }
  @media (max-width: 34.375em) {
    .contact-form-wrapper {
      top: 0.625em;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 60%;
      padding: 1.875em 3.125em; } }
  @media (max-width: 25em) {
    .contact-form-wrapper {
      width: 80%;
      padding: 1.25em; } }
  @media (max-height: 840px) and (min-width: 68.75em) {
    .contact-form-wrapper {
      padding: 2.5em 6.25em; } }
  .contact-form-wrapper .close {
    top: 1.875em;
    right: 1.875em; }
    .contact-form-wrapper .close:before {
      border-left: 0.125rem solid #13294B; }
    .contact-form-wrapper .close:after {
      border-left: 0.125rem solid #13294B; }
  .contact-form-wrapper form {
    padding-left: 5.625em; }
    @media (max-width: 48.125em) {
      .contact-form-wrapper form {
        padding-left: 4.375em; } }
    @media (max-width: 34.375em) {
      .contact-form-wrapper form {
        padding-left: 0; } }

.contact-button {
  cursor: pointer; }

.contact-title {
  position: relative;
  font-size: 2.5em;
  padding-bottom: 1.25rem;
  margin-bottom: 2.5rem; }
  @media (max-width: 33.75em) {
    .contact-title {
      font-size: 1.5625em;
      margin-bottom: 1.25rem; } }
  @media (max-width: 25em) {
    .contact-title {
      font-size: 1.3125em;
      margin-bottom: 0.9375rem;
      padding-bottom: 0.9375rem; } }
  .contact-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: inline-block;
    width: 3.125rem;
    border-top: 0.3125rem solid #CDE201; }
  .contact-title span {
    display: block;
    font-style: italic; }

.contact-tx {
  font-size: 1.0625em;
  margin-bottom: 3.125em; }
  @media (max-width: 33.75em) {
    .contact-tx {
      font-size: 0.875em;
      margin-bottom: 1.5625em; } }

.form-group {
  margin-bottom: 1.5625em; }
  @media (max-width: 34.375em) {
    .form-group {
      margin-bottom: 0; } }
  @media (max-height: 840px) and (min-width: 68.75em) {
    .form-group {
      margin-bottom: 0; } }
  .form-group.form-group-sm {
    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; }
    .form-group.form-group-sm .form-control {
      width: 49%; }
      @media (max-width: 34.375em) {
        .form-group.form-group-sm .form-control {
          width: 100%; } }
  .form-group .form-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .form-group .form-control:first-child {
      position: relative; }
      .form-group .form-control:first-child:before {
        content: '';
        background: url(images/logo-icono.svg) no-repeat;
        background-size: 100%;
        display: inline-block;
        position: absolute;
        top: 0;
        left: -5.625em;
        height: 2.6875em;
        width: 2.75em; }
        @media (max-width: 48.125em) {
          .form-group .form-control:first-child:before {
            left: -4.375em; } }
        @media (max-width: 34.375em) {
          .form-group .form-control:first-child:before {
            display: none; } }

.form-footer {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 34.375em) {
    .form-footer {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.form-footer-tx {
  font-family: "Droid Serif", serif;
  font-style: italic;
  margin: 0; }
  @media (max-width: 34.375em) {
    .form-footer-tx {
      font-size: 0.75em;
      margin-top: -0.625em !important; } }
  .form-footer-tx span {
    color: #CDE201;
    margin-right: 0.625em; }

.form-group-contact {
  margin-left: -5.625em;
  margin-bottom: 3.125em; }
  @media (max-width: 55em) {
    .form-group-contact {
      margin-bottom: 1.25em; } }
  @media (max-width: 48.125em) {
    .form-group-contact {
      margin-left: -4.375em; } }
  @media (max-width: 34.375em) {
    .form-group-contact {
      margin-left: 0; } }
  @media (max-height: 840px) and (min-width: 68.75em) {
    .form-group-contact {
      margin-bottom: 1.25em; } }
  .form-group-contact p {
    font-size: 1.0625em;
    margin-bottom: 0.625em; }
    @media (max-width: 34.375em) {
      .form-group-contact p {
        font-size: 0.9375em; } }

input.contact-name {
  max-width: 28.125em;
  background: #eeeeee;
  font-family: "Droid Serif", serif;
  font-weight: bold;
  border-color: #eeeeee;
  border-bottom-left-radius: 0;
  margin: 0.625rem 0 0; }
  @media (max-width: 63.75em) {
    input.contact-name {
      max-width: 15.625em; } }
  input.contact-name:hover, input.contact-name:focus {
    border-color: #eeeeee; }

.wpcf7-list-item.first {
  margin-left: 0; }

input[type="radio"]:focus {
  outline: none; }

.wpcf7-list-item-label {
  font-family: "Droid Serif", serif; }

.contact-form-content {
  position: relative; }

@media (max-width: 34.375em) {
  .contact-form-radio {
    font-size: 0.875em; } }

@media (max-width: 55em) {
  .form-info {
    display: none; } }

@media (max-width: 55em) {
  div#us,
  div#as,
  div#eu {
    display: none !important; } }

.contact-details {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  width: 12.125rem; }
  @media (max-width: 55em) {
    .contact-details {
      display: none !important; } }

.contact-name,
.contact-tel,
.contact-mail {
  font-size: 1.0625em;
  margin: 0 0 0.3125rem; }

.contact-name {
  font-weight: bold;
  margin: 1.25rem 0 0.625rem; }

.page-solutions .page-intro-wrapper {
  text-align: center;
  padding: 9.6875em 0 10.625em; }
  @media (max-width: 31.25em) {
    .page-solutions .page-intro-wrapper {
      padding: 4.375em 0 3.75em; } }

.page-solutions .page-title {
  color: #CDE201;
  padding-bottom: 1.875rem;
  margin-bottom: 2.8125rem; }
  .page-solutions .page-title:after {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

.solution-section {
  position: relative; }
  .solution-section.clr-bg {
    margin-bottom: 5rem; }
    .solution-section.clr-bg:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-reverse-top-bleu.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .solution-section.clr-bg:before {
          top: -2.0625rem;
          background: url("images/vagues/vague-reverse-top-bleu-xs.svg") repeat-x top center;
          height: 2.0625rem; } }
    .solution-section.clr-bg:after {
      content: '';
      display: block;
      position: absolute;
      bottom: -5rem;
      background: url("images/vagues/vague-bottom-bleu.svg") repeat-x bottom center;
      height: 5rem;
      width: 100%;
      z-index: 1; }
      @media (max-width: 50em) {
        .solution-section.clr-bg:after {
          bottom: -2.0625rem;
          background: url("images/vagues/vague-bottom-bleu-xs.svg") repeat-x bottom center;
          height: 2.0625rem; } }
    .solution-section.clr-bg .asset-title {
      color: #fff; }
  .solution-section .assets-wrapper {
    margin: 3.4375em auto 3.75em; }
    .solution-section .assets-wrapper.assets-mobile {
      margin: 0.9375rem auto 3.125em; }
  .solution-section .asset-item {
    width: 14.375em; }
  .solution-section .asset-title {
    font-size: 1.25em;
    font-weight: bold;
    color: #13294B; }
  .solution-section .asset-tx {
    font-size: 1.0625em;
    line-height: 1.35em; }

.solution-section-secondary {
  position: relative; }
  .solution-section-secondary.gray-bg {
    margin-top: 5rem;
    margin-bottom: -5rem;
    padding-bottom: 5rem; }
    .solution-section-secondary.gray-bg:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-reverse-top-gris.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .solution-section-secondary.gray-bg:before {
          top: -2.0625rem;
          background: url("images/vagues/vague-reverse-top-gris-xs.svg") repeat-x top center;
          height: 2.0625rem; } }
  .solution-section-secondary.white-bg:before {
    content: '';
    display: block;
    position: absolute;
    top: -5.3125rem;
    background: url("images/vagues/vague-reverse-top-blanc.svg") repeat-x top center;
    height: 5rem;
    width: 100%; }
    @media (max-width: 50em) {
      .solution-section-secondary.white-bg:before {
        top: -2.8125rem;
        background: url("images/vagues/vague-reverse-top-blanc-xs.svg") repeat-x top center;
        height: 2.0625rem; } }

.solution-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 56.25em) {
    .solution-top {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.solution-title {
  font-size: 2em;
  color: #13294B; }
  @media (max-width: 53.125em) {
    .solution-title {
      margin-bottom: 1.875rem; } }

.clr-bg .solution-title {
  color: #fff; }

.clr-bg .solution-clients-title {
  border-color: #fff; }

.clr-bg .solution-clients-title {
  color: #fff; }

.solution-presentation {
  width: 34%; }
  @media (max-width: 56.25em) {
    .solution-presentation {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content; } }

.solution-text {
  position: relative;
  display: inline-block;
  font-size: 1.0625em;
  line-height: 1.35em;
  padding-left: 5em; }
  @media (max-width: 53.125em) {
    .solution-text {
      margin-top: 0; } }
  .solution-text:before {
    content: '';
    position: absolute;
    top: 0.375em;
    left: 0;
    display: inline-block;
    width: 3em;
    border-top: 0.25rem solid #CDE201; }
  @media (max-width: 25em) {
    .solution-text br {
      display: none; } }

.solution-tags {
  font-size: 1.0625em;
  line-height: 1.35em;
  letter-spacing: 0.0125em;
  font-weight: bold;
  margin: 0 0 3.125em;
  padding-left: 5em; }
  @media (max-width: 53.125em) {
    .solution-tags {
      margin-bottom: 1.875rem; } }

.solution-button {
  margin-left: 5em; }

.solution-clients {
  margin: 1.25em; }

.solution-clients-title {
  display: inline-block;
  font-family: "Droid Sans", sans-serif;
  font-size: 1.5em;
  padding-bottom: 1.25rem;
  border-bottom: 0.25rem solid #13294B; }
  @media (max-width: 56.25em) {
    .solution-clients-title {
      border-bottom: 0.1875rem solid #13294B; } }

.logos-slider {
  margin-top: 3.125em; }
  .logos-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  @media (max-width: 56.25em) {
    .logos-slider .logos-slider-slide {
      margin: 0 0.625em; } }

.logo-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%; }
  .logo-wrapper img {
    max-width: 11.875em; }
    @media (max-width: 56.25em) {
      .logo-wrapper img {
        max-width: 100%; } }

@media (max-width: 56.25em) {
  .assets-desktop {
    display: none; } }

.assets-slider-nav {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }
  .assets-slider-nav .slider-nav-prev {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: -1.875em; }
    .assets-slider-nav .slider-nav-prev .icon-arrow {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
  .assets-slider-nav .slider-nav-next {
    cursor: pointer;
    position: absolute;
    top: 0;
    right: -1.875em; }
  .assets-slider-nav .icon-arrow {
    font-size: 1.5625em;
    color: #CDE201; }

.assets-mobile {
  position: relative;
  display: none;
  width: 17.5em;
  height: 18.75em;
  padding: 0; }
  @media (max-width: 56.25em) {
    .assets-mobile {
      display: block; } }
  .assets-mobile .asset-item {
    height: 18.125em;
    padding-top: 6.25em; }
  .assets-mobile .asset-tx {
    line-height: 1.5625em; }

#building {
  padding-top: 0.625em;
  padding-bottom: 3.75em; }
  @media (max-width: 34.375em) {
    #building {
      padding-top: 0.625em;
      padding-bottom: 1.875em; } }
  @media (max-width: 53.125em) {
    #building .wrapper {
      padding: 0; } }
  #building .solution-img {
    margin-left: -2.5em;
    width: 50em; }
    @media (max-width: 56.25em) {
      #building .solution-img {
        width: 107%;
        margin: 0 -0.9375rem; } }
  #building .solution-presentation {
    margin-top: 4.0625em; }
    @media (max-width: 56.25em) {
      #building .solution-presentation {
        margin: 2.1875em auto; } }
    @media (max-width: 53.125em) {
      #building .solution-presentation {
        padding: 0 1.25em; } }
  @media (max-width: 53.125em) {
    #building .solution-assets,
    #building .solution-clients {
      padding: 0 1.25em; } }
  #building .assets-wrapper.assets-desktop {
    background: url("images/smart-building-bg.svg") no-repeat center center;
    background-size: 100%;
    height: 20.6875em;
    width: 65em; }
    @media (max-width: 64em) {
      #building .assets-wrapper.assets-desktop {
        height: 17.875em;
        width: 56.25em; } }
  #building .asset-item:nth-child(1) {
    top: 3.75em;
    left: 7.8125em; }
    @media (max-width: 64em) {
      #building .asset-item:nth-child(1) {
        top: 3.125em;
        left: 5.625em; } }
    @media (max-width: 56.25em) {
      #building .asset-item:nth-child(1) {
        position: relative;
        top: initial;
        left: initial; } }
  #building .asset-item:nth-child(2) {
    top: 8.4375em;
    left: 26.25em; }
    @media (max-width: 64em) {
      #building .asset-item:nth-child(2) {
        top: 6.875em;
        left: 21.875em; } }
    @media (max-width: 56.25em) {
      #building .asset-item:nth-child(2) {
        position: relative;
        bottom: initial;
        left: initial; } }
  #building .asset-item:nth-child(3) {
    bottom: initial;
    left: initial;
    top: 5em;
    right: 4.6875em; }
    @media (max-width: 64em) {
      #building .asset-item:nth-child(3) {
        top: 3.125em;
        right: 2.1875em; } }
    @media (max-width: 56.25em) {
      #building .asset-item:nth-child(3) {
        position: relative;
        top: initial;
        right: initial; } }
  #building .assets-mobile .asset-item:nth-child(2):before,
  #building .assets-mobile .asset-item:nth-child(5):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-top-1.svg") no-repeat;
    background-size: 100%;
    height: 3.8125rem;
    width: 4.0625rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #building .assets-mobile .asset-item:nth-child(2):after,
  #building .assets-mobile .asset-item:nth-child(5):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-bottom-1.svg") no-repeat;
    background-size: 100%;
    height: 2.9375rem;
    width: 13.125rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }
  #building .assets-mobile .asset-item:nth-child(3):before,
  #building .assets-mobile .asset-item:nth-child(6):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-top-2.svg") no-repeat;
    background-size: 100%;
    height: 3.75rem;
    width: 13.125rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #building .assets-mobile .asset-item:nth-child(3):after,
  #building .assets-mobile .asset-item:nth-child(6):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-bottom-2.svg") no-repeat;
    background-size: 100%;
    height: 5.875rem;
    width: 13.4375rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }
  #building .assets-mobile .asset-item:nth-child(1):before,
  #building .assets-mobile .asset-item:nth-child(4):before,
  #building .assets-mobile .asset-item:nth-child(7):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-top-3.svg") no-repeat;
    background-size: 100%;
    height: 3.875rem;
    width: 13.4375rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #building .assets-mobile .asset-item:nth-child(1):after,
  #building .assets-mobile .asset-item:nth-child(4):after,
  #building .assets-mobile .asset-item:nth-child(7):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/building-bottom-3.svg") no-repeat;
    background-size: 100%;
    height: 4.125rem;
    width: 13.4375rem;
    position: absolute;
    left: 1.0625em;
    bottom: 1.5625em; }

#hospitality .solution-section {
  margin-top: -4.375em;
  padding: 5em 0 7.5em; }
  @media (max-width: 34.375em) {
    #hospitality .solution-section {
      padding: 3.125em 0 1.875em; } }

#hospitality .solution-img {
  margin-left: -1.5625em;
  width: 40.625em; }
  @media (max-width: 56.25em) {
    #hospitality .solution-img {
      width: 100%;
      margin: 0;
      text-align: center; } }

#hospitality .solution-presentation {
  margin-top: 6.25em; }
  @media (max-width: 56.25em) {
    #hospitality .solution-presentation {
      margin: 2.1875em auto; } }

#hospitality .assets-wrapper.assets-desktop {
  background: url("images/smart-hospitality-bg.svg") no-repeat center center;
  background-size: 100%;
  height: 24.75em;
  width: 72.1875em;
  margin-bottom: 0; }
  @media (max-width: 66.25em) {
    #hospitality .assets-wrapper.assets-desktop {
      height: 19.25em;
      width: 56.25em; } }

#hospitality .asset-item:nth-child(1) {
  top: 7.5em;
  left: 9.375em; }
  @media (max-width: 66.25em) {
    #hospitality .asset-item:nth-child(1) {
      top: 5.625em;
      left: 5.9375em; } }
  @media (max-width: 56.25em) {
    #hospitality .asset-item:nth-child(1) {
      position: relative;
      top: initial;
      left: initial; } }

#hospitality .asset-item:nth-child(2) {
  top: initial;
  bottom: 6.875em;
  left: 31.875em; }
  @media (max-width: 66.25em) {
    #hospitality .asset-item:nth-child(2) {
      bottom: 4.375em;
      left: 23.125em; } }
  @media (max-width: 56.25em) {
    #hospitality .asset-item:nth-child(2) {
      position: relative;
      bottom: initial;
      left: initial; } }

#hospitality .asset-item:nth-child(3) {
  bottom: initial;
  left: initial;
  top: 5.3125em;
  right: 7.5em; }
  @media (max-width: 66.25em) {
    #hospitality .asset-item:nth-child(3) {
      top: 3.4375em;
      right: 4.0625em; } }
  @media (max-width: 56.25em) {
    #hospitality .asset-item:nth-child(3) {
      position: relative;
      top: initial;
      right: initial; } }

#hospitality .solution-clients {
  padding-top: 0em;
  margin-bottom: 11.875em; }
  @media (max-width: 50em) {
    #hospitality .solution-clients {
      margin-bottom: 6.25em; } }
  @media (max-width: 34.375em) {
    #hospitality .solution-clients {
      padding-top: 0.625em; } }

#hospitality .assets-mobile .asset-item:nth-child(2):before,
#hospitality .assets-mobile .asset-item:nth-child(5):before {
  content: '';
  display: inline-block;
  background: url("images/smart_slider/hospitality-top-1.svg") no-repeat;
  background-size: 100%;
  height: 3.8125rem;
  width: 6.625rem;
  position: absolute;
  left: 1.0625em;
  top: 0; }

#hospitality .assets-mobile .asset-item:nth-child(2):after,
#hospitality .assets-mobile .asset-item:nth-child(5):after {
  content: '';
  display: inline-block;
  background: url("images/smart_slider/hospitality-bottom-1.svg") no-repeat;
  background-size: 100%;
  height: 3.875rem;
  width: 12.875rem;
  position: absolute;
  left: 1.0625em;
  bottom: 0; }

#hospitality .assets-mobile .asset-item:nth-child(3),
#hospitality .assets-mobile .asset-item:nth-child(6) {
  padding-top: 6.875em; }
  #hospitality .assets-mobile .asset-item:nth-child(3):before,
  #hospitality .assets-mobile .asset-item:nth-child(6):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/hospitality-top-2.svg") no-repeat;
    background-size: 100%;
    height: 5.5625rem;
    width: 13.0625rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #hospitality .assets-mobile .asset-item:nth-child(3):after,
  #hospitality .assets-mobile .asset-item:nth-child(6):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/hospitality-bottom-2.svg") no-repeat;
    background-size: 100%;
    height: 4.125rem;
    width: 13.25rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }

#hospitality .assets-mobile .asset-item:nth-child(1):before,
#hospitality .assets-mobile .asset-item:nth-child(4):before,
#hospitality .assets-mobile .asset-item:nth-child(7):before {
  content: '';
  display: inline-block;
  background: url("images/smart_slider/hospitality-top-3.svg") no-repeat;
  background-size: 100%;
  height: 5.5625rem;
  width: 13.375rem;
  position: absolute;
  left: 1.0625em;
  top: 0; }

#hospitality .assets-mobile .asset-item:nth-child(1):after,
#hospitality .assets-mobile .asset-item:nth-child(4):after,
#hospitality .assets-mobile .asset-item:nth-child(7):after {
  content: '';
  display: inline-block;
  background: url("images/smart_slider/hospitality-bottom-3.svg") no-repeat;
  background-size: 100%;
  height: 3.9375rem;
  width: 6.875rem;
  position: absolute;
  right: 1.0625em;
  bottom: 1.25em; }

#industry {
  padding-top: 0.9375em; }
  @media (max-width: 34.375em) {
    #industry {
      padding: 1.25em 0 0;
      margin-bottom: 5em; } }
  #industry .solution-img {
    width: 40.625em; }
    @media (max-width: 56.25em) {
      #industry .solution-img {
        width: 100%; } }
  #industry .solution-presentation {
    margin-top: 5em; }
    @media (max-width: 56.25em) {
      #industry .solution-presentation {
        margin: 2.1875em auto; } }
  #industry .assets-wrapper.assets-desktop {
    background: url("images/smart-industry-bg.svg") no-repeat center center;
    background-size: 100%;
    height: 25.625em;
    width: 72.1875em;
    margin-bottom: 3.75em; }
    @media (max-width: 66.875em) {
      #industry .assets-wrapper.assets-desktop {
        height: 19.9375em;
        width: 56.25em; } }
  #industry .asset-item:nth-child(1) {
    right: initial;
    top: 6.875em;
    left: 1.5625em; }
    @media (max-width: 66.875em) {
      #industry .asset-item:nth-child(1) {
        top: 4.6875em;
        left: 0; } }
    @media (max-width: 56.25em) {
      #industry .asset-item:nth-child(1) {
        position: relative;
        top: initial;
        left: initial; } }
  #industry .asset-item:nth-child(2) {
    top: initial;
    top: 10.625em;
    left: 19.6875em; }
    @media (max-width: 66.875em) {
      #industry .asset-item:nth-child(2) {
        top: 8.125em;
        left: 13.125em; } }
    @media (max-width: 56.25em) {
      #industry .asset-item:nth-child(2) {
        position: relative;
        bottom: initial;
        left: initial; } }
  #industry .asset-item:nth-child(3) {
    bottom: initial;
    left: initial;
    top: 15em;
    right: 19.0625em; }
    @media (max-width: 66.875em) {
      #industry .asset-item:nth-child(3) {
        top: 10em;
        right: 13.125em; } }
    @media (max-width: 56.25em) {
      #industry .asset-item:nth-child(3) {
        position: relative;
        top: initial;
        right: initial; } }
  #industry .asset-item:nth-child(4) {
    top: 6.875em;
    right: 2.1875em; }
    @media (max-width: 66.875em) {
      #industry .asset-item:nth-child(4) {
        top: 5em;
        right: 0; } }
    @media (max-width: 56.25em) {
      #industry .asset-item:nth-child(4) {
        position: relative;
        top: initial;
        right: initial; } }
  #industry .solution-clients {
    padding-bottom: 5.625em; }
    @media (max-width: 34.375em) {
      #industry .solution-clients {
        padding-bottom: 3.125em; } }
  #industry .assets-mobile .asset-item:nth-child(2):before,
  #industry .assets-mobile .asset-item:nth-child(6):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-top-1.svg") no-repeat;
    background-size: 100%;
    height: 5.3125rem;
    width: 12.875rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #industry .assets-mobile .asset-item:nth-child(2):after,
  #industry .assets-mobile .asset-item:nth-child(6):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-bottom-1.svg") no-repeat;
    background-size: 100%;
    height: 4rem;
    width: 12.875rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }
  #industry .assets-mobile .asset-item:nth-child(3),
  #industry .assets-mobile .asset-item:nth-child(7) {
    padding-top: 6.875em; }
    #industry .assets-mobile .asset-item:nth-child(3):before,
    #industry .assets-mobile .asset-item:nth-child(7):before {
      content: '';
      display: inline-block;
      background: url("images/smart_slider/industry-top-2.svg") no-repeat;
      background-size: 100%;
      height: 5.625rem;
      width: 13.125rem;
      position: absolute;
      left: 1.0625em;
      top: 1.25em; }
    #industry .assets-mobile .asset-item:nth-child(3):after,
    #industry .assets-mobile .asset-item:nth-child(7):after {
      content: '';
      display: inline-block;
      background: url("images/smart_slider/industry-bottom-2.svg") no-repeat;
      background-size: 100%;
      height: 3.75rem;
      width: 13.25rem;
      position: absolute;
      left: 1.0625em;
      bottom: 0; }
  #industry .assets-mobile .asset-item:nth-child(4):before,
  #industry .assets-mobile .asset-item:nth-child(8):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-top-3.svg") no-repeat;
    background-size: 100%;
    height: 5.125rem;
    width: 13.25rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #industry .assets-mobile .asset-item:nth-child(4):after,
  #industry .assets-mobile .asset-item:nth-child(8):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-bottom-3.svg") no-repeat;
    background-size: 100%;
    height: 4.375rem;
    width: 13.1875rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }
  #industry .assets-mobile .asset-item:nth-child(1):before,
  #industry .assets-mobile .asset-item:nth-child(5):before,
  #industry .assets-mobile .asset-item:nth-child(9):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-top-4.svg") no-repeat;
    background-size: 100%;
    height: 4.125rem;
    width: 12.875rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #industry .assets-mobile .asset-item:nth-child(1):after,
  #industry .assets-mobile .asset-item:nth-child(5):after,
  #industry .assets-mobile .asset-item:nth-child(9):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/industry-bottom-4.svg") no-repeat;
    background-size: 100%;
    height: 5.3125rem;
    width: 12.875rem;
    position: absolute;
    right: 1.0625em;
    bottom: 0; }

#retail {
  padding-top: 1.875em; }
  @media (max-width: 34.375em) {
    #retail {
      padding-top: 0; } }
  #retail .solution-img {
    width: 40.625em; }
    @media (max-width: 56.25em) {
      #retail .solution-img {
        width: 100%;
        margin: 0;
        text-align: center; } }
  #retail .solution-presentation {
    margin-top: 7.5em; }
    @media (max-width: 56.25em) {
      #retail .solution-presentation {
        margin: 2.1875em auto; } }
  #retail .assets-wrapper.assets-desktop {
    background: url("images/smart-retail-bg.svg") no-repeat center center;
    background-size: 100%;
    height: 24.5em;
    width: 69.875em;
    margin-bottom: 9.375em; }
    @media (max-width: 64em) {
      #retail .assets-wrapper.assets-desktop {
        height: 19.75em;
        width: 56.25em; } }
  #retail .asset-item:nth-child(1) {
    right: initial;
    top: 10em;
    left: 6.25em; }
    @media (max-width: 66.25em) {
      #retail .asset-item:nth-child(1) {
        top: 7.5em;
        left: 4.375em; } }
    @media (max-width: 56.25em) {
      #retail .asset-item:nth-child(1) {
        position: relative;
        top: initial;
        left: initial; } }
  #retail .asset-item:nth-child(2) {
    top: initial;
    bottom: 9.0625em;
    left: 29.0625em; }
    @media (max-width: 66.25em) {
      #retail .asset-item:nth-child(2) {
        bottom: 6.5625em;
        left: 21.875em; } }
    @media (max-width: 56.25em) {
      #retail .asset-item:nth-child(2) {
        position: relative;
        bottom: initial;
        left: initial; } }
  #retail .asset-item:nth-child(3) {
    bottom: initial;
    left: initial;
    top: 10.625em;
    right: 6.5625em; }
    @media (max-width: 66.25em) {
      #retail .asset-item:nth-child(3) {
        top: 7.5em;
        right: 3.75em; } }
    @media (max-width: 56.25em) {
      #retail .asset-item:nth-child(3) {
        position: relative;
        top: initial;
        right: initial; } }
  #retail .solution-clients {
    padding-top: 0.625em;
    padding-bottom: 4.375em; }
    @media (max-width: 34.375em) {
      #retail .solution-clients {
        padding-bottom: 1.875em; } }
  #retail .assets-mobile .asset-item:nth-child(2):before,
  #retail .assets-mobile .asset-item:nth-child(5):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/retail-top-1.svg") no-repeat;
    background-size: 100%;
    height: 4rem;
    width: 6.9375rem;
    position: absolute;
    right: 1.0625em;
    top: 0; }
  #retail .assets-mobile .asset-item:nth-child(2):after,
  #retail .assets-mobile .asset-item:nth-child(5):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/retail-bottom-1.svg") no-repeat;
    background-size: 100%;
    height: 5.5625rem;
    width: 13.4375rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }
  #retail .assets-mobile .asset-item:nth-child(3),
  #retail .assets-mobile .asset-item:nth-child(6) {
    padding-top: 5.3125em; }
    #retail .assets-mobile .asset-item:nth-child(3):before,
    #retail .assets-mobile .asset-item:nth-child(6):before {
      content: '';
      display: inline-block;
      background: url("images/smart_slider/retail-top-2.svg") no-repeat;
      background-size: 100%;
      height: 3.6875rem;
      width: 13.4375rem;
      position: absolute;
      left: 1.0625em;
      top: 0; }
    #retail .assets-mobile .asset-item:nth-child(3):after,
    #retail .assets-mobile .asset-item:nth-child(6):after {
      content: '';
      display: inline-block;
      background: url("images/smart_slider/retail-bottom-2.svg") no-repeat;
      background-size: 100%;
      height: 3.25rem;
      width: 13.4375rem;
      position: absolute;
      left: 1.0625em;
      bottom: 0; }
  #retail .assets-mobile .asset-item:nth-child(1):before,
  #retail .assets-mobile .asset-item:nth-child(4):before,
  #retail .assets-mobile .asset-item:nth-child(7):before {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/retail-top-3.svg") no-repeat;
    background-size: 100%;
    height: 3.5rem;
    width: 6.625rem;
    position: absolute;
    left: 1.0625em;
    top: 0; }
  #retail .assets-mobile .asset-item:nth-child(1):after,
  #retail .assets-mobile .asset-item:nth-child(4):after,
  #retail .assets-mobile .asset-item:nth-child(7):after {
    content: '';
    display: inline-block;
    background: url("images/smart_slider/retail-bottom-3.svg") no-repeat;
    background-size: 100%;
    height: 6.1875rem;
    width: 13.4375rem;
    position: absolute;
    left: 1.0625em;
    bottom: 0; }

.page-technology .page-intro-wrapper {
  text-align: center;
  padding-bottom: 9.375em; }
  @media (max-width: 35.625em) {
    .page-technology .page-intro-wrapper {
      padding-bottom: 3.125em; } }

.page-technology .page-title {
  color: #CDE201;
  max-width: 12.5em;
  padding-bottom: 1.875rem;
  margin: 0 auto;
  margin-bottom: 2.8125rem; }
  .page-technology .page-title:after {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

.page-technology .page-intro-wrapper .wrapper {
  position: relative; }
  .page-technology .page-intro-wrapper .wrapper:before {
    content: '';
    position: absolute;
    top: 3em;
    left: 9.375em;
    display: inline-block;
    width: 9.9375em;
    height: 31.125em;
    background: url("images/techno-lines.svg"); }
    @media (max-width: 64em) {
      .page-technology .page-intro-wrapper .wrapper:before {
        left: 1.875em; } }
    @media (max-width: 50em) {
      .page-technology .page-intro-wrapper .wrapper:before {
        display: none; } }
  .page-technology .page-intro-wrapper .wrapper:after {
    content: '';
    position: absolute;
    top: 3em;
    right: 9.375em;
    display: inline-block;
    width: 9.9375em;
    height: 31.125em;
    background: url("images/techno-lines.svg");
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1); }
    @media (max-width: 64em) {
      .page-technology .page-intro-wrapper .wrapper:after {
        right: 1.875em; } }
    @media (max-width: 50em) {
      .page-technology .page-intro-wrapper .wrapper:after {
        display: none; } }

.techno-section {
  position: relative; }
  .techno-section.clr-bg-2 {
    margin-bottom: 4.375rem; }
    .techno-section.clr-bg-2:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-top-bleu.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .techno-section.clr-bg-2:before {
          top: -2.0625rem;
          background: url("images/vagues/vague-top-bleu-xs.svg") repeat-x top left;
          height: 2.0625rem; } }
    .techno-section.clr-bg-2:after {
      content: '';
      display: block;
      position: absolute;
      bottom: -5rem;
      background: url("images/vagues/vague-reverse-bottom-bleu.svg") repeat-x bottom center;
      height: 5rem;
      width: 100%;
      z-index: 1; }
      @media (max-width: 50em) {
        .techno-section.clr-bg-2:after {
          bottom: -2.0625rem;
          background: url("images/vagues/vague-reverse-bottom-bleu-xs.svg") repeat-x bottom left;
          height: 2.0625rem; } }
  .techno-section.gray-bg {
    margin-top: 5rem;
    margin-bottom: 5rem;
    padding-bottom: 5rem; }
    .techno-section.gray-bg:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-reverse-top-gris.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .techno-section.gray-bg:before {
          top: -2.0625rem;
          background: url("images/vagues/vague-reverse-top-gris-xs.svg") repeat-x top center;
          height: 2.0625rem; } }
    .techno-section.gray-bg:after {
      content: '';
      display: block;
      position: absolute;
      bottom: -5rem;
      background: url("images/vagues/vague-reverse-bottom-gris.svg") repeat-x bottom center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .techno-section.gray-bg:after {
          bottom: -2.0625rem;
          background: url("images/vagues/vague-reverse-bottom-gris-xs.svg") repeat-x bottom center;
          height: 2.0625rem; } }

.techno-title {
  font-size: 2em;
  color: #13294B; }
  .techno-title.center-title {
    text-align: center; }
    .techno-title.center-title:after {
      content: '';
      display: block;
      width: 3rem;
      border-bottom: 0.25rem solid #CDE201;
      margin: 1.25rem auto 0; }

.mobile-title {
  display: none; }
  @media (max-width: 50em) {
    .mobile-title {
      position: relative;
      display: block;
      font-size: 1.75em;
      margin-bottom: 1.5625em;
      padding-bottom: 0.9375em; } }
  .mobile-title:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: inline-block;
    width: 2.5rem;
    border-top: 0.25rem solid #CDE201; }

@media (max-width: 50em) {
  .desktop-title {
    display: none; } }

.clr-bg .techno-title,
.clr-bg-2 .techno-title {
  color: #fff; }

.techno-presentation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 50em) {
    .techno-presentation {
      -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; } }

.techno-illu-wrapper {
  width: 36.25em; }
  @media (max-width: 39.375em) {
    .techno-illu-wrapper {
      width: 100%; } }

.techno-tx-wrapper {
  width: 32.5em; }
  @media (max-width: 39.375em) {
    .techno-tx-wrapper {
      width: 100%; } }

.techno-text {
  position: relative;
  display: inline-block;
  font-size: 1.0625em;
  line-height: 1.35em;
  margin-top: 1.25em;
  padding-left: 5em; }
  @media (max-width: 50em) {
    .techno-text {
      padding: 0; } }
  .techno-text:before {
    content: '';
    position: absolute;
    top: 0.375em;
    left: 0;
    display: inline-block;
    width: 3em;
    border-top: 0.25rem solid #CDE201; }
    @media (max-width: 50em) {
      .techno-text:before {
        display: none; } }
  .techno-text p:last-child {
    margin-bottom: 0; }

.techno-text-secondary {
  display: inline-block;
  font-family: "Droid Serif", serif;
  font-style: italic;
  font-size: 1em;
  margin: 0;
  margin-top: 2.1875em; }
  @media (max-width: 50em) {
    .techno-text-secondary {
      margin-top: 1.25em; } }

#network,
#tag {
  display: inline-block;
  vertical-align: top;
  width: 100vw;
  margin: 0; }

#network {
  padding: 3.125em 0; }
  @media (max-width: 50em) {
    #network {
      padding: 2.5em 0 0; } }
  #network:before {
    display: none; }
  #network:after {
    display: none; }
  #network .techno-illu-wrapper {
    margin-top: -1.5625rem; }
    @media (max-width: 39.375em) {
      #network .techno-illu-wrapper {
        margin-top: initial;
        margin-bottom: 1.875em; } }
  #network .techno-tx-wrapper {
    margin-top: 4.375rem; }
    @media (max-width: 39.375em) {
      #network .techno-tx-wrapper {
        margin-top: initial; } }
  #network .techno-legend {
    padding-left: 5em; }
    @media (max-width: 50em) {
      #network .techno-legend {
        padding: 0; } }

#tag {
  padding: 3.125em 0 3.125em;
  margin-left: -0.25rem; }
  @media (max-width: 50em) {
    #tag {
      padding: 2.5em 0 1.875em; } }
  #tag:before {
    display: none; }
  #tag:after {
    display: none; }
  @media (max-width: 50em) {
    #tag .techno-presentation {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; } }
  #tag .techno-tx-wrapper {
    margin-top: -2.5rem; }
    @media (max-width: 39.375em) {
      #tag .techno-tx-wrapper {
        margin-top: initial;
        margin-top: 0.9375em; } }
  #tag .techno-illu-wrapper {
    margin-top: 1.5625rem; }
    @media (max-width: 39.375em) {
      #tag .techno-illu-wrapper {
        margin-top: initial; } }
  #tag .mobile-title {
    -ms-flex-item-align: start;
        align-self: flex-start; }

.techno-legend {
  margin-top: 2.1875em; }
  @media (max-width: 31.25em) {
    .techno-legend {
      text-align: center; } }
  @media (max-width: 23.125em) {
    .techno-legend {
      font-size: 0.875em; } }
  .techno-legend li {
    vertical-align: baseline; }
    @media (max-width: 31.25em) {
      .techno-legend li {
        margin-bottom: 0.9375em; } }
  .techno-legend li:first-child .techno-legend-img {
    margin-left: 0; }
  .techno-legend .techno-legend-img {
    margin-left: 0.625em; }
    .techno-legend .techno-legend-img.tel {
      width: 1.3125em;
      height: 1.9375em; }
    .techno-legend .techno-legend-img.cloud {
      width: 3em;
      height: 1.5625em; }
    .techno-legend .techno-legend-img.tag {
      width: 0.9375em;
      height: 0.9375em; }
    .techno-legend .techno-legend-img.tel-2 {
      width: 1.625em;
      height: 2.25em; }
  .techno-legend .techno-legend-tx {
    font-size: 0.9375em;
    margin: 0; }
  .techno-legend .techno-legend-img,
  .techno-legend .techno-legend-tx {
    display: inline-block;
    vertical-align: baseline; }
  .techno-legend .techno-legend-img {
    margin-right: 0.625em; }

.wave-navigation {
  display: none;
  margin: 0; }
  @media (max-width: 50em) {
    .wave-navigation {
      display: block;
      text-align: center;
      margin-top: 3.125em; } }

.wave-navigation-item a {
  display: inline-block;
  height: 0.625rem;
  width: 0.625rem;
  border-radius: 50%;
  background: #CDE201; }

.wave-navigation-item.is-active a {
  background: #fff; }

@-webkit-keyframes movePositioning {
  0%, 100% {
    -webkit-transform: translate3d(0%, 0px, 0px);
            transform: translate3d(0%, 0px, 0px); }
  50% {
    -webkit-transform: translate3d(-50%, 0px, 0px);
            transform: translate3d(-50%, 0px, 0px); } }

@keyframes movePositioning {
  0%, 100% {
    -webkit-transform: translate3d(0%, 0px, 0px);
            transform: translate3d(0%, 0px, 0px); }
  50% {
    -webkit-transform: translate3d(-50%, 0px, 0px);
            transform: translate3d(-50%, 0px, 0px); } }

.techno-panels {
  position: relative;
  width: 200vw;
  -webkit-transform: translate3d(0%, 0px, 0px);
          transform: translate3d(0%, 0px, 0px);
  transition: -webkit-transform .9s ease-in-out;
  transition: transform .9s ease-in-out;
  -webkit-animation: movePositioning 5s;
          animation: movePositioning 5s; }
  .techno-panels.to-right {
    -webkit-transform: translate3d(-50%, 0px, 0px);
            transform: translate3d(-50%, 0px, 0px); }

#radio {
  padding: 4.375em 0; }
  @media (max-width: 50em) {
    #radio {
      padding: 1.875em 0 0.625em; } }
  @media (max-width: 34.375em) {
    #radio {
      padding: 0.625em 0 0; } }
  @media (max-width: 46.875em) {
    #radio .techno-title.center-title {
      text-align: left;
      margin-bottom: 2.8125rem; } }
  @media (max-width: 46.875em) {
    #radio .techno-title.center-title:after {
      margin-left: 0; } }
  #radio .radio-col {
    position: relative;
    margin-top: 6.875em; }
    @media (max-width: 46.875em) {
      #radio .radio-col {
        width: 100%;
        margin-top: 1.875em; } }
    #radio .radio-col:first-child {
      padding-left: 7.5em; }
      @media (max-width: 46.875em) {
        #radio .radio-col:first-child {
          padding-left: 4.0625em; } }
      #radio .radio-col:first-child:before {
        content: url(images/ico-bluetooth.svg);
        display: inline-block;
        position: absolute;
        top: 0;
        left: 3.125em; }
        @media (max-width: 46.875em) {
          #radio .radio-col:first-child:before {
            left: 0; } }
    #radio .radio-col:last-child {
      padding-left: 5.9375em;
      padding-right: 2.5em; }
      @media (max-width: 46.875em) {
        #radio .radio-col:last-child {
          padding-left: 4.0625em;
          padding-right: 0;
          margin-top: 3.125em; } }
      #radio .radio-col:last-child:before {
        content: url(images/ico-wideband.svg);
        display: inline-block;
        position: absolute;
        top: 0;
        left: 0.625em; }
        @media (max-width: 46.875em) {
          #radio .radio-col:last-child:before {
            left: 0; } }
  #radio .col-tx {
    font-size: 1.0625em;
    line-height: 1.35em; }

#engine {
  padding: 0.625em 0 4.375em; }
  @media (max-width: 50em) {
    #engine {
      padding: 1.875em 0 0.625em; } }
  @media (max-width: 34.375em) {
    #engine {
      padding: 1.875em 0; } }
  #engine .techno-title {
    margin-bottom: 2.1875em; }
    @media (max-width: 53.125em) {
      #engine .techno-title {
        text-align: center;
        margin-bottom: 2.5rem; } }
    #engine .techno-title:after {
      content: '';
      display: block;
      width: 3rem;
      border-bottom: 0.25rem solid #CDE201;
      margin-top: 1.25rem; }
      @media (max-width: 53.125em) {
        #engine .techno-title:after {
          margin: 1.25rem auto 0; } }
  @media (max-width: 72.5em) {
    #engine .wrapper {
      padding-right: 2.5rem; } }
  @media (max-width: 53.125em) {
    #engine .wrapper {
      padding: 0 2.5rem; } }

.engine-slider-wrapper {
  position: relative; }

.engine-slider {
  position: relative;
  margin-left: -0.375rem; }

.engine-slider-item {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.engine-slider-int {
  width: 65%; }
  @media (max-width: 53.125em) {
    .engine-slider-int {
      width: 100%; } }
  .engine-slider-int img {
    width: 100%; }
  .engine-slider-int .slick-dots {
    margin-top: 1.25em;
    margin-bottom: 0; }
  .engine-slider-int .slick-dots button {
    height: 0.625rem;
    width: 0.625rem; }

.engine-slider-int-img {
  padding: 0.375rem;
  margin-top: -0.375rem; }
  .engine-slider-int-img img {
    box-shadow: -0.125rem 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.13); }

.engine-slider-details {
  width: 30%;
  text-align: center; }
  @media (max-width: 53.125em) {
    .engine-slider-details {
      width: 100%; } }

.engine-title {
  font-style: italic;
  text-align: center;
  max-width: 14.375rem;
  margin: 0 auto 1.25rem; }
  @media (max-width: 53.125em) {
    .engine-title {
      max-width: none; } }
  @media (max-width: 29.0625em) {
    .engine-title {
      max-width: 14.375rem; } }
  @media (max-width: 53.125em) {
    .engine-title.desktop-title {
      display: none; } }
  .engine-title.mobile-title {
    display: none; }
    @media (max-width: 53.125em) {
      .engine-title.mobile-title {
        font-size: 1.5em;
        display: block;
        margin: 0 auto 1.5625em; } }
    .engine-title.mobile-title:before {
      display: none; }

.engine-tx {
  font-size: 1.0625em;
  line-height: 1.35em; }
  @media (max-width: 53.125em) {
    .engine-tx {
      margin-top: 1.875em; } }
  @media (max-width: 68.75em) {
    .engine-tx br {
      display: none; } }

.engine-slider > .slick-dots {
  width: 30%;
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0;
  padding-top: 1.5625em; }
  @media (max-width: 61.875em) {
    .engine-slider > .slick-dots {
      display: none !important; } }
  .engine-slider > .slick-dots:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    display: block;
    width: 3rem;
    border-bottom: 0.25rem solid #CDE201; }
  .engine-slider > .slick-dots li {
    display: block;
    cursor: pointer;
    font-family: "Droid Serif", serif;
    font-weight: bold;
    font-style: italic;
    line-height: 1.5em; }
    .engine-slider > .slick-dots li.slick-active {
      display: none; }
    .engine-slider > .slick-dots li a {
      color: #CDE201; }

.engine-slider-nav {
  position: absolute;
  top: 0;
  right: 0;
  width: 30%; }
  @media (max-width: 53.125em) {
    .engine-slider-nav {
      width: 100%; } }
  .engine-slider-nav .slider-nav-prev,
  .engine-slider-nav .slider-nav-next {
    font-size: 0.8125em;
    cursor: pointer;
    position: absolute;
    top: 0; }
  .engine-slider-nav .slider-nav-prev {
    left: -1.25rem; }
    @media (max-width: 53.125em) {
      .engine-slider-nav .slider-nav-prev {
        left: -1.875rem; } }
  .engine-slider-nav .slider-nav-next {
    right: -1.25rem; }
    @media (max-width: 53.125em) {
      .engine-slider-nav .slider-nav-next {
        right: -1.875rem; } }
  .engine-slider-nav .icon-arrow {
    font-size: 2.0625em;
    color: #CDE201; }
  .engine-slider-nav .slider-nav-prev .icon-arrow {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

#enterprise {
  padding: 6.25em 0; }
  @media (max-width: 50em) {
    #enterprise {
      padding: 0 0; } }
  #enterprise .iconbox-wrapper {
    margin: 6.25em 0 0; }
    @media (max-width: 53.125em) {
      #enterprise .iconbox-wrapper {
        margin: 4.375em 0 0; } }
  #enterprise .iconbox-tx p {
    margin: 0.625rem 0; }

#links {
  padding: 6.25em 0 4.375em;
  margin-bottom: 0; }
  @media (max-width: 43.75em) {
    #links {
      padding: 5em 0 3.125em; } }
  #links .wrapper {
    position: relative; }
    #links .wrapper:before {
      content: '';
      background: url(images/logo-icono.svg) no-repeat;
      background-size: 100% 100%;
      display: inline-block;
      height: 3.375rem;
      width: 3.375rem;
      position: absolute;
      left: 1.25rem;
      top: -4rem; }
      @media (max-width: 43.75em) {
        #links .wrapper:before {
          top: -4.375rem;
          height: 2.5rem;
          width: 2.5rem; } }
    #links .wrapper:after {
      content: '';
      background: url(images/logo-icono.svg) no-repeat;
      background-size: 100% 100%;
      display: inline-block;
      height: 3.375rem;
      width: 3.375rem;
      position: absolute;
      right: 1.25rem;
      bottom: -2.0625rem; }
      @media (max-width: 43.75em) {
        #links .wrapper:after {
          bottom: -3.125rem;
          height: 2.5rem;
          width: 2.5rem; } }

.links-title {
  font-family: "Droid Sans", sans-serif;
  text-align: center; }
  @media (max-width: 43.75em) {
    .links-title {
      margin: 1.875em 0; } }

.links-list {
  max-width: 42.5em;
  text-align: center;
  margin: 0 auto 2.5em; }
  .links-list li + li {
    position: relative;
    padding-left: 1.5rem;
    margin-left: 1.375rem; }
    @media (max-width: 43.75em) {
      .links-list li + li {
        padding-left: 0;
        margin-left: 0;
        padding-top: 1.375em; } }
  .links-list li + li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    height: 1.25rem;
    border-left: 0.1875rem solid #CDE201; }
    @media (max-width: 43.75em) {
      .links-list li + li:before {
        height: 0;
        width: 2.5em;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        border-bottom: 0.1875rem solid #CDE201; } }
  .links-list.kb-list li:nth-child(4) {
    padding-left: 0;
    margin-left: 0; }
    .links-list.kb-list li:nth-child(4):before {
      display: none; }
      @media (max-width: 43.75em) {
        .links-list.kb-list li:nth-child(4):before {
          display: inline-block; } }
  .links-list.git-list li:nth-child(3):before {
    display: none; }

.links-list-item {
  margin-bottom: 1.25em; }
  .links-list-item a {
    font-size: 1.0625em; }
    .links-list-item a:hover {
      color: #CDE201; }

@media (max-width: 43.75em) {
  .links-list.list-inline .links-list-item {
    display: block; } }

.page-about .page-intro-wrapper {
  text-align: center;
  padding-bottom: 6.25em; }
  @media (max-width: 50em) {
    .page-about .page-intro-wrapper {
      padding-bottom: 0.625em; } }
  @media (max-width: 34.375em) {
    .page-about .page-intro-wrapper br {
      display: initial; } }

.page-about .page-title {
  color: #CDE201;
  max-width: 12.5em;
  padding-bottom: 1.875rem;
  margin: 0 auto;
  margin-bottom: 2.8125rem; }
  .page-about .page-title:after {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }

.about-section {
  position: relative; }
  .about-section.clr-bg {
    margin-bottom: 4.375rem; }
    .about-section.clr-bg:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-reverse-top-bleu.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .about-section.clr-bg:before {
          top: -2rem;
          background: url("images/vagues/vague-reverse-top-bleu-xs.svg") repeat-x top left;
          height: 2.0625rem; } }
    .about-section.clr-bg:after {
      content: '';
      display: block;
      position: absolute;
      bottom: -5rem;
      background: url("images/vagues/vague-bottom-bleu.svg") repeat-x bottom center;
      height: 5rem;
      width: 100%;
      z-index: 1; }
      @media (max-width: 50em) {
        .about-section.clr-bg:after {
          bottom: -2rem;
          background: url("images/vagues/vague-bottom-bleu-xs.svg") repeat-x bottom left;
          height: 2.0625rem; } }
    .about-section.clr-bg .about-title {
      color: #fff; }
  .about-section.gray-bg {
    margin-top: 5rem; }
    .about-section.gray-bg:before {
      content: '';
      display: block;
      position: absolute;
      top: -5rem;
      background: url("images/vagues/vague-reverse-top-gris.svg") repeat-x top center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .about-section.gray-bg:before {
          top: -2.0625rem;
          background: url("images/vagues/vague-reverse-top-gris-xs.svg") repeat-x top center;
          height: 2.0625rem; } }
    .about-section.gray-bg:after {
      content: '';
      display: block;
      position: absolute;
      bottom: -5rem;
      background: url("images/vagues/vague-bottom-gris.svg") repeat-x bottom center;
      height: 5rem;
      width: 100%; }
      @media (max-width: 50em) {
        .about-section.gray-bg:after {
          bottom: -2.0625rem;
          background: url("images/vagues/vague-bottom-gris-xs.svg") repeat-x bottom center;
          height: 2.0625rem; } }

.about-title {
  font-size: 2em;
  color: #13294B; }
  .about-title.center-title {
    text-align: center; }
    .about-title.center-title:after {
      content: '';
      display: block;
      width: 3rem;
      border-bottom: 0.25rem solid #CDE201;
      margin: 1.25rem auto 0; }

.section-team {
  text-align: center;
  margin-bottom: 0.0625em;
  padding-top: 2.5em;
  padding-bottom: 9.0625em; }
  @media (max-width: 50em) {
    .section-team {
      padding-bottom: 6.25em; } }
  .section-team:after {
    display: none !important; }
  .section-team .about-title {
    margin-bottom: 5rem; }
    @media (max-width: 39.375em) {
      .section-team .about-title {
        margin-bottom: 2.8125rem; } }

.team-slider-wrapper > div {
  position: relative;
  padding: 0 5em; }
  @media (max-width: 39.375em) {
    .team-slider-wrapper > div {
      padding: 0 2.5em; } }

.team-slider-nav {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }
  .team-slider-nav .slider-team-nav-prev,
  .team-slider-nav .slider-team-nav-next {
    cursor: pointer;
    position: absolute;
    top: 0; }
  .team-slider-nav .slider-team-nav-prev {
    left: 0; }
  .team-slider-nav .slider-team-nav-next {
    right: 0; }
  .team-slider-nav .icon-arrow {
    font-size: 2.0625em; }
    @media (max-width: 26.875em) {
      .team-slider-nav .icon-arrow {
        font-size: 1.5625em; } }
  .team-slider-nav .slider-team-nav-prev .icon-arrow {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

.team-item {
  text-align: center;
  padding: 0 2.5em; }
  @media (max-width: 39.375em) {
    .team-item {
      padding: 0 1.25em; } }
  @media (max-width: 21.875em) {
    .team-item {
      padding: 0; } }

.team-photo {
  display: inline-block;
  margin-bottom: 1.875em;
  width: 8.125rem;
  height: 10.125rem; }
  @media (max-width: 26.875em) {
    .team-photo {
      width: auto;
      height: auto; } }

.team-name {
  font-size: 1.0625em;
  line-height: 1.35em;
  letter-spacing: 0.0125em;
  font-weight: bold;
  margin-bottom: 0.625rem; }

.team-job {
  font-size: 1.0625em;
  line-height: 1.35em;
  margin: 0; }

.team-grid-wrapper {
  display: none; }

.team-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  align-item: flex-start;
  padding: 0 4.75em;
  margin-top: -3.125em; }
  @media (max-width: 39.375em) {
    .team-grid {
      padding: 0 2.5em; } }
  .team-grid .team-item {
    width: 25%;
    margin: 3.125em 0; }
    @media (max-width: 46.875em) {
      .team-grid .team-item {
        width: 33.333%; } }

.team-more {
  display: inline-block;
  text-align: center;
  margin-top: 5rem;
  font-size: 0.75em;
  font-weight: bold;
  cursor: pointer; }
  @media (max-width: 39.375em) {
    .team-more {
      display: none; } }
  .team-more i {
    display: block;
    font-size: 1.5625rem;
    color: #13294B;
    margin-bottom: 0.3125rem; }

.team-less {
  font-size: 0.75em;
  font-weight: bold;
  cursor: pointer; }
  .team-less .icon {
    display: block;
    font-size: 1.375em;
    margin: 0 auto;
    margin-bottom: 0.3125rem;
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg); }

.section-partners {
  padding-top: 1.25em;
  padding-bottom: 5em; }
  @media (max-width: 50em) {
    .section-partners {
      padding-top: 2.5em;
      padding-bottom: 3.125em; } }
  @media (max-width: 50em) {
    .section-partners .grid-2-4 {
      width: 100%; } }

.partners-mainTx {
  position: relative;
  font-size: 1.0625em;
  line-height: 1.35em;
  margin-top: 1.25em;
  padding-left: 5em;
  padding-right: 1.875em; }
  @media (max-width: 50em) {
    .partners-mainTx {
      padding-right: 0; } }
  .partners-mainTx:before {
    content: '';
    position: absolute;
    top: 0.375em;
    left: 0;
    display: inline-block;
    width: 3em;
    border-top: 0.25rem solid #CDE201; }
  .partners-mainTx p:last-child {
    margin-bottom: 0; }
  .partners-mainTx a {
    color: #fff;
    font-weight: bold; }

.partners-panels {
  position: relative; }
  @media (max-width: 50em) {
    .partners-panels.desktop {
      display: none; } }
  .partners-panels.mobile {
    display: none; }
    @media (max-width: 50em) {
      .partners-panels.mobile {
        display: block; } }
    .partners-panels.mobile .partner-details {
      position: relative;
      top: initial;
      left: initial;
      opacity: 1;
      padding: 0 2.5rem; }
    .partners-panels.mobile .partner-name {
      margin: 1.25em 0 1.25em; }

.partners-mobile-tab {
  position: relative; }
  .partners-mobile-tab .partner-tx {
    display: none;
    width: 100%;
    text-align: center;
    margin-top: -3.125em; }
    .partners-mobile-tab .partner-tx.is-active {
      display: block; }

.partners-panels {
  position: relative; }
  .partners-panels .partners-mobile-slider-nav {
    position: absolute;
    left: 0;
    top: 62%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 100%; }
    @media (max-width: 26.875em) {
      .partners-panels .partners-mobile-slider-nav {
        top: 60%; } }
    @media (max-width: 23.125em) {
      .partners-panels .partners-mobile-slider-nav {
        top: 58%; } }
    .partners-panels .partners-mobile-slider-nav .slider-nav-prev,
    .partners-panels .partners-mobile-slider-nav .slider-nav-next {
      cursor: pointer;
      position: absolute;
      top: 0;
      color: #CDE201; }
    .partners-panels .partners-mobile-slider-nav .slider-nav-prev {
      left: 0; }
    .partners-panels .partners-mobile-slider-nav .slider-nav-next {
      right: 0; }
    .partners-panels .partners-mobile-slider-nav .icon-arrow {
      font-size: 2.0625em; }
      @media (max-width: 26.875em) {
        .partners-panels .partners-mobile-slider-nav .icon-arrow {
          font-size: 1.5625em; } }
    .partners-panels .partners-mobile-slider-nav .slider-nav-prev .icon-arrow {
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }

.partner-more {
  display: inline-block;
  text-align: center;
  margin: 0.9375rem auto 0;
  color: #fff; }
  .partner-more.is-active {
    display: none; }
  .partner-more:focus {
    outline: none; }
  .partner-more i {
    display: block;
    width: 1.875rem;
    height: 1.875rem;
    text-align: center;
    border-radius: 50%;
    border: 0.0625rem solid #fff;
    margin: 0 auto;
    padding-top: 0.375rem;
    margin-bottom: 0.625rem; }

.partner-details {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  padding-left: 5em;
  margin-top: 1.25em; }
  @media (max-width: 50em) {
    .partner-details {
      padding-left: 0;
      text-align: center;
      margin-top: 4.375em; } }
  .partner-details.is-active {
    position: relative;
    opacity: 1; }

.partner-name {
  color: #fff;
  margin: 1.875em 0; }

.partner-tx {
  font-size: 1.0625em;
  line-height: 1.35em;
  font-style: italic; }

.partners-slider {
  margin-top: 5em;
  padding-top: 5em;
  border-top: 0.1875rem solid #CDE201; }
  @media (max-width: 50em) {
    .partners-slider {
      display: none; } }
  .partners-slider .slick-slide {
    margin: 0 1.25rem; }
  .partners-slider .slick-list {
    margin: 0 -1.25rem; }

.partner-img-wrapper {
  position: relative; }
  .partner-img-wrapper .partner-slider-logo {
    transition: all 0.3s cubic-bezier(0.17, 0.67, 0.83, 0.67); }
    .partner-img-wrapper .partner-slider-logo.bw {
      position: relative; }
    .partner-img-wrapper .partner-slider-logo.clr {
      opacity: 0;
      position: absolute;
      top: 0;
      left: 0; }

.partner-item:hover .partner-slider-logo.bw, .partner-item.is-active .partner-slider-logo.bw {
  opacity: 0; }

.partner-item:hover .partner-slider-logo.clr, .partner-item.is-active .partner-slider-logo.clr {
  opacity: 1; }

.section-career {
  padding-top: 3.75em;
  padding-bottom: 3.75em; }
  @media (max-width: 50em) {
    .section-career {
      margin-top: -2.1875rem !important;
      padding-top: 3.125em; } }
  @media (max-width: 50em) {
    .section-career .about-title {
      text-align: left; } }
  @media (max-width: 50em) {
    .section-career .about-title:after {
      margin-left: 0; } }

.career-section {
  position: relative;
  margin-top: 6.25em; }
  @media (max-width: 50em) {
    .career-section {
      width: 100%; } }
  .career-section:before {
    content: '';
    background: url(images/logo-icono.svg) no-repeat;
    background-size: 100% 100%;
    display: inline-block;
    height: 2.5em;
    width: 2.5em;
    position: absolute;
    top: 0;
    left: 0.3125rem; }
    @media (max-width: 50em) {
      .career-section:before {
        left: 0; } }
  .career-section:first-child {
    padding-left: 5em; }
    @media (max-width: 50em) {
      .career-section:first-child {
        margin-top: 3.125em;
        padding-left: 4.0625em; } }
  .career-section:last-child {
    padding-left: 8.125em; }
    @media (max-width: 50em) {
      .career-section:last-child {
        padding-left: 4.0625em;
        margin-top: 3.125em;
        padding-right: 0; } }
    .career-section:last-child:before {
      left: 0.3125rem; }
      @media (max-width: 50em) {
        .career-section:last-child:before {
          margin-top: 3.125em; } }

.career-tx,
.career-list-item {
  font-size: 1.0625em;
  line-height: 1.35em; }
  .career-tx a,
  .career-list-item a {
    font-weight: bold; }
  @media (max-width: 50em) {
    .career-tx br,
    .career-list-item br {
      display: none; } }

.career-list-item {
  position: relative;
  padding-left: 0.625rem; }
  .career-list-item:before {
    content: '-';
    position: absolute;
    left: 0; }

.section-press {
  padding-top: 10em;
  padding-bottom: 11.25em; }
  @media (max-width: 50em) {
    .section-press {
      padding-top: 6.25em;
      padding-bottom: 7.5em; } }

.press-item {
  padding: 0 1.25em;
  text-align: center; }

.press-slider {
  margin-top: 5em; }
  .press-slider .press-item {
    padding: 0 3.125em; }

.testimony-slider {
  padding-top: 5em;
  margin-top: 5em;
  border-top: 0.1875rem solid #CDE201; }

.press-slider,
.testimony-slider {
  padding-left: 3.75em;
  padding-right: 3.75em; }
  @media (max-width: 39.375em) {
    .press-slider,
    .testimony-slider {
      padding-left: 0;
      padding-right: 0; } }

.press-logo-wrapper {
  position: relative;
  height: 5em; }
  .press-logo-wrapper img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
    max-height: 100%;
    width: auto; }

.press-tx {
  font-size: 1.0625em;
  line-height: 1.35em;
  margin: 2.5em 0 0; }

.press-slider-wrapper {
  position: relative; }

.press-slider-nav {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }
  @media (max-width: 39.375em) {
    .press-slider-nav {
      display: none; } }
  .press-slider-nav .slider-press-nav-prev,
  .press-slider-nav .slider-press-nav-next {
    cursor: pointer;
    position: absolute;
    top: 0;
    color: #CDE201; }
  .press-slider-nav .slider-press-nav-prev {
    left: 0; }
  .press-slider-nav .slider-press-nav-next {
    right: 0; }
  .press-slider-nav .icon-arrow {
    font-size: 2.0625em; }
  .press-slider-nav .slider-press-nav-prev .icon-arrow {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

.section-events {
  padding-top: 0.625em;
  padding-bottom: 2.5em; }
  @media (max-width: 50em) {
    .section-events {
      padding-top: 2.5em;
      padding-bottom: 3.75em; } }
  .section-events .about-title {
    color: #CDE201; }
    .section-events .about-title:after {
      content: '';
      display: block;
      width: 3rem;
      border-bottom: 0.25rem solid #CDE201;
      margin-top: 0.9375em; }

.events-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  align-item: flex-start;
  margin-top: 5.625em; }
  @media (max-width: 37.5em) {
    .events-wrapper.desktop {
      display: none; } }
  .events-wrapper.mobile {
    display: none; }
    @media (max-width: 37.5em) {
      .events-wrapper.mobile {
        display: block;
        margin-top: 3.125em; } }

.events-wrapper {
  position: relative; }

.events-slider-nav {
  position: absolute;
  left: 0;
  top: 15%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%; }
  .events-slider-nav .slider-events-nav-prev,
  .events-slider-nav .slider-events-nav-next {
    cursor: pointer;
    position: absolute;
    top: 0;
    color: #CDE201; }
  .events-slider-nav .slider-events-nav-prev {
    left: 0; }
  .events-slider-nav .slider-events-nav-next {
    right: 0; }
  .events-slider-nav .icon-arrow {
    font-size: 2.0625em; }
    @media (max-width: 26.875em) {
      .events-slider-nav .icon-arrow {
        font-size: 1.5625em; } }
  .events-slider-nav .slider-events-nav-prev .icon-arrow {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }

.event-item {
  width: 50%;
  padding-right: 3.125em;
  margin-bottom: 3.75em; }
  @media (max-width: 37.5em) {
    .event-item {
      width: 100%;
      text-align: center;
      padding: 0 1.875em;
      margin-bottom: 0; } }
  .event-item:nth-child(even) {
    padding-left: 1.25em;
    padding-right: 0; }
    @media (max-width: 37.5em) {
      .event-item:nth-child(even) {
        padding: 0 1.875em; } }

.event-title,
.event-city,
.event-description,
.event-link {
  padding-left: 2.5rem; }
  @media (max-width: 37.5em) {
    .event-title,
    .event-city,
    .event-description,
    .event-link {
      padding: 0; } }

.event-title {
  color: #fff;
  margin-bottom: 0.625rem; }

.event-date {
  font-family: "Droid Serif", serif;
  font-size: 1.0625em;
  font-weight: 600;
  font-style: italic;
  color: #CDE201;
  margin-bottom: 0.625em; }

.event-city,
.event-country {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.0625em;
  line-height: 1.35em;
  margin: 0; }

.event-city:after {
  content: '';
  display: inline-block;
  vertical-align: sub;
  height: 1.0625rem;
  border-left: 0.1875rem solid #CDE201;
  margin: 0 0.625em 0 0.9375em; }

.event-description,
.event-link {
  font-size: 1.0625em;
  line-height: 1.35em;
  margin-bottom: 0; }

.event-link {
  display: inline-block;
  color: #CDE201;
  margin-top: 0.3125em; }

.section-map {
  padding-top: 5.625em;
  padding-bottom: 8.75em; }
  @media (max-width: 50em) {
    .section-map {
      padding-top: 0.625em;
      padding-bottom: 3.125em; } }
  .section-map .about-title {
    margin-bottom: 2.1875em; }

.map-container {
  position: relative; }
  @media (max-width: 46.875em) {
    .map-container .map {
      margin-bottom: 3.125em; } }

.office-item {
  position: absolute;
  min-width: 23.75em;
  background: rgba(246, 246, 246, 0.92);
  padding: 2.1875em 2.1875em 1.5625em; }
  @media (max-width: 46.875em) {
    .office-item {
      background: transparent;
      padding: 0.9375em 0;
      min-width: auto; } }
  .office-item.france {
    border-radius: 1.5625rem 1.5625rem 0 1.5625rem;
    top: 3.4375em;
    left: 7.1875em; }
    @media (max-width: 54.375em) {
      .office-item.france {
        left: 0; } }
    @media (max-width: 46.875em) {
      .office-item.france {
        position: relative;
        top: initial;
        left: initial; } }
  .office-item.poland {
    border-radius: 1.5625rem 0 1.5625rem 1.5625rem;
    left: 17.5em;
    bottom: 7.5em; }
    @media (max-width: 54.375em) {
      .office-item.poland {
        left: initial;
        right: 0;
        bottom: 0; } }
    @media (max-width: 46.875em) {
      .office-item.poland {
        position: relative;
        bottom: initial;
        right: initial; } }
  .office-item.china {
    max-width: 20em;
    border-radius: 1.5625rem 1.5625rem 1.5625rem 0;
    top: 0;
    right: 0; }
    @media (max-width: 46.875em) {
      .office-item.china {
        max-width: initial;
        position: relative;
        top: initial;
        right: initial; } }

.office-name {
  font-family: "Droid Serif", serif;
  font-size: 1.0625em;
  font-weight: 600;
  font-style: italic;
  margin: 0 0 0.625em; }

.office-address,
.office-mail,
.office-tel,
.office-website {
  position: relative;
  display: block;
  font-size: 1.0625em;
  letter-spacing: 0.0125em;
  line-height: 1.34375em;
  margin: 0.625rem 0 0.625rem;
  padding-left: 2.1875em; }
  .office-address:before,
  .office-mail:before,
  .office-tel:before,
  .office-website:before {
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0; }

.office-address:before {
  content: url("images/ico-house.svg"); }

.office-mail:before {
  content: url("images/ico-mail.svg");
  top: 0.125em; }

.office-tel {
  margin: 0.75rem 0 0.75rem; }
  .office-tel:before {
    content: url("images/ico-phone.svg");
    top: -0.25em; }

.office-website:before {
  content: url("images/ico-website.svg"); }

.wpml-ls-legacy-dropdown-click {
  position: relative;
  right: -35px;
  width: auto; }
  @media (max-width: 76.25em) {
    .wpml-ls-legacy-dropdown-click {
      right: initial;
      margin: 0 1.25em; } }
  @media (max-width: 60.625em) {
    .wpml-ls-legacy-dropdown-click {
      margin: 0 3.4375em 0 1.25em; } }
  @media (max-width: 31.25em) {
    .wpml-ls-legacy-dropdown-click {
      margin: 0 2.5em 0 1.25em; } }

.wpml-ls-legacy-dropdown-click a {
  position: relative;
  color: #fff;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 0.0625rem solid #fff;
  background: transparent;
  padding: 0.3125rem;
  font-size: 1em;
  font-weight: 700;
  font-family: "Droid Sans", sans-serif;
  text-align: center; }
  .wpml-ls-legacy-dropdown-click a:hover {
    border-color: #CDE201; }

.wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu {
  border: none; }
  @media (max-width: 35em) {
    .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      border: none;
      margin-top: 0.3125rem; } }
  @media (max-width: 35em) {
    .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu li {
      display: inline-block;
      margin-right: -0.25rem; } }
  .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu li a:hover {
    color: #CDE201; }
  @media (max-width: 35em) {
    .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu li a {
      border-bottom: none;
      border-right: 0.0625rem solid #fff;
      padding: 0 0.5rem; } }

.wpml-ls-legacy-dropdown-click a:hover,
.wpml-ls-legacy-dropdown-click a:focus,
.wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover > a {
  color: #fff;
  background: transparent; }

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
  color: #CDE201;
  border-color: #CDE201;
  padding-right: 0.3125rem; }
  .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:hover {
    color: #CDE201; }
  .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
    top: 0.4375rem;
    right: -0.9375rem;
    height: 0.5rem;
    width: 0.5rem;
    border-top: 0;
    border-right: 0;
    border-left: 0.125rem solid #fff;
    border-bottom: 0.125rem solid #fff;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    transition: all 0.3s cubic-bezier(0.17, 0.67, 0.83, 0.67); }
  .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle.is-active:after {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    margin-top: 0.1875rem;
    border-color: #CDE201; }

.wpml-ls-item-zh-hans a {
  padding: 0.3125rem 0; }

.menu-mobile .wpml-ls-legacy-dropdown-click {
  margin-top: 2.25em; }
  .menu-mobile .wpml-ls-legacy-dropdown-click > ul {
    margin-left: 2.375rem !important; }
  .menu-mobile .wpml-ls-legacy-dropdown-click ul {
    visibility: visible;
    display: inline-block;
    position: relative;
    top: initial; }
    .menu-mobile .wpml-ls-legacy-dropdown-click ul ul li:first-child {
      border-right: 0.125rem solid #fff; }
    .menu-mobile .wpml-ls-legacy-dropdown-click ul li,
    .menu-mobile .wpml-ls-legacy-dropdown-click ul a {
      display: inline-block;
      border-bottom: none; }
    .menu-mobile .wpml-ls-legacy-dropdown-click ul a {
      padding: 0 0.625rem 0 0.3125rem; }

.menu-mobile a.wpml-ls-item-toggle {
  border-right: 0.125rem solid #CDE201;
  padding: 0.125rem 0.625rem 0.0625rem 0.3125rem !important; }
  .menu-mobile a.wpml-ls-item-toggle:after {
    display: none; }

.language-switcher-outterWrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(19, 41, 75, 0.5);
  z-index: 2000; }
  .language-switcher-outterWrapper .language-switcher-title {
    position: relative;
    margin-bottom: 1.875em; }
    .language-switcher-outterWrapper .language-switcher-title:after {
      content: '';
      display: block;
      width: 100%;
      border-top: 0.25rem solid #CDE201;
      margin-top: 0.9375em; }
  .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click {
    right: initial; }
    .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click > ul > li > a {
      position: relative;
      background: #fff;
      border: 0.0625rem solid #9B9B9B;
      border-radius: 0.5rem 0.5rem 0 0.5rem;
      padding: 0.9375rem; }
      .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click > ul > li > a.is-active {
        border-radius: 0.5rem 0 0 0; }
        .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click > ul > li > a.is-active:before {
          content: '';
          position: absolute;
          left: 0.9375rem;
          bottom: 0.125rem;
          display: inline-block;
          width: 89%;
          border-bottom: 0.0625rem solid #13294B; }
    .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click a {
      color: #13294B;
      text-align: left;
      border: none;
      padding: 0; }
      .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click a:hover {
        color: #13294B; }
  .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
    top: 36%;
    right: 0.9375rem;
    height: 0.625rem;
    width: 0.625rem;
    border-color: #13294B; }
  .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu {
    background: #fff;
    border: 0.0625rem solid #9B9B9B;
    border-top: 0;
    border-radius: 0 0 0.5rem 0.5rem;
    padding: 0.625rem 0.9375rem 0.9375rem;
    margin-top: -0.125rem; }
    .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu a {
      color: #CDE201;
      padding-bottom: 0.9375rem; }
      .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu a:hover {
        color: #13294B; }
    .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu li:first-child a:before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0.125rem;
      display: inline-block;
      width: 100%;
      border-bottom: 0.0625rem solid #C0C0C0; }
    .language-switcher-outterWrapper .wpml-ls-legacy-dropdown-click li ul.wpml-ls-sub-menu li:last-child a {
      padding-top: 0.9375rem; }

.language-switcher-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  background: #fff;
  padding: 3.125em 8.4375em; }

/*------------------------------------*    # Utils
\*------------------------------------*/
.u-cf:before, .u-cf:after {
  content: " ";
  display: table; }

.u-cf:after {
  clear: both; }

.u-noBfc {
  overflow: hidden !important; }

.u-floatLeft {
  float: left !important; }

.u-floatRight {
  float: right !important; }

.u-100vh {
  min-height: 100vh; }

.u-hideMobile {
  display: none !important; }
  @media (min-width: 30.0625em) {
    .u-hideMobile {
      display: block !important; } }

@media (min-width: 30.0625em) {
  .u-showMobile {
    display: none !important; } }

.u-hidden {
  display: none; }

/* Spacing helpers
 *   p,m = padding, margin
 *   a,t,r,b,l = all, top, bottom, left, right
 *   n,s,m,l = none, small, medium, large
 */
/* Margin */
.u-man {
  margin: 0 !important; }

.u-mbn {
  margin-bottom: 0 !important; }

.u-mbs {
  margin-bottom: 1.25rem !important; }

.u-mbm {
  margin-bottom: 3.25rem !important; }

.u-mbl {
  margin-bottom: 4.875rem !important; }

.u-mtn {
  margin-top: 0 !important; }

.u-mts {
  margin-top: 1.25rem !important; }

.u-mtm {
  margin-top: 3.25rem !important; }

.u-mtl {
  margin-top: 4.875rem !important; }

.u-mln {
  margin-left: 0 !important; }

.u-mls {
  margin-left: 1.25rem !important; }

.u-mlm {
  margin-left: 3.25rem !important; }

.u-mll {
  margin-left: 4.875rem !important; }

.u-mrn {
  margin-right: 0 !important; }

.u-mrs {
  margin-right: 1.25rem !important; }

.u-mrm {
  margin-right: 3.25rem !important; }

.u-mrl {
  margin-right: 4.875rem !important; }

/* Padding */
.u-pan {
  padding: 0 !important; }

.u-pbn {
  padding-bottom: 0 !important; }

.u-pbs {
  padding-bottom: 1.25rem !important; }

.u-pbm {
  padding-bottom: 3.25rem !important; }

.u-pbl {
  padding-bottom: 4.875rem !important; }

.u-ptn {
  padding-top: 0 !important; }

.u-pts {
  padding-top: 1.25rem !important; }

.u-ptm {
  padding-top: 3.25rem !important; }

.u-ptl {
  padding-top: 4.875rem !important; }

.u-pln {
  padding-left: 0 !important; }

.u-pls {
  padding-left: 1.25rem !important; }

.u-plm {
  padding-left: 3.25rem !important; }

.u-pll {
  padding-left: 4.875rem !important; }

.u-prn {
  padding-right: 0 !important; }

.u-prs {
  padding-right: 1.25rem !important; }

.u-prm {
  padding-right: 3.25rem !important; }

.u-prl {
  padding-right: 4.875rem !important; }

.u-txtUpper {
  text-transform: uppercase !important; }

.u-txtLower {
  text-transform: lowercase !important; }

.u-txtCenter {
  text-align: center !important; }

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

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

.u-txtBreak {
  word-wrap: break-word !important; }

.u-txtNoWrap {
  white-space: nowrap !important; }

.u-txtKern {
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "kern" 1;
          font-feature-settings: "kern" 1;
  -webkit-font-kerning: normal;
          font-kerning: normal; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiX3RoZW1lLWluZm8uc2NzcyIsIm1haW4uc2NzcyIsImJhc2UvX2Itbm9ybWFsaXplLnNjc3MiLCJiYXNlL19iLXR5cG9ncmFwaHkuc2NzcyIsInRvb2xzL19leHRlbmQuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiYmFzZS9fYi1mb250LWZhY2Uuc2NzcyIsImJhc2UvX2ItaW5pdC5zY3NzIiwidG9vbHMvX2Z1bmN0aW9uLnNjc3MiLCJiYXNlL19iLWxpbmsuc2NzcyIsImJhc2UvX2ItbGlzdC5zY3NzIiwiYmFzZS9fYi1lbWJlZC5zY3NzIiwiYmFzZS9fYi1ncm91cGluZy1jb250ZW50LnNjc3MiLCJiYXNlL19iLWZvcm0uc2NzcyIsImJhc2UvX2ItdGFibGUuc2NzcyIsImNvbXBvbmVudHMvX2dyaWQuc2NzcyIsImNvbXBvbmVudHMvX2xheW91dC5zY3NzIiwiY29tcG9uZW50cy9fbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX21lbnUuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2ljb25ib3guc2NzcyIsImNvbXBvbmVudHMvX3NsaWNrLnNjc3MiLCJjb21wb25lbnRzL19ob21lcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fcGFnZS5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC5zY3NzIiwiY29tcG9uZW50cy9fdHdlZXRzLnNjc3MiLCJjb21wb25lbnRzL19hc2lkZS5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoZm9ybS5zY3NzIiwiY29tcG9uZW50cy9fcGFnZWJsb2cuc2NzcyIsImNvbXBvbmVudHMvX3NpbmdsZS5zY3NzIiwiY29tcG9uZW50cy9fY29udGFjdC5zY3NzIiwiY29tcG9uZW50cy9fc29sdXRpb25zLnNjc3MiLCJjb21wb25lbnRzL190ZWNobm9sb2d5LnNjc3MiLCJjb21wb25lbnRzL19hYm91dC5zY3NzIiwiY29tcG9uZW50cy9fd3BtbC5zY3NzIiwidXRpbHMvX3UtbGF5b3V0LnNjc3MiLCJ1dGlscy9fdS1zaG93LWhpZGUuc2NzcyIsInV0aWxzL191LXNwYWNpbmcuc2NzcyIsInV0aWxzL191LXRleHQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNBakI7Ozs7Ozs7RUFPRTtBQ0xGO3dDQUV3QztBQ0p4Qyw0RUFBNEU7QUFFNUU7Ozs7R0FJRztBQUVIO0VBQ0Usd0JBQXdCO0VBQUUsT0FBTztFQUNqQywyQkFBMkI7RUFBRSxPQUFPO0VBQ3BDLCtCQUErQjtFQUFFLE9BQU8sRUFDekM7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLFVBQVUsRUFDWDs7QUFFRDtnRkFDZ0Y7QUFFaEY7Ozs7O0dBS0c7QUFFSDs7Ozs7Ozs7Ozs7OztFQWFFLGVBQWUsRUFDaEI7O0FBRUQ7OztHQUdHO0FBRUg7Ozs7RUFJRSxzQkFBc0I7RUFBRSxPQUFPO0VBQy9CLHlCQUF5QjtFQUFFLE9BQU8sRUFDbkM7O0FBRUQ7OztHQUdHO0FBRWlCO0VBQ2xCLGNBQWM7RUFDZCxVQUFVLEVBQ1g7O0FBRUQ7OztHQUdHO0FIS0g7O0VHREUsY0FBYyxFQUNmOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0UsOEJBQThCLEVBQy9COztBQUVEOzs7R0FHRztBQUVIOztFQUVFLFdBQVcsRUFDWjs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSDtFQUNFLDBCQUEwQixFQUMzQjs7QUFFRDs7R0FFRztBQUVIOztFQUVFLGtCQUFrQixFQUNuQjs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsbUJBQW1CLEVBQ3BCOztBQUVEOzs7R0FHRztBQUVIO0VBQ0UsZUFBZTtFQUNmLGlCQUFpQixFQUNsQjs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsaUJBQWlCO0VBQ2pC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R1ksOEJBQStCLEVBQUU7O0FBSDdDO0VBSVksNEJBQTZCLEVBQUU7O0FBSjNDO0VBS1ksNkJBQThCLEVBQUU7O0FBTDVDO0VBTVksaUNBQWtDLEVBQUU7O0FBTmhEO0VBT1ksK0JBQWdDLEVBQUU7O0FBUDlDO0VBVUksbUNBQW1DO0VBQ25DLHdDQUFnQztVQUFoQyxnQ0FBZ0M7RUFDaEMsNkJBQXFCO1VBQXJCLHFCQUFxQixFQUN0QiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuVGhlbWUgTmFtZTogVWJ1ZHVcbkF1dGhvcjogQW5nw6hsZSBUZW5vdFxuQXV0aG9yIFVSSTogaHR0cDovL3d3dy51YnVkdS5jb20vXG5EZXNjcmlwdGlvbjogVWJ1ZHUgbmV3IHdlYnNpdGUgVGhlbWVcblZlcnNpb246IDEuMFxuTGljZW5zZTogQ3VzdG9tIENsaWVudCBUaGVtZS4gU2hvdWxkIG5vdCBiZSBkaXN0cmlidXRlZC5cbiovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogICAgIyBTZXR0aW5ncywgRnVuY3Rpb25zLi4uXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG4vKlxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuKi9cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbmd1XG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC50eHRYWEwsIC50eHRYTCwgLnR4dEwsIC50eHRNLCAudHh0UywgLnR4dFhTIHtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbSAwO1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMxMzI5NEI7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cbiAgaDE6Zmlyc3QtY2hpbGQsIGgyOmZpcnN0LWNoaWxkLCBoMzpmaXJzdC1jaGlsZCwgaDQ6Zmlyc3QtY2hpbGQsIGg1OmZpcnN0LWNoaWxkLCBoNjpmaXJzdC1jaGlsZCwgLnR4dFhYTDpmaXJzdC1jaGlsZCwgLnR4dFhMOmZpcnN0LWNoaWxkLCAudHh0TDpmaXJzdC1jaGlsZCwgLnR4dE06Zmlyc3QtY2hpbGQsIC50eHRTOmZpcnN0LWNoaWxkLCAudHh0WFM6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnUtdHh0VHJ1bmNhdGUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgICAjIEJhc2VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9pZCBTYW5zJztcbiAgc3JjOiB1cmwoXCJmb250cy9Ecm9pZFNhbnMuZW90XCIpO1xuICBzcmM6IHVybChcImZvbnRzL0Ryb2lkU2Fucy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNhbnMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNhbnMuc3ZnI0Ryb2lkU2Fuc1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9pZCBTYW5zJztcbiAgc3JjOiB1cmwoXCJmb250cy9Ecm9pZFNhbnMtQm9sZC5lb3RcIik7XG4gIHNyYzogdXJsKFwiZm9udHMvRHJvaWRTYW5zLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZm9udHMvRHJvaWRTYW5zLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNhbnMtQm9sZC5zdmcjRHJvaWRTYW5zLUJvbGRcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Ryb2lkIFNlcmlmJztcbiAgc3JjOiB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUJvbGRJdGFsaWMuZW90XCIpO1xuICBzcmM6IHVybChcImZvbnRzL0Ryb2lkU2VyaWYtQm9sZEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUJvbGRJdGFsaWMuc3ZnI0Ryb2lkU2VyaWYtQm9sZEl0YWxpY1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRHJvaWQgU2VyaWYnO1xuICBzcmM6IHVybChcImZvbnRzL0Ryb2lkU2VyaWYuZW90XCIpO1xuICBzcmM6IHVybChcImZvbnRzL0Ryb2lkU2VyaWYuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZm9udHMvRHJvaWRTZXJpZi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcImZvbnRzL0Ryb2lkU2VyaWYuc3ZnI0Ryb2lkU2VyaWZcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRHJvaWQgU2VyaWYnO1xuICBzcmM6IHVybChcImZvbnRzL0Ryb2lkU2VyaWYtSXRhbGljLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcImZvbnRzL0Ryb2lkU2VyaWYtSXRhbGljLnN2ZyNEcm9pZFNlcmlmLUl0YWxpY1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdEcm9pZCBTZXJpZic7XG4gIHNyYzogdXJsKFwiZm9udHMvRHJvaWRTZXJpZi1Cb2xkLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCJmb250cy9Ecm9pZFNlcmlmLUJvbGQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZm9udHMvRHJvaWRTZXJpZi1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiZm9udHMvRHJvaWRTZXJpZi1Cb2xkLnN2ZyNEcm9pZFNlcmlmLUJvbGRcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbmh0bWwsXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAjMTMyOTRCO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWFpbkNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMxMzI5NEI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxudWwsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMC44MTI1ZW07XG4gIHBhZGRpbmctbGVmdDogMS42MjVlbTsgfVxuICB1bDpmaXJzdC1jaGlsZCwgb2w6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNWVtOyB9XG4gIGRsIGR0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAwLjgxMjVlbTsgfVxuICBkbCBkZCB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuNzVlbTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS41ZW07IH1cblxuaDQge1xuICBmb250LXNpemU6IDEuMjVlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxZW07IH1cblxucCB7XG4gIG1hcmdpbjogMS4yNXJlbSAwOyB9XG4gIHA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5hYmJyW3RpdGxlXSB7XG4gIGZvbnQtdmFyaWFudDogc21hbGwtY2FwcztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuXG5hYmJyLFxuYWNyb255bSB7XG4gIGN1cnNvcjogaGVscDsgfVxuXG5pbWcsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7IH1cblxuZmlnY2FwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG5cbmhyIHtcbiAgbWFyZ2luOiAzLjI1cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VjZWNlO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItdG9wOiBub25lOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDMuMjVyZW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNjZWNlY2U7XG4gIGNvbG9yOiAjMjI0YTg4OyB9XG4gIGJsb2NrcXVvdGUgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJzsgfVxuXG5jaXRlIHtcbiAgY29sb3I6ICMyZDYxYjE7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5wcmUge1xuICBmb250LXNpemU6IDAuODEyNWVtOyB9XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIENvZGUgUHJvXCIsIENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwOyB9XG5cbmNvZGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDAgLjVlbTtcbiAgZm9udC1zaXplOiAuNzVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZjE4MDtcbiAgY29sb3I6ICNDREUyMDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGZiZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTsgfVxuXG5pbnB1dCxcbmxhYmVsLFxuc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07IH1cblxubGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBsYWJlbC5yZXF1aXJlZDphZnRlciB7XG4gICAgY29udGVudDogXCIgKlwiOyB9XG4gIGxhYmVsIGFiYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxudGV4dGFyZWEsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5zZWxlY3RbbXVsdGlwbGU9bXVsdGlwbGVdIHtcbiAgcGFkZGluZzogMC42MjVlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMTcsIDAuNjcsIDAuODMsIDAuNjcpOyB9XG4gIHRleHRhcmVhOmhvdmVyLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInRlbFwiXTpob3ZlcixcbiAgaW5wdXRbdHlwZT1cInRleHRcIl06aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl06aG92ZXIsXG4gIHNlbGVjdFttdWx0aXBsZT1tdWx0aXBsZV06aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2E1YTVhNTsgfVxuICB0ZXh0YXJlYTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuICBzZWxlY3RbbXVsdGlwbGU9bXVsdGlwbGVdOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxMzI5NEI7XG4gICAgYm94LXNoYWRvdzogbm9uZSwgMCAwIDVweCByZ2JhKDE0LCAzMCwgNTUsIDAuNyk7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC40MTY2N3JlbTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwIDAuODEyNWVtIDA7XG4gIHBhZGRpbmc6IDEuNjI1ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTsgfVxuXG5pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYzJjMmMyOyB9XG5cbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2MyYzJjMjsgfVxuXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYzJjMmMyOyB9XG5cbmlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYzJjMmMyOyB9XG5cbnRhYmxlIHtcbiAgbWFyZ2luOiAxLjI1cmVtIDA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VjZWNlOyB9XG5cbnRyLFxudGQsXG50aCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxudGgge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2NlY2VjZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGggKyB0aCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTdlN2U3OyB9XG5cbnRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7IH1cblxudGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlY2VjZTsgfVxuICB0Ym9keSB0ZCArIHRkIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlN2U3ZTc7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICAgICMgTGF5b3V0XG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBXcmFwcGVyXG4gKi9cbi53cmFwcGVyIHtcbiAgd2lkdGg6IDgwLjYyNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiA4MC42MjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4MS4yNWVtKSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDEuMjVyZW07IH0gfVxuXG4ud3JhcHBlci1zIHtcbiAgd2lkdGg6IDY4LjEyNWVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLndyYXBwZXItcyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTsgfSB9XG5cbi53cmFwcGVyLWwge1xuICB3aWR0aDogNzguMTI1ZW07XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY5LjM3NWVtKSB7XG4gICAgLndyYXBwZXItbCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qKlxuICogR3JpZFxuICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIC5ncmlkLTEtNCxcbiAgLmdyaWQtMi00LFxuICAuZ3JpZC0zLTQsXG4gIC5ncmlkLTQtNCxcbiAgLmdyaWQtMS0zLFxuICAuZ3JpZC0yLTMge1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgLmdyaWQtMS00IHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLTItNCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC0zLTQge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQtNC00IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZ3JpZC0xLTMge1xuICAgIHdpZHRoOiAzMy4zMzMlOyB9XG4gIC5ncmlkLTItMyB7XG4gICAgd2lkdGg6IDY2LjY2NiU7IH0gfVxuXG4uY2xlYXJmaXgge1xuICBjbGVhcjogYm90aDsgfVxuXG4uY2VudGVyLFxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5sZWZ0LFxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5yaWdodCxcbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbmltZy5hbGlnbmxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NWVtOyB9XG5cbmltZy5hbGlnbnJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NWVtOyB9XG5cbi5mbGV4UHVzaCB7XG4gIHdpZHRoOiAzMiU7IH1cblxuLmZsZXhXcmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5mdWxsV2lkdGgge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5wYWdlQ29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogLTVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAucGFnZUNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tdG9wOiAtMy4xMjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyMy43NWVtKSB7XG4gICAgLnBhZ2VDb250YWluZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTEuODc1ZW07IH0gfVxuXG4uY2xyLWJnLFxuLmNsci1iZy0yIHtcbiAgYmFja2dyb3VuZDogIzEzMjk0QjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmdyYXktYmcge1xuICBiYWNrZ3JvdW5kOiAjRjlGOUY5OyB9XG5cblxuLmxpc3QtYmFzaWMsXG4ubGlzdC1yZXNldCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uc3ViLW1lbnUsXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnN1Yi1tZW51ID4gbGksXG4gIC5saXN0LWlubGluZSA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5zdWItbWVudSA+IGxpICsgbGksXG4gICAgLmxpc3QtaW5saW5lID4gbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtOyB9XG5cblxuLmxpc3QtYmFzaWMge1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIFxuICAubGlzdC1iYXNpYyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTsgfVxuXG4udHh0WFhMIHtcbiAgZm9udC1zaXplOiAyZW07IH1cblxuLnR4dFhMIHtcbiAgZm9udC1zaXplOiAxLjc1ZW07IH1cblxuLnR4dEwge1xuICBmb250LXNpemU6IDEuNWVtOyB9XG5cbi50eHRNIHtcbiAgZm9udC1zaXplOiAxLjI1ZW07IH1cblxuLnR4dFMge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4udHh0WFMge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4udHh0TGVhZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6ICMzMzM7IH1cblxuLnR4dFNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNWVtOyB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzEzMjk0QjtcbiAgY29sb3I6ICNmZmY7IH1cblxuI2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzEzMjk0QjtcbiAgcGFkZGluZzogMi41ZW0gMCAyLjE4NzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMy44MTI1ZW07XG4gIHotaW5kZXg6IDEwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MC42MjVlbSkge1xuICAgICNoZWFkZXIge1xuICAgICAgcGFkZGluZzogMS4yNWVtIDAgMC45Mzc1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAjaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44NzVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyMGVtKSB7XG4gICAgI2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NWVtOyB9IH1cbiAgI2hlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTMuODEyNWVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZS1oZWFkZXItMi5zdmdcIikgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogLTE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjAuNjI1ZW0pIHtcbiAgICAgICNoZWFkZXI6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWUtaGVhZGVyLW1vYmlsZS5zdmdcIikgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDMlO1xuICAgICAgICBoZWlnaHQ6IDMuNDM3NWVtO1xuICAgICAgICBib3R0b206IC0zLjQzNzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAjaGVhZGVyOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyLjgxMjVlbTtcbiAgICAgICAgYm90dG9tOiAtMi44MTI1ZW07IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAyMGVtKSB7XG4gICAgICAjaGVhZGVyOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyLjE4NzVlbTtcbiAgICAgICAgYm90dG9tOiAtMi4xODc1ZW07IH0gfVxuXG4uaGVhZGVyLWNvbnRhaW5lcixcbi5oZWFkZXItcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmhlYWRlci1sZWZ0IGltZyB7XG4gIHdpZHRoOiAxNC45Mzc1ZW07XG4gIGhlaWdodDogYXV0bzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC5oZWFkZXItbGVmdCBpbWcge1xuICAgICAgd2lkdGg6IDEyLjVlbTsgfSB9XG5cbi5oZWFkZXItbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5oZWFkZXItbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgY29sb3I6ICNDREUyMDE7IH1cbiAgLmhlYWRlci1saW5rOmxhc3QtY2hpbGQge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07IH1cbiAgLmhlYWRlci1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uaGVhZGVyLXJpZ2h0IC5idXR0b24ge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBtYXJnaW4tbGVmdDogMi41ZW07XG4gIHBhZGRpbmctdG9wOiAwLjI1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07IH1cblxuLyogTU9CSUxFICovXG5AbWVkaWEgKG1heC13aWR0aDogNjAuNjI1ZW0pIHtcbiAgLmhlYWRlci1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmhlYWRlci1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MC42MjVlbSkge1xuICAgIC5oZWFkZXItbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAuaGVhZGVyLW1vYmlsZSAuaWNvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICBjb2xvcjogI0NERTIwMTsgfVxuICAgIC5oZWFkZXItbW9iaWxlIC5pY29uLXNlYXJjaCB7XG4gICAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNWVtOyB9XG5cbiNmb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICMxMzI5NEI7XG4gIHBhZGRpbmc6IDEuODc1ZW0gMCAyLjE4NzVlbTtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbiAgei1pbmRleDogMTAwMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICNmb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVlbTsgfSB9XG4gICNmb290ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC01cmVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtdG9wLWJsZXUuc3ZnXCIpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgaGVpZ2h0OiA1cmVtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICNmb290ZXI6YWZ0ZXIge1xuICAgICAgICB0b3A6IC0ycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLXRvcC1ibGV1LXhzLnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG5cbi5mb290ZXItdG9wLFxuLmZvb3Rlci1taWRkbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uZm9vdGVyLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206IDIuODEyNWVtOyB9XG5cbi5mb290ZXItbWVudSB7XG4gIG1hcmdpbi10b3A6IDIuNWVtO1xuICBtYXJnaW4tcmlnaHQ6IDMuNzVlbTsgfVxuXG4uZm9vdGVyLWluZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMzAuMzEyNWVtO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDAuMTg3NXJlbSBzb2xpZCAjQ0RFMjAxO1xuICBwYWRkaW5nLWxlZnQ6IDMuNzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTguMTI1ZW0pIHtcbiAgICAuZm9vdGVyLWluZm8ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyLjVlbTsgfSB9XG4gIC5mb290ZXItaW5mbzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybChpbWFnZXMvbG9nby1zbWFsbC5zdmcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMS4zNzVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1OC4xMjVlbSkge1xuICAgICAgLmZvb3Rlci1pbmZvOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnOyB9IH1cbiAgLmZvb3Rlci1pbmZvIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTguMTI1ZW0pIHtcbiAgICAgIC5mb290ZXItaW5mbyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU4LjEyNWVtKSB7XG4gICAgICAuZm9vdGVyLWluZm8gcDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDAuMjVlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEuMjVlbTtcbiAgICAgICAgd2lkdGg6IDEuMjVlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKGltYWdlcy9sb2dvLXNtYWxsLnN2Zykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtOyB9IH1cbiAgLmZvb3Rlci1pbmZvIHNwYW4ge1xuICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG5cbi5mb290ZXItc29jaWFscyB7XG4gIG1hcmdpbjogMCAwIDAgMy4xMjVlbTtcbiAgcGFkZGluZy10b3A6IDAuMjVlbTsgfVxuICAuZm9vdGVyLXNvY2lhbHMgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNTYyNWVtOyB9XG5cbi5zb2NpYWwtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIuNWVtO1xuICBoZWlnaHQ6IDIuNWVtOyB9XG4gIC5zb2NpYWwtaXRlbSAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZm9vdGVyLWJvdHRvbSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4uZm9vdGVyLWNvbnRhY3Qge1xuICBtYXJnaW46IDIuMTg3NWVtIDAgMCAhaW1wb3J0YW50OyB9XG4gIC5mb290ZXItY29udGFjdCBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgLmZvb3Rlci1jb250YWN0IGE6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwLjMxMjVlbSAwOyB9IH1cblxuLmZvb3Rlci1jb3B5cmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5mb290ZXItY29weXJpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwLjMxMjVlbSAwOyB9IH1cblxuLmZvb3Rlci1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjQzNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5mb290ZXItbGluayB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gIC5mb290ZXItbGluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDAuODEyNWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMTI1cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDAuMDYyNXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAuZm9vdGVyLWxpbms6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5mb290ZXItbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyogTU9CSUxFICovXG5AbWVkaWEgKG1heC13aWR0aDogNTguMTI1ZW0pIHtcbiAgLm1haW5Gb290ZXItZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5tYWluRm9vdGVyLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU4LjEyNWVtKSB7XG4gICAgLm1haW5Gb290ZXItbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm1haW5Gb290ZXItbW9iaWxlIC5mb290ZXItc29jaWFscyB7XG4gICAgbWFyZ2luOiAwIDMuNzVlbSAwIDA7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTguMTI1ZW0pIHtcbiAgICAgIC5tYWluRm9vdGVyLW1vYmlsZSAuZm9vdGVyLXNvY2lhbHMge1xuICAgICAgICBtYXJnaW46IDAgMi41ZW0gMCAwOyB9IH1cbiAgICAubWFpbkZvb3Rlci1tb2JpbGUgLmZvb3Rlci1zb2NpYWxzIGxpICsgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWFpbkZvb3Rlci1tb2JpbGUgLnNvY2lhbC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07IH1cbiAgICAubWFpbkZvb3Rlci1tb2JpbGUgLnNvY2lhbC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWFpbkZvb3Rlci1tb2JpbGUgLmZvb3Rlci1ib3R0b20ge1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gICAgLm1haW5Gb290ZXItbW9iaWxlIC5mb290ZXItbWVudSAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5tYWluRm9vdGVyLW1vYmlsZSAubWVudS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NWVtOyB9XG4gIC5tYWluRm9vdGVyLW1vYmlsZSAuZm9vdGVyLWNvbnRhY3Qge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4uYnV0dG9uLCAuYnV0dG9uU2Vjb25kYXJ5LCAuY29udGFjdC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNDM3NWVtIDEuMDYyNWVtO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgYm9yZGVyOiAwLjIwNjI1ZW0gc29saWQgI0NERTIwMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMTcsIDAuNjcsIDAuODMsIDAuNjcpO1xuICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzAuMDYyNWVtKSB7XG4gICAgLmJ1dHRvbiArIFtjbGFzcyo9YnV0dG9uXSwgLmJ1dHRvblNlY29uZGFyeSArIFtjbGFzcyo9YnV0dG9uXSwgLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdICsgW2NsYXNzKj1idXR0b25dIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIC5idXR0b246ZGlzYWJsZWQsIC5idXR0b25TZWNvbmRhcnk6ZGlzYWJsZWQsIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpkaXNhYmxlZCwgLmlzLWRpc2FibGVkLmJ1dHRvbiwgLmlzLWRpc2FibGVkLmJ1dHRvblNlY29uZGFyeSwgLmNvbnRhY3QtZm9ybSBpbnB1dC5pcy1kaXNhYmxlZFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgb3BhY2l0eTogMC4zNTsgfVxuXG4vKipcbiAqIEJhc2Ugc3R5bGVcbiAqL1xuLmJ1dHRvbiB7XG4gIGNvbG9yOiAjMTMyOTRCO1xuICBiYWNrZ3JvdW5kOiAjQ0RFMjAxO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW0gMC41cmVtIDAuNXJlbSAwOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b246ZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaXMtZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaXMtZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLmJ1dHRvbi5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICM3Yjg4MDE7IH1cblxuLmJ1dHRvblNlY29uZGFyeSB7XG4gIGNvbG9yOiAjQ0RFMjAxO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwLjE4NzVyZW0gc29saWQgI0NERTIwMTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtIDAuNXJlbSAwIDAuNXJlbTsgfVxuICAuYnV0dG9uU2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uU2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjQ0RFMjAxOyB9XG4gIC5idXR0b25TZWNvbmRhcnk6ZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25TZWNvbmRhcnkuaXMtZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25TZWNvbmRhcnkuaXMtZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTMyOTRCO1xuICAgIGJhY2tncm91bmQ6ICNjZWNlY2U7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuYnV0dG9uU2Vjb25kYXJ5LmlzLWFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzdjN2M3YzsgfVxuICAuYnV0dG9uU2Vjb25kYXJ5LnVwLWxlZnQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMC41cmVtIDAuNXJlbSAwLjVyZW07IH1cbiAgLmJ1dHRvblNlY29uZGFyeS51cC1yaWdodCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtIDAgMC41cmVtIDAuNXJlbTsgfVxuXG4vKipcbiAqIE1vZGlmaWVyXG4gKi9cbi5idXR0b24tLXNtYWxsIHtcbiAgcGFkZGluZzogMC4yMzA3N2VtIDAuNzY5MjNlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTsgfVxuXG4uYnV0dG9uLS1iaWcge1xuICBwYWRkaW5nOiAwLjc1ZW0gMS41ZW07XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBsaW5lLWhlaWdodDogMS4zMzM7IH1cblxuLmJ1dHRvbi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMwLjA2MjVlbSkge1xuICAuYnV0dG9uLS1tb2JpbGVGdWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgVGhpcyBmaWxlIGlzIGF1dG9tYXRpY2FsbHlcbiAgZ2VuZXJhdGVkIHVzaW5nIGd1bHAuXG5cbiAgQWRkIC5zdmcgZmlsZXMgdG8gdGhlIGFzc2V0cy9pY29uRm9udFxuICBmb2xkZXIgdG8gYWRkIGljb25zXG5cbiAgLyFcXCBEbyBub3QgbW9kaWZ5IC8hXFwgISEhXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInVidWR1LWljb25zXCI7XG4gIHNyYzogdXJsKFwiZm9udHMvdWJ1ZHUtaWNvbnMuZW90XCIpO1xuICBzcmM6IHVybChcImZvbnRzL3VidWR1LWljb25zLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCJmb250cy91YnVkdS1pY29ucy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcImZvbnRzL3VidWR1LWljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiZm9udHMvdWJ1ZHUtaWNvbnMuc3ZnI3VidWR1LWljb25zXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5bY2xhc3MqPVwiaWNvbi1cIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLmljb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIFcIjsgfVxuXG4uaWNvbi1idXJnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIJcIjsgfVxuXG4uaWNvbi1kb3RzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCDXCI7IH1cblxuLmljb24taGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AhFwiOyB9XG5cbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCFXCI7IH1cblxuLmljb24tcnNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCGXCI7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7IH1cblxuLmljb24tc2VlbW9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AiFwiOyB9XG5cbi5pY29uLXRlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLugIlcIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCKXCI7IH1cblxuLmljb24tdXNlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ai1wiOyB9XG5cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIxcIjsgfVxuXG4uaGVhZGVyLW1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDIuODEyNWVtOyB9XG5cbi5tZW51LWxpc3Qge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5tZW51LWxpc3QgLm1lbnUtaXRlbSBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5tZW51LWxpc3QgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG5cbi5tZW51LWxpc3QgLm1lbnUtaXRlbS5pcy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICNDREUyMDE7IH1cblxuLm1lbnUtbGlzdC5saXN0LWlubGluZSA+IGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMy4xMjVlbTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjUuNjI1ZW0pIHtcbiAgLmZvb3Rlci1tZW51IC5tZW51LWxpc3QubGlzdC1pbmxpbmUgPiBsaSArIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMS4yNWVtOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgLmZvb3Rlci1tZW51IC5tZW51LWxpc3QubGlzdC1pbmxpbmUgPiBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNWVtOyB9IH1cblxuLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogMC42MjVlbTtcbiAgbWF4LXdpZHRoOiAzNy41ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwLjYyNWVtKSB7XG4gICAgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG4gIC5zdWJtZW51LWNvbnRhaW5lciAud3JhcHBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zdWItbWVudSB7XG4gIG1hcmdpbjogMC45Mzc1ZW0gMCAwOyB9XG4gIC5zdWItbWVudSBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gIC5zdWItbWVudSA+IGxpICsgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVlbTsgfVxuICAgIC5zdWItbWVudSA+IGxpICsgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTAuMjVyZW07IH1cblxuLyogTU9CSUxFICovXG4uY2xvc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEuMjVlbTtcbiAgdG9wOiAxLjg3NWVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAxLjg3NWVtO1xuICBoZWlnaHQ6IDEuODc1ZW07XG4gIHotaW5kZXg6IDEwOyB9XG4gIC5jbG9zZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMC42ODc1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEuODc1ZW07XG4gICAgYm9yZGVyLWxlZnQ6IDAuMTI1cmVtIHNvbGlkICNDREUyMDE7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5jbG9zZTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwLjY4NzVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMS44NzVlbTtcbiAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgI0NERTIwMTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi5tZW51LW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogIzEzMjk0QjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogOS4zNzVlbTsgfVxuICAubWVudS1tb2JpbGUgLmhlYWRlci1sZWZ0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxLjI1ZW07XG4gICAgbGVmdDogMS40Mzc1ZW07IH1cbiAgLm1lbnUtbW9iaWxlIC5oZWFkZXItbWVudSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5tZW51LW1vYmlsZSAubGlzdC1pbmxpbmUgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NWVtOyB9XG4gICAgLm1lbnUtbW9iaWxlIC5saXN0LWlubGluZSBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07IH1cbiAgLm1lbnUtbW9iaWxlIC5saXN0LWlubGluZSBsaSArIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS1tb2JpbGUgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDEuMjVlbTsgfVxuICAgIC5tZW51LW1vYmlsZSAuc3VibWVudS1jb250YWluZXIgLndyYXBwZXIge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAubWVudS1tb2JpbGUgLmhlYWRlci1idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1ZW07IH1cbiAgLm1lbnUtbW9iaWxlIC5oZWFkZXItbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjg3NWVtO1xuICAgIG1hcmdpbjogMS4yNWVtIDAgMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAuZm9vdGVyLW1lbnUge1xuICAgIG1heC13aWR0aDogMTguNzVlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuXG4vKiBORVdTTEVUVEVSICovXG4ubmV3c2xldHRlci1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5uZXdzbGV0dGVyLWZvcm0ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAubmV3c2xldHRlci1mb3JtIC5mb3JtLWlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDIyLjVlbTtcbiAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwLjE4NzVyZW0gc29saWQgI0NERTIwMTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW0gMC41cmVtIDAgMC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS44NzVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAuODQzNzVlbSAxLjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgLm5ld3NsZXR0ZXItZm9ybSAuZm9ybS1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjg3NWVtIDMuNDM3NWVtIDAuODc1ZW0gMC44NzVlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAubmV3c2xldHRlci1mb3JtIC5mb3JtLWlucHV0OmZvY3VzLCAubmV3c2xldHRlci1mb3JtIC5mb3JtLWlucHV0OmhvdmVyIHtcbiAgICAgIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkICNmZmY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLm5ld3NsZXR0ZXItZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdGV4dC1pbmRlbnQ6IC02LjI1cmVtO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgYmFja2dyb3VuZDogI0NERTIwMSB1cmwoXCJpbWFnZXMvaWNvLXNlYXJjaC13aGl0ZS5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDYwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5uZXdzbGV0dGVyLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjQ0RFMjAxIHVybChcImltYWdlcy9pY28tc2VhcmNoLXdoaXRlLnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNjAlOyB9IH1cblxuLm5ld3NsZXR0ZXItZm9ybSAuZm9ybS1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5uZXdzbGV0dGVyLWZvcm0gLmZvcm0taW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5uZXdzbGV0dGVyLWZvcm0gLmZvcm0taW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4ubmV3c2xldHRlci1mb3JtIC5mb3JtLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi8qIENPTlRBQ1QgRk9STSAqL1xuLmZvcm0tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtOyB9XG4gIC5mb3JtLWNvbnRyb2wgaW5wdXQsXG4gIC5mb3JtLWNvbnRyb2wgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgY29sb3I6ICMxMzI5NEI7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICNGMEYwRjA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAwLjU2MjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC1oZWlnaHQ6IDExLjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzMuNzVlbSkge1xuICAgICAgLmZvcm0tY29udHJvbCBpbnB1dCxcbiAgICAgIC5mb3JtLWNvbnRyb2wgdGV4dGFyZWEge1xuICAgICAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgICAgIG1heC1oZWlnaHQ6IDYuMjVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtaGVpZ2h0OiA4NDBweCkge1xuICAgICAgLmZvcm0tY29udHJvbCBpbnB1dCxcbiAgICAgIC5mb3JtLWNvbnRyb2wgdGV4dGFyZWEge1xuICAgICAgICBtYXgtaGVpZ2h0OiA2LjI1ZW07IH0gfVxuICAgIC5mb3JtLWNvbnRyb2wgaW5wdXQ6aG92ZXIsXG4gICAgLmZvcm0tY29udHJvbCB0ZXh0YXJlYTpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNhNWE1YTU7IH1cbiAgICAuZm9ybS1jb250cm9sIGlucHV0OmZvY3VzLFxuICAgIC5mb3JtLWNvbnRyb2wgdGV4dGFyZWE6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTMyOTRCOyB9XG5cbi5wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGxlZnQ6IDAuOTM3NWVtO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzEzMjk0QjtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzMuNzVlbSkge1xuICAgIC5wbGFjZWhvbGRlciB7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07IH0gfVxuICAucGxhY2Vob2xkZXIgc3BhbiB7XG4gICAgY29sb3I6ICNDREUyMDE7IH1cblxuLmZvcm0tY29udHJvbCB0ZXh0YXJlYSArIC5wbGFjZWhvbGRlciB7XG4gIHRvcDogMS41NjI1ZW07IH1cblxuLmFqYXgtbG9hZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDMuMTI1ZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBtYXJnaW46IDA7IH1cblxuLmljb25ib3gtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDQuNjg3NWVtIDA7IH1cblxuLmljb25ib3gtaXRlbSB7XG4gIHdpZHRoOiAyOCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAuOTM3NWVtO1xuICBwYWRkaW5nOiAwIDIuNWVtOyB9XG4gIC5pY29uYm94LWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5pY29uYm94LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5pY29uYm94LXBpY3RvIHtcbiAgbWF4LXdpZHRoOiAxMi41ZW07XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMi44MTI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgLmljb25ib3gtcGljdG8ge1xuICAgICAgbWF4LXdpZHRoOiAxNC4zNzVlbTsgfSB9XG5cbi5pY29uYm94LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAuaWNvbmJveC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNTYyNWVtOyB9IH1cblxuLmljb25ib3gtdHgge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVyZW07IH1cbiAgLmljb25ib3gtdHggcCB7XG4gICAgbWFyZ2luOiAwLjMxMjVyZW0gMDsgfVxuXG4uaWNvbmJveC13cmFwcGVyLm1vYmlsZS1zbGlkZXIuc2xpY2stc2xpZGVyIC5pY29uYm94LWl0ZW0ge1xuICBtYXJnaW46IDA7IH1cblxuLmljb25ib3gtd3JhcHBlci5tb2JpbGUtc2xpZGVyLnNsaWNrLXNsaWRlciAuaWNvbmJveC1waWN0byB7XG4gIG1hcmdpbjogMCBhdXRvIDEuODc1ZW07IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnNsaWNrLXNsaWRlOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpY2stZG90cyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAyLjVlbTsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICMxMzI5NEI7IH1cbiAgLnNsaWNrLWRvdHMgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAwLjc1cmVtO1xuICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjQ0RFMjAxO1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuc2xpY2stZG90cyBidXR0b246Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuXG4vKiBHRU5FUkFMICovXG4uaG9tZXBhZ2Utc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMmVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTsgfSB9XG5cbi5zZWN0aW9uLXR4IHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTsgfVxuXG4uc2VjdGlvbi1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qIFNFQ1RJT04gMSAqL1xuLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDEpIHtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwLjYyNWVtKSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDEpIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uaW50cm8ge1xuICB3aWR0aDogNDAlO1xuICBwYWRkaW5nOiA4Ljc1ZW0gMCA1LjYyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MC42MjVlbSkge1xuICAgIC5pbnRybyB7XG4gICAgICB3aWR0aDogMzEuMjVlbTtcbiAgICAgIHBhZGRpbmc6IDEuMjVlbSAxLjI1ZW0gNi4yNWVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC5pbnRybyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVlbTtcbiAgICAgIHBhZGRpbmc6IDEuMjVlbSAxLjI1ZW0gNC4zNzVlbTsgfSB9XG5cbi5pbnRyby10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDNlbTtcbiAgY29sb3I6ICNDREUyMDE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAuaW50cm8tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjVlbTsgfSB9XG5cbi5pbnRyby10eCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiAyOC43NWVtO1xuICBtYXJnaW46IDEuODc1ZW0gMCAyLjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC5pbnRyby10eCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICAuaW50cm8tdHggcCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzQzNzVlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMTI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmludHJvLXR4IHAge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1LjYyNWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmludHJvLXR4IHAgYnIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmludHJvLXR4OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4zNzVlbTtcbiAgICBsZWZ0OiAxLjg3NWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogM3JlbTtcbiAgICBib3JkZXItdG9wOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmludHJvLXR4OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7IH0gfVxuXG4uaG9tZS1zbGlkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDYyJTtcbiAgbWFyZ2luLWxlZnQ6IC0zLjEyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MC42MjVlbSkge1xuICAgIC5ob21lLXNsaWRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgLmhvbWUtc2xpZGVyIC5zbGlkZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDE5JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwLjYyNWVtKSB7XG4gICAgICAuaG9tZS1zbGlkZXIgLnNsaWRlci1pdGVtIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwLjUlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwLjYyNWVtKSB7XG4gICAgLmhvbWUtc2xpZGVyIC5zbGlkZXItaW1nLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5ob21lLXNsaWRlciAuc2xpZGVyLWltZy1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjAuNjI1ZW0pIHtcbiAgICAgIC5ob21lLXNsaWRlciAuc2xpZGVyLWltZy1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi8qIFNFQ1RJT04gMiAqL1xuLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIHtcbiAgcGFkZGluZy1ib3R0b206IDUuOTM3NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1ZW0gMCA0LjM3NWVtOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTVyZW07XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGFuYy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpOmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTIuMDYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGFuYy14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMikgLnNlY3Rpb24tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDAuNjI1ZW07XG4gICAgcGFkZGluZy1sZWZ0OiA2Ljg3NWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYzLjc1ZW0pIHtcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAzMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuMTg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIC5zZWN0aW9uLXRpdGxlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvbG9nby1pY29uby5zdmdcIikgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyLjQzNzVlbTtcbiAgICAgICAgd2lkdGg6IDIuNDM3NWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi10eCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAyLjE4NzVlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDYuMjVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIC5zZWN0aW9uLXR4IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41NjI1ZW07IH0gfVxuICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi10eDpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKFwiaW1hZ2VzL2xvZ28taWNvbm8uc3ZnXCIpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwLjQzNzVlbTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gICAgICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi10eDpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIC5zZWN0aW9uLXR4IGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi1saW5lcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLThyZW07XG4gICAgcmlnaHQ6IDEuNXJlbTtcbiAgICB3aWR0aDogMjMuNjg3NXJlbTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzEuODc1ZW0pIHtcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgyKSAuc2VjdGlvbi1saW5lcyB7XG4gICAgICAgIGJvdHRvbTogLTMuNXJlbTtcbiAgICAgICAgcmlnaHQ6IDIuMTg3NXJlbTtcbiAgICAgICAgd2lkdGg6IDE4Ljc1cmVtO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0OC43NWVtKSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMikgLnNlY3Rpb24tbGluZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyogU0VDVElPTiAzICovXG4uaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMykge1xuICBwYWRkaW5nLWJvdHRvbTogMy4xMjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3MS44NzVlbSkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgzKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy43NWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMykge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuNWVtOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTVyZW07XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS10b3AtYmxldS5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTIuMDYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS10b3AtYmxldS14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMyk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC01cmVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tYmxldS5zdmdcIikgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDMpOmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAtMnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1ib3R0b20tYmxldS14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMykgLnNlY3Rpb24tY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL2xpbmVzLXNlY3Rpb24tMy5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNTEuMTI1ZW07XG4gICAgbWFyZ2luOiAwIDEuNTYyNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDcxLjg3NWVtKSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoMykgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA1OS4zNzVlbTtcbiAgICAgICAgaGVpZ2h0OiA0MS4yNWVtO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgzKSAuc2VjdGlvbi1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG5cbi5hc3NldHMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5hc3NldHMtd3JhcHBlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLXRvcDogNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAuYXNzZXRzLXdyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDIuNWVtOyB9IH1cblxuLmFzc2V0LWl0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDIxLjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuYXNzZXQtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTYuMjVyZW07XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICB0b3A6IDEyLjkzNzVlbTtcbiAgcmlnaHQ6IDQuMzc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDcxLjg3NWVtKSB7XG4gICAgLmhvbWVwYWdlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgICB0b3A6IDcuNWVtO1xuICAgICAgcmlnaHQ6IDAuOTM3NWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuaG9tZXBhZ2UgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiBpbml0aWFsOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuaG9tZXBhZ2UgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9saW5lcy1zZWN0aW9uLTMtbW9iaWxlLTEuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIGhlaWdodDogMTEuMTI1ZW07XG4gICAgICB3aWR0aDogMTcuMTI1ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMi4zNzVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgLmhvbWVwYWdlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9saW5lcy1zZWN0aW9uLTMtbW9iaWxlLTIuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIGhlaWdodDogNi43NWVtO1xuICAgICAgd2lkdGg6IDE3LjM3NWVtO1xuICAgICAgbWFyZ2luLXRvcDogMS4yNWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEuMzc1ZW07IH0gfVxuXG4uaG9tZXBhZ2UgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgdG9wOiAxNS45Mzc1ZW07XG4gIGxlZnQ6IDUuNjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDcxLjg3NWVtKSB7XG4gICAgLmhvbWVwYWdlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICB0b3A6IDExLjU2MjVlbTtcbiAgICAgIGxlZnQ6IDEuODc1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG5cbi5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICB0b3A6IDMzLjc1ZW07XG4gIGxlZnQ6IDI4LjEyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3MS44NzVlbSkge1xuICAgIC5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgdG9wOiAyNi4yNWVtO1xuICAgICAgbGVmdDogMjAuMzEyNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuaG9tZXBhZ2UgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IGluaXRpYWw7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL2xpbmVzLXNlY3Rpb24tMy1tb2JpbGUtMy5zdmdcIikgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA3LjEyNWVtO1xuICAgICAgd2lkdGg6IDE3LjA2MjVlbTtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS41NjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyk6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvbGluZXMtc2VjdGlvbi0zLW1vYmlsZS00LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDcuMTI1ZW07XG4gICAgICB3aWR0aDogMTcuMzc1ZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMi4xODc1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5ob21lcGFnZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykgLmFzc2V0LXR4IHtcbiAgICAgIG1heC13aWR0aDogMTUuNjI1ZW07XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi5hc3NldC10aXRsZSxcbi5hc3NldC1zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5hc3NldC1zdWJ0aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuXG4uYXNzZXQtdGl0bGUge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uYXNzZXQtdHggcCB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1ZW07XG4gIG1hcmdpbjogMC41ZW0gMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzEuODc1ZW0pIHtcbiAgICAuYXNzZXQtdHggcCB7XG4gICAgICBmb250LXNpemU6IDEuMTI1ZW07IH0gfVxuXG4vKiBTRUNUSU9OIDQgKi9cbi5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg0KSB7XG4gIHBhZGRpbmc6IDVlbSAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OC4xMjVlbSkge1xuICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg0KSB7XG4gICAgICBwYWRkaW5nOiAzLjc1ZW0gMCAzLjEyNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNCkge1xuICAgICAgcGFkZGluZzogMS4yNWVtIDAgMS4yNWVtOyB9IH1cbiAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDQpIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg0KSAuc2VjdGlvbi10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgYm9yZGVyLXRvcDogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG5cbi8qIFNFQ1RJT04gNSAqL1xuLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpIHtcbiAgcGFkZGluZzogMS41NjI1ZW0gMCAwLjA2MjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjVlbTsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg1KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC01cmVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtYmxldS5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpOmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTIuMDYyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGV1LXhzLnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG4gIC5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg1KTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTVyZW07XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLWJvdHRvbS1ibGV1LnN2Z1wiKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNSk6YWZ0ZXIge1xuICAgICAgICBib3R0b206IC0yLjA2MjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tYmxldS14cy5zdmdcIikgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNSkgLnNlY3Rpb24tdGl0bGUge1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDExLjI1cmVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgICAuaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNSkgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpIC5zZWN0aW9uLXRpdGxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgYm9yZGVyLXRvcDogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAgICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpIC5zZWN0aW9uLXRpdGxlOmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9IH1cblxuLmNhc2VTdHVkeS1zbGlkZXIge1xuICBwYWRkaW5nOiAwIDQuMzc1ZW07XG4gIG1hcmdpbjogMy43NWVtIDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgLmNhc2VTdHVkeS1zbGlkZXIge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5jYXNlU3R1ZHktd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXdyYXBwZXIge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLmNhc2VTdHVkeS1pbWctd3JhcHBlciB7XG4gIHdpZHRoOiA2NCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgLmNhc2VTdHVkeS1pbWctd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jYXNlU3R1ZHktaW1nLXdyYXBwZXIgLmNhc2VTdHVkeS1pbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG4uY2FzZVN0dWR5LWRldGFpbHMge1xuICB3aWR0aDogMzYlO1xuICBwYWRkaW5nLWxlZnQ6IDQuMzc1ZW07XG4gIG1hcmdpbi10b3A6IDIuMTg3NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OC4xMjVlbSkge1xuICAgIC5jYXNlU3R1ZHktZGV0YWlscyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5jYXNlU3R1ZHktdGl0bGUge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5jYXNlU3R1ZHktc3VidGl0bGUge1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogMC42MjVyZW0gMDsgfVxuXG4uY2FzZVN0dWR5LXR4IHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTsgfVxuICAuY2FzZVN0dWR5LXR4IHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4ucmVhZC1tb3JlIHtcbiAgbWFyZ2luLXRvcDogMy4xMjVlbTsgfVxuXG4uY2FzZVN0dWR5LXNsaWRlci1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OC4xMjVlbSkge1xuICAgIC5jYXNlU3R1ZHktc2xpZGVyLW5hdiB7XG4gICAgICB0b3A6IDc0JTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYge1xuICAgICAgdG9wOiA3MCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC5jYXNlU3R1ZHktc2xpZGVyLW5hdiB7XG4gICAgICB0b3A6IDY2JTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyNS45Mzc1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYge1xuICAgICAgdG9wOiA2MyU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjQuMzc1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYge1xuICAgICAgdG9wOiA2MSU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjMuMTI1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYge1xuICAgICAgdG9wOiA1OCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjBlbSkge1xuICAgIC5jYXNlU3R1ZHktc2xpZGVyLW5hdiB7XG4gICAgICB0b3A6IDU2JTsgfSB9XG5cbi5jYXNlU3R1ZHktc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1wcmV2LFxuLmNhc2VTdHVkeS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LW5leHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG5cbi5jYXNlU3R1ZHktc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1wcmV2IHtcbiAgbGVmdDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjEuODc1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYgLnNsaWRlci1uYXYtcHJldiB7XG4gICAgICBsZWZ0OiAtMC4zMTI1ZW07IH0gfVxuXG4uY2FzZVN0dWR5LXNsaWRlci1uYXYgLnNsaWRlci1uYXYtbmV4dCB7XG4gIHJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyMS44NzVlbSkge1xuICAgIC5jYXNlU3R1ZHktc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1uZXh0IHtcbiAgICAgIHJpZ2h0OiAtMC4zMTI1ZW07IH0gfVxuXG4uY2FzZVN0dWR5LXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICBmb250LXNpemU6IDIuMDYyNWVtO1xuICBjb2xvcjogI0NERTIwMTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAuY2FzZVN0dWR5LXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07IH0gfVxuXG4uY2FzZVN0dWR5LXNsaWRlci1uYXYgLnNsaWRlci1uYXYtcHJldiAuaWNvbi1hcnJvdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLyogU0VDVElPTiA2ICovXG4uaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNikge1xuICBwYWRkaW5nOiA2LjI1ZW0gMCA1LjYyNWVtO1xuICBtYXJnaW4tYm90dG9tOiAzLjc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDYpIHtcbiAgICAgIHBhZGRpbmc6IDIuNWVtIDAgMC42MjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gICAgLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDYpIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1ZW0gMCAwLjYyNWVtOyB9IH1cblxuLnRlc3RpbW9uaWVzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OC4xMjVlbSkge1xuICAgIC50ZXN0aW1vbmllcy1jb250YWluZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi50ZXN0aW1vbnktaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAyNSU7XG4gIG1hcmdpbjogMCAxLjU2MjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAudGVzdGltb255LWl0ZW0ge1xuICAgICAgbWFyZ2luOiAwIDAgMy4xMjVlbTtcbiAgICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuLnRlc3RpbW9ueS1sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1ZW07IH1cblxuLnRlc3RpbW9ueS10eCB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwOyB9XG5cbi50ZXN0aW1vbnktbmFtZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnBhZ2Utd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAzLjEyNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMy4xMjVlbTsgfVxuXG4ucGFnZS1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogNS42MjVlbTsgfVxuICAucGFnZS1jb250ZW50LndpdGgtc2lkZWJhciB7XG4gICAgd2lkdGg6IDY2JTtcbiAgICBwYWRkaW5nOiA1LjYyNWVtIDUuNjI1ZW0gNS42MjVlbSA0LjA2MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAucGFnZS1jb250ZW50LndpdGgtc2lkZWJhciB7XG4gICAgICAgIHBhZGRpbmc6IDUuNjI1ZW0gMS44NzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxLjI1ZW0pIHtcbiAgICAgIC5wYWdlLWNvbnRlbnQud2l0aC1zaWRlYmFyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgcGFkZGluZzogOS42ODc1ZW0gMCA4Ljg3NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5wYWdlLWludHJvLXdyYXBwZXIge1xuICAgICAgcGFkZGluZzogNC4zNzVlbSAwIDVlbTsgfSB9XG5cbi5wYWdlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4wMzEyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41ZW07IH0gfVxuICAucGFnZS10aXRsZTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxO1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG5cbi5wYWdlLWludHJvIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNWVtO1xuICBtYXgtd2lkdGg6IDM3LjVyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5wYWdlLWludHJvIGJyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucGFnZS1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luLXRvcDogMy43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNS42MjVlbSkge1xuICAgIC5wYWdlLW5hdmlnYXRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMi41ZW07IH0gfVxuICAucGFnZS1uYXZpZ2F0aW9uIC5wYWdlLW5hdmlnYXRpb24taXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM1LjYyNWVtKSB7XG4gICAgICAucGFnZS1uYXZpZ2F0aW9uIC5wYWdlLW5hdmlnYXRpb24taXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxLjU2MjVyZW0gMCAwO1xuICAgICAgICBtYXJnaW46IDAgMCAxLjU2MjVyZW07IH0gfVxuICAgIC5wYWdlLW5hdmlnYXRpb24gLnBhZ2UtbmF2aWdhdGlvbi1pdGVtOmhvdmVyIGEsXG4gICAgLnBhZ2UtbmF2aWdhdGlvbiAucGFnZS1uYXZpZ2F0aW9uLWl0ZW0gYS5pcy1hY3RpdmUge1xuICAgICAgY29sb3I6ICNDREUyMDE7IH1cbiAgLnBhZ2UtbmF2aWdhdGlvbiBsaSArIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuNzVyZW07IH1cbiAgLnBhZ2UtbmF2aWdhdGlvbiBsaSArIGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDAuMTg3NXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM1LjYyNWVtKSB7XG4gICAgICAucGFnZS1uYXZpZ2F0aW9uIGxpICsgbGk6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMy40Mzc1cmVtO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xODc1cmVtIHNvbGlkICNDREUyMDE7IH0gfVxuXG4ucG9zdC1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVlbTsgfVxuXG4ucG9zdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07IH1cblxuLnBvc3QtZGF0ZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMCAwIDEuNDM3NWVtOyB9XG5cbi5wb3N0LXRodW1ibmFpbCBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVlbTsgfVxuXG4ucG9zdC10YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1ZW07IH1cblxuLnBvc3QtdGFncy1pdGVtIHtcbiAgZm9udC1zaXplOiAxZW07IH1cbiAgLnBvc3QtdGFncy1pdGVtOmJlZm9yZSB7XG4gICAgY29udGVudDogJyMnOyB9XG5cbi5wb3N0cy1uYXZpZ2F0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA1ZW07IH1cbiAgLnBvc3RzLW5hdmlnYXRpb24gLndwLXBhZ2VuYXZpIGEsXG4gIC5wb3N0cy1uYXZpZ2F0aW9uIC53cC1wYWdlbmF2aSBzcGFuIHtcbiAgICBjb2xvcjogIzEzMjk0QjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwLjEyNXJlbSAwLjVyZW07IH1cbiAgLnBvc3RzLW5hdmlnYXRpb24gLndwLXBhZ2VuYXZpIHNwYW4uY3VycmVudCB7XG4gICAgY29sb3I6ICNDREUyMDE7IH1cblxuLnR3ZWV0cy1jb250YWluZXItbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDEuMjVlbSkge1xuICAgIC50d2VldHMtY29udGFpbmVyLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC50d2VldHMtY29udGFpbmVyLW1vYmlsZSAuY3RmLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDAgMC42MjVyZW0gIWltcG9ydGFudDsgfVxuXG4udHdlZXQtc2xpZGVyLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnR3ZWV0LXNsaWRlci1uYXYgLnNsaWRlci1uYXYtcHJldixcbi50d2VldC1zbGlkZXItbmF2IC5zbGlkZXItbmF2LW5leHQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG5cbi50d2VldC1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYge1xuICBsZWZ0OiAwLjkzNzVyZW07IH1cblxuLnR3ZWV0LXNsaWRlci1uYXYgLnNsaWRlci1uYXYtbmV4dCB7XG4gIHJpZ2h0OiAwLjkzNzVyZW07IH1cblxuLnR3ZWV0LXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICBmb250LXNpemU6IDEuODc1ZW07XG4gIGNvbG9yOiAjQ0RFMjAxOyB9XG5cbi50d2VldC1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYgLmljb24tYXJyb3cge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0MS4yNWVtKSB7XG4gIC50d2VldHMtY29udGFpbmVyLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4udHdlZXRzLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDExLjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQxLjI1ZW0pIHtcbiAgICAudHdlZXRzLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNWVtO1xuICAgICAgcGFkZGluZzogMCAxLjg3NWVtOyB9IH1cblxuI2N0ZiAuY3RmLXJldHdlZXQtdGV4dCB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzQzNzVlbTsgfVxuXG4jY3RmIC5jdGYtaXRlbSB7XG4gIHBhZGRpbmc6IDEuMjVlbSAwO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItdG9wOiBub25lOyB9XG5cbiNjdGYgLmN0Zi1hdXRob3ItYm94IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1pbi1oZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAjY3RmIC5jdGYtYXV0aG9yLWJveDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybChpbWFnZXMvaWNvLXR3aXR0ZXItYmx1ZS5zdmcpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1yaWdodDogMC4zNzVyZW07IH1cblxuI2N0ZiAuY3RmLXR3ZWV0LWNvbnRlbnQge1xuICBmb250LXNpemU6IDAuOTM3NWVtO1xuICBjb2xvcjogIzEzMjk0QjsgfVxuXG4jY3RmIGEge1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuI2N0Zi5jdGYtc3R5bGVzIC5jdGYtYXV0aG9yLXNjcmVlbm5hbWUsXG4jY3RmLmN0Zi1zdHlsZXMgLmN0Zi1jb250ZXh0LFxuI2N0Zi5jdGYtc3R5bGVzIC5jdGYtdHdpdHRlcmxpbmssXG4jY3RmLmN0Zi1zdHlsZXMgLmN0Zi10d2VldC1tZXRhIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGNvbG9yOiAjMTMyOTRCOyB9XG5cbiNjdGYgLmN0Zi10d2VldC1tZWRpYSA+IGEge1xuICBtYXJnaW46IDAuMDYyNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWdlLWFzaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzQlO1xuICBwYWRkaW5nOiA3LjgxMjVlbSA0LjM3NWVtIDA7XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgLnBhZ2UtYXNpZGUge1xuICAgICAgcGFkZGluZzogNy44MTI1ZW0gMS44NzVlbSAwOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQxLjI1ZW0pIHtcbiAgICAucGFnZS1hc2lkZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1ZW07XG4gICAgICB6LWluZGV4OiAxNTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MS4yNWVtKSB7XG4gICAgLnBhZ2UtYXNpZGU6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IC0yLjA2MjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWdyaXMteHMuc3ZnXCIpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG5cbi5hc2lkZS10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBib3JkZXItYm90dG9tOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7XG4gIHBhZGRpbmctYm90dG9tOiAwLjQzNzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDEuMjVlbSkge1xuICAgIC5hc2lkZS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NWVtOyB9IH1cblxuLnNpbmdsZS1wb3N0IC5wYWdlLWFzaWRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2VhcmNoZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VhcmNoZm9ybTphZnRlciB7XG4gICAgY29udGVudDogJ1xcRTAwNyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgICBmb250LXNpemU6IDEuMzEyNWVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjMTMyOTRCO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMC42MjVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5zZWFyY2hmb3JtLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMi4xODc1cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAyOyB9XG5cbi5wYWdlLW5ld3MgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gIGJvcmRlci1jb2xvcjogI2VlZWVlZTsgfVxuXG4ucGFnZS1uZXdzIC5zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxMzI5NEI7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4ucGFnZS1uZXdzIC5zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG5cbi5wYWdlLW5ld3MgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG5cbi5wYWdlLW5ld3MgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxMzI5NEI7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4uc2VhcmNoLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjM3NWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbiNoZWFkZXItc2VhcmNoZm9ybSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMS4yNWVtO1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgY29sb3I6ICMxMzI5NEI7IH1cbiAgI2hlYWRlci1zZWFyY2hmb3JtIGlucHV0IHtcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC41NjI1ZW0gMS44NzVlbSAwLjVlbSAwLjYyNWVtOyB9XG4gICNoZWFkZXItc2VhcmNoZm9ybTphZnRlciB7XG4gICAgZm9udC1zaXplOiAxLjE4NzVyZW07IH1cblxuLmhlYWRlci1zZWFyY2guaXMtdmlzaWJsZSAjaGVhZGVyLXNlYXJjaGZvcm0ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGVhZGVyLXNlYXJjaC5pcy12aXNpYmxlIC5pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4jdG9nZ2xlRm9ybSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4jaGVhZGVyLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4jaGVhZGVyLXNlYXJjaGZvcm0tbW9iaWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxMzI5NEI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuI2hlYWRlci1zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tb3otcGxhY2Vob2xkZXIsXG4jaGVhZGVyLXNlYXJjaGZvcm0tbW9iaWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tb3otcGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4jaGVhZGVyLXNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG4jaGVhZGVyLXNlYXJjaGZvcm0tbW9iaWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxMzI5NEI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuI2hlYWRlci1zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiNoZWFkZXItc2VhcmNoZm9ybS1tb2JpbGUgaW5wdXRbdHlwZT1cInRleHRcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxMzI5NEI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLyogTU9CSUxFICovXG4uc2VhcmNoZm9ybS1jb250YWluZXItbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiAjMTMyOTRCO1xuICBwYWRkaW5nOiA2LjI1ZW0gMS41NjI1ZW0gMS44NzVlbTsgfVxuXG4jaGVhZGVyLXNlYXJjaGZvcm0tbW9iaWxlIHtcbiAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGNvbG9yOiAjMTMyOTRCOyB9XG4gICNoZWFkZXItc2VhcmNoZm9ybS1tb2JpbGUgaW5wdXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjYyNWVtIDIuMTg3NWVtIDAuNjI1ZW0gMC42MjVlbTsgfVxuICAjaGVhZGVyLXNlYXJjaGZvcm0tbW9iaWxlOmFmdGVyIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuLmJsb2ctaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNWVtOyB9XG4gIC5ibG9nLWhlYWRlciBwLFxuICAuYmxvZy1oZWFkZXIgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQxLjI1ZW0pIHtcbiAgLmJsb2ctaGVhZGVyLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYmxvZy1oZWFkZXItbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDEuMjVlbSkge1xuICAgIC5ibG9nLWhlYWRlci1tb2JpbGUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAxMy43NWVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAjQ0RFMjAxO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC41cmVtO1xuICAgICAgcGFkZGluZzogMC42MjVlbSAxLjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjBlbSkge1xuICAgIC5ibG9nLWhlYWRlci1tb2JpbGUge1xuICAgICAgdG9wOiAxMy4xMjVlbTsgfSB9XG5cbi5ibG9nLWhlYWRlci1zZWFyY2gsXG4uYmxvZy1oZWFkZXItaGFzaHRhZyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ibG9nLWhlYWRlci1zZWFyY2ggLmljb24sXG4gIC5ibG9nLWhlYWRlci1oYXNodGFnIC5pY29uIHtcbiAgICBjb2xvcjogIzEzMjk0QjtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIG1hcmdpbjogMC4zMTI1ZW0gMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDEuMjVlbSkge1xuICAuYmxvZy1zZWFyY2gtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5ibG9nLXNlYXJjaC1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MS4yNWVtKSB7XG4gICAgLmJsb2ctc2VhcmNoLW1vYmlsZSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIGJhY2tncm91bmQ6ICMxMzI5NEI7XG4gICAgICBwYWRkaW5nOiA2LjI1ZW0gMS41NjI1ZW07XG4gICAgICB6LWluZGV4OiAxMDsgfSB9XG5cbi5ibG9nLXNlYXJjaCB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4udGFncy1jbG91ZCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjU2MjVlbTsgfVxuXG4udGFncy1jbG91ZCxcbi50YWdzLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjkzNzVlbTsgfVxuXG4udGFnLWNsb3VkLWxpbmsge1xuICBjb2xvcjogIzEzMjk0QjtcbiAgZm9udC1zaXplOiAwLjkzNzVlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMC4xODc1cmVtOyB9XG4gIC50YWctY2xvdWQtbGluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcjJzsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDEuMjVlbSkge1xuICAudGFncy1jbG91ZC1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnRhZ3MtY2xvdWQudGFncy1jbG91ZC1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MS4yNWVtKSB7XG4gICAgLnRhZ3MtY2xvdWQudGFncy1jbG91ZC1tb2JpbGUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTMyOTRCO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBwYWRkaW5nOiA2LjI1ZW0gMS41NjI1ZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB6LWluZGV4OiAxMDsgfSB9XG4gIC50YWdzLWNsb3VkLnRhZ3MtY2xvdWQtbW9iaWxlIC50YWdzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNzVlbTsgfVxuICAudGFncy1jbG91ZC50YWdzLWNsb3VkLW1vYmlsZSAudGFnLWNsb3VkLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1ZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmJhY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiA0LjM3NWVtO1xuICBtYXJnaW4tdG9wOiAxLjU2MjVlbTsgfVxuICAuYmFjayAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLnBvc3QtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1ZW07IH1cblxuLnBvc3QtY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzQzNzVlbTsgfVxuICAucG9zdC1jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucG9zdC1jb250ZW50IGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgLnBvc3QtY29udGVudCBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5wb3N0LWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogMS41NjI1ZW07IH1cbiAgLnBvc3QtZm9vdGVyIC5wb3N0LXRhZ3Mge1xuICAgIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW46IDA7IH1cbiAgICAucG9zdC1mb290ZXIgLnBvc3QtdGFncyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwLjE4NzVyZW07IH1cblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gIC5wb3N0LW5hdmlnYXRpb24gLnByZXYtcG9zdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7IH1cbiAgLnBvc3QtbmF2aWdhdGlvbiAubmV4dC1wb3N0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLnBvc3QtbmF2aWdhdGlvbiAucHJldi1wb3N0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcRTAwMSc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgICBmb250LXNpemU6IDEuNTYyNWVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gIC5wb3N0LW5hdmlnYXRpb24gLm5leHQtcG9zdDphZnRlciB7XG4gICAgY29udGVudDogJ1xcRTAwMSc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgICBmb250LXNpemU6IDEuNTYyNWVtO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjQ0RFMjAxO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuXG4ucG9zdC1zaGFyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAwLjE4NzVyZW07IH1cbiAgLnBvc3Qtc2hhcmU6aG92ZXIgLnBvc3Qtc2hhcmUtbGlzdCB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5zaGFyZVRvZ2dsZSB7XG4gIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgY29sb3I6ICMxMzI5NEI7IH1cblxuLnBvc3Qtc2hhcmUtbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBib3R0b206IDg4JTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xNywgMC42NywgMC44MywgMC42Nyk7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2hhcmUtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjRjlGOUY5O1xuICBwYWRkaW5nOiAwLjM3NWVtIDAuNjI1ZW07XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjZWVlZWVlO1xuICBtaW4td2lkdGg6IDkuMzc1ZW07IH1cbiAgLnNoYXJlLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7IH1cblxuLmNvbnRhY3QtZm9ybSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBjb2xvcjogIzEzMjk0QjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMC4xMjVyZW0gc29saWQgI0YwRjBGMDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVyZW0gMC41cmVtIDAgMC41cmVtO1xuICAgIHBhZGRpbmc6IDAuODEyNWVtIDEuODc1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAgIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwLjYyNWVtIDEuODc1ZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNjI1ZW07IH0gfVxuICAgIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEzMjk0QjsgfVxuXG4uY29udGFjdGZvcm0tb3V0dGVyV3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTksIDQxLCA3NSwgMC41KTtcbiAgei1pbmRleDogMjAwMDsgfVxuXG4uY29udGFjdC1mb3JtLXdyYXBwZXIge1xuICBib3gtc2l6aW5nOiBpbml0aWFsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogNDcuNXJlbTtcbiAgYmFja2dyb3VuZDogI0ZBRjlGOTtcbiAgcGFkZGluZzogMy43NWVtIDkuMzc1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMTg3NXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzguNzVlbSkge1xuICAgIC5jb250YWN0LWZvcm0td3JhcHBlciB7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY4Ljc1ZW0pIHtcbiAgICAuY29udGFjdC1mb3JtLXdyYXBwZXIge1xuICAgICAgcGFkZGluZzogMi41ZW0gNi4yNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgLmNvbnRhY3QtZm9ybS13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBwYWRkaW5nOiAzLjc1ZW0gNC4zNzVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5jb250YWN0LWZvcm0td3JhcHBlciB7XG4gICAgICB0b3A6IDAuNjI1ZW07XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB3aWR0aDogNjAlO1xuICAgICAgcGFkZGluZzogMS44NzVlbSAzLjEyNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDI1ZW0pIHtcbiAgICAuY29udGFjdC1mb3JtLXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIHBhZGRpbmc6IDEuMjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LWhlaWdodDogODQwcHgpIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmNvbnRhY3QtZm9ybS13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDIuNWVtIDYuMjVlbTsgfSB9XG4gIC5jb250YWN0LWZvcm0td3JhcHBlciAuY2xvc2Uge1xuICAgIHRvcDogMS44NzVlbTtcbiAgICByaWdodDogMS44NzVlbTsgfVxuICAgIC5jb250YWN0LWZvcm0td3JhcHBlciAuY2xvc2U6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwLjEyNXJlbSBzb2xpZCAjMTMyOTRCOyB9XG4gICAgLmNvbnRhY3QtZm9ybS13cmFwcGVyIC5jbG9zZTphZnRlciB7XG4gICAgICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgIzEzMjk0QjsgfVxuICAuY29udGFjdC1mb3JtLXdyYXBwZXIgZm9ybSB7XG4gICAgcGFkZGluZy1sZWZ0OiA1LjYyNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4LjEyNWVtKSB7XG4gICAgICAuY29udGFjdC1mb3JtLXdyYXBwZXIgZm9ybSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNC4zNzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAuY29udGFjdC1mb3JtLXdyYXBwZXIgZm9ybSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5jb250YWN0LWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uY29udGFjdC10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAyLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzMuNzVlbSkge1xuICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDI1ZW0pIHtcbiAgICAuY29udGFjdC10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMzEyNWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gIC5jb250YWN0LXRpdGxlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzLjEyNXJlbTtcbiAgICBib3JkZXItdG9wOiAwLjMxMjVyZW0gc29saWQgI0NERTIwMTsgfVxuICAuY29udGFjdC10aXRsZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmNvbnRhY3QtdHgge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMy43NWVtKSB7XG4gICAgLmNvbnRhY3QtdHgge1xuICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41NjI1ZW07IH0gfVxuXG4uZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgKG1heC1oZWlnaHQ6IDg0MHB4KSBhbmQgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuZm9ybS1ncm91cC5mb3JtLWdyb3VwLXNtIC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDQ5JTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgICAgIC5mb3JtLWdyb3VwLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbDpmaXJzdC1jaGlsZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChpbWFnZXMvbG9nby1pY29uby5zdmcpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtNS42MjVlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjY4NzVlbTtcbiAgICAgICAgd2lkdGg6IDIuNzVlbTsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNDguMTI1ZW0pIHtcbiAgICAgICAgICAuZm9ybS1ncm91cCAuZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAtNC4zNzVlbTsgfSB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgICAgIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZm9ybS1mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuZm9ybS1mb290ZXIge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLmZvcm0tZm9vdGVyLXR4IHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5mb3JtLWZvb3Rlci10eCB7XG4gICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjYyNWVtICFpbXBvcnRhbnQ7IH0gfVxuICAuZm9ybS1mb290ZXItdHggc3BhbiB7XG4gICAgY29sb3I6ICNDREUyMDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNWVtOyB9XG5cbi5mb3JtLWdyb3VwLWNvbnRhY3Qge1xuICBtYXJnaW4tbGVmdDogLTUuNjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDMuMTI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU1ZW0pIHtcbiAgICAuZm9ybS1ncm91cC1jb250YWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0OC4xMjVlbSkge1xuICAgIC5mb3JtLWdyb3VwLWNvbnRhY3Qge1xuICAgICAgbWFyZ2luLWxlZnQ6IC00LjM3NWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmZvcm0tZ3JvdXAtY29udGFjdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIEBtZWRpYSAobWF4LWhlaWdodDogODQwcHgpIGFuZCAobWluLXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmZvcm0tZ3JvdXAtY29udGFjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07IH0gfVxuICAuZm9ybS1ncm91cC1jb250YWN0IHAge1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgLmZvcm0tZ3JvdXAtY29udGFjdCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTsgfSB9XG5cbmlucHV0LmNvbnRhY3QtbmFtZSB7XG4gIG1heC13aWR0aDogMjguMTI1ZW07XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBtYXJnaW46IDAuNjI1cmVtIDAgMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjMuNzVlbSkge1xuICAgIGlucHV0LmNvbnRhY3QtbmFtZSB7XG4gICAgICBtYXgtd2lkdGg6IDE1LjYyNWVtOyB9IH1cbiAgaW5wdXQuY29udGFjdC1uYW1lOmhvdmVyLCBpbnB1dC5jb250YWN0LW5hbWU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2VlZWVlZTsgfVxuXG4ud3BjZjctbGlzdC1pdGVtLmZpcnN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4ud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7IH1cblxuLmNvbnRhY3QtZm9ybS1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAuY29udGFjdC1mb3JtLXJhZGlvIHtcbiAgICBmb250LXNpemU6IDAuODc1ZW07IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTVlbSkge1xuICAuZm9ybS1pbmZvIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU1ZW0pIHtcbiAgZGl2I3VzLFxuICBkaXYjYXMsXG4gIGRpdiNldSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmNvbnRhY3QtZGV0YWlscyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEyLjEyNXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTVlbSkge1xuICAgIC5jb250YWN0LWRldGFpbHMge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmNvbnRhY3QtbmFtZSxcbi5jb250YWN0LXRlbCxcbi5jb250YWN0LW1haWwge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBtYXJnaW46IDAgMCAwLjMxMjVyZW07IH1cblxuLmNvbnRhY3QtbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDEuMjVyZW0gMCAwLjYyNXJlbTsgfVxuXG4ucGFnZS1zb2x1dGlvbnMgLnBhZ2UtaW50cm8td3JhcHBlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogOS42ODc1ZW0gMCAxMC42MjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC5wYWdlLXNvbHV0aW9ucyAucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDQuMzc1ZW0gMCAzLjc1ZW07IH0gfVxuXG4ucGFnZS1zb2x1dGlvbnMgLnBhZ2UtdGl0bGUge1xuICBjb2xvcjogI0NERTIwMTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjgxMjVyZW07IH1cbiAgLnBhZ2Utc29sdXRpb25zIC5wYWdlLXRpdGxlOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLnNvbHV0aW9uLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNvbHV0aW9uLXNlY3Rpb24uY2xyLWJnIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9XG4gICAgLnNvbHV0aW9uLXNlY3Rpb24uY2xyLWJnOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtYmxldS5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAuc29sdXRpb24tc2VjdGlvbi5jbHItYmc6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IC0yLjA2MjVyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGV1LXhzLnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogMi4wNjI1cmVtOyB9IH1cbiAgICAuc29sdXRpb24tc2VjdGlvbi5jbHItYmc6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLWJvdHRvbS1ibGV1LnN2Z1wiKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAuc29sdXRpb24tc2VjdGlvbi5jbHItYmc6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogLTIuMDYyNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLWJvdHRvbS1ibGV1LXhzLnN2Z1wiKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogMi4wNjI1cmVtOyB9IH1cbiAgICAuc29sdXRpb24tc2VjdGlvbi5jbHItYmcgLmFzc2V0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zb2x1dGlvbi1zZWN0aW9uIC5hc3NldHMtd3JhcHBlciB7XG4gICAgbWFyZ2luOiAzLjQzNzVlbSBhdXRvIDMuNzVlbTsgfVxuICAgIC5zb2x1dGlvbi1zZWN0aW9uIC5hc3NldHMtd3JhcHBlci5hc3NldHMtbW9iaWxlIHtcbiAgICAgIG1hcmdpbjogMC45Mzc1cmVtIGF1dG8gMy4xMjVlbTsgfVxuICAuc29sdXRpb24tc2VjdGlvbiAuYXNzZXQtaXRlbSB7XG4gICAgd2lkdGg6IDE0LjM3NWVtOyB9XG4gIC5zb2x1dGlvbi1zZWN0aW9uIC5hc3NldC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICMxMzI5NEI7IH1cbiAgLnNvbHV0aW9uLXNlY3Rpb24gLmFzc2V0LXR4IHtcbiAgICBmb250LXNpemU6IDEuMDYyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM1ZW07IH1cblxuLnNvbHV0aW9uLXNlY3Rpb24tc2Vjb25kYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zb2x1dGlvbi1zZWN0aW9uLXNlY29uZGFyeS5ncmF5LWJnIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC01cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9XG4gICAgLnNvbHV0aW9uLXNlY3Rpb24tc2Vjb25kYXJ5LmdyYXktYmc6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC01cmVtO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ncmlzLnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgIC5zb2x1dGlvbi1zZWN0aW9uLXNlY29uZGFyeS5ncmF5LWJnOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG4gIC5zb2x1dGlvbi1zZWN0aW9uLXNlY29uZGFyeS53aGl0ZS1iZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC01LjMxMjVyZW07XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGFuYy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLnNvbHV0aW9uLXNlY3Rpb24tc2Vjb25kYXJ5LndoaXRlLWJnOmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTIuODEyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGFuYy14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuXG4uc29sdXRpb24tdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgLnNvbHV0aW9uLXRvcCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLnNvbHV0aW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGNvbG9yOiAjMTMyOTRCOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgIC5zb2x1dGlvbi10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5jbHItYmcgLnNvbHV0aW9uLXRpdGxlIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmNsci1iZyAuc29sdXRpb24tY2xpZW50cy10aXRsZSB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuXG4uY2xyLWJnIC5zb2x1dGlvbi1jbGllbnRzLXRpdGxlIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gIHdpZHRoOiAzNCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuc29sdXRpb24tcHJlc2VudGF0aW9uIHtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDsgfSB9XG5cbi5zb2x1dGlvbi10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1ZW07XG4gIHBhZGRpbmctbGVmdDogNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgIC5zb2x1dGlvbi10ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuc29sdXRpb24tdGV4dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMzc1ZW07XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDNlbTtcbiAgICBib3JkZXItdG9wOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDI1ZW0pIHtcbiAgICAuc29sdXRpb24tdGV4dCBiciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNvbHV0aW9uLXRhZ3Mge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTI1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDAgMCAzLjEyNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAuc29sdXRpb24tdGFncyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5zb2x1dGlvbi1idXR0b24ge1xuICBtYXJnaW4tbGVmdDogNWVtOyB9XG5cbi5zb2x1dGlvbi1jbGllbnRzIHtcbiAgbWFyZ2luOiAxLjI1ZW07IH1cblxuLnNvbHV0aW9uLWNsaWVudHMtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIGJvcmRlci1ib3R0b206IDAuMjVyZW0gc29saWQgIzEzMjk0QjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5zb2x1dGlvbi1jbGllbnRzLXRpdGxlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDAuMTg3NXJlbSBzb2xpZCAjMTMyOTRCOyB9IH1cblxuLmxvZ29zLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDMuMTI1ZW07IH1cbiAgLmxvZ29zLXNsaWRlciAuc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgIC5sb2dvcy1zbGlkZXIgLmxvZ29zLXNsaWRlci1zbGlkZSB7XG4gICAgICBtYXJnaW46IDAgMC42MjVlbTsgfSB9XG5cbi5sb2dvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAubG9nby13cmFwcGVyIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMS44NzVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAubG9nby13cmFwcGVyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gIC5hc3NldHMtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hc3NldHMtc2xpZGVyLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmFzc2V0cy1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IC0xLjg3NWVtOyB9XG4gICAgLmFzc2V0cy1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAuYXNzZXRzLXNsaWRlci1uYXYgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0xLjg3NWVtOyB9XG4gIC5hc3NldHMtc2xpZGVyLW5hdiAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVlbTtcbiAgICBjb2xvcjogI0NERTIwMTsgfVxuXG4uYXNzZXRzLW1vYmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDE3LjVlbTtcbiAgaGVpZ2h0OiAxOC43NWVtO1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgLmFzc2V0cy1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbSB7XG4gICAgaGVpZ2h0OiAxOC4xMjVlbTtcbiAgICBwYWRkaW5nLXRvcDogNi4yNWVtOyB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC10eCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNWVtOyB9XG5cbiNidWlsZGluZyB7XG4gIHBhZGRpbmctdG9wOiAwLjYyNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMy43NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICNidWlsZGluZyB7XG4gICAgICBwYWRkaW5nLXRvcDogMC42MjVlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgI2J1aWxkaW5nIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAjYnVpbGRpbmcgLnNvbHV0aW9uLWltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yLjVlbTtcbiAgICB3aWR0aDogNTBlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjYnVpbGRpbmcgLnNvbHV0aW9uLWltZyB7XG4gICAgICAgIHdpZHRoOiAxMDclO1xuICAgICAgICBtYXJnaW46IDAgLTAuOTM3NXJlbTsgfSB9XG4gICNidWlsZGluZyAuc29sdXRpb24tcHJlc2VudGF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiA0LjA2MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjYnVpbGRpbmcgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMi4xODc1ZW0gYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgICAjYnVpbGRpbmcgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMS4yNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgI2J1aWxkaW5nIC5zb2x1dGlvbi1hc3NldHMsXG4gICAgI2J1aWxkaW5nIC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICAgIHBhZGRpbmc6IDAgMS4yNWVtOyB9IH1cbiAgI2J1aWxkaW5nIC5hc3NldHMtd3JhcHBlci5hc3NldHMtZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0LWJ1aWxkaW5nLWJnLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMC42ODc1ZW07XG4gICAgd2lkdGg6IDY1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjRlbSkge1xuICAgICAgI2J1aWxkaW5nIC5hc3NldHMtd3JhcHBlci5hc3NldHMtZGVza3RvcCB7XG4gICAgICAgIGhlaWdodDogMTcuODc1ZW07XG4gICAgICAgIHdpZHRoOiA1Ni4yNWVtOyB9IH1cbiAgI2J1aWxkaW5nIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgdG9wOiAzLjc1ZW07XG4gICAgbGVmdDogNy44MTI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjRlbSkge1xuICAgICAgI2J1aWxkaW5nIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHRvcDogMy4xMjVlbTtcbiAgICAgICAgbGVmdDogNS42MjVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICNidWlsZGluZyAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG4gICNidWlsZGluZyAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgIHRvcDogOC40Mzc1ZW07XG4gICAgbGVmdDogMjYuMjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICAgICAjYnVpbGRpbmcgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdG9wOiA2Ljg3NWVtO1xuICAgICAgICBsZWZ0OiAyMS44NzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICNidWlsZGluZyAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG4gICNidWlsZGluZyAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHRvcDogNWVtO1xuICAgIHJpZ2h0OiA0LjY4NzVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICAgICAjYnVpbGRpbmcgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdG9wOiAzLjEyNWVtO1xuICAgICAgICByaWdodDogMi4xODc1ZW07IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjYnVpbGRpbmcgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgIHJpZ2h0OiBpbml0aWFsOyB9IH1cbiAgI2J1aWxkaW5nIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKTpiZWZvcmUsXG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0X3NsaWRlci9idWlsZGluZy10b3AtMS5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDMuODEyNXJlbTtcbiAgICB3aWR0aDogNC4wNjI1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxLjA2MjVlbTtcbiAgICB0b3A6IDA7IH1cbiAgI2J1aWxkaW5nIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKTphZnRlcixcbiAgI2J1aWxkaW5nIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg1KTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvYnVpbGRpbmctYm90dG9tLTEuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiAyLjkzNzVyZW07XG4gICAgd2lkdGg6IDEzLjEyNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgYm90dG9tOiAwOyB9XG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyk6YmVmb3JlLFxuICAjYnVpbGRpbmcgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvYnVpbGRpbmctdG9wLTIuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiAzLjc1cmVtO1xuICAgIHdpZHRoOiAxMy4xMjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIHRvcDogMDsgfVxuICAjYnVpbGRpbmcgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpOmFmdGVyLFxuICAjYnVpbGRpbmcgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0X3NsaWRlci9idWlsZGluZy1ib3R0b20tMi5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDUuODc1cmVtO1xuICAgIHdpZHRoOiAxMy40Mzc1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxLjA2MjVlbTtcbiAgICBib3R0b206IDA7IH1cbiAgI2J1aWxkaW5nIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKTpiZWZvcmUsXG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCk6YmVmb3JlLFxuICAjYnVpbGRpbmcgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDcpOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvYnVpbGRpbmctdG9wLTMuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiAzLjg3NXJlbTtcbiAgICB3aWR0aDogMTMuNDM3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgdG9wOiAwOyB9XG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSk6YWZ0ZXIsXG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCk6YWZ0ZXIsXG4gICNidWlsZGluZyAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNyk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2J1aWxkaW5nLWJvdHRvbS0zLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNC4xMjVyZW07XG4gICAgd2lkdGg6IDEzLjQzNzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIGJvdHRvbTogMS41NjI1ZW07IH1cblxuI2hvc3BpdGFsaXR5IC5zb2x1dGlvbi1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogLTQuMzc1ZW07XG4gIHBhZGRpbmc6IDVlbSAwIDcuNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuc29sdXRpb24tc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAzLjEyNWVtIDAgMS44NzVlbTsgfSB9XG5cbiNob3NwaXRhbGl0eSAuc29sdXRpb24taW1nIHtcbiAgbWFyZ2luLWxlZnQ6IC0xLjU2MjVlbTtcbiAgd2lkdGg6IDQwLjYyNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgI2hvc3BpdGFsaXR5IC5zb2x1dGlvbi1pbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4jaG9zcGl0YWxpdHkgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gIG1hcmdpbi10b3A6IDYuMjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuc29sdXRpb24tcHJlc2VudGF0aW9uIHtcbiAgICAgIG1hcmdpbjogMi4xODc1ZW0gYXV0bzsgfSB9XG5cbiNob3NwaXRhbGl0eSAuYXNzZXRzLXdyYXBwZXIuYXNzZXRzLWRlc2t0b3Age1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnQtaG9zcGl0YWxpdHktYmcuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGhlaWdodDogMjQuNzVlbTtcbiAgd2lkdGg6IDcyLjE4NzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjYuMjVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuYXNzZXRzLXdyYXBwZXIuYXNzZXRzLWRlc2t0b3Age1xuICAgICAgaGVpZ2h0OiAxOS4yNWVtO1xuICAgICAgd2lkdGg6IDU2LjI1ZW07IH0gfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgdG9wOiA3LjVlbTtcbiAgbGVmdDogOS4zNzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjYuMjVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiA1LjYyNWVtO1xuICAgICAgbGVmdDogNS45Mzc1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG5cbiNob3NwaXRhbGl0eSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICB0b3A6IGluaXRpYWw7XG4gIGJvdHRvbTogNi44NzVlbTtcbiAgbGVmdDogMzEuODc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY2LjI1ZW0pIHtcbiAgICAjaG9zcGl0YWxpdHkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgIGJvdHRvbTogNC4zNzVlbTtcbiAgICAgIGxlZnQ6IDIzLjEyNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAjaG9zcGl0YWxpdHkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IGluaXRpYWw7IH0gfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgYm90dG9tOiBpbml0aWFsO1xuICBsZWZ0OiBpbml0aWFsO1xuICB0b3A6IDUuMzEyNWVtO1xuICByaWdodDogNy41ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY2LjI1ZW0pIHtcbiAgICAjaG9zcGl0YWxpdHkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRvcDogMy40Mzc1ZW07XG4gICAgICByaWdodDogNC4wNjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICNob3NwaXRhbGl0eSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IGluaXRpYWw7IH0gfVxuXG4jaG9zcGl0YWxpdHkgLnNvbHV0aW9uLWNsaWVudHMge1xuICBwYWRkaW5nLXRvcDogMGVtO1xuICBtYXJnaW4tYm90dG9tOiAxMS44NzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICNob3NwaXRhbGl0eSAuc29sdXRpb24tY2xpZW50cyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2LjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAjaG9zcGl0YWxpdHkgLnNvbHV0aW9uLWNsaWVudHMge1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1ZW07IH0gfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpOmJlZm9yZSxcbiNob3NwaXRhbGl0eSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNSk6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0X3NsaWRlci9ob3NwaXRhbGl0eS10b3AtMS5zdmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGhlaWdodDogMy44MTI1cmVtO1xuICB3aWR0aDogNi42MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMS4wNjI1ZW07XG4gIHRvcDogMDsgfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpOmFmdGVyLFxuI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg1KTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvaG9zcGl0YWxpdHktYm90dG9tLTEuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBoZWlnaHQ6IDMuODc1cmVtO1xuICB3aWR0aDogMTIuODc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEuMDYyNWVtO1xuICBib3R0b206IDA7IH1cblxuI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSxcbiNob3NwaXRhbGl0eSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNikge1xuICBwYWRkaW5nLXRvcDogNi44NzVlbTsgfVxuICAjaG9zcGl0YWxpdHkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpOmJlZm9yZSxcbiAgI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg2KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LXRvcC0yLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNS41NjI1cmVtO1xuICAgIHdpZHRoOiAxMy4wNjI1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxLjA2MjVlbTtcbiAgICB0b3A6IDA7IH1cbiAgI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKTphZnRlcixcbiAgI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg2KTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvaG9zcGl0YWxpdHktYm90dG9tLTIuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgICB3aWR0aDogMTMuMjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIGJvdHRvbTogMDsgfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpOmJlZm9yZSxcbiNob3NwaXRhbGl0eSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCk6YmVmb3JlLFxuI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LXRvcC0zLnN2Z1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgaGVpZ2h0OiA1LjU2MjVyZW07XG4gIHdpZHRoOiAxMy4zNzVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMS4wNjI1ZW07XG4gIHRvcDogMDsgfVxuXG4jaG9zcGl0YWxpdHkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpOmFmdGVyLFxuI2hvc3BpdGFsaXR5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg0KTphZnRlcixcbiNob3NwaXRhbGl0eSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNyk6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LWJvdHRvbS0zLnN2Z1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgaGVpZ2h0OiAzLjkzNzVyZW07XG4gIHdpZHRoOiA2Ljg3NXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMS4wNjI1ZW07XG4gIGJvdHRvbTogMS4yNWVtOyB9XG5cbiNpbmR1c3RyeSB7XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAjaW5kdXN0cnkge1xuICAgICAgcGFkZGluZzogMS4yNWVtIDAgMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVlbTsgfSB9XG4gICNpbmR1c3RyeSAuc29sdXRpb24taW1nIHtcbiAgICB3aWR0aDogNDAuNjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5zb2x1dGlvbi1pbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICNpbmR1c3RyeSAuc29sdXRpb24tcHJlc2VudGF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiA1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5zb2x1dGlvbi1wcmVzZW50YXRpb24ge1xuICAgICAgICBtYXJnaW46IDIuMTg3NWVtIGF1dG87IH0gfVxuICAjaW5kdXN0cnkgLmFzc2V0cy13cmFwcGVyLmFzc2V0cy1kZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnQtaW5kdXN0cnktYmcuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDI1LjYyNWVtO1xuICAgIHdpZHRoOiA3Mi4xODc1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY2Ljg3NWVtKSB7XG4gICAgICAjaW5kdXN0cnkgLmFzc2V0cy13cmFwcGVyLmFzc2V0cy1kZXNrdG9wIHtcbiAgICAgICAgaGVpZ2h0OiAxOS45Mzc1ZW07XG4gICAgICAgIHdpZHRoOiA1Ni4yNWVtOyB9IH1cbiAgI2luZHVzdHJ5IC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgdG9wOiA2Ljg3NWVtO1xuICAgIGxlZnQ6IDEuNTYyNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY2Ljg3NWVtKSB7XG4gICAgICAjaW5kdXN0cnkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdG9wOiA0LjY4NzVlbTtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICNpbmR1c3RyeSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG4gICNpbmR1c3RyeSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICB0b3A6IDEwLjYyNWVtO1xuICAgIGxlZnQ6IDE5LjY4NzVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2Ni44NzVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogOC4xMjVlbTtcbiAgICAgICAgbGVmdDogMTMuMTI1ZW07IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjaW5kdXN0cnkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgIGxlZnQ6IGluaXRpYWw7IH0gfVxuICAjaW5kdXN0cnkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBib3R0b206IGluaXRpYWw7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICB0b3A6IDE1ZW07XG4gICAgcmlnaHQ6IDE5LjA2MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2Ni44NzVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHRvcDogMTBlbTtcbiAgICAgICAgcmlnaHQ6IDEzLjEyNWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgICByaWdodDogaW5pdGlhbDsgfSB9XG4gICNpbmR1c3RyeSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCkge1xuICAgIHRvcDogNi44NzVlbTtcbiAgICByaWdodDogMi4xODc1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjYuODc1ZW0pIHtcbiAgICAgICNpbmR1c3RyeSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCkge1xuICAgICAgICB0b3A6IDVlbTtcbiAgICAgICAgcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjaW5kdXN0cnkgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgIHJpZ2h0OiBpbml0aWFsOyB9IH1cbiAgI2luZHVzdHJ5IC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNS42MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgI2luZHVzdHJ5IC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1ZW07IH0gfVxuICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpOmJlZm9yZSxcbiAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg2KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC0xLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNS4zMTI1cmVtO1xuICAgIHdpZHRoOiAxMi44NzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIHRvcDogMDsgfVxuICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpOmFmdGVyLFxuICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0X3NsaWRlci9pbmR1c3RyeS1ib3R0b20tMS5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgd2lkdGg6IDEyLjg3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgYm90dG9tOiAwOyB9XG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyksXG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNykge1xuICAgIHBhZGRpbmctdG9wOiA2Ljg3NWVtOyB9XG4gICAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKTpiZWZvcmUsXG4gICAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC0yLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDUuNjI1cmVtO1xuICAgICAgd2lkdGg6IDEzLjEyNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgICAgdG9wOiAxLjI1ZW07IH1cbiAgICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpOmFmdGVyLFxuICAgICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNyk6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LWJvdHRvbS0yLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgICB3aWR0aDogMTMuMjVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxLjA2MjVlbTtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDQpOmJlZm9yZSxcbiAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg4KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC0zLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNS4xMjVyZW07XG4gICAgd2lkdGg6IDEzLjI1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxLjA2MjVlbTtcbiAgICB0b3A6IDA7IH1cbiAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg0KTphZnRlcixcbiAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg4KTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvaW5kdXN0cnktYm90dG9tLTMuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiA0LjM3NXJlbTtcbiAgICB3aWR0aDogMTMuMTg3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgYm90dG9tOiAwOyB9XG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSk6YmVmb3JlLFxuICAjaW5kdXN0cnkgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDUpOmJlZm9yZSxcbiAgI2luZHVzdHJ5IC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg5KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC00LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNC4xMjVyZW07XG4gICAgd2lkdGg6IDEyLjg3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgdG9wOiAwOyB9XG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSk6YWZ0ZXIsXG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNSk6YWZ0ZXIsXG4gICNpbmR1c3RyeSAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoOSk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LWJvdHRvbS00LnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogNS4zMTI1cmVtO1xuICAgIHdpZHRoOiAxMi44NzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxLjA2MjVlbTtcbiAgICBib3R0b206IDA7IH1cblxuI3JldGFpbCB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICNyZXRhaWwge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICAjcmV0YWlsIC5zb2x1dGlvbi1pbWcge1xuICAgIHdpZHRoOiA0MC42MjVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1Ni4yNWVtKSB7XG4gICAgICAjcmV0YWlsIC5zb2x1dGlvbi1pbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAjcmV0YWlsIC5zb2x1dGlvbi1wcmVzZW50YXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDcuNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICNyZXRhaWwgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMi4xODc1ZW0gYXV0bzsgfSB9XG4gICNyZXRhaWwgLmFzc2V0cy13cmFwcGVyLmFzc2V0cy1kZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnQtcmV0YWlsLWJnLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiAyNC41ZW07XG4gICAgd2lkdGg6IDY5Ljg3NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDkuMzc1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjRlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXRzLXdyYXBwZXIuYXNzZXRzLWRlc2t0b3Age1xuICAgICAgICBoZWlnaHQ6IDE5Ljc1ZW07XG4gICAgICAgIHdpZHRoOiA1Ni4yNWVtOyB9IH1cbiAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHRvcDogMTBlbTtcbiAgICBsZWZ0OiA2LjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjYuMjVlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICB0b3A6IDcuNWVtO1xuICAgICAgICBsZWZ0OiA0LjM3NWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG4gICNyZXRhaWwgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgYm90dG9tOiA5LjA2MjVlbTtcbiAgICBsZWZ0OiAyOS4wNjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjYuMjVlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgICBib3R0b206IDYuNTYyNWVtO1xuICAgICAgICBsZWZ0OiAyMS44NzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAgICNyZXRhaWwgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgIGxlZnQ6IGluaXRpYWw7IH0gfVxuICAjcmV0YWlsIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgdG9wOiAxMC42MjVlbTtcbiAgICByaWdodDogNi41NjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjYuMjVlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgICB0b3A6IDcuNWVtO1xuICAgICAgICByaWdodDogMy43NWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYuMjVlbSkge1xuICAgICAgI3JldGFpbCAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgcmlnaHQ6IGluaXRpYWw7IH0gfVxuICAjcmV0YWlsIC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICBwYWRkaW5nLXRvcDogMC42MjVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNC4zNzVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgI3JldGFpbCAuc29sdXRpb24tY2xpZW50cyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NWVtOyB9IH1cbiAgI3JldGFpbCAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMik6YmVmb3JlLFxuICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg1KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL3JldGFpbC10b3AtMS5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgd2lkdGg6IDYuOTM3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEuMDYyNWVtO1xuICAgIHRvcDogMDsgfVxuICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKTphZnRlcixcbiAgI3JldGFpbCAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNSk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL3JldGFpbC1ib3R0b20tMS5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDUuNTYyNXJlbTtcbiAgICB3aWR0aDogMTMuNDM3NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMS4wNjI1ZW07XG4gICAgYm90dG9tOiAwOyB9XG4gICNyZXRhaWwgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpLFxuICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg2KSB7XG4gICAgcGFkZGluZy10b3A6IDUuMzEyNWVtOyB9XG4gICAgI3JldGFpbCAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyk6YmVmb3JlLFxuICAgICNyZXRhaWwgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLXRvcC0yLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMuNjg3NXJlbTtcbiAgICAgIHdpZHRoOiAxMy40Mzc1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMS4wNjI1ZW07XG4gICAgICB0b3A6IDA7IH1cbiAgICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKTphZnRlcixcbiAgICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg2KTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLWJvdHRvbS0yLnN2Z1wiKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMuMjVyZW07XG4gICAgICB3aWR0aDogMTMuNDM3NXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICNyZXRhaWwgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpOmJlZm9yZSxcbiAgI3JldGFpbCAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCk6YmVmb3JlLFxuICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvc21hcnRfc2xpZGVyL3JldGFpbC10b3AtMy5zdmdcIikgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IDMuNXJlbTtcbiAgICB3aWR0aDogNi42MjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIHRvcDogMDsgfVxuICAjcmV0YWlsIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKTphZnRlcixcbiAgI3JldGFpbCAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCk6YWZ0ZXIsXG4gICNyZXRhaWwgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDcpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3NtYXJ0X3NsaWRlci9yZXRhaWwtYm90dG9tLTMuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiA2LjE4NzVyZW07XG4gICAgd2lkdGg6IDEzLjQzNzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEuMDYyNWVtO1xuICAgIGJvdHRvbTogMDsgfVxuXG4ucGFnZS10ZWNobm9sb2d5IC5wYWdlLWludHJvLXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA5LjM3NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNS42MjVlbSkge1xuICAgIC5wYWdlLXRlY2hub2xvZ3kgLnBhZ2UtaW50cm8td3JhcHBlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVlbTsgfSB9XG5cbi5wYWdlLXRlY2hub2xvZ3kgLnBhZ2UtdGl0bGUge1xuICBjb2xvcjogI0NERTIwMTtcbiAgbWF4LXdpZHRoOiAxMi41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfVxuICAucGFnZS10ZWNobm9sb2d5IC5wYWdlLXRpdGxlOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLnBhZ2UtdGVjaG5vbG9neSAucGFnZS1pbnRyby13cmFwcGVyIC53cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wYWdlLXRlY2hub2xvZ3kgLnBhZ2UtaW50cm8td3JhcHBlciAud3JhcHBlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDNlbTtcbiAgICBsZWZ0OiA5LjM3NWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogOS45Mzc1ZW07XG4gICAgaGVpZ2h0OiAzMS4xMjVlbTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdGVjaG5vLWxpbmVzLnN2Z1wiKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS10ZWNobm9sb2d5IC5wYWdlLWludHJvLXdyYXBwZXIgLndyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMS44NzVlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgIC5wYWdlLXRlY2hub2xvZ3kgLnBhZ2UtaW50cm8td3JhcHBlciAud3JhcHBlcjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnBhZ2UtdGVjaG5vbG9neSAucGFnZS1pbnRyby13cmFwcGVyIC53cmFwcGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzZW07XG4gICAgcmlnaHQ6IDkuMzc1ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA5LjkzNzVlbTtcbiAgICBoZWlnaHQ6IDMxLjEyNWVtO1xuICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy90ZWNobm8tbGluZXMuc3ZnXCIpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLXRlY2hub2xvZ3kgLnBhZ2UtaW50cm8td3JhcHBlciAud3JhcHBlcjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAxLjg3NWVtOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLnBhZ2UtdGVjaG5vbG9neSAucGFnZS1pbnRyby13cmFwcGVyIC53cmFwcGVyOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50ZWNobm8tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGVjaG5vLXNlY3Rpb24uY2xyLWJnLTIge1xuICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9XG4gICAgLnRlY2huby1zZWN0aW9uLmNsci1iZy0yOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtdG9wLWJsZXUuc3ZnXCIpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICAgLnRlY2huby1zZWN0aW9uLmNsci1iZy0yOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtdG9wLWJsZXUteHMuc3ZnXCIpIHJlcGVhdC14IHRvcCBsZWZ0O1xuICAgICAgICAgIGhlaWdodDogMi4wNjI1cmVtOyB9IH1cbiAgICAudGVjaG5vLXNlY3Rpb24uY2xyLWJnLTI6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWJsZXUuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgIC50ZWNobm8tc2VjdGlvbi5jbHItYmctMjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tYmxldS14cy5zdmdcIikgcmVwZWF0LXggYm90dG9tIGxlZnQ7XG4gICAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuICAudGVjaG5vLXNlY3Rpb24uZ3JheS1iZyB7XG4gICAgbWFyZ2luLXRvcDogNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9XG4gICAgLnRlY2huby1zZWN0aW9uLmdyYXktYmc6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC01cmVtO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ncmlzLnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgIC50ZWNobm8tc2VjdGlvbi5ncmF5LWJnOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG4gICAgLnRlY2huby1zZWN0aW9uLmdyYXktYmc6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWdyaXMuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICAgLnRlY2huby1zZWN0aW9uLmdyYXktYmc6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogLTIuMDYyNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWdyaXMteHMuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuXG4udGVjaG5vLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGNvbG9yOiAjMTMyOTRCOyB9XG4gIC50ZWNobm8tdGl0bGUuY2VudGVyLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudGVjaG5vLXRpdGxlLmNlbnRlci10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDNyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7XG4gICAgICBtYXJnaW46IDEuMjVyZW0gYXV0byAwOyB9XG5cbi5tb2JpbGUtdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLm1vYmlsZS10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41NjI1ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1ZW07IH0gfVxuICAubW9iaWxlLXRpdGxlOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMi41cmVtO1xuICAgIGJvcmRlci10b3A6IDAuMjVyZW0gc29saWQgI0NERTIwMTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAuZGVza3RvcC10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jbHItYmcgLnRlY2huby10aXRsZSxcbi5jbHItYmctMiAudGVjaG5vLXRpdGxlIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnRlY2huby1wcmVzZW50YXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAudGVjaG5vLXByZXNlbnRhdGlvbiB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi50ZWNobm8taWxsdS13cmFwcGVyIHtcbiAgd2lkdGg6IDM2LjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM5LjM3NWVtKSB7XG4gICAgLnRlY2huby1pbGx1LXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4udGVjaG5vLXR4LXdyYXBwZXIge1xuICB3aWR0aDogMzIuNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgIC50ZWNobm8tdHgtd3JhcHBlciB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi50ZWNobm8tdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICBtYXJnaW4tdG9wOiAxLjI1ZW07XG4gIHBhZGRpbmctbGVmdDogNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLnRlY2huby10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAudGVjaG5vLXRleHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjM3NWVtO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzZW07XG4gICAgYm9yZGVyLXRvcDogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgIC50ZWNobm8tdGV4dDpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnRlY2huby10ZXh0IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4udGVjaG5vLXRleHQtc2Vjb25kYXJ5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJEcm9pZCBTZXJpZlwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiAyLjE4NzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC50ZWNobm8tdGV4dC1zZWNvbmRhcnkge1xuICAgICAgbWFyZ2luLXRvcDogMS4yNWVtOyB9IH1cblxuI25ldHdvcmssXG4jdGFnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogMTAwdnc7XG4gIG1hcmdpbjogMDsgfVxuXG4jbmV0d29yayB7XG4gIHBhZGRpbmc6IDMuMTI1ZW0gMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICNuZXR3b3JrIHtcbiAgICAgIHBhZGRpbmc6IDIuNWVtIDAgMDsgfSB9XG4gICNuZXR3b3JrOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjbmV0d29yazphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjbmV0d29yayAudGVjaG5vLWlsbHUtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogLTEuNTYyNXJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgICAgI25ldHdvcmsgLnRlY2huby1pbGx1LXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiBpbml0aWFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NWVtOyB9IH1cbiAgI25ldHdvcmsgLnRlY2huby10eC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgICAgI25ldHdvcmsgLnRlY2huby10eC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDsgfSB9XG4gICNuZXR3b3JrIC50ZWNobm8tbGVnZW5kIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAjbmV0d29yayAudGVjaG5vLWxlZ2VuZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4jdGFnIHtcbiAgcGFkZGluZzogMy4xMjVlbSAwIDMuMTI1ZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4yNXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICN0YWcge1xuICAgICAgcGFkZGluZzogMi41ZW0gMCAxLjg3NWVtOyB9IH1cbiAgI3RhZzpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3RhZzphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICN0YWcgLnRlY2huby1wcmVzZW50YXRpb24ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cbiAgI3RhZyAudGVjaG5vLXR4LXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IC0yLjVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzkuMzc1ZW0pIHtcbiAgICAgICN0YWcgLnRlY2huby10eC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC45Mzc1ZW07IH0gfVxuICAjdGFnIC50ZWNobm8taWxsdS13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzkuMzc1ZW0pIHtcbiAgICAgICN0YWcgLnRlY2huby1pbGx1LXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiBpbml0aWFsOyB9IH1cbiAgI3RhZyAubW9iaWxlLXRpdGxlIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi50ZWNobm8tbGVnZW5kIHtcbiAgbWFyZ2luLXRvcDogMi4xODc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAudGVjaG5vLWxlZ2VuZCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMjMuMTI1ZW0pIHtcbiAgICAudGVjaG5vLWxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDAuODc1ZW07IH0gfVxuICAudGVjaG5vLWxlZ2VuZCBsaSB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDMxLjI1ZW0pIHtcbiAgICAgIC50ZWNobm8tbGVnZW5kIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1ZW07IH0gfVxuICAudGVjaG5vLWxlZ2VuZCBsaTpmaXJzdC1jaGlsZCAudGVjaG5vLWxlZ2VuZC1pbWcge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC50ZWNobm8tbGVnZW5kIC50ZWNobm8tbGVnZW5kLWltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1ZW07IH1cbiAgICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC1pbWcudGVsIHtcbiAgICAgIHdpZHRoOiAxLjMxMjVlbTtcbiAgICAgIGhlaWdodDogMS45Mzc1ZW07IH1cbiAgICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC1pbWcuY2xvdWQge1xuICAgICAgd2lkdGg6IDNlbTtcbiAgICAgIGhlaWdodDogMS41NjI1ZW07IH1cbiAgICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC1pbWcudGFnIHtcbiAgICAgIHdpZHRoOiAwLjkzNzVlbTtcbiAgICAgIGhlaWdodDogMC45Mzc1ZW07IH1cbiAgICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC1pbWcudGVsLTIge1xuICAgICAgd2lkdGg6IDEuNjI1ZW07XG4gICAgICBoZWlnaHQ6IDIuMjVlbTsgfVxuICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC10eCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnRlY2huby1sZWdlbmQgLnRlY2huby1sZWdlbmQtaW1nLFxuICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC10eCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuICAudGVjaG5vLWxlZ2VuZCAudGVjaG5vLWxlZ2VuZC1pbWcge1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVlbTsgfVxuXG4ud2F2ZS1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLndhdmUtbmF2aWdhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1ZW07IH0gfVxuXG4ud2F2ZS1uYXZpZ2F0aW9uLWl0ZW0gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgd2lkdGg6IDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICNDREUyMDE7IH1cblxuLndhdmUtbmF2aWdhdGlvbi1pdGVtLmlzLWFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5Aa2V5ZnJhbWVzIG1vdmVQb3NpdGlvbmluZyB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwcHgsIDBweCk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDBweCwgMHB4KTsgfSB9XG5cbi50ZWNobm8tcGFuZWxzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMjAwdnc7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDBweCwgMHB4KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC45cyBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBtb3ZlUG9zaXRpb25pbmcgNXM7IH1cbiAgLnRlY2huby1wYW5lbHMudG8tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgMHB4LCAwcHgpOyB9XG5cbiNyYWRpbyB7XG4gIHBhZGRpbmc6IDQuMzc1ZW0gMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICNyYWRpbyB7XG4gICAgICBwYWRkaW5nOiAxLjg3NWVtIDAgMC42MjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICNyYWRpbyB7XG4gICAgICBwYWRkaW5nOiAwLjYyNWVtIDAgMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICNyYWRpbyAudGVjaG5vLXRpdGxlLmNlbnRlci10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgI3JhZGlvIC50ZWNobm8tdGl0bGUuY2VudGVyLXRpdGxlOmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgI3JhZGlvIC5yYWRpby1jb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiA2Ljg3NWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAjcmFkaW8gLnJhZGlvLWNvbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NWVtOyB9IH1cbiAgICAjcmFkaW8gLnJhZGlvLWNvbDpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcuNWVtOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgICAgI3JhZGlvIC5yYWRpby1jb2w6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogNC4wNjI1ZW07IH0gfVxuICAgICAgI3JhZGlvIC5yYWRpby1jb2w6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKGltYWdlcy9pY28tYmx1ZXRvb3RoLnN2Zyk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDMuMTI1ZW07IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAgICAgI3JhZGlvIC5yYWRpby1jb2w6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7IH0gfVxuICAgICNyYWRpbyAucmFkaW8tY29sOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1LjkzNzVlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNWVtOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgICAgI3JhZGlvIC5yYWRpby1jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjA2MjVlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMuMTI1ZW07IH0gfVxuICAgICAgI3JhZGlvIC5yYWRpby1jb2w6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoaW1hZ2VzL2ljby13aWRlYmFuZC5zdmcpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwLjYyNWVtOyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0Ni44NzVlbSkge1xuICAgICAgICAgICNyYWRpbyAucmFkaW8tY29sOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7IH0gfVxuICAjcmFkaW8gLmNvbC10eCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zNWVtOyB9XG5cbiNlbmdpbmUge1xuICBwYWRkaW5nOiAwLjYyNWVtIDAgNC4zNzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICNlbmdpbmUge1xuICAgICAgcGFkZGluZzogMS44NzVlbSAwIDAuNjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAjZW5naW5lIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1ZW0gMDsgfSB9XG4gICNlbmdpbmUgLnRlY2huby10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4xODc1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAgICNlbmdpbmUgLnRlY2huby10aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgICAjZW5naW5lIC50ZWNobm8tdGl0bGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxO1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgICAgICNlbmdpbmUgLnRlY2huby10aXRsZTphZnRlciB7XG4gICAgICAgICAgbWFyZ2luOiAxLjI1cmVtIGF1dG8gMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3Mi41ZW0pIHtcbiAgICAjZW5naW5lIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgICNlbmdpbmUgLndyYXBwZXIge1xuICAgICAgcGFkZGluZzogMCAyLjVyZW07IH0gfVxuXG4uZW5naW5lLXNsaWRlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5lbmdpbmUtc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTAuMzc1cmVtOyB9XG5cbi5lbmdpbmUtc2xpZGVyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5lbmdpbmUtc2xpZGVyLWludCB7XG4gIHdpZHRoOiA2NSU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgLmVuZ2luZS1zbGlkZXItaW50IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmVuZ2luZS1zbGlkZXItaW50IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmVuZ2luZS1zbGlkZXItaW50IC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZW5naW5lLXNsaWRlci1pbnQgLnNsaWNrLWRvdHMgYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgIHdpZHRoOiAwLjYyNXJlbTsgfVxuXG4uZW5naW5lLXNsaWRlci1pbnQtaW1nIHtcbiAgcGFkZGluZzogMC4zNzVyZW07XG4gIG1hcmdpbi10b3A6IC0wLjM3NXJlbTsgfVxuICAuZW5naW5lLXNsaWRlci1pbnQtaW1nIGltZyB7XG4gICAgYm94LXNoYWRvdzogLTAuMTI1cmVtIDAuMTI1cmVtIDAuNXJlbSAwIHJnYmEoMCwgMCwgMCwgMC4xMyk7IH1cblxuLmVuZ2luZS1zbGlkZXItZGV0YWlscyB7XG4gIHdpZHRoOiAzMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAuZW5naW5lLXNsaWRlci1kZXRhaWxzIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmVuZ2luZS10aXRsZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDE0LjM3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG8gMS4yNXJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAuZW5naW5lLXRpdGxlIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyOS4wNjI1ZW0pIHtcbiAgICAuZW5naW5lLXRpdGxlIHtcbiAgICAgIG1heC13aWR0aDogMTQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUzLjEyNWVtKSB7XG4gICAgLmVuZ2luZS10aXRsZS5kZXNrdG9wLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuZW5naW5lLXRpdGxlLm1vYmlsZS10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgICAgLmVuZ2luZS10aXRsZS5tb2JpbGUtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMS41NjI1ZW07IH0gfVxuICAgIC5lbmdpbmUtdGl0bGUubW9iaWxlLXRpdGxlOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5lbmdpbmUtdHgge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgIC5lbmdpbmUtdHgge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2OC43NWVtKSB7XG4gICAgLmVuZ2luZS10eCBiciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmVuZ2luZS1zbGlkZXIgPiAuc2xpY2stZG90cyB7XG4gIHdpZHRoOiAzMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMS41NjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gICAgLmVuZ2luZS1zbGlkZXIgPiAuc2xpY2stZG90cyB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICAuZW5naW5lLXNsaWRlciA+IC5zbGljay1kb3RzOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDAuMjVyZW0gc29saWQgI0NERTIwMTsgfVxuICAuZW5naW5lLXNsaWRlciA+IC5zbGljay1kb3RzIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICAgIC5lbmdpbmUtc2xpZGVyID4gLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZW5naW5lLXNsaWRlciA+IC5zbGljay1kb3RzIGxpIGEge1xuICAgICAgY29sb3I6ICNDREUyMDE7IH1cblxuLmVuZ2luZS1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMzAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgIC5lbmdpbmUtc2xpZGVyLW5hdiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5lbmdpbmUtc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1wcmV2LFxuICAuZW5naW5lLXNsaWRlci1uYXYgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDsgfVxuICAuZW5naW5lLXNsaWRlci1uYXYgLnNsaWRlci1uYXYtcHJldiB7XG4gICAgbGVmdDogLTEuMjVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAgIC5lbmdpbmUtc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1wcmV2IHtcbiAgICAgICAgbGVmdDogLTEuODc1cmVtOyB9IH1cbiAgLmVuZ2luZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LW5leHQge1xuICAgIHJpZ2h0OiAtMS4yNXJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1My4xMjVlbSkge1xuICAgICAgLmVuZ2luZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LW5leHQge1xuICAgICAgICByaWdodDogLTEuODc1cmVtOyB9IH1cbiAgLmVuZ2luZS1zbGlkZXItbmF2IC5pY29uLWFycm93IHtcbiAgICBmb250LXNpemU6IDIuMDYyNWVtO1xuICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG4gIC5lbmdpbmUtc2xpZGVyLW5hdiAuc2xpZGVyLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbiNlbnRlcnByaXNlIHtcbiAgcGFkZGluZzogNi4yNWVtIDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAjZW50ZXJwcmlzZSB7XG4gICAgICBwYWRkaW5nOiAwIDA7IH0gfVxuICAjZW50ZXJwcmlzZSAuaWNvbmJveC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDYuMjVlbSAwIDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTMuMTI1ZW0pIHtcbiAgICAgICNlbnRlcnByaXNlIC5pY29uYm94LXdyYXBwZXIge1xuICAgICAgICBtYXJnaW46IDQuMzc1ZW0gMCAwOyB9IH1cbiAgI2VudGVycHJpc2UgLmljb25ib3gtdHggcCB7XG4gICAgbWFyZ2luOiAwLjYyNXJlbSAwOyB9XG5cbiNsaW5rcyB7XG4gIHBhZGRpbmc6IDYuMjVlbSAwIDQuMzc1ZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQzLjc1ZW0pIHtcbiAgICAjbGlua3Mge1xuICAgICAgcGFkZGluZzogNWVtIDAgMy4xMjVlbTsgfSB9XG4gICNsaW5rcyAud3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgI2xpbmtzIC53cmFwcGVyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQ6IHVybChpbWFnZXMvbG9nby1pY29uby5zdmcpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAzLjM3NXJlbTtcbiAgICAgIHdpZHRoOiAzLjM3NXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEuMjVyZW07XG4gICAgICB0b3A6IC00cmVtOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDMuNzVlbSkge1xuICAgICAgICAjbGlua3MgLndyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IC00LjM3NXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICB3aWR0aDogMi41cmVtOyB9IH1cbiAgICAjbGlua3MgLndyYXBwZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xvZ28taWNvbm8uc3ZnKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogMy4zNzVyZW07XG4gICAgICB3aWR0aDogMy4zNzVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMS4yNXJlbTtcbiAgICAgIGJvdHRvbTogLTIuMDYyNXJlbTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQzLjc1ZW0pIHtcbiAgICAgICAgI2xpbmtzIC53cmFwcGVyOmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IC0zLjEyNXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICB3aWR0aDogMi41cmVtOyB9IH1cblxuLmxpbmtzLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQzLjc1ZW0pIHtcbiAgICAubGlua3MtdGl0bGUge1xuICAgICAgbWFyZ2luOiAxLjg3NWVtIDA7IH0gfVxuXG4ubGlua3MtbGlzdCB7XG4gIG1heC13aWR0aDogNDIuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvIDIuNWVtOyB9XG4gIC5saW5rcy1saXN0IGxpICsgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMS4zNzVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDMuNzVlbSkge1xuICAgICAgLmxpbmtzLWxpc3QgbGkgKyBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjM3NWVtOyB9IH1cbiAgLmxpbmtzLWxpc3QgbGkgKyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGJvcmRlci1sZWZ0OiAwLjE4NzVyZW0gc29saWQgI0NERTIwMTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0My43NWVtKSB7XG4gICAgICAubGlua3MtbGlzdCBsaSArIGxpOmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDIuNWVtO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xODc1cmVtIHNvbGlkICNDREUyMDE7IH0gfVxuICAubGlua3MtbGlzdC5rYi1saXN0IGxpOm50aC1jaGlsZCg0KSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxpbmtzLWxpc3Qua2ItbGlzdCBsaTpudGgtY2hpbGQoNCk6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0My43NWVtKSB7XG4gICAgICAgIC5saW5rcy1saXN0LmtiLWxpc3QgbGk6bnRoLWNoaWxkKDQpOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmxpbmtzLWxpc3QuZ2l0LWxpc3QgbGk6bnRoLWNoaWxkKDMpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubGlua3MtbGlzdC1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtOyB9XG4gIC5saW5rcy1saXN0LWl0ZW0gYSB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfVxuICAgIC5saW5rcy1saXN0LWl0ZW0gYTpob3ZlciB7XG4gICAgICBjb2xvcjogI0NERTIwMTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDMuNzVlbSkge1xuICAubGlua3MtbGlzdC5saXN0LWlubGluZSAubGlua3MtbGlzdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5wYWdlLWFib3V0IC5wYWdlLWludHJvLXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA2LjI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAucGFnZS1hYm91dCAucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLnBhZ2UtYWJvdXQgLnBhZ2UtaW50cm8td3JhcHBlciBiciB7XG4gICAgICBkaXNwbGF5OiBpbml0aWFsOyB9IH1cblxuLnBhZ2UtYWJvdXQgLnBhZ2UtdGl0bGUge1xuICBjb2xvcjogI0NERTIwMTtcbiAgbWF4LXdpZHRoOiAxMi41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfVxuICAucGFnZS1hYm91dCAucGFnZS10aXRsZTphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5hYm91dC1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hYm91dC1zZWN0aW9uLmNsci1iZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH1cbiAgICAuYWJvdXQtc2VjdGlvbi5jbHItYmc6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC01cmVtO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGV1LnN2Z1wiKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAgIC5hYm91dC1zZWN0aW9uLmNsci1iZzpiZWZvcmUge1xuICAgICAgICAgIHRvcDogLTJyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGV1LXhzLnN2Z1wiKSByZXBlYXQteCB0b3AgbGVmdDtcbiAgICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG4gICAgLmFib3V0LXNlY3Rpb24uY2xyLWJnOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC01cmVtO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1ib3R0b20tYmxldS5zdmdcIikgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICAgLmFib3V0LXNlY3Rpb24uY2xyLWJnOmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IC0ycmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtYm90dG9tLWJsZXUteHMuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgIGhlaWdodDogMi4wNjI1cmVtOyB9IH1cbiAgICAuYWJvdXQtc2VjdGlvbi5jbHItYmcgLmFib3V0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5hYm91dC1zZWN0aW9uLmdyYXktYmcge1xuICAgIG1hcmdpbi10b3A6IDVyZW07IH1cbiAgICAuYWJvdXQtc2VjdGlvbi5ncmF5LWJnOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogNXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAuYWJvdXQtc2VjdGlvbi5ncmF5LWJnOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy14cy5zdmdcIikgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgICBoZWlnaHQ6IDIuMDYyNXJlbTsgfSB9XG4gICAgLmFib3V0LXNlY3Rpb24uZ3JheS1iZzphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtYm90dG9tLWdyaXMuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAgICAgLmFib3V0LXNlY3Rpb24uZ3JheS1iZzphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAtMi4wNjI1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcImltYWdlcy92YWd1ZXMvdmFndWUtYm90dG9tLWdyaXMteHMuc3ZnXCIpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAyLjA2MjVyZW07IH0gfVxuXG4uYWJvdXQtdGl0bGUge1xuICBmb250LXNpemU6IDJlbTtcbiAgY29sb3I6ICMxMzI5NEI7IH1cbiAgLmFib3V0LXRpdGxlLmNlbnRlci10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmFib3V0LXRpdGxlLmNlbnRlci10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDNyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7XG4gICAgICBtYXJnaW46IDEuMjVyZW0gYXV0byAwOyB9XG5cbi5zZWN0aW9uLXRlYW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDAuMDYyNWVtO1xuICBwYWRkaW5nLXRvcDogMi41ZW07XG4gIHBhZGRpbmctYm90dG9tOiA5LjA2MjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5zZWN0aW9uLXRlYW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDYuMjVlbTsgfSB9XG4gIC5zZWN0aW9uLXRlYW06YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2VjdGlvbi10ZWFtIC5hYm91dC10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAzOS4zNzVlbSkge1xuICAgICAgLnNlY3Rpb24tdGVhbSAuYWJvdXQtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjgxMjVyZW07IH0gfVxuXG4udGVhbS1zbGlkZXItd3JhcHBlciA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCA1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM5LjM3NWVtKSB7XG4gICAgLnRlYW0tc2xpZGVyLXdyYXBwZXIgPiBkaXYge1xuICAgICAgcGFkZGluZzogMCAyLjVlbTsgfSB9XG5cbi50ZWFtLXNsaWRlci1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC50ZWFtLXNsaWRlci1uYXYgLnNsaWRlci10ZWFtLW5hdi1wcmV2LFxuICAudGVhbS1zbGlkZXItbmF2IC5zbGlkZXItdGVhbS1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7IH1cbiAgLnRlYW0tc2xpZGVyLW5hdiAuc2xpZGVyLXRlYW0tbmF2LXByZXYge1xuICAgIGxlZnQ6IDA7IH1cbiAgLnRlYW0tc2xpZGVyLW5hdiAuc2xpZGVyLXRlYW0tbmF2LW5leHQge1xuICAgIHJpZ2h0OiAwOyB9XG4gIC50ZWFtLXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICAgIGZvbnQtc2l6ZTogMi4wNjI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMjYuODc1ZW0pIHtcbiAgICAgIC50ZWFtLXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICAgICAgICBmb250LXNpemU6IDEuNTYyNWVtOyB9IH1cbiAgLnRlYW0tc2xpZGVyLW5hdiAuc2xpZGVyLXRlYW0tbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cblxuLnRlYW0taXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCAyLjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzkuMzc1ZW0pIHtcbiAgICAudGVhbS1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgMS4yNWVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDIxLjg3NWVtKSB7XG4gICAgLnRlYW0taXRlbSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cblxuLnRlYW0tcGhvdG8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1ZW07XG4gIHdpZHRoOiA4LjEyNXJlbTtcbiAgaGVpZ2h0OiAxMC4xMjVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDI2Ljg3NWVtKSB7XG4gICAgLnRlYW0tcGhvdG8ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4udGVhbS1uYW1lIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLnRlYW0tam9iIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbWFyZ2luOiAwOyB9XG5cbi50ZWFtLWdyaWQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRlYW0tZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtOiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nOiAwIDQuNzVlbTtcbiAgbWFyZ2luLXRvcDogLTMuMTI1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM5LjM3NWVtKSB7XG4gICAgLnRlYW0tZ3JpZCB7XG4gICAgICBwYWRkaW5nOiAwIDIuNWVtOyB9IH1cbiAgLnRlYW0tZ3JpZCAudGVhbS1pdGVtIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbjogMy4xMjVlbSAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAudGVhbS1ncmlkIC50ZWFtLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMzMuMzMzJTsgfSB9XG5cbi50ZWFtLW1vcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM5LjM3NWVtKSB7XG4gICAgLnRlYW0tbW9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnRlYW0tbW9yZSBpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgICBjb2xvcjogIzEzMjk0QjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cblxuLnRlYW0tbGVzcyB7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC50ZWFtLWxlc3MgLmljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4uc2VjdGlvbi1wYXJ0bmVycyB7XG4gIHBhZGRpbmctdG9wOiAxLjI1ZW07XG4gIHBhZGRpbmctYm90dG9tOiA1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuc2VjdGlvbi1wYXJ0bmVycyB7XG4gICAgICBwYWRkaW5nLXRvcDogMi41ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLnNlY3Rpb24tcGFydG5lcnMgLmdyaWQtMi00IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLnBhcnRuZXJzLW1haW5UeCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbWFyZ2luLXRvcDogMS4yNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDVlbTtcbiAgcGFkZGluZy1yaWdodDogMS44NzVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5wYXJ0bmVycy1tYWluVHgge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5wYXJ0bmVycy1tYWluVHg6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjM3NWVtO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzZW07XG4gICAgYm9yZGVyLXRvcDogMC4yNXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG4gIC5wYXJ0bmVycy1tYWluVHggcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYXJ0bmVycy1tYWluVHggYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBhcnRuZXJzLXBhbmVscyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5wYXJ0bmVycy1wYW5lbHMuZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnBhcnRuZXJzLXBhbmVscy5tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLnBhcnRuZXJzLXBhbmVscy5tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnBhcnRuZXJzLXBhbmVscy5tb2JpbGUgLnBhcnRuZXItZGV0YWlscyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBhZGRpbmc6IDAgMi41cmVtOyB9XG4gICAgLnBhcnRuZXJzLXBhbmVscy5tb2JpbGUgLnBhcnRuZXItbmFtZSB7XG4gICAgICBtYXJnaW46IDEuMjVlbSAwIDEuMjVlbTsgfVxuXG4ucGFydG5lcnMtbW9iaWxlLXRhYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFydG5lcnMtbW9iaWxlLXRhYiAucGFydG5lci10eCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLTMuMTI1ZW07IH1cbiAgICAucGFydG5lcnMtbW9iaWxlLXRhYiAucGFydG5lci10eC5pcy1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBhcnRuZXJzLXBhbmVscyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFydG5lcnMtcGFuZWxzIC5wYXJ0bmVycy1tb2JpbGUtc2xpZGVyLW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA2MiU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDI2Ljg3NWVtKSB7XG4gICAgICAucGFydG5lcnMtcGFuZWxzIC5wYXJ0bmVycy1tb2JpbGUtc2xpZGVyLW5hdiB7XG4gICAgICAgIHRvcDogNjAlOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMjMuMTI1ZW0pIHtcbiAgICAgIC5wYXJ0bmVycy1wYW5lbHMgLnBhcnRuZXJzLW1vYmlsZS1zbGlkZXItbmF2IHtcbiAgICAgICAgdG9wOiA1OCU7IH0gfVxuICAgIC5wYXJ0bmVycy1wYW5lbHMgLnBhcnRuZXJzLW1vYmlsZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYsXG4gICAgLnBhcnRuZXJzLXBhbmVscyAucGFydG5lcnMtbW9iaWxlLXNsaWRlci1uYXYgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb2xvcjogI0NERTIwMTsgfVxuICAgIC5wYXJ0bmVycy1wYW5lbHMgLnBhcnRuZXJzLW1vYmlsZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYge1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5wYXJ0bmVycy1wYW5lbHMgLnBhcnRuZXJzLW1vYmlsZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LW5leHQge1xuICAgICAgcmlnaHQ6IDA7IH1cbiAgICAucGFydG5lcnMtcGFuZWxzIC5wYXJ0bmVycy1tb2JpbGUtc2xpZGVyLW5hdiAuaWNvbi1hcnJvdyB7XG4gICAgICBmb250LXNpemU6IDIuMDYyNWVtOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMjYuODc1ZW0pIHtcbiAgICAgICAgLnBhcnRuZXJzLXBhbmVscyAucGFydG5lcnMtbW9iaWxlLXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41NjI1ZW07IH0gfVxuICAgIC5wYXJ0bmVycy1wYW5lbHMgLnBhcnRuZXJzLW1vYmlsZS1zbGlkZXItbmF2IC5zbGlkZXItbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4ucGFydG5lci1tb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMC45Mzc1cmVtIGF1dG8gMDtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLnBhcnRuZXItbW9yZS5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhcnRuZXItbW9yZTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAucGFydG5lci1tb3JlIGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxLjg3NXJlbTtcbiAgICBoZWlnaHQ6IDEuODc1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI2ZmZjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMC4zNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuLnBhcnRuZXItZGV0YWlscyB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDVlbTtcbiAgbWFyZ2luLXRvcDogMS4yNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLnBhcnRuZXItZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiA0LjM3NWVtOyB9IH1cbiAgLnBhcnRuZXItZGV0YWlscy5pcy1hY3RpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5wYXJ0bmVyLW5hbWUge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAxLjg3NWVtIDA7IH1cblxuLnBhcnRuZXItdHgge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLnBhcnRuZXJzLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDVlbTtcbiAgcGFkZGluZy10b3A6IDVlbTtcbiAgYm9yZGVyLXRvcDogMC4xODc1cmVtIHNvbGlkICNDREUyMDE7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAucGFydG5lcnMtc2xpZGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAucGFydG5lcnMtc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luOiAwIDEuMjVyZW07IH1cbiAgLnBhcnRuZXJzLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgbWFyZ2luOiAwIC0xLjI1cmVtOyB9XG5cbi5wYXJ0bmVyLWltZy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wYXJ0bmVyLWltZy13cmFwcGVyIC5wYXJ0bmVyLXNsaWRlci1sb2dvIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBjdWJpYy1iZXppZXIoMC4xNywgMC42NywgMC44MywgMC42Nyk7IH1cbiAgICAucGFydG5lci1pbWctd3JhcHBlciAucGFydG5lci1zbGlkZXItbG9nby5idyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFydG5lci1pbWctd3JhcHBlciAucGFydG5lci1zbGlkZXItbG9nby5jbHIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7IH1cblxuLnBhcnRuZXItaXRlbTpob3ZlciAucGFydG5lci1zbGlkZXItbG9nby5idywgLnBhcnRuZXItaXRlbS5pcy1hY3RpdmUgLnBhcnRuZXItc2xpZGVyLWxvZ28uYncge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5wYXJ0bmVyLWl0ZW06aG92ZXIgLnBhcnRuZXItc2xpZGVyLWxvZ28uY2xyLCAucGFydG5lci1pdGVtLmlzLWFjdGl2ZSAucGFydG5lci1zbGlkZXItbG9nby5jbHIge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zZWN0aW9uLWNhcmVlciB7XG4gIHBhZGRpbmctdG9wOiAzLjc1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAzLjc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuc2VjdGlvbi1jYXJlZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTIuMTg3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5zZWN0aW9uLWNhcmVlciAuYWJvdXQtdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLnNlY3Rpb24tY2FyZWVyIC5hYm91dC10aXRsZTphZnRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi5jYXJlZXItc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogNi4yNWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgLmNhcmVlci1zZWN0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmNhcmVlci1zZWN0aW9uOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogdXJsKGltYWdlcy9sb2dvLWljb25vLnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIHdpZHRoOiAyLjVlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1MGVtKSB7XG4gICAgICAuY2FyZWVyLXNlY3Rpb246YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gIC5jYXJlZXItc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmNhcmVlci1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjA2MjVlbTsgfSB9XG4gIC5jYXJlZXItc2VjdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMTI1ZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgLmNhcmVlci1zZWN0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuMDYyNWVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNWVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICAuY2FyZWVyLXNlY3Rpb246bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgbGVmdDogMC4zMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgICAgICAuY2FyZWVyLXNlY3Rpb246bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMuMTI1ZW07IH0gfVxuXG4uY2FyZWVyLXR4LFxuLmNhcmVlci1saXN0LWl0ZW0ge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtOyB9XG4gIC5jYXJlZXItdHggYSxcbiAgLmNhcmVlci1saXN0LWl0ZW0gYSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuY2FyZWVyLXR4IGJyLFxuICAgIC5jYXJlZXItbGlzdC1pdGVtIGJyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2FyZWVyLWxpc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAuY2FyZWVyLWxpc3QtaXRlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDsgfVxuXG4uc2VjdGlvbi1wcmVzcyB7XG4gIHBhZGRpbmctdG9wOiAxMGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTEuMjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTBlbSkge1xuICAgIC5zZWN0aW9uLXByZXNzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjI1ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNy41ZW07IH0gfVxuXG4ucHJlc3MtaXRlbSB7XG4gIHBhZGRpbmc6IDAgMS4yNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnByZXNzLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDVlbTsgfVxuICAucHJlc3Mtc2xpZGVyIC5wcmVzcy1pdGVtIHtcbiAgICBwYWRkaW5nOiAwIDMuMTI1ZW07IH1cblxuLnRlc3RpbW9ueS1zbGlkZXIge1xuICBwYWRkaW5nLXRvcDogNWVtO1xuICBtYXJnaW4tdG9wOiA1ZW07XG4gIGJvcmRlci10b3A6IDAuMTg3NXJlbSBzb2xpZCAjQ0RFMjAxOyB9XG5cbi5wcmVzcy1zbGlkZXIsXG4udGVzdGltb255LXNsaWRlciB7XG4gIHBhZGRpbmctbGVmdDogMy43NWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzLjc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM5LjM3NWVtKSB7XG4gICAgLnByZXNzLXNsaWRlcixcbiAgICAudGVzdGltb255LXNsaWRlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuLnByZXNzLWxvZ28td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA1ZW07IH1cbiAgLnByZXNzLWxvZ28td3JhcHBlciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLnByZXNzLXR4IHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzVlbTtcbiAgbWFyZ2luOiAyLjVlbSAwIDA7IH1cblxuLnByZXNzLXNsaWRlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5wcmVzcy1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzkuMzc1ZW0pIHtcbiAgICAucHJlc3Mtc2xpZGVyLW5hdiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnByZXNzLXNsaWRlci1uYXYgLnNsaWRlci1wcmVzcy1uYXYtcHJldixcbiAgLnByZXNzLXNsaWRlci1uYXYgLnNsaWRlci1wcmVzcy1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6ICNDREUyMDE7IH1cbiAgLnByZXNzLXNsaWRlci1uYXYgLnNsaWRlci1wcmVzcy1uYXYtcHJldiB7XG4gICAgbGVmdDogMDsgfVxuICAucHJlc3Mtc2xpZGVyLW5hdiAuc2xpZGVyLXByZXNzLW5hdi1uZXh0IHtcbiAgICByaWdodDogMDsgfVxuICAucHJlc3Mtc2xpZGVyLW5hdiAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiAyLjA2MjVlbTsgfVxuICAucHJlc3Mtc2xpZGVyLW5hdiAuc2xpZGVyLXByZXNzLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi5zZWN0aW9uLWV2ZW50cyB7XG4gIHBhZGRpbmctdG9wOiAwLjYyNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMi41ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuc2VjdGlvbi1ldmVudHMge1xuICAgICAgcGFkZGluZy10b3A6IDIuNWVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVlbTsgfSB9XG4gIC5zZWN0aW9uLWV2ZW50cyAuYWJvdXQtdGl0bGUge1xuICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG4gICAgLnNlY3Rpb24tZXZlbnRzIC5hYm91dC10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDNyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAwLjI1cmVtIHNvbGlkICNDREUyMDE7XG4gICAgICBtYXJnaW4tdG9wOiAwLjkzNzVlbTsgfVxuXG4uZXZlbnRzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbTogZmxleC1zdGFydDtcbiAgbWFyZ2luLXRvcDogNS42MjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgLmV2ZW50cy13cmFwcGVyLmRlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5ldmVudHMtd3JhcHBlci5tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgICAuZXZlbnRzLXdyYXBwZXIubW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1ZW07IH0gfVxuXG4uZXZlbnRzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmV2ZW50cy1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDE1JTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZXZlbnRzLXNsaWRlci1uYXYgLnNsaWRlci1ldmVudHMtbmF2LXByZXYsXG4gIC5ldmVudHMtc2xpZGVyLW5hdiAuc2xpZGVyLWV2ZW50cy1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6ICNDREUyMDE7IH1cbiAgLmV2ZW50cy1zbGlkZXItbmF2IC5zbGlkZXItZXZlbnRzLW5hdi1wcmV2IHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5ldmVudHMtc2xpZGVyLW5hdiAuc2xpZGVyLWV2ZW50cy1uYXYtbmV4dCB7XG4gICAgcmlnaHQ6IDA7IH1cbiAgLmV2ZW50cy1zbGlkZXItbmF2IC5pY29uLWFycm93IHtcbiAgICBmb250LXNpemU6IDIuMDYyNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDI2Ljg3NWVtKSB7XG4gICAgICAuZXZlbnRzLXNsaWRlci1uYXYgLmljb24tYXJyb3cge1xuICAgICAgICBmb250LXNpemU6IDEuNTYyNWVtOyB9IH1cbiAgLmV2ZW50cy1zbGlkZXItbmF2IC5zbGlkZXItZXZlbnRzLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi5ldmVudC1pdGVtIHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZy1yaWdodDogMy4xMjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMy43NWVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgICAuZXZlbnQtaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgMS44NzVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuZXZlbnQtaXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgICAuZXZlbnQtaXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBwYWRkaW5nOiAwIDEuODc1ZW07IH0gfVxuXG4uZXZlbnQtdGl0bGUsXG4uZXZlbnQtY2l0eSxcbi5ldmVudC1kZXNjcmlwdGlvbixcbi5ldmVudC1saW5rIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgIC5ldmVudC10aXRsZSxcbiAgICAuZXZlbnQtY2l0eSxcbiAgICAuZXZlbnQtZGVzY3JpcHRpb24sXG4gICAgLmV2ZW50LWxpbmsge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5ldmVudC10aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4uZXZlbnQtZGF0ZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRyb2lkIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjQ0RFMjAxO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNWVtOyB9XG5cbi5ldmVudC1jaXR5LFxuLmV2ZW50LWNvdW50cnkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1ZW07XG4gIG1hcmdpbjogMDsgfVxuXG4uZXZlbnQtY2l0eTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gIGhlaWdodDogMS4wNjI1cmVtO1xuICBib3JkZXItbGVmdDogMC4xODc1cmVtIHNvbGlkICNDREUyMDE7XG4gIG1hcmdpbjogMCAwLjYyNWVtIDAgMC45Mzc1ZW07IH1cblxuLmV2ZW50LWRlc2NyaXB0aW9uLFxuLmV2ZW50LWxpbmsge1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ldmVudC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI0NERTIwMTtcbiAgbWFyZ2luLXRvcDogMC4zMTI1ZW07IH1cblxuLnNlY3Rpb24tbWFwIHtcbiAgcGFkZGluZy10b3A6IDUuNjI1ZW07XG4gIHBhZGRpbmctYm90dG9tOiA4Ljc1ZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUwZW0pIHtcbiAgICAuc2VjdGlvbi1tYXAge1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVlbTsgfSB9XG4gIC5zZWN0aW9uLW1hcCAuYWJvdXQtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NWVtOyB9XG5cbi5tYXAtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0Ni44NzVlbSkge1xuICAgIC5tYXAtY29udGFpbmVyIC5tYXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVlbTsgfSB9XG5cbi5vZmZpY2UtaXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWluLXdpZHRoOiAyMy43NWVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0NiwgMjQ2LCAyNDYsIDAuOTIpO1xuICBwYWRkaW5nOiAyLjE4NzVlbSAyLjE4NzVlbSAxLjU2MjVlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAub2ZmaWNlLWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVlbSAwO1xuICAgICAgbWluLXdpZHRoOiBhdXRvOyB9IH1cbiAgLm9mZmljZS1pdGVtLmZyYW5jZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtIDEuNTYyNXJlbSAwIDEuNTYyNXJlbTtcbiAgICB0b3A6IDMuNDM3NWVtO1xuICAgIGxlZnQ6IDcuMTg3NWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAub2ZmaWNlLWl0ZW0uZnJhbmNlIHtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAub2ZmaWNlLWl0ZW0uZnJhbmNlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgIGxlZnQ6IGluaXRpYWw7IH0gfVxuICAub2ZmaWNlLWl0ZW0ucG9sYW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW0gMCAxLjU2MjVyZW0gMS41NjI1cmVtO1xuICAgIGxlZnQ6IDE3LjVlbTtcbiAgICBib3R0b206IDcuNWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAub2ZmaWNlLWl0ZW0ucG9sYW5kIHtcbiAgICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ2Ljg3NWVtKSB7XG4gICAgICAub2ZmaWNlLWl0ZW0ucG9sYW5kIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICAgIHJpZ2h0OiBpbml0aWFsOyB9IH1cbiAgLm9mZmljZS1pdGVtLmNoaW5hIHtcbiAgICBtYXgtd2lkdGg6IDIwZW07XG4gICAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtIDEuNTYyNXJlbSAxLjU2MjVyZW0gMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDYuODc1ZW0pIHtcbiAgICAgIC5vZmZpY2UtaXRlbS5jaGluYSB7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgIHJpZ2h0OiBpbml0aWFsOyB9IH1cblxuLm9mZmljZS1uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2VyaWZcIiwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luOiAwIDAgMC42MjVlbTsgfVxuXG4ub2ZmaWNlLWFkZHJlc3MsXG4ub2ZmaWNlLW1haWwsXG4ub2ZmaWNlLXRlbCxcbi5vZmZpY2Utd2Vic2l0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzQzNzVlbTtcbiAgbWFyZ2luOiAwLjYyNXJlbSAwIDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDIuMTg3NWVtOyB9XG4gIC5vZmZpY2UtYWRkcmVzczpiZWZvcmUsXG4gIC5vZmZpY2UtbWFpbDpiZWZvcmUsXG4gIC5vZmZpY2UtdGVsOmJlZm9yZSxcbiAgLm9mZmljZS13ZWJzaXRlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDsgfVxuXG4ub2ZmaWNlLWFkZHJlc3M6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKFwiaW1hZ2VzL2ljby1ob3VzZS5zdmdcIik7IH1cblxuLm9mZmljZS1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChcImltYWdlcy9pY28tbWFpbC5zdmdcIik7XG4gIHRvcDogMC4xMjVlbTsgfVxuXG4ub2ZmaWNlLXRlbCB7XG4gIG1hcmdpbjogMC43NXJlbSAwIDAuNzVyZW07IH1cbiAgLm9mZmljZS10ZWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiB1cmwoXCJpbWFnZXMvaWNvLXBob25lLnN2Z1wiKTtcbiAgICB0b3A6IC0wLjI1ZW07IH1cblxuLm9mZmljZS13ZWJzaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChcImltYWdlcy9pY28td2Vic2l0ZS5zdmdcIik7IH1cblxuLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTM1cHg7XG4gIHdpZHRoOiBhdXRvOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3Ni4yNWVtKSB7XG4gICAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHtcbiAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgICAgbWFyZ2luOiAwIDEuMjVlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MC42MjVlbSkge1xuICAgIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayB7XG4gICAgICBtYXJnaW46IDAgMy40Mzc1ZW0gMCAxLjI1ZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAgIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayB7XG4gICAgICBtYXJnaW46IDAgMi41ZW0gMCAxLjI1ZW07IH0gfVxuXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjZmZmO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMC4zMTI1cmVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IFwiRHJvaWQgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIGE6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI0NERTIwMTsgfVxuXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgbGkgdWwud3BtbC1scy1zdWItbWVudSB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzVlbSkge1xuICAgIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBsaSB1bC53cG1sLWxzLXN1Yi1tZW51IHtcbiAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNWVtKSB7XG4gICAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIGxpIHVsLndwbWwtbHMtc3ViLW1lbnUgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC4yNXJlbTsgfSB9XG4gIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBsaSB1bC53cG1sLWxzLXN1Yi1tZW51IGxpIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzNWVtKSB7XG4gICAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIGxpIHVsLndwbWwtbHMtc3ViLW1lbnUgbGkgYSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwLjA2MjVyZW0gc29saWQgI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtOyB9IH1cblxuLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIGE6aG92ZXIsXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYTpmb2N1cyxcbi53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayAud3BtbC1scy1jdXJyZW50LWxhbmd1YWdlOmhvdmVyID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYS53cG1sLWxzLWl0ZW0tdG9nZ2xlIHtcbiAgY29sb3I6ICNDREUyMDE7XG4gIGJvcmRlci1jb2xvcjogI0NERTIwMTtcbiAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtOyB9XG4gIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBhLndwbWwtbHMtaXRlbS10b2dnbGU6aG92ZXIge1xuICAgIGNvbG9yOiAjQ0RFMjAxOyB9XG4gIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBhLndwbWwtbHMtaXRlbS10b2dnbGU6YWZ0ZXIge1xuICAgIHRvcDogMC40Mzc1cmVtO1xuICAgIHJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIGhlaWdodDogMC41cmVtO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDAuMTI1cmVtIHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgI2ZmZjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjE3LCAwLjY3LCAwLjgzLCAwLjY3KTsgfVxuICAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYS53cG1sLWxzLWl0ZW0tdG9nZ2xlLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICBtYXJnaW4tdG9wOiAwLjE4NzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjQ0RFMjAxOyB9XG5cbi53cG1sLWxzLWl0ZW0temgtaGFucyBhIHtcbiAgcGFkZGluZzogMC4zMTI1cmVtIDA7IH1cblxuLm1lbnUtbW9iaWxlIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayB7XG4gIG1hcmdpbi10b3A6IDIuMjVlbTsgfVxuICAubWVudS1tb2JpbGUgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrID4gdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAyLjM3NXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZW51LW1vYmlsZSAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgdWwge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGluaXRpYWw7IH1cbiAgICAubWVudS1tb2JpbGUgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHVsIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMC4xMjVyZW0gc29saWQgI2ZmZjsgfVxuICAgIC5tZW51LW1vYmlsZSAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgdWwgbGksXG4gICAgLm1lbnUtbW9iaWxlIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayB1bCBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICAubWVudS1tb2JpbGUgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHVsIGEge1xuICAgICAgcGFkZGluZzogMCAwLjYyNXJlbSAwIDAuMzEyNXJlbTsgfVxuXG4ubWVudS1tb2JpbGUgYS53cG1sLWxzLWl0ZW0tdG9nZ2xlIHtcbiAgYm9yZGVyLXJpZ2h0OiAwLjEyNXJlbSBzb2xpZCAjQ0RFMjAxO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjYyNXJlbSAwLjA2MjVyZW0gMC4zMTI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1lbnUtbW9iaWxlIGEud3BtbC1scy1pdGVtLXRvZ2dsZTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTksIDQxLCA3NSwgMC41KTtcbiAgei1pbmRleDogMjAwMDsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAubGFuZ3VhZ2Utc3dpdGNoZXItdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NWVtOyB9XG4gICAgLmxhbmd1YWdlLXN3aXRjaGVyLW91dHRlcldyYXBwZXIgLmxhbmd1YWdlLXN3aXRjaGVyLXRpdGxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci10b3A6IDAuMjVyZW0gc29saWQgI0NERTIwMTtcbiAgICAgIG1hcmdpbi10b3A6IDAuOTM3NWVtOyB9XG4gIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayB7XG4gICAgcmlnaHQ6IGluaXRpYWw7IH1cbiAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgPiB1bCA+IGxpID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzlCOUI5QjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAwLjVyZW0gMCAwLjVyZW07XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cbiAgICAgIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayA+IHVsID4gbGkgPiBhLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAwIDAgMDsgfVxuICAgICAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgPiB1bCA+IGxpID4gYS5pcy1hY3RpdmU6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIGJvdHRvbTogMC4xMjVyZW07XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA4OSU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICMxMzI5NEI7IH1cbiAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYSB7XG4gICAgICBjb2xvcjogIzEzMjk0QjtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMTMyOTRCOyB9XG4gIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBhLndwbWwtbHMtaXRlbS10b2dnbGU6YWZ0ZXIge1xuICAgIHRvcDogMzYlO1xuICAgIHJpZ2h0OiAwLjkzNzVyZW07XG4gICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICB3aWR0aDogMC42MjVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjMTMyOTRCOyB9XG4gIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBsaSB1bC53cG1sLWxzLXN1Yi1tZW51IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICM5QjlCOUI7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMC41cmVtIDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwLjkzNzVyZW0gMC45Mzc1cmVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjEyNXJlbTsgfVxuICAgIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBsaSB1bC53cG1sLWxzLXN1Yi1tZW51IGEge1xuICAgICAgY29sb3I6ICNDREUyMDE7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgbGkgdWwud3BtbC1scy1zdWItbWVudSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMxMzI5NEI7IH1cbiAgICAubGFuZ3VhZ2Utc3dpdGNoZXItb3V0dGVyV3JhcHBlciAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgbGkgdWwud3BtbC1scy1zdWItbWVudSBsaTpmaXJzdC1jaGlsZCBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDAuMTI1cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgI0MwQzBDMDsgfVxuICAgIC5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIC53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBsaSB1bC53cG1sLWxzLXN1Yi1tZW51IGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtOyB9XG5cbi5sYW5ndWFnZS1zd2l0Y2hlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogMy4xMjVlbSA4LjQzNzVlbTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogICAgIyBVdGlsc1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51LWNmOmJlZm9yZSwgLnUtY2Y6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLnUtY2Y6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4udS1ub0JmYyB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsgfVxuXG4udS1mbG9hdExlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi51LWZsb2F0UmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4udS0xMDB2aCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG5cbi51LWhpZGVNb2JpbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAgIC51LWhpZGVNb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLnUtc2hvd01vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnUtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBTcGFjaW5nIGhlbHBlcnNcbiAqICAgcCxtID0gcGFkZGluZywgbWFyZ2luXG4gKiAgIGEsdCxyLGIsbCA9IGFsbCwgdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0XG4gKiAgIG4scyxtLGwgPSBub25lLCBzbWFsbCwgbWVkaXVtLCBsYXJnZVxuICovXG4vKiBNYXJnaW4gKi9cbi51LW1hbiB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi51LW1ibiB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4udS1tYnMge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtbWJtIHtcbiAgbWFyZ2luLWJvdHRvbTogMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LW1ibCB7XG4gIG1hcmdpbi1ib3R0b206IDQuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtbXRuIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi51LW10cyB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tdG0ge1xuICBtYXJnaW4tdG9wOiAzLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtbXRsIHtcbiAgbWFyZ2luLXRvcDogNC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tbG4ge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi51LW1scyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnUtbWxtIHtcbiAgbWFyZ2luLWxlZnQ6IDMuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tbGwge1xuICBtYXJnaW4tbGVmdDogNC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tcm4ge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4udS1tcnMge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tcm0ge1xuICBtYXJnaW4tcmlnaHQ6IDMuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1tcmwge1xuICBtYXJnaW4tcmlnaHQ6IDQuODc1cmVtICFpbXBvcnRhbnQ7IH1cblxuLyogUGFkZGluZyAqL1xuLnUtcGFuIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi51LXBibiB7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnUtcGJzIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1wYm0ge1xuICBwYWRkaW5nLWJvdHRvbTogMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXBibCB7XG4gIHBhZGRpbmctYm90dG9tOiA0Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXB0biB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLnUtcHRzIHtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1wdG0ge1xuICBwYWRkaW5nLXRvcDogMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXB0bCB7XG4gIHBhZGRpbmctdG9wOiA0Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXBsbiB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi51LXBscyB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXBsbSB7XG4gIHBhZGRpbmctbGVmdDogMy4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXBsbCB7XG4gIHBhZGRpbmctbGVmdDogNC44NzVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1wcm4ge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnUtcHJzIHtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXBybSB7XG4gIHBhZGRpbmctcmlnaHQ6IDMuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4udS1wcmwge1xuICBwYWRkaW5nLXJpZ2h0OiA0Ljg3NXJlbSAhaW1wb3J0YW50OyB9XG5cbi51LXR4dFVwcGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi51LXR4dExvd2VyIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi51LXR4dENlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG5cbi51LXR4dExlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLnUtdHh0UmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi51LXR4dEJyZWFrIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IH1cblxuLnUtdHh0Tm9XcmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG5cbi51LXR4dEtlcm4ge1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiIDE7XG4gIGZvbnQta2VybmluZzogbm9ybWFsOyB9XG4iLCIvKlxuVGhlbWUgTmFtZTogVWJ1ZHVcbkF1dGhvcjogQW5nw6hsZSBUZW5vdFxuQXV0aG9yIFVSSTogaHR0cDovL3d3dy51YnVkdS5jb20vXG5EZXNjcmlwdGlvbjogVWJ1ZHUgbmV3IHdlYnNpdGUgVGhlbWVcblZlcnNpb246IDEuMFxuTGljZW5zZTogQ3VzdG9tIENsaWVudCBUaGVtZS4gU2hvdWxkIG5vdCBiZSBkaXN0cmlidXRlZC5cbiovXG4iLCJAaW1wb3J0IFwiX3RoZW1lLWluZm9cIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFNldHRpbmdzLCBGdW5jdGlvbnMuLi5cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwiYmFzZS9fYi1ub3JtYWxpemUuc2Nzc1wiO1xuQGltcG9ydCBcInRvb2xzL19mdW5jdGlvblwiO1xuQGltcG9ydCBcInRvb2xzL19taXhpbnNcIjtcbkBpbXBvcnQgXCJfc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJ0b29scy9fZXh0ZW5kXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBCYXNlXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AaW1wb3J0IFwiYmFzZS9fYi1mb250LWZhY2VcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWluaXRcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWxpbmtcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWxpc3RcIjtcbkBpbXBvcnQgXCJiYXNlL19iLXR5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWVtYmVkXCI7XG5AaW1wb3J0IFwiYmFzZS9fYi1ncm91cGluZy1jb250ZW50XCI7XG5AaW1wb3J0IFwiYmFzZS9fYi1mb3JtXCI7XG5AaW1wb3J0IFwiYmFzZS9fYi10YWJsZVwiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgTGF5b3V0XG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2xheW91dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2xpc3RcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL190eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faGVhZGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9vdGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnV0dG9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faWNvbnNcIjtcblxuQGltcG9ydCBcImNvbXBvbmVudHMvX21lbnVcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb3JtXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faWNvbmJveFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NsaWNrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faG9tZXBhZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19wYWdlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcG9zdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3R3ZWV0c1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2FzaWRlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc2VhcmNoZm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3BhZ2VibG9nXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc2luZ2xlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fY29udGFjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NvbHV0aW9uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RlY2hub2xvZ3lcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hYm91dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3dwbWxcIjtcblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgVXRpbHNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJ1dGlscy9fdS1sYXlvdXRcIjtcbkBpbXBvcnQgXCJ1dGlscy9fdS1zaG93LWhpZGVcIjtcbkBpbXBvcnQgXCJ1dGlscy9fdS1zcGFjaW5nXCI7XG5AaW1wb3J0IFwidXRpbHMvX3UtdGV4dFwiO1xuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG4vKlxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuKi9cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gIG1hcmdpbjogMDsgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuZ3VcblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCJoMSB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtWFhMO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtWEw7XG59XG5cbmgzIHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1MO1xufVxuXG5oNCB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtTTtcbn1cblxuaDUge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhTO1xufVxuXG5oNiB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtWFM7XG59XG5cbnAge1xuICBtYXJnaW46ICRzcGFjZXItcyAwO1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwXG4gIH1cbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IGVtKDE2KTtcbn1cblxuYWJiclt0aXRsZV0ge1xuICBmb250LXZhcmlhbnQ6IHNtYWxsLWNhcHM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5cbmFiYnIsXG5hY3JvbnltIHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuIiwiJXRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgJHNwYWNlci1zIDA7XG4gIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDBcbiAgfVxufVxuXG4ldHJ1bmNhdGUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICAgQmFzZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2UgY29sb3JcbiRjbHItbGlnaHQgICAgIDogI2ZmZjtcbiRjbHItZXJyb3IgICAgIDogI0YyREVERTtcbiRjbHItc3VjY2VzcyAgIDogI0RGRjBEODtcbiRjbHItYWxlcnQgICAgIDogI0ZDRjhFMztcbiRjbHItbm90aWNlICAgIDogI0Q5RURGNztcblxuJGNsci0wLWRhcmtlbiAgOiAjMDAwO1xuJGNsci0wLWRhcmsgICAgOiAjMzMzO1xuJGNsci0wICAgICAgICAgOiAjNjY2O1xuJGNsci0wLWxpZ2h0ZXIgOiAjOWI5YjliO1xuJGNsci0wLWxpZ2h0ICAgOiAjY2VjZWNlO1xuJGNsci0wLWxpZ2h0ZW4gOiAjZWVlZWVlO1xuXG4kY2xyLTEgICAgICAgICA6ICMxMzI5NEI7XG4kY2xyLTEtbGlnaHQgICA6IHRpbnQoJGNsci0xLCA1MCUpO1xuJGNsci0xLWxpZ2h0ZW4gOiB0aW50KCRjbHItMSwgODUlKTtcbiRjbHItMS1kYXJrICAgIDogc2hhZGUoJGNsci0xLCAxNSUpO1xuJGNsci0xLWRhcmtlbiAgOiBzaGFkZSgkY2xyLTEsIDMwJSk7XG5cbiRjbHItMiAgICAgICAgIDogI0NERTIwMTtcbiRjbHItMi1saWdodCAgIDogdGludCgkY2xyLTIsIDUwJSk7XG4kY2xyLTItbGlnaHRlbiA6IHRpbnQoJGNsci0yLCA4NSUpO1xuJGNsci0yLWRhcmsgICAgOiBzaGFkZSgkY2xyLTIsIDE1JSk7XG4kY2xyLTItZGFya2VuICA6IHNoYWRlKCRjbHItMiwgMzAlKTtcblxuJGNsci0zICAgICAgICAgOiAjRUQ4QjBBO1xuJGNsci0zLWxpZ2h0ICAgOiB0aW50KCRjbHItMywgNTAlKTtcbiRjbHItMy1saWdodGVuIDogdGludCgkY2xyLTMsIDg1JSk7XG4kY2xyLTMtZGFyayAgICA6IHNoYWRlKCRjbHItMywgMTUlKTtcbiRjbHItMy1kYXJrZW4gIDogc2hhZGUoJGNsci0zLCAzMCUpO1xuXG5cbi8vIENTUzNcbiRyYWQgICA6IC4zcmVtO1xuJHRyYW5zIDogYWxsIC4zcyBjdWJpYy1iZXppZXIoLjE3LC42NywuODMsLjY3KTtcbiRlYXNpbmc6IGN1YmljLWJlemllciguMTcsLjY3LC44MywuNjcpO1xuXG4vLyBGb250XG4kZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtZmFtaWx5ICAgOiAnRHJvaWQgU2FucycsIHNhbnMtc2VyaWY7XG4kc2Vjb25kYXJ5LWZvbnQtZmFtaWx5IDogJ0Ryb2lkIFNlcmlmJywgc2VyaWY7XG4kdGl0bGUtZm9udC1mYW1pbHkgOiBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4kY29kZS1mb250ICAgICAgICAgIDogJ1NvdXJjZSBDb2RlIFBybycsIENvbnNvbGFzLCBtb25vc3BhY2U7XG4kYmFzZS1mb250LXNpemUgICAgIDogZW0oMTYsICRlbS1iYXNlKTtcbiRiYXNlLWxpbmUtaGVpZ2h0ICAgOiAxLjYyNWVtO1xuJGJhc2UtZm9udC1jb2xvciAgICA6ICRjbHItMTtcblxuJGhlYWRlci1mb250LWZhbWlseSA6ICRiYXNlLWZvbnQtZmFtaWx5O1xuJGhlYWRlci1saW5lLWhlaWdodCA6IDEuMjVlbTtcbiRoZWFkZXItZm9udC1jb2xvciAgOiAkY2xyLTAtZGFya2VuO1xuXG4kZm9udC1zaXplLVhYTCA6IGVtKDMyLCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVhMICA6IGVtKDI4LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLUwgICA6IGVtKDI0LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLU0gICA6IGVtKDIwLCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVMgICA6IGVtKDE4LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVhTICA6IGVtKDE2LCAkZW0tYmFzZSk7XG5cbi8vIExpbmtcbiRiYXNlLWxpbmstY29sb3IgIDogJGNsci0xO1xuJGJhc2UtbGluay1jb2xvci1ob3ZlciA6ICRjbHItMztcblxuLy8gIEdyaWRcbiR3cmFwLW1heC13aWR0aCA6IGVtKDEyOTAsICRlbS1iYXNlKTtcbiR3cmFwLW1pbi13aWR0aCA6IGVtKDMyMCwgJGVtLWJhc2UpO1xuJGd1dHRlci13aWR0aCAgIDogcmVtKDIwKTtcblxuLy8gQm9yZGVyIGNvbG9yXG4kYmFzZS1ib3JkZXItY29sb3IgOiAkY2xyLTAtbGlnaHQ7XG5cbi8vIEZvcm1zXG4kZm9ybS1ib3JkZXItY29sb3IgICAgICAgOiAkY2xyLTAtbGlnaHQ7XG4kZm9ybS1ib3JkZXItY29sb3ItaG92ZXIgOiBzaGFkZSgkY2xyLTAtbGlnaHQsIDIwJSkgO1xuJGZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzIDogJGNsci0xO1xuJGZvcm0tYm9yZGVyLXJhZGl1cyAgICAgIDogJHJhZDtcbiRmb3JtLWJveC1zaGFkb3cgICAgICAgICA6IG5vbmU7XG4kZm9ybS1ib3gtc2hhZG93LWZvY3VzICAgOiAkZm9ybS1ib3gtc2hhZG93LCAwIDAgNXB4IHJnYmEoZGFya2VuKCRmb3JtLWJvcmRlci1jb2xvci1mb2N1cywgNSksIDAuNyk7XG4kY29sb3ItbWl4aW4tcGxhY2Vob2xkZXIgOiB0aW50KCRjbHItMCwgNjAlKTtcbiRmb3JtLWZvbnQtc2l6ZSAgICAgICAgICA6ICRiYXNlLWZvbnQtc2l6ZTtcbiRmb3JtLWZvbnQtZmFtaWx5ICAgICAgICA6ICRiYXNlLWZvbnQtZmFtaWx5O1xuXG4vLyBTcGFjaW5nXG4kc3BhY2VyICAgOiByZW0oMjYpO1xuJHNwYWNlci1uIDogMDtcbiRzcGFjZXItcyA6ICRndXR0ZXItd2lkdGg7XG4kc3BhY2VyLW0gOiAkc3BhY2VyICogMjtcbiRzcGFjZXItbCA6ICRzcGFjZXIgKiAzO1xuXG4vLyBCcmVha3BvaW50cyAoY2hvb3NlIHVuaXQgeW91IHByZWZlcilcbiRtcS1zICAgICAgOiBlbSg0ODAsICRlbS1iYXNlKTtcbiRtcS1zLXVwICAgOiBlbSg0ODEsICRlbS1iYXNlKTtcbiRtcS1tICAgICAgOiBlbSg3NjgsICRlbS1iYXNlKTtcbiRtcS1tLXVwICAgOiBlbSg3NjksICRlbS1iYXNlKTtcbiRtcS1sICAgICAgOiBlbSgxMDI0LCAkZW0tYmFzZSk7XG4kbXEtbC11cCAgIDogZW0oMTAyNSwgJGVtLWJhc2UpO1xuIiwiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdEcm9pZCBTYW5zJztcbiAgICBzcmM6IHVybCgnZm9udHMvRHJvaWRTYW5zLmVvdCcpO1xuICAgIHNyYzogdXJsKCdmb250cy9Ecm9pZFNhbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCdmb250cy9Ecm9pZFNhbnMud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJ2ZvbnRzL0Ryb2lkU2Fucy5zdmcjRHJvaWRTYW5zJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdEcm9pZCBTYW5zJztcbiAgICBzcmM6IHVybCgnZm9udHMvRHJvaWRTYW5zLUJvbGQuZW90Jyk7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0Ryb2lkU2Fucy1Cb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnZm9udHMvRHJvaWRTYW5zLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJ2ZvbnRzL0Ryb2lkU2Fucy1Cb2xkLnN2ZyNEcm9pZFNhbnMtQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0Ryb2lkIFNlcmlmJztcbiAgICBzcmM6IHVybCgnZm9udHMvRHJvaWRTZXJpZi1Cb2xkSXRhbGljLmVvdCcpO1xuICAgIHNyYzogdXJsKCdmb250cy9Ecm9pZFNlcmlmLUJvbGRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCdmb250cy9Ecm9pZFNlcmlmLUJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJ2ZvbnRzL0Ryb2lkU2VyaWYtQm9sZEl0YWxpYy5zdmcjRHJvaWRTZXJpZi1Cb2xkSXRhbGljJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnRHJvaWQgU2VyaWYnO1xuICAgIHNyYzogdXJsKCdmb250cy9Ecm9pZFNlcmlmLmVvdCcpO1xuICAgIHNyYzogdXJsKCdmb250cy9Ecm9pZFNlcmlmLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnZm9udHMvRHJvaWRTZXJpZi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnZm9udHMvRHJvaWRTZXJpZi5zdmcjRHJvaWRTZXJpZicpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnRHJvaWQgU2VyaWYnO1xuICAgIHNyYzogdXJsKCdmb250cy9Ecm9pZFNlcmlmLUl0YWxpYy5lb3QnKTtcbiAgICBzcmM6IHVybCgnZm9udHMvRHJvaWRTZXJpZi1JdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCdmb250cy9Ecm9pZFNlcmlmLUl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnZm9udHMvRHJvaWRTZXJpZi1JdGFsaWMuc3ZnI0Ryb2lkU2VyaWYtSXRhbGljJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdEcm9pZCBTZXJpZic7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0Ryb2lkU2VyaWYtQm9sZC5lb3QnKTtcbiAgICBzcmM6IHVybCgnZm9udHMvRHJvaWRTZXJpZi1Cb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnZm9udHMvRHJvaWRTZXJpZi1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCdmb250cy9Ecm9pZFNlcmlmLUJvbGQuc3ZnI0Ryb2lkU2VyaWYtQm9sZCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuIiwiaHRtbCxcbmJvZHkge1xuICBtYXJnaW46MDtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkY2xyLWxpZ2h0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLm1haW5Db250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIi8vIFN0cmlwcyB0aGUgdW5pdCBmcm9tIGEgbnVtYmVyLlxuLy9cbi8vIEBwYXJhbSB7TnVtYmVyIChXaXRoIFVuaXQpfSAkdmFsdWVcbi8vXG4vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vICAgJGRpbWVuc2lvbjogc3RyaXAtdW5pdHMoMTBlbSk7XG4vL1xuLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8gICAkZGltZW5zaW9uOiAxMDtcbi8vXG4vLyBAcmV0dXJuIHtOdW1iZXIgKFVuaXRsZXNzKX1cbkBmdW5jdGlvbiBzdHJpcC11bml0cygkdmFsdWUpIHtcbiAgQHJldHVybiAoJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKSk7XG59XG5cbi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSBlbSgxMikgd2hlbiB0aGUgcGFyZW50IGlzIDE2cHhcbi8vIGlmIHRoZSBwYXJlbnQgaXMgYW5vdGhlciB2YWx1ZSBzYXkgMjRweCB3cml0ZSBlbSgxMiwgMjQpXG5AZnVuY3Rpb24gZW0oJHB4dmFsLCAkYmFzZTogJGVtLWJhc2UpIHtcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMWVtO1xufVxuXG4vLyBDb252ZXJ0IHBpeGVscyB0byByZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIHJlbSgxMilcbi8vIEFzc3VtZXMgJGVtLWJhc2UgaXMgdGhlIGZvbnQtc2l6ZSBvZiA8aHRtbD5cbkBmdW5jdGlvbiByZW0oJHB4dmFsKSB7XG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XG4gICAgJHB4dmFsOiBzdHJpcC11bml0cygkcHh2YWwpO1xuICB9XG4gICRiYXNlOiAkZW0tYmFzZTtcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMXJlbTtcbn1cblxuLy8gTWl4ZXMgYSBjb2xvciB3aXRoIGJsYWNrLlxuLy9cbi8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy9cbi8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcbi8vICAgVGhlIGFtb3VudCBvZiBibGFjayB0byBiZSBtaXhlZCBpbi5cbi8vXG4vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vICAgLmVsZW1lbnQge1xuLy8gICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCNmZmJiNTIsIDYwJSk7XG4vLyAgIH1cbi8vXG4vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLyAgIC5lbGVtZW50IHtcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8gICB9XG4vL1xuLy8gQHJldHVybiB7Q29sb3J9XG5cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XG4gIEByZXR1cm4gbWl4KCMwMDAsICRjb2xvciwgJHBlcmNlbnQpO1xufVxuXG4vLyBNaXhlcyBhIGNvbG9yIHdpdGggd2hpdGUuXG4vL1xuLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yXG4vL1xuLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8gICBUaGUgYW1vdW50IG9mIHdoaXRlIHRvIGJlIG1peGVkIGluLlxuLy9cbi8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8gICAuZWxlbWVudCB7XG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdGludCgjNmVjYWE2LCA0MCUpO1xuLy8gICB9XG4vL1xuLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8gICAuZWxlbWVudCB7XG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4ZGZjOTtcbi8vICAgfVxuLy9cbi8vIEByZXR1cm4ge0NvbG9yfVxuXG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50KSB7XG4gIEByZXR1cm4gbWl4KCNmZmYsICRjb2xvciwgJHBlcmNlbnQpO1xufVxuIiwiYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRiYXNlLWxpbmstY29sb3I7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4iLCIlc3BhY2UtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206ICRiYXNlLWxpbmUtaGVpZ2h0IC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkYmFzZS1saW5lLWhlaWdodDtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMFxuICB9XG59XG5cbnVsIHtcbiAgQGV4dGVuZCAlc3BhY2UtbGlzdDtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxub2wge1xuICBAZXh0ZW5kICVzcGFjZS1saXN0O1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206ICRiYXNlLWxpbmUtaGVpZ2h0IC8gMjtcbiAgZHQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6ICRiYXNlLWxpbmUtaGVpZ2h0IC8gMjtcbiAgfVxuICBkZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCJpbWcsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG5pZnJhbWUge1xuICBib3JkZXI6IDA7XG59XG4iLCJmaWd1cmUge1xuICBtYXJnaW46IDAgMCAkc3BhY2VyLXMgMDtcbn1cblxuZmlnY2FwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiBlbSgxNCk7XG59XG5cbmhyIHtcbiAgbWFyZ2luOiAkc3BhY2VyLW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogJHNwYWNlci1tIDA7XG4gIHBhZGRpbmctbGVmdDogJHNwYWNlci1zIDtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkYmFzZS1ib3JkZXItY29sb3I7XG4gIGNvbG9yOiBsaWdodGVuKCRiYXNlLWZvbnQtY29sb3IsIDE1KTtcbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXDIwMTQgXFwwMEEwJztcbiAgfVxufVxuXG5jaXRlIHtcbiAgY29sb3I6IGxpZ2h0ZW4oJGJhc2UtZm9udC1jb2xvciwgMjUpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbnByZSB7XG4gIGZvbnQtc2l6ZTogZW0oMTMpO1xufVxuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250O1xuICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuY29kZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgcGFkZGluZzogMCAuNWVtO1xuICBmb250LXNpemU6IC43NWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkY2xyLTItbGlnaHQ7XG4gIGNvbG9yOiAkY2xyLTI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjbHItMi1saWdodGVuO1xuICBib3JkZXItcmFkaXVzOiAkcmFkO1xufVxuIiwiaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCB7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkZm9ybS1mb250LXNpemU7XG59XG5cbmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXItcy8yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICYucmVxdWlyZWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiICpcIjtcbiAgfVxuICBhYmJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuc2VsZWN0W211bHRpcGxlPW11bHRpcGxlXSB7XG4gIHBhZGRpbmc6IGVtKDEwKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXItcztcbiAgYm9yZGVyOiAxcHggc29saWQgJGZvcm0tYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLWxpZ2h0O1xuICBmb250LWZhbWlseTogJGZvcm0tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvcm0tZm9udC1zaXplO1xuICBib3JkZXItcmFkaXVzOiAkZm9ybS1ib3JkZXItcmFkaXVzO1xuICBib3gtc2hhZG93OiAkZm9ybS1ib3gtc2hhZG93O1xuICB0cmFuc2l0aW9uOiAkdHJhbnM7XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1ib3JkZXItY29sb3ItaG92ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWJvcmRlci1jb2xvci1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkZm9ybS1ib3gtc2hhZG93LWZvY3VzO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogJHNwYWNlci1zLzI7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zO1xuICBwYWRkaW5nLWJvdHRvbTogKCRzcGFjZXItcyAvIDMpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwICgkYmFzZS1saW5lLWhlaWdodCAvIDIpIDA7XG4gIHBhZGRpbmc6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICBib3JkZXI6IDFweCBzb2xpZCAkYmFzZS1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRjbHItMC1saWdodGVuO1xuICBib3JkZXItcmFkaXVzOiAkZm9ybS1ib3JkZXItcmFkaXVzO1xufVxuXG5pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAkY29sb3ItbWl4aW4tcGxhY2Vob2xkZXI7XG59XG5cbi8vIEZpcmVmb3ggMThcbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGNvbG9yLW1peGluLXBsYWNlaG9sZGVyO1xufVxuXG4vLyBGaXJlZm94IDE5K1xuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGNvbG9yLW1peGluLXBsYWNlaG9sZGVyO1xufVxuXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGNvbG9yLW1peGluLXBsYWNlaG9sZGVyO1xufVxuIiwidGFibGUge1xuICBtYXJnaW46ICRzcGFjZXItcyAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xufVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG50aCB7XG4gIHBhZGRpbmc6ICRzcGFjZXItcztcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gICsgdGgge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdGludCgkYmFzZS1ib3JkZXItY29sb3IsIDUwJSk7XG4gIH1cbn1cblxudGJvZHkge1xuICB0ciB7XG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZDogJGNsci0wLWxpZ2h0ZW47XG4gICAgfVxuICB9XG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkc3BhY2VyLXMvMiAkc3BhY2VyLXM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcbiAgICArIHRkIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdGludCgkYmFzZS1ib3JkZXItY29sb3IsIDUwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFdyYXBwZXJcbiAqL1xuXG4ud3JhcHBlciB7XG4gIHdpZHRoOiBlbSgxMjkwKTtcbiAgcGFkZGluZy1sZWZ0OiAgJGd1dHRlci13aWR0aDtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlci13aWR0aDtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRtcS1zLXVwICkge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogIGF1dG87XG4gICAgbWF4LXdpZHRoOiAkd3JhcC1tYXgtd2lkdGg7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEzMDApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgcmVtKDIwKTtcbiAgfVxufVxuXG4ud3JhcHBlci1zIHtcbiAgd2lkdGg6IGVtKDEwOTApO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAgYXV0bztcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDExMDApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgcmVtKDIwKTtcbiAgfVxufVxuXG4ud3JhcHBlci1sIHtcbiAgd2lkdGg6IGVtKDEyNTApO1xuICBwYWRkaW5nOiAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTExMCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyoqXG4gKiBHcmlkXG4gKi9cblxuQG1lZGlhIChtaW4td2lkdGg6ICRtcS1zLXVwKSB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0jeyRndXR0ZXItd2lkdGgvMn07XG4gICAgbWFyZ2luLWxlZnQ6ICAtI3skZ3V0dGVyLXdpZHRoLzJ9O1xuICB9XG5cbiAgLmdyaWQtMS00LFxuICAuZ3JpZC0yLTQsXG4gIC5ncmlkLTMtNCxcbiAgLmdyaWQtNC00LFxuICAuZ3JpZC0xLTMsXG4gIC5ncmlkLTItMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAgJGd1dHRlci13aWR0aC8yO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXItd2lkdGgvMjtcbiAgfVxuXG4gIC5ncmlkLTEtNCB7IHdpZHRoOiAyNSUgfVxuICAuZ3JpZC0yLTQgeyB3aWR0aDogNTAlIH1cbiAgLmdyaWQtMy00IHsgd2lkdGg6IDc1JSB9XG4gIC5ncmlkLTQtNCB7IHdpZHRoOiAxMDAlfVxuXG4gIC5ncmlkLTEtMyB7IHdpZHRoOiAzMy4zMzMlIH1cbiAgLmdyaWQtMi0zIHsgd2lkdGg6IDY2LjY2NiUgfVxuXG59XG4iLCIuY2xlYXJmaXggeyBjbGVhcjogYm90aDsgfVxuXG4uY2VudGVyLFxuLmFsaWduY2VudGVyIHsgXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bzsgXG59XG4ubGVmdCxcbi5hbGlnbmxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLnJpZ2h0LFxuLmFsaWducmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuaW1nLmFsaWdubGVmdCB7IG1hcmdpbi1yaWdodDogZW0oMTUpOyB9XG5pbWcuYWxpZ25yaWdodCB7IG1hcmdpbi1sZWZ0OiBlbSgxNSk7IH1cblxuLmZsZXhQdXNoIHsgLy8gZm9yIGEgbGluZSB3aXRoIDMgZWxlbWVudHMsIHNpbXVsYXRlIGEgdGhpcmQgZWxlbWVudCB3aGVuIG9ubHkgdHdvOiBhdm9pZCBjZW50ZXJpbmcgbGFzdCBsaW5lXG4gIHdpZHRoOiAzMiU7XG59XG5cbi5mbGV4V3JhcHBlciB7IFxuICBkaXNwbGF5OiBmbGV4OyBcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZnVsbFdpZHRoIHsgd2lkdGg6IDEwMCUhaW1wb3J0YW50OyB9XG5cbi5wYWdlQ29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogZW0oLTgwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgbWFyZ2luLXRvcDogZW0oLTUwKTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMzgwKSApIHtcbiAgICBtYXJnaW4tdG9wOiBlbSgtMzApO1xuICB9XG59XG5cbi5jbHItYmcsXG4uY2xyLWJnLTIge1xuICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gIGNvbG9yOiAkY2xyLWxpZ2h0O1xufVxuXG4uZ3JheS1iZyB7XG4gIGJhY2tncm91bmQ6ICNGOUY5Rjk7XG59IiwiJWxpc3QtcmVzZXQsXG4ubGlzdC1yZXNldCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuJWxpc3QtaW5saW5lLFxuLmxpc3QtaW5saW5lIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICArIGxpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oNSk7XG4gICAgfVxuICB9XG59XG5cbiVsaXN0LWJhc2ljLFxuLmxpc3QtYmFzaWMge1xuICBAZXh0ZW5kICVsaXN0LXJlc2V0O1xuICBtYXJnaW4tdG9wOiAwO1xuICBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICBtYXJnaW4tcmlnaHQ6IGVtKDQpO1xuICB9XG59XG4iLCIudHh0WFhMIHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1YWEw7XG59XG4udHh0WEwge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhMO1xufVxuLnR4dEwge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLUw7XG59XG4udHh0TSB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtTTtcbn1cbi50eHRTIHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1YUztcbn1cbi50eHRYUyB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtWFM7XG59XG5cbi50eHRMZWFkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogZW0oMjApO1xuICBjb2xvcjogJGNsci0wLWRhcms7XG59XG5cbi50eHRTbWFsbCB7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbn1cblxuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGNsci0xO1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xufVxuXG4iLCIjaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gIHBhZGRpbmc6IGVtKDQwKSAwIGVtKDM1KTtcbiAgbWFyZ2luLWJvdHRvbTogZW0oNjEpO1xuICB6LWluZGV4OiAxMDtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk3MCkgKSB7XG4gICAgcGFkZGluZzogZW0oMjApIDAgZW0oMTUpO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDQ2KTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMzIwKSApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgzMCk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogZW0oLTYxKTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZS1oZWFkZXItMi5zdmcnKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgIGhlaWdodDogZW0oMTYwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTcwKSApIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3VlLWhlYWRlci1tb2JpbGUuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAzJTtcbiAgICAgIGhlaWdodDogZW0oNTUpO1xuICAgICAgYm90dG9tOiBlbSgtNTUpO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIGhlaWdodDogZW0oNDUpO1xuICAgICAgYm90dG9tOiBlbSgtNDUpO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMzIwKSApIHtcbiAgICAgIGhlaWdodDogZW0oMzUpO1xuICAgICAgYm90dG9tOiBlbSgtMzUpO1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLWNvbnRhaW5lcixcbi5oZWFkZXItcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFkZXItbGVmdCBpbWcge1xuICB3aWR0aDogZW0oMjM5KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICB3aWR0aDogZW0oMjAwKTtcbiAgfVxufVxuXG4uaGVhZGVyLWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhlYWRlci1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiBlbSgyMik7XG4gIGNvbG9yOiAkY2xyLTI7XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZm9udC1zaXplOiBlbSgyMik7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbSgzMCk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIH1cbn1cblxuLmhlYWRlci1yaWdodCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIG1hcmdpbi1sZWZ0OiBlbSg0MCk7XG4gIHBhZGRpbmctdG9wOiBlbSg0KTtcbiAgcGFkZGluZy1ib3R0b206IGVtKDQpO1xufVxuXG5cbi8qIE1PQklMRSAqL1xuLmhlYWRlci1kZXNrdG9wIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk3MCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5NzApICkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmljb24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IGVtKDMwKTtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgICYtc2VhcmNoIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMjgpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBlbSgyMCk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbiIsIiNmb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICRjbHItMTtcbiAgcGFkZGluZzogZW0oMzApIDAgZW0oMzUpO1xuICBtYXJnaW4tdG9wOiByZW0oODApO1xuICB6LWluZGV4OiAxMDAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBtYXJnaW4tdG9wOiBlbSgzMCk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKC04MCk7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXRvcC1ibGV1LnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0oODApO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgdG9wOiByZW0oLTMyKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS10b3AtYmxldS14cy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLXRvcCxcbi5mb290ZXItbWlkZGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5mb290ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogZW0oNDUpO1xufVxuXG4uZm9vdGVyLW1lbnUge1xuICBtYXJnaW4tdG9wOiBlbSg0MCk7XG4gIG1hcmdpbi1yaWdodDogZW0oNjApO1xufVxuXG4uZm9vdGVyLWluZm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogZW0oNDg1KTtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIGJvcmRlci1sZWZ0OiByZW0oMykgc29saWQgJGNsci0yO1xuICBwYWRkaW5nLWxlZnQ6IGVtKDYwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkzMCkgKSB7XG4gICAgcGFkZGluZy1sZWZ0OiBlbSg0MClcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKGltYWdlcy9sb2dvLXNtYWxsLnN2Zyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBlbSgyMik7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkzMCkgKSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiBlbSgxNCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MzApICkge1xuICAgICAgZm9udC1zaXplOiBlbSgxNSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MzApICkge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGVtKDQpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogZW0oMjApO1xuICAgICAgICB3aWR0aDogZW0oMjApO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xvZ28tc21hbGwuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkY2xyLTI7XG4gIH1cbn1cblxuLmZvb3Rlci1zb2NpYWxzIHtcbiAgbWFyZ2luOiAwIDAgMCBlbSg1MCk7XG4gIHBhZGRpbmctdG9wOiBlbSg0KTtcbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKDI1KTtcbiAgfVxufVxuXG4uc29jaWFsLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBlbSg0MCk7XG4gIGhlaWdodDogZW0oNDApO1xuICAuaWNvbiB7XG4gICAgZm9udC1zaXplOiBlbSg0MCk7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20ge1xuICBjb2xvcjogJGNsci1saWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IGVtKDE0KTtcbn1cblxuLmZvb3Rlci1jb250YWN0IHtcbiAgbWFyZ2luOiBlbSgzNSkgMCAwIWltcG9ydGFudDtcbiAgYSB7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogZW0oNSkgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1jb3B5cmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogZW0oMTQpO1xuICBtYXJnaW4tdG9wOiByZW0oMjApIWltcG9ydGFudDtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiBlbSg1KSAwXG4gIH1cbn1cblxuLmZvb3Rlci1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICBmb250LXNpemU6IGVtKDE0KTtcbiAgbWFyZ2luLWxlZnQ6IGVtKDcpO1xuICBwYWRkaW5nLWxlZnQ6IGVtKDEwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiBlbSgxMyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKDIpO1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IHJlbSgxKSBzb2xpZCAkY2xyLTI7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5cblxuLyogTU9CSUxFICovXG4ubWFpbkZvb3Rlci1kZXNrdG9wIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkzMCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm1haW5Gb290ZXItbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkzMCkgKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmZvb3Rlci1zb2NpYWxzIHtcbiAgICBtYXJnaW46IDAgZW0oNjApIDAgMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTMwKSApIHtcbiAgICAgIG1hcmdpbjogMCBlbSg0MCkgMCAwO1xuICAgIH1cbiAgICBsaSArIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZW0oMjApO1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgZm9udC1zaXplOiBlbSgxNik7XG4gIH1cbiAgLmZvb3Rlci1tZW51IHtcbiAgICAuc3VibWVudS1jb250YWluZXIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tZW51LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDMwKTtcbiAgfVxuICAuZm9vdGVyLWNvbnRhY3Qge1xuICAgIGZvbnQtc2l6ZTogZW0oMTQpO1xuICB9XG59XG5cblxuXG5cblxuIiwiJWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogZW0oNykgZW0oMTcpO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGJvcmRlcjogZW0oMy4zKSBzb2xpZCAkY2xyLTI7XG4gIHRyYW5zaXRpb246ICR0cmFucztcbiAgLXdlYmtpdC11c2VyLWRyYWc6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICZUcnVuY2F0ZSB7IEBleHRlbmQgJXRydW5jYXRlIH1cbiAgKyBbY2xhc3MqPWJ1dHRvbl0ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbXEtcy11cCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgxMCk7XG4gICAgfVxuICB9XG4gICY6ZGlzYWJsZWQsXG4gICYuaXMtZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBvcGFjaXR5OiAwLjM1O1xuXG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIHN0eWxlXG4gKi9cblxuLmJ1dHRvbiB7XG4gIGNvbG9yOiAkY2xyLTE7XG4gIGJhY2tncm91bmQ6ICRjbHItMjtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDgpIHJlbSg4KSByZW0oOCkgMDtcbiAgQGV4dGVuZCAlYnV0dG9uO1xuICAvLyBTdGF0ZXNcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmOmRpc2FibGVkOmhvdmVyLFxuICAmLmlzLWRpc2FibGVkOmhvdmVyLFxuICAmLmlzLWRpc2FibGVkOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJi5pcy1hY3RpdmV7XG4gICAgYmFja2dyb3VuZDogc2hhZGUoJGNsci0yLCA0MCUpO1xuICB9XG59XG5cbi5idXR0b25TZWNvbmRhcnkge1xuICBjb2xvcjogJGNsci0yO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiByZW0oMykgc29saWQgJGNsci0yO1xuICBib3JkZXItcmFkaXVzOiByZW0oOCkgcmVtKDgpIDAgcmVtKDgpO1xuICBAZXh0ZW5kICVidXR0b247XG4gIC8vIFN0YXRlc1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTI7XG4gIH1cbiAgJjpkaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpmb2N1cyB7XG4gICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIGJhY2tncm91bmQ6IHNoYWRlKCRiYXNlLWJvcmRlci1jb2xvciwgNDAlKTtcbiAgfVxuICAmLnVwLWxlZnQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgcmVtKDgpIHJlbSg4KSByZW0oOCk7XG4gIH1cbiAgJi51cC1yaWdodCB7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDgpIDAgcmVtKDgpIHJlbSg4KTtcbiAgfVxufVxuXG4vKipcbiAqIE1vZGlmaWVyXG4gKi9cblxuLmJ1dHRvbi0tc21hbGwge1xuICBwYWRkaW5nOiBlbSgzLCAxMykgZW0oMTAsIDEzKTtcbiAgZm9udC1zaXplOiBlbSgxMyk7XG59XG5cbi5idXR0b24tLWJpZyB7XG4gIHBhZGRpbmc6IGVtKDE1LCAyMCkgZW0oMzAsIDIwKTtcbiAgZm9udC1zaXplOiBlbSgyMCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMztcbn1cblxuLmJ1dHRvbi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idXR0b24tLW1vYmlsZUZ1bGwge1xuICBAbWVkaWEgKG1heC13aWR0aDogJG1xLXMtdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVGhpcyBmaWxlIGlzIGF1dG9tYXRpY2FsbHlcbiAgZ2VuZXJhdGVkIHVzaW5nIGd1bHAuXG5cbiAgQWRkIC5zdmcgZmlsZXMgdG8gdGhlIGFzc2V0cy9pY29uRm9udFxuICBmb2xkZXIgdG8gYWRkIGljb25zXG5cbiAgLyFcXCBEbyBub3QgbW9kaWZ5IC8hXFwgISEhXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgc3JjOiB1cmwoJ2ZvbnRzL3VidWR1LWljb25zLmVvdCcpO1xuICBzcmM6IHVybCgnZm9udHMvdWJ1ZHUtaWNvbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW90JyksXG4gICAgdXJsKCdmb250cy91YnVkdS1pY29ucy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCdmb250cy91YnVkdS1pY29ucy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCdmb250cy91YnVkdS1pY29ucy5zdmcjdWJ1ZHUtaWNvbnMnKSBmb3JtYXQoJ3N2ZycpO1xufVxuXG4laWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LWZhbWlseTpcInVidWR1LWljb25zXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5AZnVuY3Rpb24gaWNvbi1jaGFyKCRmaWxlbmFtZSkge1xuICAkY2hhcjogXCJcIjtcblxuICBAaWYgJGZpbGVuYW1lID09IGFycm93IHtcbiAgICAkY2hhcjogXCJcXEUwMDFcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IGJ1cmdlciB7XG4gICAgJGNoYXI6IFwiXFxFMDAyXCI7XG4gIH1cbiAgQGlmICRmaWxlbmFtZSA9PSBkb3RzIHtcbiAgICAkY2hhcjogXCJcXEUwMDNcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IGhhc2gge1xuICAgICRjaGFyOiBcIlxcRTAwNFwiO1xuICB9XG4gIEBpZiAkZmlsZW5hbWUgPT0gbGlua2VkaW4ge1xuICAgICRjaGFyOiBcIlxcRTAwNVwiO1xuICB9XG4gIEBpZiAkZmlsZW5hbWUgPT0gcnNzIHtcbiAgICAkY2hhcjogXCJcXEUwMDZcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IHNlYXJjaCB7XG4gICAgJGNoYXI6IFwiXFxFMDA3XCI7XG4gIH1cbiAgQGlmICRmaWxlbmFtZSA9PSBzZWVtb3JlIHtcbiAgICAkY2hhcjogXCJcXEUwMDhcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IHRlYW0ge1xuICAgICRjaGFyOiBcIlxcRTAwOVwiO1xuICB9XG4gIEBpZiAkZmlsZW5hbWUgPT0gdHdpdHRlciB7XG4gICAgJGNoYXI6IFwiXFxFMDBBXCI7XG4gIH1cbiAgQGlmICRmaWxlbmFtZSA9PSB1c2VyIHtcbiAgICAkY2hhcjogXCJcXEUwMEJcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IHlvdXR1YmUge1xuICAgICRjaGFyOiBcIlxcRTAwQ1wiO1xuICB9XG5cbiAgQHJldHVybiAkY2hhcjtcbn1cblxuQG1peGluIGljb24oJGZpbGVuYW1lKSB7XG4gIGNvbnRlbnQ6IGljb24tY2hhcigkZmlsZW5hbWUpO1xufVxuXG5bY2xhc3MqPVwiaWNvbi1cIl0ge1xuICBAZXh0ZW5kICVpY29uO1xufVxuXG5cbi5pY29uLWFycm93e1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbihhcnJvdyk7XG4gIH1cbn1cbiVpY29uLWFycm93IHtcbiAgQGluY2x1ZGUgaWNvbihhcnJvdyk7XG59XG5cbi5pY29uLWJ1cmdlcntcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24oYnVyZ2VyKTtcbiAgfVxufVxuJWljb24tYnVyZ2VyIHtcbiAgQGluY2x1ZGUgaWNvbihidXJnZXIpO1xufVxuXG4uaWNvbi1kb3Rze1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbihkb3RzKTtcbiAgfVxufVxuJWljb24tZG90cyB7XG4gIEBpbmNsdWRlIGljb24oZG90cyk7XG59XG5cbi5pY29uLWhhc2h7XG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY29uKGhhc2gpO1xuICB9XG59XG4laWNvbi1oYXNoIHtcbiAgQGluY2x1ZGUgaWNvbihoYXNoKTtcbn1cblxuLmljb24tbGlua2VkaW57XG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY29uKGxpbmtlZGluKTtcbiAgfVxufVxuJWljb24tbGlua2VkaW4ge1xuICBAaW5jbHVkZSBpY29uKGxpbmtlZGluKTtcbn1cblxuLmljb24tcnNze1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbihyc3MpO1xuICB9XG59XG4laWNvbi1yc3Mge1xuICBAaW5jbHVkZSBpY29uKHJzcyk7XG59XG5cbi5pY29uLXNlYXJjaHtcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24oc2VhcmNoKTtcbiAgfVxufVxuJWljb24tc2VhcmNoIHtcbiAgQGluY2x1ZGUgaWNvbihzZWFyY2gpO1xufVxuXG4uaWNvbi1zZWVtb3Jle1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbihzZWVtb3JlKTtcbiAgfVxufVxuJWljb24tc2VlbW9yZSB7XG4gIEBpbmNsdWRlIGljb24oc2VlbW9yZSk7XG59XG5cbi5pY29uLXRlYW17XG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY29uKHRlYW0pO1xuICB9XG59XG4laWNvbi10ZWFtIHtcbiAgQGluY2x1ZGUgaWNvbih0ZWFtKTtcbn1cblxuLmljb24tdHdpdHRlcntcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24odHdpdHRlcik7XG4gIH1cbn1cbiVpY29uLXR3aXR0ZXIge1xuICBAaW5jbHVkZSBpY29uKHR3aXR0ZXIpO1xufVxuXG4uaWNvbi11c2Vye1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbih1c2VyKTtcbiAgfVxufVxuJWljb24tdXNlciB7XG4gIEBpbmNsdWRlIGljb24odXNlcik7XG59XG5cbi5pY29uLXlvdXR1YmV7XG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpY29uKHlvdXR1YmUpO1xuICB9XG59XG4laWNvbi15b3V0dWJlIHtcbiAgQGluY2x1ZGUgaWNvbih5b3V0dWJlKTtcbn1cbiIsIi5oZWFkZXItbWVudSB7XG4gIG1hcmdpbi1yaWdodDogZW0oNDUpO1xufVxuXG4ubWVudS1saXN0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMDtcbiAgLm1lbnUtaXRlbSBhIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY2xyLTI7XG4gICAgfVxuICB9XG59XG5cbi5tZW51LWxpc3QgLm1lbnUtaXRlbS5pcy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICRjbHItMjtcbn1cblxuLm1lbnUtbGlzdC5saXN0LWlubGluZSA+IGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogZW0oNTApO1xufVxuXG4uZm9vdGVyLW1lbnUgLm1lbnUtbGlzdC5saXN0LWlubGluZSA+IGxpICsgbGkge1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA1MCkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKDIwKTtcbiAgfVxufVxuXG4uZm9vdGVyLW1lbnUgLm1lbnUtbGlzdC5saXN0LWlubGluZSA+IGxpIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKDEwKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGVtKDEwKTtcbiAgfVxufVxuXG4uc3VibWVudS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmctdG9wOiBlbSgxMCk7XG4gIG1heC13aWR0aDogZW0oNjAwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk3MCkgKSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG4gIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnN1Yi1tZW51IHtcbiAgQGV4dGVuZCAlbGlzdC1pbmxpbmU7XG4gIG1hcmdpbjogZW0oMTUpIDAgMDtcbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogZW0oMTQpO1xuICB9XG4gID4gbGkgKyBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiBlbSgxMCk7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKDEwKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnLSc7XG4gICAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IHJlbSgtNCk7XG4gICAgfVxuICB9XG59XG5cblxuLyogTU9CSUxFICovXG5cbi5jbG9zZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogZW0oMjApO1xuICB0b3A6IGVtKDMwKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogZW0oMzApO1xuICBoZWlnaHQ6IGVtKDMwKTtcbiAgei1pbmRleDogMTA7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IHJlbSgxMSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogZW0oMzApO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJGNsci0yO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IHJlbSgxMSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogZW0oMzApO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJGNsci0yO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cblxuLm1lbnUtbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IGVtKDE1MCk7XG4gIC5oZWFkZXItbGVmdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogZW0oMjApO1xuICAgIGxlZnQ6IGVtKDIzKTtcbiAgfVxuICAuaGVhZGVyLW1lbnUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAubGlzdC1pbmxpbmUgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDM1KTtcbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTcpO1xuICAgIH1cbiAgfVxuICAubGlzdC1pbmxpbmUgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLnN1Ym1lbnUtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IGVtKDIwKTtcbiAgICAud3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogZW0oNTApO1xuICB9XG4gIC5oZWFkZXItbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiBlbSgzMCk7XG4gICAgbWFyZ2luOiBlbSgyMCkgMCAwO1xuICB9XG59XG5cbi5mb290ZXItbWVudSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1MDApICkge1xuICAgIG1heC13aWR0aDogZW0oMzAwKTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuXG5cblxuXG5cblxuIiwiLyogTkVXU0xFVFRFUiAqL1xuLm5ld3NsZXR0ZXItZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZvcm0taW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogZW0oMzYwKTtcbiAgICBmb250LXNpemU6IGVtKDE0KTtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHJlbSgzKSBzb2xpZCAkY2xyLTI7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDgpIHJlbSg4KSAwIHJlbSg4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IGVtKDMwKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IGVtKDEzLjUpIGVtKDI0KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogZW0oMTQpIGVtKDU1KSBlbSgxNCkgZW0oMTQpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyOiByZW0oMykgc29saWQgJGNsci1saWdodDtcbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRleHQtaW5kZW50OiByZW0oLTEwMCk7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xyLTIgdXJsKCdpbWFnZXMvaWNvLXNlYXJjaC13aGl0ZS5zdmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNjAlO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY2xyLTIgdXJsKCdpbWFnZXMvaWNvLXNlYXJjaC13aGl0ZS5zdmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uZXdzbGV0dGVyLWZvcm0gLmZvcm0taW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGNsci1saWdodDtcbn1cblxuLy8gRmlyZWZveCAxOFxuLm5ld3NsZXR0ZXItZm9ybSAuZm9ybS1pbnB1dDotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG59XG5cbi8vIEZpcmVmb3ggMTkrXG4ubmV3c2xldHRlci1mb3JtIC5mb3JtLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG59XG5cbi5uZXdzbGV0dGVyLWZvcm0gLmZvcm0taW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG59XG5cbi8qIENPTlRBQ1QgRk9STSAqL1xuLmZvcm0tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMjApO1xuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogZW0oMTcpO1xuICAgIGNvbG9yOiAkY2xyLTE7XG4gICAgYmFja2dyb3VuZDogJGNsci1saWdodDtcbiAgICBib3JkZXI6IHJlbSgyKSBzb2xpZCAjRjBGMEYwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogZW0oOSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtaGVpZ2h0OiBlbSgxODApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NDApICkge1xuICAgICAgZm9udC1zaXplOiBlbSgxNCk7XG4gICAgICBtYXgtaGVpZ2h0OiBlbSgxMDApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC1oZWlnaHQ6IDg0MHB4KSB7XG4gICAgICBtYXgtaGVpZ2h0OiBlbSgxMDApO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tYm9yZGVyLWNvbG9yLWhvdmVyO1xuICAgIH1cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzO1xuICAgIH1cbiAgfVxufVxuXG4ucGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBsZWZ0OiBlbSgxNSk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogJGNsci0xO1xuICB6LWluZGV4OiAxO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTQwKSApIHtcbiAgICBmb250LXNpemU6IGVtKDE0KTtcbiAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2wgdGV4dGFyZWEgKyAucGxhY2Vob2xkZXIge1xuICB0b3A6IGVtKDI1KTtcbn1cblxuLmFqYXgtbG9hZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGVtKDUwKTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbjogMDtcbn1cblxuXG5cbiIsIi5pY29uYm94LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiBlbSg3NSkgMDtcbn1cblxuLmljb25ib3gtaXRlbSB7XG4gIHdpZHRoOiAyOCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGVtKDE1KTtcbiAgcGFkZGluZzogMCBlbSg0MCk7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5pY29uYm94LXBpY3RvIHtcbiAgbWF4LXdpZHRoOiBlbSgyMDApO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IGVtKDQ1KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgbWF4LXdpZHRoOiBlbSgyMzApO1xuICB9XG59XG5cbi5pY29uYm94LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiBlbSgyNCk7XG4gIGxldHRlci1zcGFjaW5nOiByZW0oMSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NzApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMjUpXG4gIH1cbn1cblxuLmljb25ib3gtdHgge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICBsZXR0ZXItc3BhY2luZzogcmVtKDAuNCk7XG4gIHAge1xuICAgIG1hcmdpbjogcmVtKDUpIDA7XG4gIH1cbn1cblxuXG4uaWNvbmJveC13cmFwcGVyLm1vYmlsZS1zbGlkZXIuc2xpY2stc2xpZGVyIHtcbiAgLmljb25ib3gtaXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5pY29uYm94LXBpY3RvIHtcbiAgICBtYXJnaW46IDAgYXV0byBlbSgzMCk7XG4gIH1cbn0iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGljay1zbGlkZSBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc2xpY2stc2xpZGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IGVtKDQwKTtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gICAgfVxuICB9XG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtKDEyKTtcbiAgICB3aWR0aDogcmVtKDEyKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogJGNsci0yO1xuICAgIG1hcmdpbjogMCByZW0oOCk7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLyogR0VORVJBTCAqL1xuLmhvbWVwYWdlLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiBlbSgzMik7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMzApO1xuICB9XG59XG5cbi5zZWN0aW9uLXR4IHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbn1cblxuLnNlY3Rpb24tY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuXG4vKiBTRUNUSU9OIDEgKi9cbi5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgxKSB7XG4gIHBhZGRpbmctYm90dG9tOiBlbSgzMCk7XG4gIC53cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTcwKSApIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbi5pbnRybyB7XG4gIHdpZHRoOiA0MCU7XG4gIHBhZGRpbmc6IGVtKDE0MCkgMCBlbSg5MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5NzApICkge1xuICAgIHdpZHRoOiBlbSg1MDApO1xuICAgIHBhZGRpbmc6IGVtKDIwKSBlbSgyMCkgZW0oMTAwKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiBlbSgyMCk7XG4gICAgcGFkZGluZzogZW0oMjApIGVtKDIwKSBlbSg3MCk7XG4gIH1cbn1cblxuLmludHJvLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogZW0oNDgpO1xuICBjb2xvcjogJGNsci0yO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICBmb250LXNpemU6IGVtKDQwKTtcbiAgfVxufVxuXG4uaW50cm8tdHgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogZW0oNDYwKTtcbiAgbWFyZ2luOiBlbSgzMCkgMCBlbSg0MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1MDApICkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IGVtKDE3KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogZW0oMC4yKTtcbiAgICBsaW5lLWhlaWdodDogZW0oMjEuNSk7XG4gICAgcGFkZGluZy1sZWZ0OiBlbSgxMzApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1MDApICkge1xuICAgICAgZm9udC1zaXplOiBlbSgxNik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGVtKDkwKTtcbiAgICB9XG4gICAgYnIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBlbSg2KTtcbiAgICBsZWZ0OiBlbSgzMCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiByZW0oNDgpO1xuICAgIGJvcmRlci10b3A6IHJlbSg0KSBzb2xpZCAkY2xyLTI7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uaG9tZS1zbGlkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDYyJTtcbiAgbWFyZ2luLWxlZnQ6IGVtKC01MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5NzApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5zbGlkZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDE5JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5NzApICkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwLjUlO1xuICAgIH1cbiAgfVxuICAuc2xpZGVyLWltZy1kZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTcwKSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItaW1nLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTcwKSApIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qIFNFQ1RJT04gMiAqL1xuLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDIpIHtcbiAgcGFkZGluZy1ib3R0b206IGVtKDk1KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgcGFkZGluZzogZW0oMzApIDAgZW0oNzApO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiByZW0oLTgwKTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtYmxhbmMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICB0b3A6IHJlbSgtMzMpO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsYW5jLXhzLnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHJlbSgzMyk7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiBlbSgxMCk7XG4gICAgcGFkZGluZy1sZWZ0OiBlbSgxMTApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMDIwKSApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH0gXG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiByZW0oNTAwKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgzNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogZW0oNTApO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL2xvZ28taWNvbm8uc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiBlbSgzOSk7XG4gICAgICAgIHdpZHRoOiBlbSgzOSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi10eCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiBlbSgzNSk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMTAwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiBlbSgyNSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgnaW1hZ2VzL2xvZ28taWNvbm8uc3ZnJyk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGVtKDcpO1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1MDApICkge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cbiAgICB9XG4gICAgYnIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWxpbmVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiByZW0oLTEyOCk7XG4gICAgcmlnaHQ6IHJlbSgyNCk7XG4gICAgd2lkdGg6IHJlbSgzNzkpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE1MCkgKSB7XG4gICAgICBib3R0b206IHJlbSgtNTYpO1xuICAgICAgcmlnaHQ6IHJlbSgzNSk7XG4gICAgICB3aWR0aDogcmVtKDMwMCk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3ODApICkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiBTRUNUSU9OIDMgKi9cbi5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCgzKSB7XG4gIHBhZGRpbmctYm90dG9tOiBlbSg1MCk7XG4gIG1hcmdpbi1ib3R0b206IGVtKDgwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDExNTApICkge1xuICAgIHBhZGRpbmctYm90dG9tOiBlbSg2MCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDQwKTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKC04MCk7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXRvcC1ibGV1LnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgaGVpZ2h0OiByZW0oODApO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgdG9wOiByZW0oLTMzKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS10b3AtYmxldS14cy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiByZW0oLTgwKTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tYmxldS5zdmcnKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgIGhlaWdodDogcmVtKDgwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIGJvdHRvbTogcmVtKC0zMik7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtYm90dG9tLWJsZXUteHMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvbGluZXMtc2VjdGlvbi0zLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IGVtKDgxOCk7XG4gICAgbWFyZ2luOiAwIGVtKDI1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE1MCkgKSB7XG4gICAgICB3aWR0aDogZW0oOTUwKTtcbiAgICAgIGhlaWdodDogZW0oNjYwKTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmFzc2V0cy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IGVtKDgwKTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICBwYWRkaW5nLXRvcDogZW0oNDApO1xuICB9XG59XG5cbi5hc3NldC1pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiBlbSgzNDApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiByZW0oMjYwKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4uaG9tZXBhZ2UgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgdG9wOiBlbSgyMDcpO1xuICByaWdodDogZW0oNzApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE1MCkgKSB7XG4gICAgdG9wOiBlbSgxMjApO1xuICAgIHJpZ2h0OiBlbSgxNSk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvbGluZXMtc2VjdGlvbi0zLW1vYmlsZS0xLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIGhlaWdodDogZW0oMTc4KTtcbiAgICAgIHdpZHRoOiBlbSgyNzQpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogZW0oLTM4KTtcbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL2xpbmVzLXNlY3Rpb24tMy1tb2JpbGUtMi5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGVtKDEwOCk7XG4gICAgICB3aWR0aDogZW0oMjc4KTtcbiAgICAgIG1hcmdpbi10b3A6IGVtKDIwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGVtKC0yMik7XG4gICAgfVxuICB9XG59XG5cbi5ob21lcGFnZSAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgdG9wOiBlbSgyNTUpO1xuICBsZWZ0OiBlbSg5MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMTUwKSApIHtcbiAgICB0b3A6IGVtKDE4NSk7XG4gICAgbGVmdDogZW0oMzApO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICB9XG59XG5cbi5ob21lcGFnZSAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgdG9wOiBlbSg1NDApO1xuICBsZWZ0OiBlbSg0NTApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE1MCkgKSB7XG4gICAgdG9wOiBlbSg0MjApO1xuICAgIGxlZnQ6IGVtKDMyNSk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9saW5lcy1zZWN0aW9uLTMtbW9iaWxlLTMuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBlbSgxMTQpO1xuICAgICAgd2lkdGg6IGVtKDI3Myk7XG4gICAgICBtYXJnaW4tdG9wOiBlbSgzMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBlbSgtMjUpO1xuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvbGluZXMtc2VjdGlvbi0zLW1vYmlsZS00LnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgIGhlaWdodDogZW0oMTE0KTtcbiAgICAgIHdpZHRoOiBlbSgyNzgpO1xuICAgICAgbWFyZ2luLXRvcDogZW0oLTM1KTtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LXR4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIG1heC13aWR0aDogZW0oMjUwKTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4uYXNzZXQtdGl0bGUsXG4uYXNzZXQtc3VidGl0bGUge1xuICBjb2xvcjogJGNsci1saWdodDtcbn1cblxuLmFzc2V0LXN1YnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcbn1cblxuXG4uYXNzZXQtdGl0bGUge1xuICBmb250LXNpemU6IGVtKDI0KTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcbn1cblxuLmFzc2V0LXR4IHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiBlbSgxNyk7XG4gICAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICAgIG1hcmdpbjogZW0oOCkgMDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE1MCkgKSB7XG4gICAgICBmb250LXNpemU6IGVtKDE4KTtcbiAgICB9XG4gIH1cbn1cblxuXG4vKiBTRUNUSU9OIDQgKi9cbi5ob21lcGFnZS1zZWN0aW9uOm50aC1jaGlsZCg0KSB7XG4gIHBhZGRpbmc6IGVtKDgwKSAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICBwYWRkaW5nOiBlbSg2MCkgMCBlbSg1MCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgcGFkZGluZzogZW0oMjApIDAgZW0oMjApO1xuICB9XG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogcmVtKDQ4KTtcbiAgICAgIGJvcmRlci10b3A6IHJlbSg0KSBzb2xpZCAkY2xyLTI7XG4gICAgfVxuICB9XG59XG5cbi8qIFNFQ1RJT04gNSAqL1xuLmhvbWVwYWdlLXNlY3Rpb246bnRoLWNoaWxkKDUpIHtcbiAgcGFkZGluZzogZW0oMjUpIDAgZW0oMSk7XG4gIG1hcmdpbi1ib3R0b206IGVtKDgwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgcGFkZGluZy10b3A6IGVtKDQwKTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtKC04MCk7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsZXUuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICB0b3A6IHJlbSgtMzMpO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsZXUteHMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogcmVtKC04MCk7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWJsZXUuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICBib3R0b206IHJlbSgtMzMpO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWJsZXUteHMuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIGNvbG9yOiAkY2xyLTI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0oMTgwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IHJlbSg0OCk7XG4gICAgICBib3JkZXItdG9wOiByZW0oNCkgc29saWQgJGNsci0yO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2FzZVN0dWR5LXNsaWRlciB7XG4gIHBhZGRpbmc6IDAgZW0oNzApO1xuICBtYXJnaW46IGVtKDYwKSAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5jYXNlU3R1ZHktd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5jYXNlU3R1ZHktaW1nLXdyYXBwZXIge1xuICB3aWR0aDogNjQlO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY2FzZVN0dWR5LWltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5jYXNlU3R1ZHktZGV0YWlscyB7XG4gIHdpZHRoOiAzNiU7XG4gIHBhZGRpbmctbGVmdDogZW0oNzApO1xuICBtYXJnaW4tdG9wOiBlbSgzNSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NzApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmNhc2VTdHVkeS10aXRsZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG59XG5cbi5jYXNlU3R1ZHktc3VidGl0bGUge1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIGxldHRlci1zcGFjaW5nOiBlbSgwLjIpO1xuICBjb2xvcjogJGNsci1saWdodDtcbiAgbWFyZ2luOiByZW0oMTApIDA7XG59XG5cbi5jYXNlU3R1ZHktdHgge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICBwIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnJlYWQtbW9yZSB7XG4gIG1hcmdpbi10b3A6IGVtKDUwKTtcbn1cblxuLmNhc2VTdHVkeS1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgdG9wOiA3NCU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYwMCkgKSB7XG4gICAgdG9wOiA3MCU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgdG9wOiA2NiU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDQxNSkgKSB7XG4gICAgdG9wOiA2MyU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDM5MCkgKSB7XG4gICAgdG9wOiA2MSU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDM3MCkgKSB7XG4gICAgdG9wOiA1OCU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDMyMCkgKSB7XG4gICAgdG9wOiA1NiU7XG4gIH1cbn1cblxuLmNhc2VTdHVkeS1zbGlkZXItbmF2IHtcbiAgLnNsaWRlci1uYXYtcHJldixcbiAgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnNsaWRlci1uYXYtcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMzUwKSApIHtcbiAgICAgIGxlZnQ6IGVtKC01KTtcbiAgICB9XG4gIH1cbiAgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDM1MCkgKSB7XG4gICAgICByaWdodDogZW0oLTUpO1xuICAgIH1cbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiBlbSgzMyk7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xuICAgIH1cbiAgfVxuICAuc2xpZGVyLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cblxuLyogU0VDVElPTiA2ICovXG4uaG9tZXBhZ2Utc2VjdGlvbjpudGgtY2hpbGQoNikge1xuICBwYWRkaW5nOiBlbSgxMDApIDAgZW0oOTApO1xuICBtYXJnaW4tYm90dG9tOiBlbSg2MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NzApICkge1xuICAgIHBhZGRpbmc6IGVtKDQwKSAwIGVtKDEwKTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICBwYWRkaW5nOiBlbSgzMCkgMCBlbSgxMCk7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWVzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzcwKSApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi50ZXN0aW1vbnktaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAyNSU7XG4gIG1hcmdpbjogMCBlbSgyNSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NzApICkge1xuICAgIG1hcmdpbjogMCAwIGVtKDUwKTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5cblxuLnRlc3RpbW9ueS1sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMjUpO1xuXG59XG5cbi50ZXN0aW1vbnktdHgge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbn1cblxuLnRlc3RpbW9ueS1uYW1lIHtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4iLCIucGFnZS13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IGVtKDUwKTtcbiAgcGFkZGluZy1ib3R0b206IGVtKDUwKTtcbn1cblxuLnBhZ2UtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IGVtKDkwKTtcbiAgJi53aXRoLXNpZGViYXIge1xuICAgIHdpZHRoOiA2NiU7XG4gICAgcGFkZGluZzogZW0oOTApIGVtKDkwKSBlbSg5MCkgZW0oNjUpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcGFkZGluZzogZW0oOTApIGVtKDMwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDY2MCkgKSB7XG4gICAgICB3aWR0aDogMTAwJVxuICAgIH1cbiAgfVxufVxuXG4ucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgcGFkZGluZzogZW0oMTU1KSAwIGVtKDE0Mik7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIHBhZGRpbmc6IGVtKDcwKSAwIGVtKDgwKTtcbiAgfVxufVxuXG4ucGFnZS10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiBlbSg0OCk7XG4gIG1hcmdpbi1ib3R0b206IGVtKDE2LjUpO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICBmb250LXNpemU6IGVtKDQwKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogcmVtKDQ4KTtcbiAgICBib3JkZXItYm90dG9tOiByZW0oNCkgc29saWQgJGNsci0yO1xuICAgIG1hcmdpbi10b3A6IHJlbSgxMCk7XG4gIH1cbn1cblxuLnBhZ2UtaW50cm8ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICBsZXR0ZXItc3BhY2luZzogZW0oMC4yKTtcbiAgbWF4LXdpZHRoOiByZW0oNjAwKTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLW5hdmlnYXRpb24ge1xuICBtYXJnaW4tdG9wOiBlbSg2MCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NzApICkge1xuICAgIG1hcmdpbi10b3A6IGVtKDQwKTtcbiAgfVxuICAucGFnZS1uYXZpZ2F0aW9uLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IGVtKDIwKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTcwKSApIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogcmVtKDI1KSAwIDA7XG4gICAgICBtYXJnaW46IDAgMCByZW0oMjUpO1xuICAgIH1cbiAgICAmOmhvdmVyIGEsXG4gICAgYS5pcy1hY3RpdmUge1xuICAgICAgY29sb3I6ICRjbHItMjtcbiAgICB9XG4gIH1cbiAgbGkgKyBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMzIpO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0oMjgpO1xuICB9XG4gIGxpICsgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtKDIwKTtcbiAgICBib3JkZXItbGVmdDogcmVtKDMpIHNvbGlkICRjbHItMjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTcwKSApIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHdpZHRoOiByZW0oNTUpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKDMpIHNvbGlkICRjbHItMjtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuIiwiLnBvc3QtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IGVtKDUwKTtcbn1cblxuLnBvc3QtdGl0bGUge1xuICBmb250LXNpemU6IGVtKDMyKTtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMTIpO1xufVxuXG4ucG9zdC1kYXRlIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMCAwIGVtKDIzKTtcbn1cblxuLnBvc3QtdGh1bWJuYWlsIGltZyB7XG4gIG1hcmdpbi1ib3R0b206IGVtKDUpO1xufVxuXG4ucG9zdC10YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMjUpO1xufVxuXG4ucG9zdC10YWdzLWl0ZW0ge1xuICBmb250LXNpemU6IGVtKDE2KTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcjJztcbiAgfVxufVxuXG4ucG9zdHMtbmF2aWdhdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogZW0oODApO1xuXG4gIC53cC1wYWdlbmF2aSBhLCBcbiAgLndwLXBhZ2VuYXZpIHNwYW4ge1xuICAgIGNvbG9yOiAkY2xyLTE7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogcmVtKDIpIHJlbSg4KTtcbiAgfVxuICAud3AtcGFnZW5hdmkgc3Bhbi5jdXJyZW50IHtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG59XG5cbiIsIi50d2VldHMtY29udGFpbmVyLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2NjApICkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5jdGYtaXRlbSB7XG4gICAgcGFkZGluZzogMCByZW0oMTApIWltcG9ydGFudDtcbiAgfVxufVxuXG4udHdlZXQtc2xpZGVyLW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50d2VldC1zbGlkZXItbmF2IHtcbiAgLnNsaWRlci1uYXYtcHJldixcbiAgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnNsaWRlci1uYXYtcHJldiB7XG4gICAgbGVmdDogcmVtKDE1KTtcbiAgfVxuICAuc2xpZGVyLW5hdi1uZXh0IHtcbiAgICByaWdodDogcmVtKDE1KTtcbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiBlbSgzMCk7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgfVxuICAuc2xpZGVyLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cbi50d2VldHMtY29udGFpbmVyLWRlc2t0b3Age1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50d2VldHMtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMTgwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDY2MCkgKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZW0oNTApO1xuICAgIHBhZGRpbmc6IDAgZW0oMzApO1xuICB9XG59XG5cbiNjdGYge1xuICAuY3RmLXJldHdlZXQtdGV4dCB7XG4gICAgZm9udC1zaXplOiBlbSgxNyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGVtKDAuMik7XG4gICAgbGluZS1oZWlnaHQ6IGVtKDIxLjUpO1xuICB9XG4gIC5jdGYtaXRlbSB7XG4gICAgcGFkZGluZzogZW0oMjApIDA7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG4gIC5jdGYtYXV0aG9yLWJveCB7XG4gICAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybChpbWFnZXMvaWNvLXR3aXR0ZXItYmx1ZS5zdmcpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtKDYpO1xuICAgIH1cbiAgfVxuICAuY3RmLXR3ZWV0LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xuICAgIGNvbG9yOiAkY2xyLTE7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRjbHItMTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5cbiNjdGYuY3RmLXN0eWxlcyAuY3RmLWF1dGhvci1zY3JlZW5uYW1lLCBcbiNjdGYuY3RmLXN0eWxlcyAuY3RmLWNvbnRleHQsIFxuI2N0Zi5jdGYtc3R5bGVzIC5jdGYtdHdpdHRlcmxpbmssIFxuI2N0Zi5jdGYtc3R5bGVzIC5jdGYtdHdlZXQtbWV0YSB7XG4gIGZvbnQtc2l6ZTogZW0oMTYpO1xuICBjb2xvcjogJGNsci0xO1xufVxuXG4jY3RmIC5jdGYtdHdlZXQtbWVkaWEgPiBhIHtcbiAgbWFyZ2luOiByZW0oMSkhaW1wb3J0YW50O1xufSIsIi5wYWdlLWFzaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzQlO1xuICBwYWRkaW5nOiBlbSgxMjUpIGVtKDcwKSAwO1xuICBtYXJnaW4tYm90dG9tOiBlbSgtMTApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICBwYWRkaW5nOiBlbSgxMjUpIGVtKDMwKSAwO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2NjApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogZW0oMjApO1xuICAgIHotaW5kZXg6IDE1O1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IHJlbSgtMzMpO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWdyaXMteHMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICB9XG4gIH1cbn1cblxuLmFzaWRlLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCAkY2xyLTI7XG4gIHBhZGRpbmctYm90dG9tOiBlbSg3KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDY2MCkgKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZW0oMzApO1xuICB9XG59XG5cbi5zaW5nbGUtcG9zdCAucGFnZS1hc2lkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiLnNlYXJjaGZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXEUwMDcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtZmFtaWx5OiBcInVidWR1LWljb25zXCI7XG4gICAgZm9udC1zaXplOiBlbSgyMSk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjbHItMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IHJlbSgxMCk7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5zZWFyY2hmb3JtLWJ0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogcmVtKDM1KTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgei1pbmRleDogMjtcbn1cblxuLnBhZ2UtbmV3cyAuc2VhcmNoZm9ybSB7XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY29sb3I6ICRjbHItMTtcbiAgICBmb250LXNpemU6IGVtKDE2KTtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTAtbGlnaHRlbjtcbiAgICBib3JkZXItY29sb3I6ICRjbHItMC1saWdodGVuO1xuICB9XG59XG5cbi5wYWdlLW5ld3MgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogJGNsci0xO1xuICBmb250LXNpemU6IGVtKDE0KTtcbn1cblxuLy8gRmlyZWZveCAxOFxuLnBhZ2UtbmV3cyAuc2VhcmNoZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMTtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG59XG5cbi8vIEZpcmVmb3ggMTkrXG4ucGFnZS1uZXdzIC5zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMTtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG59XG5cbi5wYWdlLW5ld3MgLnNlYXJjaGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMTtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG59XG5cbi5zZWFyY2gtdGl0bGUge1xuICBmb250LXNpemU6IGVtKDIyKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuI2hlYWRlci1zZWFyY2hmb3JtIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IGVtKDE4MCk7XG4gIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICBjb2xvcjogJGNsci0xO1xuICBpbnB1dCB7XG4gICAgZm9udC1zaXplOiBlbSgxMik7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IGVtKDkpIGVtKDMwKSBlbSg4KSBlbSgxMCk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgZm9udC1zaXplOiByZW0oMTkpO1xuICB9XG59XG5cbi5oZWFkZXItc2VhcmNoLmlzLXZpc2libGUge1xuICAjaGVhZGVyLXNlYXJjaGZvcm0ge1xuICAgIGRpc3BsYXk6IGJsb2NrXG4gIH1cbiAgLmljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuI3RvZ2dsZUZvcm0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiNoZWFkZXItc2VhcmNoZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiNoZWFkZXItc2VhcmNoZm9ybS1tb2JpbGUgaW5wdXRbdHlwZT1cInRleHRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogJGNsci0xO1xuICBmb250LXNpemU6IHJlbSgxNCk7XG59XG5cbi8vIEZpcmVmb3ggMThcbiNoZWFkZXItc2VhcmNoZm9ybSBpbnB1dFt0eXBlPVwidGV4dFwiXTotbW96LXBsYWNlaG9sZGVyLFxuI2hlYWRlci1zZWFyY2hmb3JtLW1vYmlsZSBpbnB1dFt0eXBlPVwidGV4dFwiXTotbW96LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMTtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xufVxuXG4vLyBGaXJlZm94IDE5K1xuI2hlYWRlci1zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbW96LXBsYWNlaG9sZGVyLFxuI2hlYWRlci1zZWFyY2hmb3JtLW1vYmlsZSBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAkY2xyLTE7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbn1cblxuI2hlYWRlci1zZWFyY2hmb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbiNoZWFkZXItc2VhcmNoZm9ybS1tb2JpbGUgaW5wdXRbdHlwZT1cInRleHRcIl06LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMTtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xufVxuXG5cbi8qIE1PQklMRSAqL1xuLnNlYXJjaGZvcm0tY29udGFpbmVyLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogJGNsci0xO1xuICBwYWRkaW5nOiBlbSgxMDApIGVtKDI1KSBlbSgzMCk7XG59XG5cbiNoZWFkZXItc2VhcmNoZm9ybS1tb2JpbGUge1xuICBmb250LXNpemU6IGVtKDE1KTtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGNvbG9yOiAkY2xyLTE7XG4gIGlucHV0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogZW0oMTApIGVtKDM1KSBlbSgxMCkgZW0oMTApO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgfVxufVxuXG5cblxuXG5cblxuXG4iLCIuYmxvZy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IGVtKDUwKTtcbiAgcCxcbiAgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2ctaGVhZGVyLWRlc2t0b3Age1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5ibG9nLWhlYWRlci1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiBlbSgyMjApO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTI7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtKDgpO1xuICAgIHBhZGRpbmc6IGVtKDEwKSBlbSgyMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDMyMCkgKSB7XG4gICAgdG9wOiBlbSgyMTApO1xuICB9XG59XG5cbi5ibG9nLWhlYWRlci1zZWFyY2gsXG4uYmxvZy1oZWFkZXItaGFzaHRhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAuaWNvbiB7XG4gICAgY29sb3I6ICRjbHItMTtcbiAgICBmb250LXNpemU6IGVtKDI0KTtcbiAgICBtYXJnaW46IGVtKDUpIDA7XG4gIH1cbn1cblxuLmJsb2ctc2VhcmNoLWRlc2t0b3Age1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5ibG9nLXNlYXJjaC1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjYwKSApIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgYmFja2dyb3VuZDogJGNsci0xO1xuICAgIHBhZGRpbmc6IGVtKDEwMCkgZW0oMjUpO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG59XG5cbi5ibG9nLXNlYXJjaCB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLnRhZ3MtY2xvdWQge1xuICBtYXJnaW4tbGVmdDogZW0oMjUpO1xufVxuXG4udGFncy1jbG91ZCxcbi50YWdzLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiBlbSgxNSk7XG59XG5cbi50YWctY2xvdWQtbGluayB7XG4gIGNvbG9yOiAkY2xyLTE7XG4gIGZvbnQtc2l6ZTogZW0oMTUpIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IHJlbSgzKTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcjJztcbiAgfVxufVxuXG4udGFncy1jbG91ZC1kZXNrdG9wIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDY2MCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udGFncy1jbG91ZC50YWdzLWNsb3VkLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2NjApICkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgcGFkZGluZzogZW0oMTAwKSBlbSgyNSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC50YWdzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IGVtKDI4KTtcbiAgfVxuICAudGFnLWNsb3VkLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogZW0oMjEpIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xuICB9XG59XG4iLCIuYmFjayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogZW0oMTQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogZW0oNzApO1xuICBtYXJnaW4tdG9wOiBlbSgyNSk7XG4gIC5pY29uIHtcbiAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxNSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4ucG9zdC1pbWcge1xuICBtYXJnaW4tYm90dG9tOiBlbSgyNSk7XG59XG5cbi5wb3N0LWNvbnRlbnQge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGV0dGVyLXNwYWNpbmc6IGVtKDAuMik7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS41KTtcbiAgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbi5wb3N0LWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogZW0oMjUpO1xuICAucG9zdC10YWdzIHtcbiAgICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luOiAwO1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1hcmdpbi10b3A6IHJlbSgzKTtcbiAgICB9XG4gIH1cbn1cblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiBlbSgxNCk7XG4gIC5wcmV2LXBvc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5uZXh0LXBvc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgfVxuICAucHJldi1wb3N0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcRTAwMSc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1mYW1pbHk6IFwidWJ1ZHUtaWNvbnNcIjtcbiAgICBmb250LXNpemU6IGVtKDI1KTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMjApO1xuICB9XG4gIC5uZXh0LXBvc3Q6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXEUwMDEnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtZmFtaWx5OiBcInVidWR1LWljb25zXCI7XG4gICAgZm9udC1zaXplOiBlbSgyNSk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgyMCk7XG4gIH1cbn1cblxuXG4ucG9zdC1zaGFyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiByZW0oMyk7XG4gICY6aG92ZXIgLnBvc3Qtc2hhcmUtbGlzdCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5zaGFyZVRvZ2dsZSB7XG4gIGZvbnQtc2l6ZTogZW0oMzApO1xuICBjb2xvcjogJGNsci0xO1xufVxuXG4ucG9zdC1zaGFyZS1saXN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIGJvdHRvbTogODglO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zaXRpb246ICR0cmFucztcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2hhcmUtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjRjlGOUY5O1xuICBwYWRkaW5nOiBlbSg2KSBlbSgxMCk7XG4gIGJvcmRlci1ib3R0b206IHJlbSgxKSBzb2xpZCAkY2xyLTAtbGlnaHRlbjtcbiAgbWluLXdpZHRoOiBlbSgxNTApO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTAtbGlnaHRlbjtcbiAgfVxufVxuXG4iLCIuY29udGFjdC1mb3JtIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZm9udC1zaXplOiBlbSgxNik7XG4gICAgY29sb3I6ICRjbHItMTtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLWxpZ2h0O1xuICAgIGJvcmRlcjogcmVtKDIpIHNvbGlkICNGMEYwRjA7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDgpIHJlbSg4KSAwIHJlbSg4KTtcbiAgICBwYWRkaW5nOiBlbSgxMykgZW0oMzApO1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiBlbSgxMCkgZW0oMzApO1xuICAgICAgbWFyZ2luLXRvcDogZW0oMTApO1xuICAgIH1cbiAgICAmOmhvdmVyLCBcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci0xO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdGZvcm0tb3V0dGVyV3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQ6IHJnYmEoICRjbHItMSwgMC41KTtcbiAgei1pbmRleDogMjAwMDtcbn1cblxuLmNvbnRhY3QtZm9ybS13cmFwcGVyIHtcbiAgYm94LXNpemluZzogaW5pdGlhbDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgd2lkdGg6IHJlbSg3NjApO1xuICBiYWNrZ3JvdW5kOiAjRkFGOUY5O1xuICBwYWRkaW5nOiBlbSg2MCkgZW0oMTUwKTtcbiAgYm9yZGVyLXJhZGl1czogcmVtKDMpO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTI2MCkgKSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTEwMCkgKSB7XG4gICAgcGFkZGluZzogZW0oNDApIGVtKDEwMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBwYWRkaW5nOiBlbSg2MCkgZW0oNzApO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIHRvcDogZW0oMTApO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBwYWRkaW5nOiBlbSgzMCkgZW0oNTApO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg0MDApICkge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgcGFkZGluZzogZW0oMjApO1xuICB9XG5cbiAgQG1lZGlhICggbWF4LWhlaWdodDogODQwcHggKSBhbmQgKCBtaW4td2lkdGg6IGVtKDExMDApICkge1xuICAgIHBhZGRpbmc6IGVtKDQwKSBlbSgxMDApO1xuICB9XG5cbiAgLmNsb3NlIHtcbiAgICB0b3A6IGVtKDMwKTtcbiAgICByaWdodDogZW0oMzApO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJGNsci0xO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJGNsci0xO1xuICAgIH1cbiAgfVxuXG4gIGZvcm0ge1xuICAgIHBhZGRpbmctbGVmdDogZW0oOTApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NzApICkge1xuICAgICAgcGFkZGluZy1sZWZ0OiBlbSg3MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY29udGFjdC1idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jb250YWN0LXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IGVtKDQwKTtcbiAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NDApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMjUpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gIH0gXG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg0MDApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMjEpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNSk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgxNSk7XG4gIH0gXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IHJlbSg1MCk7XG4gICAgYm9yZGVyLXRvcDogcmVtKDUpIHNvbGlkICRjbHItMjtcbiAgfVxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbn1cblxuLmNvbnRhY3QtdHgge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbWFyZ2luLWJvdHRvbTogZW0oNTApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTQwKSApIHtcbiAgICBmb250LXNpemU6IGVtKDE0KTtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgyNSk7XG4gIH0gXG59XG5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiBlbSgyNSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICggbWF4LWhlaWdodDogODQwcHggKSBhbmQgKCBtaW4td2lkdGg6IGVtKDExMDApICkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH0gXG4gICYuZm9ybS1ncm91cC1zbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChpbWFnZXMvbG9nby1pY29uby5zdmcpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBlbSgtOTApO1xuICAgICAgICBoZWlnaHQ6IGVtKDQzKTtcbiAgICAgICAgd2lkdGg6IGVtKDQ0KTtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgICAgICAgbGVmdDogZW0oLTcwKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9IFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5mb3JtLWZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLmZvcm0tZm9vdGVyLXR4IHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luOiAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICBmb250LXNpemU6IGVtKDEyKTtcbiAgICBtYXJnaW4tdG9wOiBlbSgtMTApIWltcG9ydGFudDtcbiAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgIG1hcmdpbi1yaWdodDogZW0oMTApO1xuICB9XG59XG5cbi5mb3JtLWdyb3VwLWNvbnRhY3Qge1xuICBtYXJnaW4tbGVmdDogZW0oLTkwKTtcbiAgbWFyZ2luLWJvdHRvbTogZW0oNTApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODgwKSApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgyMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc3MCkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKC03MCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQG1lZGlhICggbWF4LWhlaWdodDogODQwcHggKSBhbmQgKCBtaW4td2lkdGg6IGVtKDExMDApICkge1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDIwKTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IGVtKDE3KTtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgxMCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgICBmb250LXNpemU6IGVtKDE1KTtcbiAgICB9XG4gIH1cbn1cblxuaW5wdXQuY29udGFjdC1uYW1lIHtcbiAgbWF4LXdpZHRoOiBlbSg0NTApO1xuICBiYWNrZ3JvdW5kOiAkY2xyLTAtbGlnaHRlbjtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXItY29sb3I6ICRjbHItMC1saWdodGVuO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBtYXJnaW46IHJlbSgxMCkgMCAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTAyMCkgKSB7XG4gICAgbWF4LXdpZHRoOiBlbSgyNTApO1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNsci0wLWxpZ2h0ZW47XG4gIH1cbn1cblxuLndwY2Y3LWxpc3QtaXRlbS5maXJzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyBcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG4ud3BjZjctbGlzdC1pdGVtLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG59XG5cbi5jb250YWN0LWZvcm0tY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRhY3QtZm9ybS1yYWRpbyB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMTQpO1xuICB9XG59XG5cbi5mb3JtLWluZm8ge1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODgwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbmRpdiN1cyxcbmRpdiNhcyxcbmRpdiNldSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4ODApICkge1xuICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jb250YWN0LWRldGFpbHMge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiByZW0oMTk0KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg4MCkgKSB7XG4gICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNvbnRhY3QtbmFtZSxcbi5jb250YWN0LXRlbCxcbi5jb250YWN0LW1haWwge1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbWFyZ2luOiAwIDAgcmVtKDUpO1xufVxuXG4uY29udGFjdC1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogcmVtKDIwKSAwIHJlbSgxMCk7XG59XG4iLCIucGFnZS1zb2x1dGlvbnMge1xuICAucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogZW0oMTU1KSAwIGVtKDE3MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgICBwYWRkaW5nOiBlbSg3MCkgMCBlbSg2MCk7XG4gICAgfSBcbiAgfVxuICAucGFnZS10aXRsZSB7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNDUpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4uc29sdXRpb24tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi5jbHItYmcge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg4MCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtYmxldS5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgdG9wOiByZW0oLTMzKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsZXUteHMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IHJlbSgtODApO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLWJvdHRvbS1ibGV1LnN2ZycpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgYm90dG9tOiByZW0oLTMzKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLWJvdHRvbS1ibGV1LXhzLnN2ZycpIHJlcGVhdC14IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFzc2V0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIH1cbiAgfVxuICAuYXNzZXRzLXdyYXBwZXIge1xuICAgIG1hcmdpbjogZW0oNTUpIGF1dG8gZW0oNjApO1xuICAgICYuYXNzZXRzLW1vYmlsZSB7XG4gICAgICBtYXJnaW46IHJlbSgxNSkgYXV0byBlbSg1MCk7XG4gICAgfVxuICB9XG4gIC5hc3NldC1pdGVtIHtcbiAgICB3aWR0aDogZW0oMjMwKTtcbiAgfVxuICAuYXNzZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogZW0oMjApO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkY2xyLTE7XG4gIH1cbiAgLmFzc2V0LXR4IHtcbiAgICBmb250LXNpemU6IGVtKDE3KTtcbiAgICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIH1cbn1cblxuLnNvbHV0aW9uLXNlY3Rpb24tc2Vjb25kYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLmdyYXktYmcge1xuICAgIG1hcmdpbi10b3A6IHJlbSg4MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKC04MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg4MCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgdG9wOiByZW0oLTMzKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWdyaXMteHMuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLndoaXRlLWJnIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiByZW0oLTg1KTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ibGFuYy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgdG9wOiByZW0oLTQ1KTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsYW5jLXhzLnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNvbHV0aW9uLXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uc29sdXRpb24tdGl0bGUge1xuICBmb250LXNpemU6IGVtKDMyKTtcbiAgY29sb3I6ICRjbHItMTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcbiAgfVxufVxuXG4uY2xyLWJnIHtcbiAgLnNvbHV0aW9uLXRpdGxlIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgfVxuICAuc29sdXRpb24tY2xpZW50cy10aXRsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY2xyLWxpZ2h0O1xuICB9XG4gIC5zb2x1dGlvbi1jbGllbnRzLXRpdGxlIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgfVxufVxuXG4uc29sdXRpb24tcHJlc2VudGF0aW9uIHtcbiAgd2lkdGg6IDM0JTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICB9XG59XG5cbi5zb2x1dGlvbi10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIHBhZGRpbmctbGVmdDogZW0oODApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGVtKDYpO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBlbSg0OCk7XG4gICAgICBib3JkZXItdG9wOiByZW0oNCkgc29saWQgJGNsci0yO1xuICB9XG4gIGJyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNDAwKSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zb2x1dGlvbi10YWdzIHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgbGV0dGVyLXNwYWNpbmc6IGVtKDAuMik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDAgMCBlbSg1MCk7XG4gIHBhZGRpbmctbGVmdDogZW0oODApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICB9XG59XG5cbi5zb2x1dGlvbi1idXR0b24ge1xuICBtYXJnaW4tbGVmdDogZW0oODApO1xufVxuXG4uc29sdXRpb24tY2xpZW50cyB7XG4gIG1hcmdpbjogZW0oMjApO1xufVxuXG4uc29sdXRpb24tY2xpZW50cy10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IGVtKDI0KTtcbiAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG4gIGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCAkY2xyLTE7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgIGJvcmRlci1ib3R0b206IHJlbSgzKSBzb2xpZCAkY2xyLTE7XG4gIH1cbn1cblxuXG4ubG9nb3Mtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogZW0oNTApO1xuICAuc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7IFxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbiAgfVxuICAubG9nb3Mtc2xpZGVyLXNsaWRlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIG1hcmdpbjogMCBlbSgxMCk7XG4gICAgfVxuICB9XG59XG5cbi5sb2dvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IGVtKDE5MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cblxuLmFzc2V0cy1kZXNrdG9wIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYXNzZXRzLXNsaWRlci1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICAuc2xpZGVyLW5hdi1wcmV2IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBlbSgtMzApO1xuICAgIC5pY29uLWFycm93IHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItbmF2LW5leHQge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBlbSgtMzApO1xuICB9XG4gIC5pY29uLWFycm93IHtcbiAgICBmb250LXNpemU6IGVtKDI1KTtcbiAgICBjb2xvcjogJGNsci0yOztcbiAgfVxufVxuXG4uYXNzZXRzLW1vYmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IGVtKDI4MCk7XG4gIGhlaWdodDogZW0oMzAwKTtcbiAgcGFkZGluZzogMDtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmFzc2V0LWl0ZW0ge1xuICAgIGhlaWdodDogZW0oMjkwKTtcbiAgICBwYWRkaW5nLXRvcDogZW0oMTAwKTtcbiAgfVxuICAuYXNzZXQtdHgge1xuICAgIGxpbmUtaGVpZ2h0OiBlbSgyNSk7XG4gIH1cbn1cblxuI2J1aWxkaW5nIHtcbiAgcGFkZGluZy10b3A6IGVtKDEwKTtcbiAgcGFkZGluZy1ib3R0b206IGVtKDYwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgcGFkZGluZy10b3A6IGVtKDEwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogZW0oMzApO1xuICB9XG4gIC53cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1pbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBlbSgtNDApO1xuICAgIHdpZHRoOiBlbSg4MDApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgd2lkdGg6IDEwNyU7XG4gICAgICBtYXJnaW46IDAgcmVtKC0xNSk7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1wcmVzZW50YXRpb24ge1xuICAgIG1hcmdpbi10b3A6IGVtKDY1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIG1hcmdpbjogZW0oMzUpIGF1dG87XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4NTApICkge1xuICAgICAgcGFkZGluZzogMCBlbSgyMCk7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1hc3NldHMsXG4gIC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICAgIHBhZGRpbmc6IDAgZW0oMjApO1xuICAgIH1cbiAgfVxuICAuYXNzZXRzLXdyYXBwZXIuYXNzZXRzLWRlc2t0b3Age1xuICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0LWJ1aWxkaW5nLWJnLnN2ZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBoZWlnaHQ6IGVtKDMzMSk7XG4gICAgd2lkdGg6IGVtKDEwNDApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMDI0KSApIHtcbiAgICAgIGhlaWdodDogZW0oMjg2KTtcbiAgICAgIHdpZHRoOiBlbSg5MDApO1xuICAgIH1cbiAgfVxuICAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgIHRvcDogZW0oNjApO1xuICAgIGxlZnQ6IGVtKDEyNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEwMjQpICkge1xuICAgICAgdG9wOiBlbSg1MCk7XG4gICAgICBsZWZ0OiBlbSg5MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICB0b3A6IGVtKDEzNSk7XG4gICAgbGVmdDogZW0oNDIwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTAyNCkgKSB7XG4gICAgICB0b3A6IGVtKDExMCk7XG4gICAgICBsZWZ0OiBlbSgzNTApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgdG9wOiBlbSg4MCk7XG4gICAgcmlnaHQ6IGVtKDc1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTAyNCkgKSB7XG4gICAgICB0b3A6IGVtKDUwKTtcbiAgICAgIHJpZ2h0OiBlbSgzNSk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKSxcbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9idWlsZGluZy10b3AtMS5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNjEpO1xuICAgICAgICB3aWR0aDogcmVtKDY1KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9idWlsZGluZy1ib3R0b20tMS5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNDcpO1xuICAgICAgICB3aWR0aDogcmVtKDIxMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogZW0oMTcpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSxcbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpICB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvYnVpbGRpbmctdG9wLTIuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDYwKTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMTApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2J1aWxkaW5nLWJvdHRvbS0yLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg5NCk7XG4gICAgICAgIHdpZHRoOiByZW0oMjE1KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCksXG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvYnVpbGRpbmctdG9wLTMuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDYyKTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMTUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2J1aWxkaW5nLWJvdHRvbS0zLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2Nik7XG4gICAgICAgIHdpZHRoOiByZW0oMjE1KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogZW0oMjUpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuI2hvc3BpdGFsaXR5IHtcbiAgLnNvbHV0aW9uLXNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IGVtKC03MCk7XG4gICAgcGFkZGluZzogZW0oODApIDAgZW0oMTIwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIHBhZGRpbmc6IGVtKDUwKSAwIGVtKDMwKTtcbiAgICB9XG4gIH1cbiAgLnNvbHV0aW9uLWltZyB7XG4gICAgbWFyZ2luLWxlZnQ6IGVtKC0yNSk7XG4gICAgd2lkdGg6IGVtKDY1MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogZW0oMTAwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIG1hcmdpbjogZW0oMzUpIGF1dG87XG4gICAgfVxuICB9XG4gIC5hc3NldHMtd3JhcHBlci5hc3NldHMtZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnQtaG9zcGl0YWxpdHktYmcuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGhlaWdodDogZW0oMzk2KTtcbiAgICB3aWR0aDogZW0oMTE1NSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA2MCkgKSB7XG4gICAgICBoZWlnaHQ6IGVtKDMwOCk7XG4gICAgICB3aWR0aDogZW0oOTAwKTtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICB0b3A6IGVtKDEyMCk7XG4gICAgbGVmdDogZW0oMTUwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA2MCkgKSB7XG4gICAgICB0b3A6IGVtKDkwKTtcbiAgICAgIGxlZnQ6IGVtKDk1KTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuICAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBib3R0b206IGVtKDExMCk7XG4gICAgbGVmdDogZW0oNTEwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA2MCkgKSB7XG4gICAgICBib3R0b206IGVtKDcwKTtcbiAgICAgIGxlZnQ6IGVtKDM3MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm90dG9tOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBib3R0b206IGluaXRpYWw7XG4gICAgbGVmdDogaW5pdGlhbDtcbiAgICB0b3A6IGVtKDg1KTtcbiAgICByaWdodDogZW0oMTIwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA2MCkgKSB7XG4gICAgICB0b3A6IGVtKDU1KTtcbiAgICAgIHJpZ2h0OiBlbSg2NSk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICBwYWRkaW5nLXRvcDogZW0oMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogZW0oMTkwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGVtKDEwMCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgICAgcGFkZGluZy10b3A6IGVtKDEwKTtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNSkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LXRvcC0xLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2MSk7XG4gICAgICAgIHdpZHRoOiByZW0oMTA2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9ob3NwaXRhbGl0eS1ib3R0b20tMS5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNjIpO1xuICAgICAgICB3aWR0aDogcmVtKDIwNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogZW0oMTcpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSxcbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpICB7XG4gICAgcGFkZGluZy10b3A6IGVtKDExMCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvaG9zcGl0YWxpdHktdG9wLTIuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDg5KTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMDkpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LWJvdHRvbS0yLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2Nik7XG4gICAgICAgIHdpZHRoOiByZW0oMjEyKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCksXG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvaG9zcGl0YWxpdHktdG9wLTMuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDg5KTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMTQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2hvc3BpdGFsaXR5LWJvdHRvbS0zLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2Myk7XG4gICAgICAgIHdpZHRoOiByZW0oMTEwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogZW0oMTcpO1xuICAgICAgICBib3R0b206IGVtKDIwKTtcbiAgICB9XG4gIH1cbn1cblxuI2luZHVzdHJ5IHtcbiAgcGFkZGluZy10b3A6IGVtKDE1KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgcGFkZGluZzogZW0oMjApIDAgMDtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSg4MCk7XG4gIH1cbiAgLnNvbHV0aW9uLWltZyB7XG4gICAgd2lkdGg6IGVtKDY1MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNvbHV0aW9uLXByZXNlbnRhdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogZW0oODApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgbWFyZ2luOiBlbSgzNSkgYXV0bztcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy13cmFwcGVyLmFzc2V0cy1kZXNrdG9wIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydC1pbmR1c3RyeS1iZy5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiBlbSg0MTApO1xuICAgIHdpZHRoOiBlbSgxMTU1KTtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSg2MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEwNzApICkge1xuICAgICAgaGVpZ2h0OiBlbSgzMTkpO1xuICAgICAgd2lkdGg6IGVtKDkwMCk7XG4gICAgfVxuICB9XG4gIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgdG9wOiBlbSgxMTApO1xuICAgIGxlZnQ6IGVtKDI1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA3MCkgKSB7XG4gICAgICB0b3A6IGVtKDc1KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICB0b3A6IGluaXRpYWw7XG4gICAgdG9wOiBlbSgxNzApO1xuICAgIGxlZnQ6IGVtKDMxNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEwNzApICkge1xuICAgICAgdG9wOiBlbSgxMzApO1xuICAgICAgbGVmdDogZW0oMjEwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuICAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMykge1xuICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHRvcDogZW0oMjQwKTtcbiAgICByaWdodDogZW0oMzA1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA3MCkgKSB7XG4gICAgICB0b3A6IGVtKDE2MCk7XG4gICAgICByaWdodDogZW0oMjEwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICB0b3A6IGVtKDExMCk7XG4gICAgcmlnaHQ6IGVtKDM1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA3MCkgKSB7XG4gICAgICB0b3A6IGVtKDgwKTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuICAuc29sdXRpb24tY2xpZW50cyB7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDkwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBlbSg1MCk7XG4gICAgfVxuICB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgyKSxcbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDYpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9pbmR1c3RyeS10b3AtMS5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oODUpO1xuICAgICAgICB3aWR0aDogcmVtKDIwNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogZW0oMTcpO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvaW5kdXN0cnktYm90dG9tLTEuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDY0KTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMDYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMyksXG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KSAge1xuICAgIHBhZGRpbmctdG9wOiBlbSgxMTApO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC0yLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg5MCk7XG4gICAgICAgIHdpZHRoOiByZW0oMjEwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogZW0oMjApO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LWJvdHRvbS0yLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2MCk7XG4gICAgICAgIHdpZHRoOiByZW0oMjEyKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDQpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoOCkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC0zLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg4Mik7XG4gICAgICAgIHdpZHRoOiByZW0oMjEyKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9pbmR1c3RyeS1ib3R0b20tMy5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNzApO1xuICAgICAgICB3aWR0aDogcmVtKDIxMSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogZW0oMTcpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCgxKSxcbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDUpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoOSkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL2luZHVzdHJ5LXRvcC00LnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2Nik7XG4gICAgICAgIHdpZHRoOiByZW0oMjA2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9pbmR1c3RyeS1ib3R0b20tNC5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oODUpO1xuICAgICAgICB3aWR0aDogcmVtKDIwNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IGVtKDE3KTtcbiAgICAgICAgYm90dG9tOiAwIDtcbiAgICB9XG4gIH1cbn1cblxuI3JldGFpbCB7XG4gIHBhZGRpbmctdG9wOiBlbSgzMCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApICkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gIC5zb2x1dGlvbi1pbWcge1xuICAgIHdpZHRoOiBlbSg2NTApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1wcmVzZW50YXRpb24ge1xuICAgIG1hcmdpbi10b3A6IGVtKDEyMCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBtYXJnaW46IGVtKDM1KSBhdXRvO1xuICAgIH1cbiAgfVxuICAuYXNzZXRzLXdyYXBwZXIuYXNzZXRzLWRlc2t0b3Age1xuICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0LXJldGFpbC1iZy5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgaGVpZ2h0OiBlbSgzOTIpO1xuICAgIHdpZHRoOiBlbSgxMTE4KTtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgxNTApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMDI0KSApIHtcbiAgICAgIGhlaWdodDogZW0oMzE2KTtcbiAgICAgIHdpZHRoOiBlbSg5MDApO1xuICAgIH1cbiAgfVxuICAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHRvcDogZW0oMTYwKTtcbiAgICBsZWZ0OiBlbSgxMDApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMDYwKSApIHtcbiAgICAgIHRvcDogZW0oMTIwKTtcbiAgICAgIGxlZnQ6IGVtKDcwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDkwMCkgKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuICAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMikge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBib3R0b206IGVtKDE0NSk7XG4gICAgbGVmdDogZW0oNDY1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTA2MCkgKSB7XG4gICAgICBib3R0b206IGVtKDEwNSk7XG4gICAgICBsZWZ0OiBlbSgzNTApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTAwKSApIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5hc3NldC1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgYm90dG9tOiBpbml0aWFsO1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgdG9wOiBlbSgxNzApO1xuICAgIHJpZ2h0OiBlbSgxMDUpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMDYwKSApIHtcbiAgICAgIHRvcDogZW0oMTIwKTtcbiAgICAgIHJpZ2h0OiBlbSg2MCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5MDApICkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gIC5zb2x1dGlvbi1jbGllbnRzIHtcbiAgICBwYWRkaW5nLXRvcDogZW0oMTApO1xuICAgIHBhZGRpbmctYm90dG9tOiBlbSg3MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZW0oMzApO1xuICAgIH1cbiAgfVxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoMiksXG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg1KSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLXRvcC0xLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2NCk7XG4gICAgICAgIHdpZHRoOiByZW0oMTExKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogZW0oMTcpO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLWJvdHRvbS0xLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg4OSk7XG4gICAgICAgIHdpZHRoOiByZW0oMjE1KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDMpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNikgIHtcbiAgICBwYWRkaW5nLXRvcDogZW0oODUpO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvc21hcnRfc2xpZGVyL3JldGFpbC10b3AtMi5zdmcnKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNTkpO1xuICAgICAgICB3aWR0aDogcmVtKDIxNSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogZW0oMTcpO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLWJvdHRvbS0yLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg1Mik7XG4gICAgICAgIHdpZHRoOiByZW0oMjE1KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmFzc2V0cy1tb2JpbGUgLmFzc2V0LWl0ZW06bnRoLWNoaWxkKDEpLFxuICAuYXNzZXRzLW1vYmlsZSAuYXNzZXQtaXRlbTpudGgtY2hpbGQoNCksXG4gIC5hc3NldHMtbW9iaWxlIC5hc3NldC1pdGVtOm50aC1jaGlsZCg3KSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy9zbWFydF9zbGlkZXIvcmV0YWlsLXRvcC0zLnN2ZycpIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbSg1Nik7XG4gICAgICAgIHdpZHRoOiByZW0oMTA2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBlbSgxNyk7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3NtYXJ0X3NsaWRlci9yZXRhaWwtYm90dG9tLTMuc3ZnJykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtKDk5KTtcbiAgICAgICAgd2lkdGg6IHJlbSgyMTUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IGVtKDE3KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbiIsIi5wYWdlLXRlY2hub2xvZ3kge1xuICAucGFnZS1pbnRyby13cmFwcGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDE1MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU3MCkgKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZW0oNTApO1xuICAgIH1cbiAgfVxuICAucGFnZS10aXRsZSB7XG4gICAgY29sb3I6ICRjbHItMjtcbiAgICBtYXgtd2lkdGg6IGVtKDIwMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgzMCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDQ1KTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtaW50cm8td3JhcHBlciAud3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBlbSg0OCk7XG4gICAgICBsZWZ0OiBlbSgxNTApO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGVtKDE1OSk7XG4gICAgICBoZWlnaHQ6IGVtKDQ5OCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy90ZWNobm8tbGluZXMuc3ZnJyk7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTAyNCkgKSB7XG4gICAgICAgIGxlZnQ6IGVtKDMwKTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBlbSg0OCk7XG4gICAgICByaWdodDogZW0oMTUwKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBlbSgxNTkpO1xuICAgICAgaGVpZ2h0OiBlbSg0OTgpO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdGVjaG5vLWxpbmVzLnN2ZycpO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTAyNCkgKSB7XG4gICAgICAgIHJpZ2h0OiBlbSgzMCk7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4udGVjaG5vLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICYuY2xyLWJnLTIge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg3MCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtdG9wLWJsZXUuc3ZnJykgcmVwZWF0LXggdG9wIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDgwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICAgIHRvcDogcmVtKC0zMyk7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS10b3AtYmxldS14cy5zdmcnKSByZXBlYXQteCB0b3AgbGVmdDtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IHJlbSgtODApO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWJsZXUuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDgwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgICBib3R0b206IHJlbSgtMzMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tYmxldS14cy5zdmcnKSByZXBlYXQteCBib3R0b20gbGVmdDtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmdyYXktYmcge1xuICAgIG1hcmdpbi10b3A6IHJlbSg4MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDgwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDgwKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiByZW0oLTgwKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ncmlzLnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgICB0b3A6IHJlbSgtMzMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy14cy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHJlbSgzMyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS1ib3R0b20tZ3Jpcy5zdmcnKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgYm90dG9tOiByZW0oLTMzKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtYm90dG9tLWdyaXMteHMuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGVjaG5vLXRpdGxlIHtcbiAgZm9udC1zaXplOiBlbSgzMik7XG4gIGNvbG9yOiAkY2xyLTE7XG4gICYuY2VudGVyLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IHJlbSg0OCk7XG4gICAgICBib3JkZXItYm90dG9tOiByZW0oNCkgc29saWQgJGNsci0yO1xuICAgICAgbWFyZ2luOiByZW0oMjApIGF1dG8gMDtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IGVtKDI4KTtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgyNSk7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDE1KTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogcmVtKDQwKTtcbiAgICBib3JkZXItdG9wOiByZW0oNCkgc29saWQgJGNsci0yO1xuICB9XG59XG5cbi5kZXNrdG9wLXRpdGxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2xyLWJnLFxuLmNsci1iZy0yIHtcbiAgLnRlY2huby10aXRsZSB7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIH1cbn1cblxuLnRlY2huby1wcmVzZW50YXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4udGVjaG5vLWlsbHUtd3JhcHBlciB7XG4gIHdpZHRoOiBlbSg1ODApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjMwKSApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udGVjaG5vLXR4LXdyYXBwZXIge1xuICB3aWR0aDogZW0oNTIwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYzMCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnRlY2huby10ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIG1hcmdpbi10b3A6IGVtKDIwKTtcbiAgcGFkZGluZy1sZWZ0OiBlbSg4MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGVtKDYpO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBlbSg0OCk7XG4gICAgYm9yZGVyLXRvcDogcmVtKDQpIHNvbGlkICRjbHItMjtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4udGVjaG5vLXRleHQtc2Vjb25kYXJ5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IGVtKDE2KTtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiBlbSgzNSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIG1hcmdpbi10b3A6IGVtKDIwKTtcbiAgfVxufVxuXG4jbmV0d29yayxcbiN0YWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWFyZ2luOiAwO1xufVxuXG4jbmV0d29yayB7XG4gIHBhZGRpbmc6IGVtKDUwKSAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBwYWRkaW5nOiBlbSg0MCkgMCAwO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnRlY2huby1pbGx1LXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IHJlbSgtMjUpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDtcbiAgICAgIG1hcmdpbi1ib3R0b206IGVtKDMwKTtcbiAgICB9XG4gIH1cbiAgLnRlY2huby10eC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oNzApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLnRlY2huby1sZWdlbmQge1xuICAgIHBhZGRpbmctbGVmdDogZW0oODApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn1cblxuI3RhZyB7XG4gIHBhZGRpbmc6IGVtKDUwKSAwIGVtKDUwKTtcbiAgbWFyZ2luLWxlZnQ6IHJlbSgtNCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmc6IGVtKDQwKSAwIGVtKDMwKTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC50ZWNobm8tcHJlc2VudGF0aW9uIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICB9XG4gIH1cbiAgLnRlY2huby10eC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oLTQwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjMwKSApIHtcbiAgICAgIG1hcmdpbi10b3A6IGluaXRpYWw7XG4gICAgICBtYXJnaW4tdG9wOiBlbSgxNSk7XG4gICAgfVxuICB9XG4gIC50ZWNobm8taWxsdS13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMjUpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgLm1vYmlsZS10aXRsZSB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgfVxufVxuXG4udGVjaG5vLWxlZ2VuZCB7XG4gIG1hcmdpbi10b3A6IGVtKDM1KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgzNzApICkge1xuICAgIGZvbnQtc2l6ZTogZW0oMTQpXG4gIH1cbiAgbGkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTAwKSApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGVtKDE1KTtcbiAgICB9XG4gIH1cbiAgbGk6Zmlyc3QtY2hpbGQgLnRlY2huby1sZWdlbmQtaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAudGVjaG5vLWxlZ2VuZC1pbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBlbSgxMCk7XG4gICAgJi50ZWwge1xuICAgICAgd2lkdGg6IGVtKDIxKTtcbiAgICAgIGhlaWdodDogZW0oMzEpO1xuICAgIH1cbiAgICAmLmNsb3VkIHtcbiAgICAgIHdpZHRoOiBlbSg0OCk7XG4gICAgICBoZWlnaHQ6IGVtKDI1KTtcbiAgICB9XG4gICAgJi50YWcge1xuICAgICAgd2lkdGg6IGVtKDE1KTtcbiAgICAgIGhlaWdodDogZW0oMTUpO1xuICAgIH1cbiAgICAmLnRlbC0yIHtcbiAgICAgIHdpZHRoOiBlbSgyNik7XG4gICAgICBoZWlnaHQ6IGVtKDM2KTtcbiAgICB9XG4gIH1cbiAgLnRlY2huby1sZWdlbmQtdHgge1xuICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAudGVjaG5vLWxlZ2VuZC1pbWcsXG4gIC50ZWNobm8tbGVnZW5kLXR4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG4gIC50ZWNobm8tbGVnZW5kLWltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBlbSgxMCk7XG4gIH1cbn1cblxuLndhdmUtbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IGVtKDUwKTtcbiAgfVxufVxuXG4ud2F2ZS1uYXZpZ2F0aW9uLWl0ZW0ge1xuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0oMTApO1xuICAgIHdpZHRoOiByZW0oMTApO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTI7XG4gIH1cbiAgJi5pcy1hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZDogJGNsci1saWdodDtcbiAgfVxufVxuXG5cblxuQGtleWZyYW1lcyBtb3ZlUG9zaXRpb25pbmcge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMHB4LCAwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwcHgsIDBweCk7XG4gIH1cbn1cblxuLnRlY2huby1wYW5lbHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAyMDB2dztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMHB4LCAwcHgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjlzIGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb246IG1vdmVQb3NpdGlvbmluZyA1cztcbiAgJi50by1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwcHgsIDBweCk7XG4gIH1cbn1cblxuXG5cbiNyYWRpbyB7XG4gIHBhZGRpbmc6IGVtKDcwKSAwO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBwYWRkaW5nOiBlbSgzMCkgMCBlbSgxMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgcGFkZGluZzogZW0oMTApIDAgMDtcbiAgfVxuICAudGVjaG5vLXRpdGxlLmNlbnRlci10aXRsZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc1MCkgKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQ1KTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzUwKSApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yYWRpby1jb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiBlbSgxMTApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NTApICkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiBlbSgzMCk7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiBlbSgxMjApO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc1MCkgKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogZW0oNjUpO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoaW1hZ2VzL2ljby1ibHVldG9vdGguc3ZnKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogZW0oNTApO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzUwKSApIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGVtKDk1KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVtKDQwKTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NTApICkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGVtKDY1KTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogZW0oNTApO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoaW1hZ2VzL2ljby13aWRlYmFuZC5zdmcpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBlbSgxMCk7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NTApICkge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbC10eCB7XG4gICAgZm9udC1zaXplOiBlbSgxNyk7XG4gICAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICB9XG59XG5cbiNlbmdpbmUge1xuICBwYWRkaW5nOiBlbSgxMCkgMCBlbSg3MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmc6IGVtKDMwKSAwIGVtKDEwKTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSApIHtcbiAgICBwYWRkaW5nOiBlbSgzMCkgMDtcbiAgfVxuICAudGVjaG5vLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiBlbSgzNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogcmVtKDQ4KTtcbiAgICAgIGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCAkY2xyLTI7XG4gICAgICBtYXJnaW4tdG9wOiByZW0oMjApO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgICAgIG1hcmdpbjogcmVtKDIwKSBhdXRvIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTE2MCkgKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oNDApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICAgIHBhZGRpbmc6IDAgcmVtKDQwKTtcbiAgICB9XG4gIH1cbn1cblxuLmVuZ2luZS1zbGlkZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmVuZ2luZS1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiByZW0oLTYpO1xufVxuXG4uZW5naW5lLXNsaWRlci1pdGVtIHtcbiAgZGlzcGxheTogZmxleCFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZW5naW5lLXNsaWRlci1pbnQge1xuICB3aWR0aDogIDY1JTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW4tdG9wOiBlbSgyMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc2xpY2stZG90cyBidXR0b24ge1xuICAgIGhlaWdodDogcmVtKDEwKTtcbiAgICB3aWR0aDogcmVtKDEwKTtcbiAgfVxufVxuXG4uZW5naW5lLXNsaWRlci1pbnQtaW1nIHtcbiAgcGFkZGluZzogcmVtKDYpO1xuICBtYXJnaW4tdG9wOiByZW0oLTYpO1xuICBpbWcge1xuICAgIGJveC1zaGFkb3c6IHJlbSgtMikgcmVtKDIpIHJlbSg4KSAwIHJnYmEoMCwwLDAsMC4xMyk7XG4gIH1cbn1cblxuLmVuZ2luZS1zbGlkZXItZGV0YWlscyB7XG4gIHdpZHRoOiAzMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmVuZ2luZS10aXRsZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IHJlbSgyMzApO1xuICBtYXJnaW46IDAgYXV0byByZW0oMjApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDQ2NSkgKSB7XG4gICAgbWF4LXdpZHRoOiByZW0oMjMwKTtcbiAgfVxuICAmLmRlc2t0b3AtdGl0bGUge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4NTApICkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi5tb2JpbGUtdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgICBmb250LXNpemU6IGVtKDI0KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gZW0oMjUpO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZW5naW5lLXR4IHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgbWFyZ2luLXRvcDogZW0oMzApO1xuICB9XG4gIGJyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTEwMCkgKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZW5naW5lLXNsaWRlciA+IC5zbGljay1kb3RzIHtcbiAgd2lkdGg6IDMwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiBlbSgyNSk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApICkge1xuICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHJlbSg0OCk7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVtKDQpIHNvbGlkICRjbHItMjtcbiAgfVxuICBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogZW0oMjQpO1xuICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICRjbHItMjtcbiAgICB9XG4gIH1cbn1cblxuLmVuZ2luZS1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMzAlO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2xpZGVyLW5hdi1wcmV2LFxuICAuc2xpZGVyLW5hdi1uZXh0IHtcbiAgICBmb250LXNpemU6IGVtKDEzKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc2xpZGVyLW5hdi1wcmV2IHtcbiAgICBsZWZ0OiByZW0oLTIwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODUwKSApIHtcbiAgICAgIGxlZnQ6IHJlbSgtMzApO1xuICAgIH1cbiAgfVxuICAuc2xpZGVyLW5hdi1uZXh0IHtcbiAgICByaWdodDogcmVtKC0yMCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgICByaWdodDogcmVtKC0zMCk7XG4gICAgfVxuICB9XG4gIC5pY29uLWFycm93IHtcbiAgICBmb250LXNpemU6IGVtKDMzKTtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG4gIC5zbGlkZXItbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuXG4jZW50ZXJwcmlzZSB7XG4gIHBhZGRpbmc6IGVtKDEwMCkgMDtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgcGFkZGluZzogMCAwO1xuICB9XG4gIC5pY29uYm94LXdyYXBwZXIge1xuICAgIG1hcmdpbjogZW0oMTAwKSAwIDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg1MCkgKSB7XG4gICAgICAgbWFyZ2luOiBlbSg3MCkgMCAwO1xuICAgIH1cbiAgfVxuICAuaWNvbmJveC10eCBwIHtcbiAgICBtYXJnaW46IHJlbSgxMCkgMDtcbiAgfVxufVxuXG5cbiNsaW5rcyB7XG4gIHBhZGRpbmc6IGVtKDEwMCkgMCBlbSg3MCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3MDApICkge1xuICAgIHBhZGRpbmc6IGVtKDgwKSAwIGVtKDUwKTtcbiAgfVxuICAud3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogdXJsKGltYWdlcy9sb2dvLWljb25vLnN2Zykgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IHJlbSg1NCk7XG4gICAgICB3aWR0aDogcmVtKDU0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IHJlbSgyMCk7XG4gICAgICB0b3A6IHJlbSgtNjQpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDcwMCkgKSB7XG4gICAgICAgIHRvcDogcmVtKC03MCk7XG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xvZ28taWNvbm8uc3ZnKSBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogcmVtKDU0KTtcbiAgICAgIHdpZHRoOiByZW0oNTQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IHJlbSgyMCk7XG4gICAgICBib3R0b206IHJlbSgtMzMpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDcwMCkgKSB7XG4gICAgICAgIGJvdHRvbTogcmVtKC01MCk7XG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5saW5rcy10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzAwKSApIHtcbiAgICBtYXJnaW46IGVtKDMwKSAwO1xuICB9XG59XG5cbi5saW5rcy1saXN0IHtcbiAgbWF4LXdpZHRoOiBlbSg2ODApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvIGVtKDQwKTtcbiAgbGkgKyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogcmVtKDI0KTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDIyKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzAwKSApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy10b3A6IGVtKDIyKTtcbiAgICB9XG4gIH1cbiAgbGkgKyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0oMjApO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oMykgc29saWQgJGNsci0yO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3MDApICkge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IGVtKDQwKTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJvcmRlci1ib3R0b206IHJlbSgzKSBzb2xpZCAkY2xyLTI7XG4gICAgfVxuICB9XG4gICYua2ItbGlzdCBsaTpudGgtY2hpbGQoNCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDcwMCkgKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5naXQtbGlzdCBsaTpudGgtY2hpbGQoMyk6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5saW5rcy1saXN0LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiBlbSgyMCk7XG4gIGEge1xuICAgIGZvbnQtc2l6ZTogZW0oMTcpO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjbHItMjtcbiAgICB9XG4gIH1cbn1cblxuLmxpbmtzLWxpc3QubGlzdC1pbmxpbmUgLmxpbmtzLWxpc3QtaXRlbSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3MDApICkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbiIsIi5wYWdlLWFib3V0IHtcbiAgLnBhZ2UtaW50cm8td3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiBlbSgxMDApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgcGFkZGluZy1ib3R0b206IGVtKDEwKTtcbiAgICB9XG4gICAgYnIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkgKSB7XG4gICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdlLXRpdGxlIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgIG1heC13aWR0aDogZW0oMjAwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNDUpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4uYWJvdXQtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi5jbHItYmcge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg3MCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtYmxldS5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgICAgdG9wOiByZW0oLTMyKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCdpbWFnZXMvdmFndWVzL3ZhZ3VlLXJldmVyc2UtdG9wLWJsZXUteHMuc3ZnJykgcmVwZWF0LXggdG9wIGxlZnQ7XG4gICAgICAgIGhlaWdodDogcmVtKDMzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiByZW0oLTgwKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1ib3R0b20tYmxldS5zdmcnKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICAgIGJvdHRvbTogcmVtKC0zMik7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1ib3R0b20tYmxldS14cy5zdmcnKSByZXBlYXQteCBib3R0b20gbGVmdDtcbiAgICAgICAgaGVpZ2h0OiByZW0oMzMpO1xuICAgICAgfVxuICAgIH1cbiAgICAuYWJvdXQtdGl0bGUge1xuICAgICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgfVxuICB9XG4gICYuZ3JheS1iZyB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDgwKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiByZW0oLTgwKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1yZXZlcnNlLXRvcC1ncmlzLnN2ZycpIHJlcGVhdC14IHRvcCBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IHJlbSg4MCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgICB0b3A6IHJlbSgtMzMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtcmV2ZXJzZS10b3AtZ3Jpcy14cy5zdmcnKSByZXBlYXQteCB0b3AgY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHJlbSgzMyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogcmVtKC04MCk7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltYWdlcy92YWd1ZXMvdmFndWUtYm90dG9tLWdyaXMuc3ZnJykgcmVwZWF0LXggYm90dG9tIGNlbnRlcjtcbiAgICAgIGhlaWdodDogcmVtKDgwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICAgIGJvdHRvbTogcmVtKC0zMyk7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1hZ2VzL3ZhZ3Vlcy92YWd1ZS1ib3R0b20tZ3Jpcy14cy5zdmcnKSByZXBlYXQteCBib3R0b20gY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHJlbSgzMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hYm91dC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogZW0oMzIpO1xuICBjb2xvcjogJGNsci0xO1xuICAmLmNlbnRlci10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiByZW0oNDgpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKDQpIHNvbGlkICRjbHItMjtcbiAgICAgIG1hcmdpbjogcmVtKDIwKSBhdXRvIDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gVEVBTVxuLnNlY3Rpb24tdGVhbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMSk7XG4gIHBhZGRpbmctdG9wOiBlbSg0MCk7XG4gIHBhZGRpbmctYm90dG9tOiBlbSgxNDUpO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogZW0oMTAwKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgfVxuICAuYWJvdXQtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg4MCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYzMCkgKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDUpO1xuICAgIH1cbiAgfVxufVxuXG4udGVhbS1zbGlkZXItd3JhcHBlciA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCBlbSg4MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgIHBhZGRpbmc6IDAgZW0oNDApO1xuICB9XG59XG5cbi50ZWFtLXNsaWRlci1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICAuc2xpZGVyLXRlYW0tbmF2LXByZXYsXG4gIC5zbGlkZXItdGVhbS1uYXYtbmV4dCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnNsaWRlci10ZWFtLW5hdi1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5zbGlkZXItdGVhbS1uYXYtbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmljb24tYXJyb3cge1xuICAgIGZvbnQtc2l6ZTogZW0oMzMpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg0MzApICkge1xuICAgICAgZm9udC1zaXplOiBlbSgyNSk7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItdGVhbS1uYXYtcHJldiAuaWNvbi1hcnJvdyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4udGVhbS1pdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIGVtKDQwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYzMCkgKSB7XG4gICAgcGFkZGluZzogMCBlbSgyMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDM1MCkgKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udGVhbS1waG90byB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogZW0oMzApO1xuICB3aWR0aDogcmVtKDEzMCk7XG4gIGhlaWdodDogcmVtKDE2Mik7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg0MzApICkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4udGVhbS1uYW1lIHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgbGV0dGVyLXNwYWNpbmc6IGVtKDAuMik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xufVxuXG4udGVhbS1qb2Ige1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICBtYXJnaW46IDA7XG59XG5cbi50ZWFtLWdyaWQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50ZWFtLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbTogZmxleC1zdGFydDtcbiAgcGFkZGluZzogMCBlbSg3Nik7XG4gIG1hcmdpbi10b3A6IGVtKC01MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgIHBhZGRpbmc6IDAgZW0oNDApO1xuICB9XG4gIC50ZWFtLWl0ZW0ge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luOiBlbSg1MCkgMDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzUwKSApIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgIH1cbiAgfVxufVxuXG4udGVhbS1tb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IHJlbSg4MCk7XG4gIGZvbnQtc2l6ZTogZW0oMTIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjMwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtKDI1KTtcbiAgICBjb2xvcjogJGNsci0xO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg1KTtcbiAgfVxufVxuXG4udGVhbS1sZXNzIHtcbiAgZm9udC1zaXplOiBlbSgxMik7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC5pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IGVtKDIyKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgfVxufVxuXG5cbi8vIFBBUlRORVJTXG4uc2VjdGlvbi1wYXJ0bmVycyB7XG4gIHBhZGRpbmctdG9wOiBlbSgyMCk7XG4gIHBhZGRpbmctYm90dG9tOiBlbSg4MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmctdG9wOiBlbSg0MCk7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDUwKTtcbiAgfVxuICAuZ3JpZC0yLTQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5wYXJ0bmVycy1tYWluVHgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIG1hcmdpbi10b3A6IGVtKDIwKTtcbiAgcGFkZGluZy1sZWZ0OiBlbSg4MCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVtKDMwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogZW0oNik7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGVtKDQ4KTtcbiAgICBib3JkZXItdG9wOiByZW0oNCkgc29saWQgJGNsci0yO1xuICB9XG4gIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4ucGFydG5lcnMtcGFuZWxzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLmRlc2t0b3Age1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi5tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLnBhcnRuZXItZGV0YWlscyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBhZGRpbmc6IDAgcmVtKDQwKTtcbiAgICB9XG4gICAgLnBhcnRuZXItbmFtZSB7XG4gICAgICBtYXJnaW46IGVtKDIwKSAwIGVtKDIwKVxuICAgIH1cbiAgICBcbiAgfVxufVxuXG4ucGFydG5lcnMtbW9iaWxlLXRhYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnBhcnRuZXItdHgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IGVtKC01MCk7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5wYXJ0bmVycy1wYW5lbHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5wYXJ0bmVycy1tb2JpbGUtc2xpZGVyLW5hdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA2MiU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg0MzApICkge1xuICAgICAgdG9wOiA2MCU7XG4gICAgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgzNzApICkge1xuICAgICAgdG9wOiA1OCU7XG4gICAgfVxuICAgIC5zbGlkZXItbmF2LXByZXYsXG4gICAgLnNsaWRlci1uYXYtbmV4dCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBjb2xvcjogJGNsci0yO1xuICAgIH1cbiAgICAuc2xpZGVyLW5hdi1wcmV2IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIC5zbGlkZXItbmF2LW5leHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5pY29uLWFycm93IHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMzMpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDQzMCkgKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMjUpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGVyLW5hdi1wcmV2IC5pY29uLWFycm93IHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuICB9XG59XG5cbi5wYXJ0bmVyLW1vcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiByZW0oMTUpIGF1dG8gMDtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHJlbSgzMCk7XG4gICAgaGVpZ2h0OiByZW0oMzApO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiByZW0oMSkgc29saWQgJGNsci1saWdodDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLXRvcDogcmVtKDYpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMClcbiAgfVxufVxuXG4ucGFydG5lci1kZXRhaWxzIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogZW0oODApO1xuICBtYXJnaW4tdG9wOiBlbSgyMCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogZW0oNzApO1xuICB9XG4gICYuaXMtYWN0aXZlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucGFydG5lci1uYW1lIHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIG1hcmdpbjogZW0oMzApIDA7XG59XG5cbi5wYXJ0bmVyLXR4IHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucGFydG5lcnMtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogZW0oODApO1xuICBwYWRkaW5nLXRvcDogZW0oODApO1xuICBib3JkZXItdG9wOiByZW0oMykgc29saWQgJGNsci0yO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW46IDAgcmVtKDIwKTtcbiAgfVxuICAuc2xpY2stbGlzdCB7XG4gICAgICBtYXJnaW46IDAgcmVtKC0yMCk7XG4gIH1cbn1cblxuLnBhcnRuZXItaW1nLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5wYXJ0bmVyLXNsaWRlci1sb2dvIHtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgJi5idyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgICYuY2xyIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ucGFydG5lci1pdGVtIHtcbiAgJjpob3ZlcixcbiAgJi5pcy1hY3RpdmUge1xuICAgIC5wYXJ0bmVyLXNsaWRlci1sb2dvLmJ3IHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5wYXJ0bmVyLXNsaWRlci1sb2dvLmNsciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIENBUkVFUlxuLnNlY3Rpb24tY2FyZWVyIHtcbiAgcGFkZGluZy10b3A6IGVtKDYwKTtcbiAgcGFkZGluZy1ib3R0b206IGVtKDYwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtKC0zNSkhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiBlbSg1MCk7XG4gIH1cbiAgLmFib3V0LXRpdGxlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2FyZWVyLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IGVtKDEwMCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL2xvZ28taWNvbm8uc3ZnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogZW0oNDApO1xuICAgIHdpZHRoOiBlbSg0MCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiByZW0oNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGVtKDgwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIG1hcmdpbi10b3A6IGVtKDUwKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW0oNjUpO1xuICAgIH1cbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogZW0oMTMwKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICAgIHBhZGRpbmctbGVmdDogZW0oNjUpO1xuICAgICAgbWFyZ2luLXRvcDogZW0oNTApO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogcmVtKDUpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IGVtKDUwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcmVlci10eCxcbi5jYXJlZXItbGlzdC1pdGVtIHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgYSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgYnIge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmVlci1saXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogcmVtKDEwKTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICctJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIFBSRVNTXG4uc2VjdGlvbi1wcmVzcyB7XG4gIHBhZGRpbmctdG9wOiBlbSgxNjApO1xuICBwYWRkaW5nLWJvdHRvbTogZW0oMTgwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDgwMCkgKSB7XG4gICAgcGFkZGluZy10b3A6IGVtKDEwMCk7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDEyMCk7XG4gIH1cbn1cblxuLnByZXNzLWl0ZW0ge1xuICBwYWRkaW5nOiAwIGVtKDIwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJlc3Mtc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogZW0oODApO1xuICAucHJlc3MtaXRlbSB7XG4gICAgcGFkZGluZzogMCBlbSg1MCk7XG4gIH1cbn1cblxuLnRlc3RpbW9ueS1zbGlkZXIge1xuICBwYWRkaW5nLXRvcDogZW0oODApO1xuICBtYXJnaW4tdG9wOiBlbSg4MCk7XG4gIGJvcmRlci10b3A6IHJlbSgzKSBzb2xpZCAkY2xyLTI7XG59XG5cbi5wcmVzcy1zbGlkZXIsXG4udGVzdGltb255LXNsaWRlciB7XG4gIHBhZGRpbmctbGVmdDogZW0oNjApO1xuICBwYWRkaW5nLXJpZ2h0OiBlbSg2MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MzApICkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5wcmVzcy1sb2dvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogZW0oODApO1xuICBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLnByZXNzLXR4IHtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxpbmUtaGVpZ2h0OiBlbSgyMS42KTtcbiAgbWFyZ2luOiBlbSg0MCkgMCAwO1xufVxuXG4ucHJlc3Mtc2xpZGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcmVzcy1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYzMCkgKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc2xpZGVyLXByZXNzLW5hdi1wcmV2LFxuICAuc2xpZGVyLXByZXNzLW5hdi1uZXh0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG4gIC5zbGlkZXItcHJlc3MtbmF2LXByZXYge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLnNsaWRlci1wcmVzcy1uYXYtbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmljb24tYXJyb3cge1xuICAgIGZvbnQtc2l6ZTogZW0oMzMpO1xuICB9XG4gIC5zbGlkZXItcHJlc3MtbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuLy8gRVZFTlRTXG4uc2VjdGlvbi1ldmVudHMge1xuICBwYWRkaW5nLXRvcDogZW0oMTApO1xuICBwYWRkaW5nLWJvdHRvbTogZW0oNDApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oODAwKSApIHtcbiAgICBwYWRkaW5nLXRvcDogZW0oNDApO1xuICAgIHBhZGRpbmctYm90dG9tOiBlbSg2MCk7XG4gIH1cbiAgLmFib3V0LXRpdGxlIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiByZW0oNDgpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKDQpIHNvbGlkICRjbHItMjtcbiAgICAgIG1hcmdpbi10b3A6IGVtKDE1KTtcbiAgICB9XG4gIH1cbn1cblxuLmV2ZW50cy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW06IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IGVtKDkwKTtcbiAgJi5kZXNrdG9wIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNjAwKSApIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYubW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg2MDApICkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiBlbSg1MCk7XG4gICAgfVxuICB9XG59XG5cbi5ldmVudHMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmV2ZW50cy1zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDE1JTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMTAwJTtcbiAgLnNsaWRlci1ldmVudHMtbmF2LXByZXYsXG4gIC5zbGlkZXItZXZlbnRzLW5hdi1uZXh0IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG4gIC5zbGlkZXItZXZlbnRzLW5hdi1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5zbGlkZXItZXZlbnRzLW5hdi1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgfVxuICAuaWNvbi1hcnJvdyB7XG4gICAgZm9udC1zaXplOiBlbSgzMyk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDQzMCkgKSB7XG4gICAgICBmb250LXNpemU6IGVtKDI1KTtcbiAgICB9XG4gIH1cbiAgLnNsaWRlci1ldmVudHMtbmF2LXByZXYgLmljb24tYXJyb3cge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cblxuLmV2ZW50LWl0ZW0ge1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nLXJpZ2h0OiBlbSg1MCk7XG4gIG1hcmdpbi1ib3R0b206IGVtKDYwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYwMCkgKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgZW0oMzApO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogZW0oMjApO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYwMCkgKSB7XG4gICAgICBwYWRkaW5nOiAwIGVtKDMwKTtcbiAgICB9XG4gIH1cbn1cblxuLmV2ZW50LXRpdGxlLFxuLmV2ZW50LWNpdHksXG4uZXZlbnQtZGVzY3JpcHRpb24sXG4uZXZlbnQtbGluayB7XG4gIHBhZGRpbmctbGVmdDogcmVtKDQwKTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDYwMCkgKSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uZXZlbnQtdGl0bGUge1xuICBjb2xvcjogJGNsci1saWdodDtcbiAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcbn1cblxuLmV2ZW50LWRhdGUge1xuICBmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICRjbHItMjtcbiAgbWFyZ2luLWJvdHRvbTogZW0oMTApO1xufVxuXG4uZXZlbnQtY2l0eSxcbi5ldmVudC1jb3VudHJ5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IGVtKDE3KTtcbiAgbGluZS1oZWlnaHQ6IGVtKDIxLjYpO1xuICBtYXJnaW46IDA7XG59XG5cbi5ldmVudC1jaXR5IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgaGVpZ2h0OiByZW0oMTcpO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oMykgc29saWQgJGNsci0yO1xuICAgIG1hcmdpbjogMCBlbSgxMCkgMCBlbSgxNSlcbiAgfVxufVxuXG4uZXZlbnQtZGVzY3JpcHRpb24sXG4uZXZlbnQtbGluayB7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNik7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ldmVudC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJGNsci0yO1xuICBtYXJnaW4tdG9wOiBlbSg1KTtcbn1cblxuXG5cbi8vIE1BUFxuLnNlY3Rpb24tbWFwIHtcbiAgcGFkZGluZy10b3A6IGVtKDkwKTtcbiAgcGFkZGluZy1ib3R0b206IGVtKDE0MCk7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4MDApICkge1xuICAgIHBhZGRpbmctdG9wOiBlbSgxMCk7XG4gICAgcGFkZGluZy1ib3R0b206IGVtKDUwKTtcbiAgfVxuICAuYWJvdXQtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDM1KTtcbiAgfVxufVxuXG4ubWFwLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLm1hcCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc1MCkgKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBlbSg1MCk7XG4gICAgfVxuICB9XG59XG5cbi5vZmZpY2UtaXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWluLXdpZHRoOiBlbSgzODApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0NiwyNDYsMjQ2LDAuOTIpO1xuICBwYWRkaW5nOiBlbSgzNSkgZW0oMzUpIGVtKDI1KTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc1MCkgKSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogZW0oMTUpIDA7XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICB9XG4gICYuZnJhbmNlIHtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMjUpIHJlbSgyNSkgMCByZW0oMjUpO1xuICAgIHRvcDogZW0oNTUpO1xuICAgIGxlZnQ6IGVtKDExNSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDg3MCkgKSB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzUwKSApIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG4gICYucG9sYW5kIHtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMjUpIDAgcmVtKDI1KSByZW0oMjUpO1xuICAgIGxlZnQ6IGVtKDI4MCk7XG4gICAgYm90dG9tOiBlbSgxMjApO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg4NzApICkge1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzUwKSApIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxuICAmLmNoaW5hIHtcbiAgICBtYXgtd2lkdGg6IGVtKDMyMCk7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtKDI1KSByZW0oMjUpIHJlbSgyNSkgMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc1MCkgKSB7XG4gICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbn1cblxuLm9mZmljZS1uYW1lIHtcbiAgZm9udC1mYW1pbHk6ICRzZWNvbmRhcnktZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMCAwIGVtKDEwKTtcbn1cblxuLm9mZmljZS1hZGRyZXNzLFxuLm9mZmljZS1tYWlsLFxuLm9mZmljZS10ZWwsXG4ub2ZmaWNlLXdlYnNpdGUsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiBlbSgxNyk7XG4gIGxldHRlci1zcGFjaW5nOiBlbSgwLjIpO1xuICBsaW5lLWhlaWdodDogZW0oMjEuNSk7XG4gIG1hcmdpbjogcmVtKDEwKSAwIHJlbSgxMCk7XG4gIHBhZGRpbmctbGVmdDogZW0oMzUpO1xuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4ub2ZmaWNlLWFkZHJlc3Mge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKCdpbWFnZXMvaWNvLWhvdXNlLnN2ZycpO1xuICB9XG59XG5cbi5vZmZpY2UtbWFpbCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiB1cmwoJ2ltYWdlcy9pY28tbWFpbC5zdmcnKTtcbiAgICB0b3A6IGVtKDIpO1xuICB9XG59XG5cbi5vZmZpY2UtdGVsIHtcbiAgbWFyZ2luOiByZW0oMTIpIDAgcmVtKDEyKTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybCgnaW1hZ2VzL2ljby1waG9uZS5zdmcnKTtcbiAgICB0b3A6IGVtKC00KTtcbiAgfVxufVxuXG4ub2ZmaWNlLXdlYnNpdGUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKCdpbWFnZXMvaWNvLXdlYnNpdGUuc3ZnJyk7XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG4iLCIud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtMzVweDtcbiAgd2lkdGg6IGF1dG87XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMjIwKSApIHtcbiAgICByaWdodDogaW5pdGlhbDtcbiAgICBtYXJnaW46IDAgZW0oMjApO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5NzApICkge1xuICAgIG1hcmdpbjogMCBlbSg1NSkgMCBlbSgyMCk7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkgKSB7XG4gICAgbWFyZ2luOiAwIGVtKDQwKSAwIGVtKDIwKTtcbiAgfVxufVxuXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sge1xuICBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkICRjbHItbGlnaHQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogcmVtKDUpO1xuICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNsci0yO1xuICAgIH1cbiAgfVxuICBsaSB1bCB7XG4gICAgJi53cG1sLWxzLXN1Yi1tZW51IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NjApICkge1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDUpO1xuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNTYwKSApIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oLTQpO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRjbHItMjtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDU2MCkgKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW0oMSkgc29saWQgJGNsci1saWdodDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYTpob3ZlciwgXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYTpmb2N1cywgXG4ud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgLndwbWwtbHMtY3VycmVudC1sYW5ndWFnZTpob3ZlciA+IGEge1xuICBjb2xvcjogJGNsci1saWdodDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi53cG1sLWxzLWxlZ2FjeS1kcm9wZG93bi1jbGljayBhLndwbWwtbHMtaXRlbS10b2dnbGUge1xuICBjb2xvcjogJGNsci0yO1xuICBib3JkZXItY29sb3I6ICRjbHItMjtcbiAgcGFkZGluZy1yaWdodDogcmVtKDUpO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNsci0yO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRvcDogcmVtKDcpO1xuICAgIHJpZ2h0OiByZW0oLTE1KTtcbiAgICBoZWlnaHQ6IHJlbSg4KTtcbiAgICB3aWR0aDogcmVtKDgpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJGNsci1saWdodDtcbiAgICBib3JkZXItYm90dG9tOiByZW0oMikgc29saWQgJGNsci1saWdodDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgfVxuICAmLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICBtYXJnaW4tdG9wOiByZW0oMyk7XG4gICAgYm9yZGVyLWNvbG9yOiAkY2xyLTI7XG4gIH1cbn1cblxuLndwbWwtbHMtaXRlbS16aC1oYW5zIGEge1xuICBwYWRkaW5nOiByZW0oNSkgMDtcbn1cblxuXG5cblxuLy8gIE1PQklMRSBcblxuLm1lbnUtbW9iaWxlIHtcbiAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHtcbiAgICBtYXJnaW4tdG9wOiBlbSgzNik7XG4gICAgPiB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtKDM4KSFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGluaXRpYWw7XG4gICAgICB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodDogcmVtKDIpIHNvbGlkICRjbHItbGlnaHQ7XG4gICAgICB9XG4gICAgICBsaSxcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMCByZW0oMTApIDAgcmVtKDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGEud3BtbC1scy1pdGVtLXRvZ2dsZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiByZW0oMikgc29saWQgJGNsci0yO1xuICAgIHBhZGRpbmc6IHJlbSgyKSByZW0oMTApIHJlbSgxKSByZW0oNSkhaW1wb3J0YW50O1xuICAgICY6YWZ0ZXIgeyBcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cblxuXG4vLyBQT1AgVVBcbi5sYW5ndWFnZS1zd2l0Y2hlci1vdXR0ZXJXcmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogcmdiYSggJGNsci0xLCAwLjUpO1xuICB6LWluZGV4OiAyMDAwO1xuXG4gIC5sYW5ndWFnZS1zd2l0Y2hlci10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IGVtKDMwKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci10b3A6IHJlbSg0KSBzb2xpZCAkY2xyLTI7XG4gICAgICBtYXJnaW4tdG9wOiBlbSgxNSk7XG4gICAgfVxuICB9XG5cbiAgLndwbWwtbHMtbGVnYWN5LWRyb3Bkb3duLWNsaWNrIHtcbiAgICByaWdodDogaW5pdGlhbDtcblxuICAgID4gdWwgPiBsaSA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogJGNsci1saWdodDtcbiAgICAgIGJvcmRlcjogcmVtKDEpIHNvbGlkICM5QjlCOUI7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0oOCkgcmVtKDgpIDAgcmVtKDgpO1xuICAgICAgcGFkZGluZzogcmVtKDE1KTtcbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDgpIDAgMCAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IHJlbSgxNSk7XG4gICAgICAgICAgYm90dG9tOiByZW0oMik7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA4OSU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkICRjbHItMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRjbHItMTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY2xyLTE7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgYS53cG1sLWxzLWl0ZW0tdG9nZ2xlOmFmdGVyIHtcbiAgICB0b3A6IDM2JTtcbiAgICByaWdodDogcmVtKDE1KTtcbiAgICBoZWlnaHQ6IHJlbSgxMCk7XG4gICAgd2lkdGg6IHJlbSgxMCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkY2xyLTE7XG4gIH1cblxuICAud3BtbC1scy1sZWdhY3ktZHJvcGRvd24tY2xpY2sgbGkgdWwud3BtbC1scy1zdWItbWVudSB7XG4gICAgYmFja2dyb3VuZDogJGNsci1saWdodDtcbiAgICBib3JkZXI6IHJlbSgxKSBzb2xpZCAjOUI5QjlCO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHJlbSg4KSByZW0oOCk7XG4gICAgcGFkZGluZzogcmVtKDEwKSByZW0oMTUpIHJlbSgxNSk7XG4gICAgbWFyZ2luLXRvcDogcmVtKC0yKTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRjbHItMjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY2xyLTE7XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmZpcnN0LWNoaWxkIGEge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IHJlbSgyKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkICNDMEMwQzA7XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDE1KTtcbiAgICB9XG4gIH1cbn1cblxuLmxhbmd1YWdlLXN3aXRjaGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kOiAkY2xyLWxpZ2h0O1xuICBwYWRkaW5nOiBlbSg1MCkgZW0oMTM1KTtcbn1cblxuXG5cblxuXG5cblxuXG5cblxuIiwiLnUtY2Yge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLnUtbm9CZmMge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi51LWZsb2F0TGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi51LWZsb2F0UmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnUtMTAwdmgge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cbiIsIi51LWhpZGVNb2JpbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbXEtcy11cCApIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51LXNob3dNb2JpbGUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJG1xLXMtdXAgKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51LWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiIsIi8qIFNwYWNpbmcgaGVscGVyc1xuICogICBwLG0gPSBwYWRkaW5nLCBtYXJnaW5cbiAqICAgYSx0LHIsYixsID0gYWxsLCB0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHRcbiAqICAgbixzLG0sbCA9IG5vbmUsIHNtYWxsLCBtZWRpdW0sIGxhcmdlXG4gKi9cblxuLyogTWFyZ2luICovXG4udS1tYW4geyBtYXJnaW46IDAgIWltcG9ydGFudCB9XG4udS1tYm4geyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQgfVxuLnUtbWJzIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtbWJtIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1tICFpbXBvcnRhbnQgfVxuLnUtbWJsIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuLnUtbXRuIHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50IH1cbi51LW10cyB7IG1hcmdpbi10b3A6ICRzcGFjZXItcyAhaW1wb3J0YW50IH1cbi51LW10bSB7IG1hcmdpbi10b3A6ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LW10bCB7IG1hcmdpbi10b3A6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LW1sbiB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQgfVxuLnUtbWxzIHsgbWFyZ2luLWxlZnQ6ICRzcGFjZXItcyAhaW1wb3J0YW50IH1cbi51LW1sbSB7IG1hcmdpbi1sZWZ0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1tbGwgeyBtYXJnaW4tbGVmdDogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuLnUtbXJuIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQgfVxuLnUtbXJzIHsgbWFyZ2luLXJpZ2h0OiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1tcm0geyBtYXJnaW4tcmlnaHQ6ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LW1ybCB7IG1hcmdpbi1yaWdodDogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuXG4vKiBQYWRkaW5nICovXG4udS1wYW4geyBwYWRkaW5nOiAwICFpbXBvcnRhbnQgfVxuLnUtcGJuIHsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudCB9XG4udS1wYnMgeyBwYWRkaW5nLWJvdHRvbTogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtcGJtIHsgcGFkZGluZy1ib3R0b206ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LXBibCB7IHBhZGRpbmctYm90dG9tOiAkc3BhY2VyLWwgIWltcG9ydGFudCB9XG4udS1wdG4geyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50IH1cbi51LXB0cyB7IHBhZGRpbmctdG9wOiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1wdG0geyBwYWRkaW5nLXRvcDogJHNwYWNlci1tICFpbXBvcnRhbnQgfVxuLnUtcHRsIHsgcGFkZGluZy10b3A6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LXBsbiB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50IH1cbi51LXBscyB7IHBhZGRpbmctbGVmdDogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtcGxtIHsgcGFkZGluZy1sZWZ0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1wbGwgeyBwYWRkaW5nLWxlZnQ6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LXBybiB7IHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudCB9XG4udS1wcnMgeyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1wcm0geyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1wcmwgeyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLWwgIWltcG9ydGFudCB9XG4iLCIudS10eHQge1xuICAmVXBwZXIgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50IH1cbiAgJkxvd2VyICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudCB9XG4gICZDZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudCB9XG4gICZMZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQgfVxuICAmUmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudCB9XG4gICZCcmVhayAgeyB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudCB9XG4gICZOb1dyYXAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQgfVxuICAmVHJ1bmNhdGUgeyBAZXh0ZW5kICV0cnVuY2F0ZSB9XG4gICZLZXJuIHsgLy8gaHR0cDovL2Jsb2cudHlwZWtpdC5jb20vMjAxNC8wMi8wNS9rZXJuaW5nLW9uLXRoZS13ZWIvXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiIDE7XG4gICAgZm9udC1rZXJuaW5nOiBub3JtYWw7XG4gIH1cbn1cbiJdfQ== */
