@charset "UTF-8";
/*! normalize.scss v0.1.0 | MIT License | based on git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom. */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/**
 * 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;
  vertical-align: baseline;
}

/**
 * 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/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 when focused and also mouse hovered in all browsers. */
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 {
  -webkit-box-sizing: content-box;
          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;
  font: inherit;
  margin: 0;
}

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

/**
 * 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"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

/**
 * 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
 *    (include `-moz` to future-proof). */
input[type="search"] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

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

/**
 * 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
 * ========================================================================== */
/**
 * Remove most spacing between table cells. */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-x: hidden;
}

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

*:focus {
  outline: none;
}

body {
  overflow-x: hidden;
}

ol {
  list-style: numeric;
}

ul {
  list-style: square;
}

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

button,
input,
textarea {
  outline: none;
}

input,
textarea {
  border-radius: 0;
  -webkit-appearance: none;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

img {
  max-width: 100%;
  height: auto;
}

main {
  overflow-x: hidden;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.dark-theme {
  background: #333333;
}

.red {
  color: #F40808;
}

a:focus {
  color: inherit;
  text-decoration: inherit;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Thin.eot");
  src: url("../fonts/roboto/Roboto-Thin.woff") format("woff"), url("../fonts/roboto/Roboto-Thin.ttf") format("truetype"), url("../fonts/roboto/Roboto-Thin.svg#svgFontName") format("svg");
  font-weight: 100;
  font-style: normal;
  @font-face {}  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Light.eot");
  src: url("../fonts/roboto/Roboto-Light.woff") format("woff"), url("../fonts/roboto/Roboto-Light.ttf") format("truetype"), url("../fonts/roboto/Roboto-Light.svg#svgFontName") format("svg");
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Italic.eot");
  src: url("../fonts/roboto/Roboto-Italic.woff") format("woff"), url("../fonts/roboto/Roboto-Italic.ttf") format("truetype"), url("../fonts/roboto/Roboto-Italic.svg#svgFontName") format("svg");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Regular.eot");
  src: url("../fonts/roboto/Roboto-Regular.woff") format("woff"), url("../fonts/roboto/Roboto-Regular.ttf") format("truetype"), url("../fonts/roboto/Roboto-Regular.svg#svgFontName") format("svg");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Medium.eot");
  src: url("../fonts/roboto/Roboto-Medium.woff") format("woff"), url("../fonts/roboto/Roboto-Medium.ttf") format("truetype"), url("../fonts/roboto/Roboto-Medium.svg#svgFontName") format("svg");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Bold.eot");
  src: url("../fonts/roboto/Roboto-Bold.woff") format("woff"), url("../fonts/roboto/Roboto-Bold.ttf") format("truetype"), url("../fonts/roboto/Roboto-Bold.svg#svgFontName") format("svg");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Roboto';
  src: url("../fonts/roboto/Roboto-Black.eot");
  src: url("../fonts/roboto/Roboto-Black.woff") format("woff"), url("../fonts/roboto/Roboto-Black.ttf") format("truetype"), url("../fonts/roboto/Roboto-Black.svg#svgFontName") format("svg");
  font-weight: 900;
  font-style: normal;
}

/*@font-face {
 *	font-family: 'Roboto';
 *    src: url('../fonts/roboto/Roboto-Heavy2.eot');
 *	src: url('../fonts/roboto/Roboto-Heavy2.woff2') format('woff2'),
 *         url('../fonts/roboto/Roboto-Heavy2.woff') format('woff'),
 *         url('../fonts/roboto/Roboto-Heavy2.ttf')  format('truetype'),
 *         url('../fonts/roboto/Roboto-Heavy2.svg#svgFontName') format('svg');
 *	font-weight: 900;
 *	font-style: normal;
 *} */
/****** HELPERS ***** */
/* Grid */
/* GRID WITHOUT GUTTERS ON THE OUTSIDE
 *    ┏-------┬---┬-------┬---┬-------┓
 *    |  col  | g |  col  | g |  col  | */
/* mtmsGrid = 22col GRID WITH OUTSIDE GUTTERS
 * ┏---┬-------┬---┬-------┬---┬-------┬---┓
 * | g |  col  | g |  col  | g |  col  | g | */
/* Absolute Centering */
/* Flex Centering */
/* Flex Space Between */
/* Centered Max Width */
/* Clearfix */
/* Rem Calc */
/******* ELEMENTS ****** */
/* Button */
* {
  font-family: 'Roboto', Helvetica, Arial, sans-serif;
  font-style: normal;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

i {
  font-style: italic;
}

html, body {
  font-family: 'Roboto', Helvetica, Arial, sans-serif;
  font-size: 18px !important;
  color: #333333;
  word-break: break-word;
}

a {
  color: #868686;
  font-weight: 400;
}

a:hover, a:active {
  color: #868686;
}

p {
  margin: 1em 0;
}

p, a, label, blockquote {
  line-height: 1.6;
}

h4 {
  color: #333333;
  font-weight: 200;
  fonst-size: 1.11111rem;
}

.image-view {
  position: relative;
  height: 100%;
  overflow: hidden;
}

.image-view__icon {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 30px;
  z-index: 5;
}

.image-view__strip {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}

.image-view__strip--image {
  min-width: 0;
  width: 100%;
  padding: 0 10px;
}

.image-view.image-view--fixed-ratio {
  padding-bottom: 66.6667%;
  height: 0;
}

.image-view--preview .image-view__container {
  filter: blur(7px);
  -webkit-filter: blur(7px);
}

.image-view__container {
  position: relative;
  top: -7px;
  left: -7px;
  height: calc(100% + 14px);
  width: calc(100% + 14px);
}

.image-view__content {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
}

.image-view--contain .image-view__content {
  -o-object-fit: contain;
  object-fit: contain;
}

.image-view--fixed-ratio .image-view__container {
  position: absolute;
}

.image-view--intrinsic .image-view__content {
  height: auto;
}

.image-view--intrinsic .image-view__container {
  position: static;
  height: auto;
  width: auto;
}

.image-view--intrinsic.image-view--fixed-ratio .image-view__container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.image-view--object-fit-pf .image-view__container {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.image-view--object-fit-pf .image-view__content {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
}

.image-view--object-fit-pf.image-view--contain .image-view__container {
  background-size: contain;
}

/*
 * CKEditor 5 (v12.4.0) content styles.
 * Generated on Mon, 21 Oct 2019 11:34:56 GMT.
 * For more information, check out https: */
:root {
  --ck-image-style-spacing:1.5em {}
  --ck-todo-list-checkmark-size:16px {} ;
}

/* ckeditor5-basic-styles/theme/code.css */
.ck-content code {
  background-color: rgba(199, 199, 199, 0.3);
  padding: .15em;
  border-radius: 2px;
}

.ck-content .image {
  display: table;
  clear: both;
  text-align: center;
  margin: 1em auto;
}

.ck-content .image > img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  min-width: 50px;
}

.ck-content .image > figcaption {
  display: table-caption;
  caption-side: bottom;
  word-break: break-word;
  color: #333333;
  background-color: #f7f7f7;
  padding: .6em;
  font-size: .75em;
  outline-offset: -1px;
}

.ck-content .image.image_resized {
  max-width: 100%;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.ck-content .image.image_resized img {
  width: 100%;
}

.ck-content .image.image_resized > figcaption {
  display: block;
}

.ck-content .media {
  clear: both;
  margin: 1em 0;
  display: block;
  min-width: 15em;
}

.ck-content .todo-list {
  list-style: none;
}

.ck-content .todo-list li {
  margin-bottom: 5px;
}

.ck-content .todo-list li .todo-list {
  margin-top: 5px;
}

.ck-content .todo-list .todo-list__label > input {
  -webkit-appearance: none;
  display: inline-block;
  position: relative;
  width: var(--ck-todo-list-checkmark-size);
  height: var(--ck-todo-list-checkmark-size);
  vertical-align: middle;
  border: 0;
  left: -25px;
  margin-right: -15px;
  right: 0;
  margin-left: 0;
}

.ck-content .todo-list .todo-list__label > input::before {
  display: block;
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: '';
  width: 100%;
  height: 100%;
  border: 1px solid #333333;
  border-radius: 2px;
  -webkit-transition: 250ms ease-in-out box-shadow, 250ms ease-in-out background, 250ms ease-in-out border;
  -o-transition: 250ms ease-in-out box-shadow, 250ms ease-in-out background, 250ms ease-in-out border;
  transition: 250ms ease-in-out box-shadow, 250ms ease-in-out background, 250ms ease-in-out border;
}

.ck-content .todo-list .todo-list__label > input::after {
  display: block;
  position: absolute;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  pointer-events: none;
  content: '';
  left: calc( var(--ck-todo-list-checkmark-size) / 3);
  top: calc( var(--ck-todo-list-checkmark-size) / 5.3);
  width: calc( var(--ck-todo-list-checkmark-size) / 5.3);
  height: calc( var(--ck-todo-list-checkmark-size) / 2.6);
  border-style: solid;
  border-color: transparent;
  border-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8) calc( var(--ck-todo-list-checkmark-size) / 8) 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.ck-content .todo-list .todo-list__label > input[checked]::before {
  background: #26ab33;
  border-color: #26ab33;
}

.ck-content .todo-list .todo-list__label > input[checked]::after {
  border-color: white;
}

.ck-content .todo-list .todo-list__label .todo-list__label__description {
  vertical-align: middle;
}

.ck-content .table {
  margin: 1em auto;
  display: table;
}

.ck-content .table table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px double #b3b3b3;
}

.ck-content .table table td {
  min-width: 2em;
  padding: .4em;
  border-color: #d9d9d9;
}

.ck-content .table table th {
  min-width: 2em;
  padding: .4em;
  border-color: #d9d9d9;
  font-weight: bold;
  background: #fafafa;
}

.ck-content .page-break {
  position: relative;
  clear: both;
  padding: 5px 0;
  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;
}

.ck-content .page-break::after {
  content: '';
  position: absolute;
  border-bottom: 2px dashed #c4c4c4;
  width: 100%;
}

.ck-content .page-break__label {
  position: relative;
  z-index: 1;
  padding: .3em .6em;
  display: block;
  text-transform: uppercase;
  border: 1px solid #c4c4c4;
  border-radius: 2px;
  font-family: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;
  font-size: 0.75em;
  font-weight: bold;
  color: #333333;
  background: #fff;
  -webkit-box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.15);
          box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.15);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.ck-content .image-style-side, .ck-content .image-style-align-left, .ck-content .image-style-align-center, .ck-content .image-style-align-right {
  max-width: 50%;
}

.ck-content .image-style-side {
  float: right;
  margin-left: var(--ck-image-style-spacing);
}

.ck-content .image-style-align-left {
  float: left;
  margin-right: var(--ck-image-style-spacing);
}

.ck-content .image-style-align-center {
  margin-left: auto;
  margin-right: auto;
}

.ck-content .image-style-align-right {
  float: right;
  margin-left: var(--ck-image-style-spacing);
}

.ck-content blockquote {
  overflow: hidden;
  padding-right: 1.5em;
  padding-left: 1.5em;
  margin-left: 0;
  margin-right: 0;
  font-style: italic;
  border-left: solid 5px #cccccc;
}

.ck-content[dir="rtl"] blockquote {
  border-left: 0;
  border-right: solid 5px #cccccc;
}

.ck-content hr {
  border-width: 1px 0 0;
  border-style: solid;
  border-color: #5e5e5e;
  margin: 0;
}

/* ckeditor5-image/theme/image.css */
/* ckeditor5-image/theme/image.css */
/* ckeditor5-image/theme/imagecaption.css */
/* ckeditor5-image/theme/imageresize.css */
/* ckeditor5-image/theme/imageresize.css */
/* ckeditor5-image/theme/imageresize.css */
/* ckeditor5-media-embed/theme/mediaembed.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-list/theme/todolist.css */
/* ckeditor5-table/theme/table.css */
/* ckeditor5-table/theme/table.css */
/* ckeditor5-table/theme/table.css */
/* ckeditor5-table/theme/table.css */
/* ckeditor5-page-break/theme/pagebreak.css */
/* ckeditor5-page-break/theme/pagebreak.css */
/* ckeditor5-page-break/theme/pagebreak.css */
/* ckeditor5-image/theme/imagestyle.css */
/* ckeditor5-image/theme/imagestyle.css */
/* ckeditor5-image/theme/imagestyle.css */
/* ckeditor5-image/theme/imagestyle.css */
/* ckeditor5-image/theme/imagestyle.css */
/* ckeditor5-block-quote/theme/blockquote.css */
/* ckeditor5-block-quote/theme/blockquote.css */
/* ckeditor5-horizontal-line/theme/horizontalline.css */
@media print {
  /* ckeditor5-page-break/theme/pagebreak.css */
  .ck-content .page-break {
    padding: 0;
  }
  .ck-content .page-break::after {
    display: none;
  }
  /* ckeditor5-page-break/theme/pagebreak.css */
}

.hero {
  position: relative;
  background: #92c4d1;
  background: var(--main-color);
  z-index: 1;
}

.hero__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  margin: 0 20px 0 20px;
  padding-bottom: 60px;
}

@media (min-width: 780px) {
  .hero__container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 40px 0 40px;
  }
}

.hero__content {
  max-width: 100%;
  -ms-flex-item-align: center;
      align-self: center;
}

@media (min-width: 780px) {
  .hero__content {
    max-width: 640px;
    -ms-flex-item-align: center;
        align-self: center;
    padding-top: 20px;
  }
}

.hero__content h1, .hero__content h2 {
  color: #ffffff;
}

.hero__content h1 {
  margin-top: 0;
  font-size: 1.44444rem;
}

@media (min-width: 780px) {
  .hero__content h1 {
    font-size: 1.77778rem;
  }
}

@media (min-width: 1154px) {
  .hero__content h1 {
    font-size: 2rem;
  }
}

.hero__content h2 {
  margin-bottom: 8px;
  font-weight: 200;
  font-size: 1.22222rem;
}

@media (min-width: 780px) {
  .hero__content h2 {
    font-size: 1.44444rem;
  }
}

@media (min-width: 1154px) {
  .hero__content h2 {
    font-size: 1.66667rem;
  }
}

.hero__content-intro {
  color: #ffffff;
}

.hero__image {
  max-width: 100%;
  min-width: 100%;
}

@media (min-width: 780px) {
  .hero__image {
    max-width: 50%;
    min-width: 400px;
  }
}

@media (min-width: 1154px) {
  .hero__image {
    max-width: 640px;
  }
}

.navigation {
  background-color: #92c4d1;
  background-color: var(--main-color);
  border: none !important;
}

@media (min-width: 220px) and (max-width: 767px) {
  .navigation {
    position: fixed;
  }
}

.navigation--menu-open {
  position: absolute;
}

.navigation__hamburger {
  background-color: transparent !important;
  border: none !important;
}

.navigation__hamburger:hover, .navigation__hamburger:active, .navigation__hamburger:focus {
  background-color: transparent !important;
}

.navigation__hamburger.collapsed .navigation__hamburger-bar {
  -webkit-transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  -o-transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
}

.navigation__hamburger.collapsed .navigation__hamburger-bar:nth-child(2) {
  -webkit-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
          transform-origin: 0% 0%;
  -webkit-transform: rotate(0deg) translate(0px, 0px);
      -ms-transform: rotate(0deg) translate(0px, 0px);
          transform: rotate(0deg) translate(0px, 0px);
}

.navigation__hamburger.collapsed .navigation__hamburger-bar:nth-child(3) {
  opacity: 1;
  -webkit-transform: rotate(0deg) scale(1, 1);
      -ms-transform: rotate(0deg) scale(1, 1);
          transform: rotate(0deg) scale(1, 1);
  background: #ffffff;
}

.navigation__hamburger.collapsed .navigation__hamburger-bar:nth-child(4) {
  -webkit-transform-origin: 0% 100%;
      -ms-transform-origin: 0% 100%;
          transform-origin: 0% 100%;
  -webkit-transform: rotate(0deg) translate(0px, 0px);
      -ms-transform: rotate(0deg) translate(0px, 0px);
          transform: rotate(0deg) translate(0px, 0px);
}

.navigation__hamburger-bar {
  background-color: #fff !important;
  width: 30px !important;
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #cdcdcd;
  border-radius: 3px;
  z-index: 1;
  -webkit-transform-origin: 4px 0px;
      -ms-transform-origin: 4px 0px;
          transform-origin: 4px 0px;
  -webkit-transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  transition: background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  -o-transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease, -webkit-transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  opacity: 1;
  -webkit-transform: rotate(45deg) translate(-1px, -2px);
      -ms-transform: rotate(45deg) translate(-1px, -2px);
          transform: rotate(45deg) translate(-1px, -2px);
  background: #232323;
}

.navigation__hamburger-bar:nth-child(1) {
  opacity: 0;
}

.navigation__hamburger-bar:nth-child(3) {
  opacity: 0;
  -webkit-transform: rotate(0deg) scale(0.2, 0.2);
      -ms-transform: rotate(0deg) scale(0.2, 0.2);
          transform: rotate(0deg) scale(0.2, 0.2);
  background: #92c4d1;
  background: var(--main-color);
}

.navigation__hamburger-bar:nth-child(4) {
  -webkit-transform: rotate(-45deg) translate(0, -1px);
      -ms-transform: rotate(-45deg) translate(0, -1px);
          transform: rotate(-45deg) translate(0, -1px);
}

.navigation__hamburger-bar--dark {
  background-color: #333333 !important;
}

.navigation__hamburger-bar--dark:nth-child(4) {
  -webkit-transform: rotate(-45deg) translate(2px, -4px);
      -ms-transform: rotate(-45deg) translate(2px, -4px);
          transform: rotate(-45deg) translate(2px, -4px);
}

.navigation__container {
  background-color: #92c4d1;
  background-color: var(--main-color);
  overflow: hidden;
  border: none;
  z-index: 100;
}

@media (min-width: 220px) and (max-width: 767px) {
  .navigation__container {
    position: absolute;
    height: 100vh !important;
    width: 100vw;
  }
}

.navigation__dropdown-list {
  background-color: #92c4d1;
  background-color: var(--main-color);
  border: none !important;
}

@media (min-width: 780px) {
  .navigation__dropdown-list {
    background-color: #ffffff;
    border-radius: 8px 8px 8px 8px;
    border-top-left-radius: 8px !important;
    border-top-right-radius: 8px !important;
    min-width: 190px;
  }
}

.navigation__dropdown-list-item {
  list-style-type: none;
  padding: 4px 7px;
}

.navigation__dropdown-list-item-link {
  color: #ffffff !important;
}

@media (min-width: 780px) {
  .navigation__dropdown-list-item-link {
    color: #333333 !important;
    padding: 3px !important;
  }
}

.navigation__dropdown-list-item-link .navigation__dropdown-list-item-text::after {
  content: '';
  display: block;
  background-color: transparent;
  width: 0%;
  height: 3px;
}

.navigation__dropdown-list-item-link:hover, .navigation__dropdown-list-item-link:active, .navigation__dropdown-list-item-link:focus {
  background-color: #ffffff !important;
}

.navigation__dropdown-list-item-link:hover .navigation__dropdown-list-item-text::after, .navigation__dropdown-list-item-link:active .navigation__dropdown-list-item-text::after, .navigation__dropdown-list-item-link:focus .navigation__dropdown-list-item-text::after {
  content: '';
  display: block;
  background-color: #95989A;
  width: 100%;
  height: 3px;
  -webkit-transition: width .2s ease-in;
  -o-transition: width .2s ease-in;
  transition: width .2s ease-in;
}

.navigation__list-item-link {
  color: #ffffff !important;
  font-size: 1rem;
}

.navigation__list-item-link::after {
  content: '';
  display: block;
  background-color: transparent;
  width: 0%;
  height: 3px;
  margin-top: 2px;
}

.navigation__list-item-link:active, .navigation__list-item-link:hover, .navigation__list-item-link:focus, .navigation__list-item-link.active {
  color: #ffffff !important;
}

.navigation__list-item-link:active::after, .navigation__list-item-link:hover::after, .navigation__list-item-link:focus::after, .navigation__list-item-link.active::after {
  content: '';
  display: block;
  background-color: #ffffff;
  width: 100%;
  height: 3px;
  -webkit-transition: width .2s ease-in;
  -o-transition: width .2s ease-in;
  transition: width .2s ease-in;
}

.navigation__list-item-link--login {
  color: #ffffff !important;
  background-color: #333333;
  border-radius: 8px;
  padding: 15px 17px !important;
  margin: 0 10px;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  text-align: center;
}

.navigation__list-item-link--login:active, .navigation__list-item-link--login:hover, .navigation__list-item-link--login:focus, .navigation__list-item-link--login.active {
  color: #ffffff !important;
  background-color: #333333 !important;
  border-radius: 8px;
  -webkit-transform: scale(1.02);
      -ms-transform: scale(1.02);
          transform: scale(1.02);
  -webkit-box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.16);
  -webkit-transition: .2s transform box-shadow ease-in;
  -o-transition: .2s transform box-shadow ease-in;
  transition: .2s transform box-shadow ease-in;
}

.main-content--menu-open {
  position: fixed;
}

.caption-and-content-layout {
  padding: 80px 0;
}

@media (min-width: 780px) {
  .caption-and-content-layout {
    padding: 80px 0;
  }
}

@media (min-width: 1154px) {
  .caption-and-content-layout {
    padding: 80px 0;
  }
}

.caption-and-content-layout__caption-container {
  margin-bottom: 25px;
}

@media (min-width: 1154px) {
  .caption-and-content-layout__caption-container {
    margin-bottom: 40px;
  }
}

.caption-and-content-layout--fillscreen {
  min-height: calc(100vh - 260px - 360px);
  padding-top: 50px;
}

@media (min-width: 780px) {
  .caption-and-content-layout--fillscreen {
    min-height: calc(100vh - 260px - 90px);
    margin: auto;
  }
}

.panel-caption {
  margin: 0 20px 25px 20px;
  text-align: center;
}

.panel-caption__text {
  display: inline;
  color: #333333;
  padding-bottom: 5px;
  font-weight: 700;
  font-size: 1.16667rem;
  line-height: 1.6;
}

.panel-caption__text--subheadline {
  font-size: 1.05556rem;
  font-weight: 500;
}

@media (min-width: 2048px) {
  .panel-caption__text {
    font-size: 1.33333rem;
  }
}

.panel-caption__text--dark-theme {
  color: #fff;
}

.panel-caption__checkout-step {
  display: block;
}

@media (min-width: 780px) {
  .panel-caption__checkout-step {
    display: none;
  }
}

@media (min-width: 2048px) {
  .panel-caption {
    margin-bottom: 45px;
  }
}

.logo-references__item figure {
  margin: 0 auto;
  max-width: 120px;
}

.messenger-strip {
  padding: 20px 0px 20px 0px;
}

.messenger-strip__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  align-items: center;
}

.messenger-strip__item .image {
  margin: 0;
  max-width: 120px;
}

.messenger-strip__item .text p {
  font-weight: 600;
  text-align: center;
}

.quote {
  padding: 40px 0;
}

.quote__container {
  background-color: #92c4d1;
  background-color: var(--main-color);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.quote__logo {
  max-width: 140px;
}

.quote__text blockquote {
  font-size: 1rem;
}

.quote__author {
  color: #ffffff;
}

.cta-footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #92c4d1;
  background-color: var(--main-color);
  padding: 2vh 20px;
}

@media (min-width: 780px) {
  .cta-footer {
    padding: 2vh 40px;
  }
}

.cta-footer__headline {
  text-align: center;
  color: #ffffff;
  font-size: 1.77778rem;
  font-weight: 400;
  margin: 0;
}

@media (min-width: 780px) {
  .cta-footer__headline {
    font-size: 2.11111rem;
  }
}

.cta-footer__subheadline {
  text-align: center;
  color: #ffffff;
  font-size: 1.22222rem;
  font-weight: 200;
  margin: 20px 0 30px 0;
}

@media (min-width: 780px) {
  .cta-footer__subheadline {
    font-size: 1.77778rem;
    margin: 10px 0 40px 0;
  }
}

.footer {
  padding: 40px 0 0;
  background: #333333;
}

.footer__header {
  color: #ffffff;
  margin-bottom: 6px;
  font-size: 1.22222rem;
}

.footer__list {
  padding-left: 0 !important;
  list-style: none;
}

.footer__link {
  color: #ffffff;
  font-size: 0.88889rem;
  font-weight: 200;
}

.footer__link:hover, .footer__link:active, .footer__link:focus {
  color: #ffffff;
  font-weight: 400;
  text-decoration: none;
}

.footer__link--credits {
  font-size: 0.66667rem;
}

.footer__social-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.footer__social-links-item {
  padding: 8px;
  font-size: 1.11111rem;
  color: #ffffff;
}

.footer__company-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media (max-width: 425px) {
  .footer__company-links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

@media (min-width: 780px) {
  .footer__company-links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}

.footer__company-links-item {
  padding: 8px 20px 12px 0;
}

.footer__company-links-item img {
  width: 100px;
}

.footer__company-links-item--main img {
  width: 130px;
}

.grid-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  gap: 40px;
}

.grid-container--1-col {
  grid-template-columns: repeat(auto-fill, minmax(100%, 800px));
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  place-items: center;
}

.grid-container--1-col .grid-container__item {
  padding: 0px 0px;
}

@media (min-width: 220px) and (max-width: 779px) {
  .grid-container--1-col .grid-container__item {
    padding: 0px 20px;
  }
}

.grid-container--2-col {
  grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
}

@media (min-width: 220px) and (max-width: 779px) {
  .grid-container--2-col {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    place-items: center;
  }
}

.grid-container--3-col {
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  grid-template-rows: auto;
}

.grid-container--4-col {
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  grid-template-rows: auto;
}

.grid-container__item {
  padding: 0px 20px;
  max-width: 100vw;
}

@media (min-width: 780px) {
  .grid-container__item {
    padding: 0px 40px;
  }
}

.grid-container__item--padding-tb {
  padding: 0px 20px 40px;
}

@media (min-width: 780px) {
  .grid-container__item--padding-tb {
    padding: 0 20px;
  }
}

.grid-container__item--2-col-start {
  grid-column-start: 1;
  grid-column-end: 3;
}

.grid-container__item--bottom {
  -ms-flex-item-align: end;
      align-self: end;
}

.grid-container__item--center {
  place-self: center;
  text-align: center;
}

.grid-container__item--full-width-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (min-width: 220px) and (max-width: 779px) {
  .grid-container__item--full-width-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

@media (min-width: 780px) {
  .grid-container__item--full-width-flex {
    grid-column: 1 / span 3;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

@media (min-width: 1154px) {
  .grid-container__item--full-width-flex {
    grid-column: 1 / span 4;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.grid-container__image {
  width: 100%;
  max-width: 600px;
  padding: 0 0;
  place-self: center;
}

.grid-container__image img {
  min-width: 100%;
}

@media (min-width: 780px) {
  .grid-container__image--right {
    grid-row: 1;
    grid-column: 2;
  }
}

@media (min-width: 780px) {
  .grid-container__image--left {
    grid-row: 1;
    grid-column: 1;
  }
}

.iwcc-background {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em;
  z-index: 999999;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.iwcc-wrapper {
  background: #fff;
  position: relative;
  font-size: 15px;
  width: 100%;
  max-width: 60em;
  max-height: 100vh;
  border-radius: 8px;
  overflow-y: auto;
}

.iwcc-wrapper-inner {
  padding: 1em;
  position: relative;
}

.iwcc-hidden {
  display: none;
}

.iwcc-detail {
  margin-bottom: 1em;
}

.iwcc-headline {
  font-weight: bold;
  font-size: 1.2em;
}

.iwcc-headline span {
  font-weight: normal;
}

.iwcc-show-details {
  padding: 0 0 1em 0;
}

.iwcc-show-details a {
  color: #999;
  text-decoration: none;
  cursor: pointer;
}

.iwcc-show-details a:hover {
  color: #333333;
  text-decoration: none;
}

.iwcc-save-selection {
  background: none transparent;
  border: 3px solid #868686 !important;
  color: #333333 !important;
}

.iwcc-sitelinks a {
  display: inline-block;
  margin: .5em .5em .5em 0;
  color: #999;
  text-decoration: none;
}

.iwcc-sitelinks a:hover {
  color: #404040;
  text-decoration: none;
}

.iwcc-save-and-close {
  color: green;
}

.iwcc-save-and-close:hover {
  color: #004000;
}

.iwcc-close-box {
  position: absolute;
  right: .5em;
  top: .5em;
  display: block;
  padding: 0;
  margin: 0;
  border: 0;
  cursor: pointer;
  color: #999;
  font-size: 1.8em;
  background: none transparent;
  line-height: 1;
  text-decoration: none;
}

.iwcc-close-box:before {
  margin: 0;
}

.iwcc-close-box:hover {
  color: #404040;
  background: none transparent;
  text-decoration: none;
}

.iwcc-cookiegroups {
  padding: 1em 0;
}

.iwcc-cookiegroup-checkbox {
  display: block;
  margin: 0 0 1em 0;
}

.iwcc-cookiegroup-checkbox.pretty .state label {
  font-weight: bold;
  font-size: 1.2em;
  line-height: 1;
}

.iwcc-cookiegroup-checkbox.pretty.p-default input:checked ~ .state label::before {
  border-color: #868686;
}

.iwcc-cookiegroup-checkbox.pretty.p-default input:checked ~ .state label::after {
  background-color: #868686 !important;
}

.iwcc-cookiegroup-checkbox.pretty.p-locked {
  opacity: .75;
}

.iwcc-cookiegroup + .iwcc-cookiegroup-title {
  margin-top: 1em;
}

.iwcc-cookie {
  margin-top: .5em;
  border-left: 2px solid #999;
  padding: .5em .5em .5em 1em;
  background: #f9f9f9;
}

.iwcc-cookie span {
  display: block;
}

.pretty.p-icon .state .icon {
  font-size: 1.15em;
  -webkit-transition: all .1s ease;
  -o-transition: all .1s ease;
  transition: all .1s ease;
}

.pretty.p-icon .state label:before {
  margin-top: -.1em;
}

@media (min-width: 35em) {
  .iwcc-cookiegroups {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-top: 2em;
  }
  .iwcc-cookiegroup-checkbox {
    margin: 0 2em 0 0;
  }
  .iwcc-show-details {
    text-align: right;
    padding: 1em 2em 2em 0;
  }
  .iwcc-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .iwcc-sitelinks {
    text-align: right;
    padding-right: 1.5em;
  }
  .iwcc-sitelinks a {
    margin: .5em 0 .5em 1em;
  }
  .iwcc-save-selection,
  .iwcc-accept-all {
    display: inline-block;
    margin: 0 0 0 .5em;
  }
}

@media (min-width: 50em) {
  .iwcc-wrapper-inner {
    padding: 2em;
  }
  .iwcc-buttons-sitelinks {
    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;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .iwcc-close-box {
    font-size: 2em;
    margin: 0;
  }
}

.button--cta {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  padding: 19px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.88889rem;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.4px;
  text-decoration: none;
  text-transform: uppercase;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  min-width: 220px;
  background-color: #333333;
  color: #ffffff;
  border: 3px solid #95989A;
  border-color: #333333;
}

.button--cta:hover, .button--cta:active, .button--cta:focus {
  border: 3px solid #95989A;
  text-decoration: none;
  background-color: #6A6A6A;
  border-color: #6A6A6A;
  color: #fff;
}

.button--cta[disabled] {
  background-color: rgba(134, 134, 134, 0.7);
  color: #fff;
  border: solid 3px rgba(255, 255, 255, 0);
  cursor: not-allowed;
}

.button--ctrl {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  padding: 19px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.88889rem;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.4px;
  text-decoration: none;
  text-transform: uppercase;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  height: 50px;
  width: 40px;
  background-color: #ffffff;
  border: 1px solid #95989A;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../img/icon-plus.svg);
}

.button--cart {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  padding: 19px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.88889rem;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.4px;
  text-decoration: none;
  text-transform: uppercase;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 90px;
  height: 50px;
  background-color: #6A6A6A;
  border: none;
  background-image: url(../img/icon-cart.svg);
  background-size: 60% 60%;
  background-repeat: no-repeat;
  background-position: center;
}

.button--cart:hover, .button--cart:active {
  background-color: #95989A;
}

@media (min-width: 220px) and (max-width: 779px) {
  .button--cart {
    width: 130px;
  }
}

.button--white {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  padding: 19px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.88889rem;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.4px;
  text-decoration: none;
  text-transform: uppercase;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  min-width: 220px;
  color: #333333;
  background-color: #ffffff;
  border: 3px solid #95989A;
}

.button--white:hover, .button--white:active {
  background-color: #499CB3;
  color: #ffffff;
  border: 3px solid #95989A;
  border-color: #499CB3;
}

.button--transparent {
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 8px;
  padding: 19px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.88889rem;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.4px;
  text-decoration: none;
  text-transform: uppercase;
  font-style: normal;
  font-stretch: normal;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  min-width: 220px;
  background-color: transparent;
  color: #ffffff;
  border: solid 3px #ffffff;
}

.button--transparent:hover, .button--transparent:active {
  background-color: white;
  color: #333333;
  border: solid 3px rgba(51, 51, 51, 0);
  text-decoration: none;
}

.button--transparent[disabled] {
  background-color: rgba(134, 134, 134, 0.7);
  color: #fff;
  border: solid 3px rgba(255, 255, 255, 0);
  cursor: not-allowed;
}

.button-group {
  overflow: hidden;
}

@media (min-width: 780px) {
  .button-group--narrow {
    max-width: 620px;
    margin: 0 auto;
  }
}

@media (min-width: 1154px) {
  .button-group--narrow {
    max-width: 640px;
    margin: 0 auto;
  }
}

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

@media (min-width: 780px) {
  .button-group__btn {
    width: 220px;
  }
}

.button-group__btn--left {
  margin: 20px auto 0px auto;
}

@media (min-width: 780px) {
  .button-group__btn--left {
    float: left;
    margin: 0px 20px 10px 0px;
  }
}

.button-group__btn--right {
  margin: 20px auto 0px auto;
}

@media (min-width: 780px) {
  .button-group__btn--right {
    float: right;
    margin: 0px 20px 10px 0px;
  }
}

.button-group__btn--center {
  margin: auto;
}

@media (min-width: 220px) and (max-width: 779px) {
  .button-group__btn--previous {
    min-width: initial;
    width: 115px;
    margin: auto;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .button-group__btn--previous, .button-group__btn--previous:hover, .button-group__btn--previous:active {
    background: none;
    border: none;
    color: #333333;
    position: relative;
  }
  .button-group__btn--previous:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
            transform: translate(0%, -50%);
    height: 15px;
    width: 15px;
    content: "";
    left: -0.2em;
    background-image: url(../img/icon-arrow-left.svg);
    background-position: center;
    background-repeat: no-repeat;
  }
}

@media (min-width: 220px) and (max-width: 779px) {
  .button-group__button--next {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media (min-width: 220px) and (max-width: 779px) {
  .button-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}

.inline-content-panel-layout {
  max-width: 1440px;
  margin: 0 auto;
}

@media (min-width: 780px) {
  .inline-content-panel-layout__content {
    box-flex: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: calc((99.99% - 10px) * 0.09091 + 10px);
    width: calc((99.99% - 10px) * 18 /22 - 10px);
  }
}

.inline-content-panel-layout--error {
  text-align: center;
}

.inline-content-teaser-image-layout {
  max-width: 1440px;
  margin: 0 auto;
}

.inline-content__content-item {
  overflow: auto;
  margin: 0 20px;
}

@media (min-width: 780px) {
  .inline-content__content-item {
    box-flex: 0;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: calc((99.99% - 10px) * 0.09091 + 10px);
    width: calc((99.99% - 10px) * 18 /22 - 10px);
  }
}

@media (min-width: 780px) {
  .inline-content__content-item--narrow {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
  }
}

@media (min-width: 1154px) {
  .inline-content__content-item--narrow {
    max-width: 640px;
    margin: 0 auto;
  }
}

.inline-content__content-item--error {
  background-color: #F40808;
  border-color: #F40808;
  margin: 20px auto;
  text-align: center;
  color: #ffffff;
  padding: 10px;
  border-radius: 8px;
  -webkit-animation: bounce .6s ease-in-out forwards;
          animation: bounce .6s ease-in-out forwards;
}

.inline-heading--level-1 {
  margin-top: auto;
  margin-bottom: 20x;
  font-weight: bold;
  color: #333333;
  font-size: 1.16667rem;
  line-height: 1.4;
}

@media (min-width: 2048px) {
  .inline-heading--level-1 {
    font-size: 1.33333rem;
  }
}

.inline-paragraph {
  margin-bottom: 20px;
  margin-top: auto;
  font-size: 0.88889rem;
  line-height: 1.6;
  color: #333333;
}

@media (min-width: 2048px) {
  .inline-paragraph {
    font-size: 1rem;
  }
}

.inline-paragraph__link, .inline-paragraph__link:hover, .inline-paragraph__link:visited {
  color: #868686;
  text-decoration: underline;
}

.inline-paragraph--centered {
  text-align: center;
}

.inline-paragraph--emphasized {
  font-weight: 700;
}

.inline-paragraph--dark-theme {
  color: #fff;
}

.inline-image {
  margin: 20px auto;
}

.inline-quote {
  margin: auto auto 20px auto;
}

.inline-quote__text {
  color: #333333;
  display: block;
  font-size: 1.33333rem;
  font-weight: 500;
}

@media (min-width: 2048px) {
  .inline-quote__text {
    font-size: 1.77778rem;
  }
}

.inline-quote__author {
  margin-top: 8px;
  color: #868686;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.4;
  display: block;
}

.inline-list {
  list-style-type: square;
  margin-top: auto;
  margin-bottom: 20px;
  color: #333333;
}

.inline-list__item {
  font-size: 0.88889rem;
  line-height: 1.7;
}

@media (min-width: 2048px) {
  .inline-list__item {
    font-size: 1rem;
  }
}

.inline-list--dark-theme {
  color: #fff;
}

.image-caption__title {
  margin-top: 5px;
  font-weight: 700;
  font-size: 0.66667rem;
  line-height: 1.4;
  color: #333333;
  text-align: left;
}

.image-caption__copyright {
  margin-top: 4px;
  font-weight: 500;
  font-size: 0.55556rem;
  line-height: 1.2;
  color: #868686;
  text-transform: uppercase;
}

.form {
  overflow: hidden;
}

.form:before, .form:after {
  content: "";
  display: table;
}

.form:after {
  clear: both;
}

.form__text-panel {
  clear: both;
  text-align: center;
}

.form__message {
  margin-top: auto;
  font-size: 0.88889rem;
  text-align: center;
  line-height: 1.6;
  color: #333333;
}

.form__message--boxed {
  padding: 20px;
  border: 1px solid #95989A;
  text-align: left;
}

.form__message--dark-theme {
  color: #ffffff;
}

.form__message--dark-theme a {
  color: #EDEDED;
}

@media (min-width: 1154px) {
  .form__message {
    font-size: 1rem;
    margin-bottom: 33px;
  }
}

@media (min-width: 1154px) {
  .form__message--stay-small {
    font-size: 0.88889rem;
  }
}

.form__message--no-margin {
  margin-bottom: 10px;
}

.form__input-field-wrapper {
  margin-bottom: 15px;
}

.form__input-field-wrapper:before, .form__input-field-wrapper:after {
  content: "";
  display: table;
}

.form__input-field-wrapper:after {
  clear: both;
}

@media (min-width: 780px) {
  .form__input-field-wrapper {
    float: left;
    width: 300px;
  }
  .form__input-field-wrapper:nth-child(odd) {
    float: right;
  }
}

@media (min-width: 1154px) {
  .form__input-field-wrapper {
    width: 310px;
  }
}

.form__input-field-wrapper--full-width {
  width: 100%;
  float: none;
  clear: both;
}

.form__input-field-wrapper--submit {
  float: none !important;
  margin: auto;
}

.form__input-field {
  border: 1px solid #95989A;
  border-bottom: 1px solid #95989A;
  border-radius: 8px;
  font-size: 1rem;
  padding: 0.72222rem;
  display: inline-block;
  width: 100%;
}

.form__input-field--textarea {
  resize: none;
}

.form__input-field--radio, .form__input-field--checkbox {
  position: absolute;
  top: 0;
  left: -9999px;
  visibility: hidden;
}

.form__input-field--radio:checked + label:after, .form__input-field--checkbox:checked + label:after {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
}

.form__input-field--full-width {
  border: none;
  width: auto;
}

.form__input-field--no-border {
  border: none;
}

.form__input-field--styled {
  padding: 0px 0px 0px 40px;
  text-align: left;
}

.form__input-field--boxed {
  padding: 20px 20px 20px 60px;
  border: 1px solid #95989A;
}

.form__input-field--centered {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.form__input-field-label {
  position: relative;
  margin-bottom: 10px;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  color: #8a909a;
}

.form__input-field-label span {
  display: inline-block;
  margin-left: 3px;
  color: #333333;
}

.form__input-field-label--inline {
  display: inline-block;
  margin-bottom: auto;
  vertical-align: text-top;
  color: #333333;
  font-weight: 400;
  font-size: 0.88889rem;
  cursor: pointer;
  line-height: 1.6;
}

.form__input-field-label--inline:before, .form__input-field-label--inline:after {
  content: '';
  position: absolute;
  top: 13px;
}

.form__input-field-label--inline:before {
  left: -35px;
  width: 24px;
  height: 24px;
  margin: -12px 0 0;
  background: #fff;
  border: 1px solid #d0d0d0;
}

.form__input-field-label--inline:after {
  left: -28px;
  width: 10px;
  height: 10px;
  margin: -5px 0 0;
  opacity: 0;
  background: #333333;
  -webkit-transition: opacity 0.15s ease-in-out;
  -o-transition: opacity 0.15s ease-in-out;
  transition: opacity 0.15s ease-in-out;
}

@media (min-width: 1154px) {
  .form__input-field-label--inline {
    font-size: 1rem;
  }
}

@media (min-width: 1154px) {
  .form__input-field-label--stay-small {
    font-size: 0.88889rem;
  }
}

.form__input-field-label--rounded:before, .form__input-field-label--rounded:after {
  border-radius: 50%;
}

.form__input-field-label--dark-theme {
  color: #ffffff;
}

.form__input-field-label--dark-theme span {
  color: #ffffff;
}

.form__button-field-wrapper {
  clear: both;
}

.form__button-field-wrapper:before, .form__button-field-wrapper:after {
  content: "";
  display: table;
}

.form__button-field-wrapper:after {
  clear: both;
}

.form__input-field-split {
  float: left;
  display: inline-block;
}

.form__input-field-split--narrow {
  width: 100px;
}

.form__input-field-split--wide {
  width: calc(100% - 110px);
  margin-left: 10px;
}

@media (min-width: 780px) {
  .form__input-field-split--wide {
    width: 190px;
  }
}

@media (min-width: 1154px) {
  .form__input-field-split--wide {
    width: 200px;
  }
}

.form__input-field-message {
  clear: both;
  float: left;
  font-size: 0.75rem;
  line-height: 1.6;
  color: #8a909a;
}

.form__input-field-message--white {
  color: #ffffff;
}

.form__input-field-message--centered {
  width: 100%;
  text-align: center;
}

.form__input-field-message--dark-theme {
  color: #ffffff;
}

.form__input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 8px;
  padding-left: 35px;
}

.form__input-group--checkbox {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.form__input-group--radio {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.form__submit {
  width: 100%;
}

@media (min-width: 780px) {
  .form__submit {
    display: block;
    max-width: 220px;
    margin: 0 auto;
  }
}

.placeholder-option .dropdown__text {
  color: #cdcecf;
}

.areaCode .dropdown__text {
  padding: 13px 5px 13px 15px;
}

.alert-danger, .alert {
  border-radius: 8px !important;
}

/* File uploader */
.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.inputfile + label {
  padding: 0.625rem 1.25rem;
  margin-bottom: 15px;
  font-size: 1rem;
  font-weight: 500;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  display: block;
  overflow: hidden;
}

@media (min-width: 780px) {
  .inputfile + label {
    display: inline-block;
    margin-bottom: auto;
  }
}

.inputfile:focus + label,
.inputfile.has-focus + label {
  outline: 1px dotted #000;
  outline: -webkit-focus-ring-color auto 5px;
}

.inputfile + label svg {
  vertical-align: middle;
  fill: currentColor;
}

.inputfile + label {
  color: #cdcecf;
  font-weight: 500;
  border: 1px solid #95989A;
  padding: 0;
}

.inputfile + label span {
  width: calc(100% - 48px);
  padding: 10px 13px;
  height: 50px;
  display: inline-block;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: top;
}

@media (min-width: 780px) {
  .inputfile + label span {
    width: 360px;
  }
}

@media (min-width: 1154px) {
  .inputfile + label span {
    width: 380px;
  }
}

.inputfile + label strong {
  height: 100%;
  padding: 9px 15px;
  margin-left: -7px;
  display: inline-block;
  border: 2px solid #95989A;
  border-left: 3px solid #95989A;
}

.inputfile__upload-button {
  width: 100%;
  min-width: initial;
  padding: 15px;
  vertical-align: top;
}

@media (min-width: 780px) {
  .inputfile__upload-button {
    width: 200px;
    float: right;
  }
}

.tca {
  padding: 20px;
}

.tca__content {
  margin-bottom: 25px;
  padding: 0 0 0 35px;
}

@media (min-width: 1154px) {
  .tca__content {
    padding: 0;
    float: right;
    max-width: 680px;
  }
}

.tca__text, .tca__label {
  font-size: 0.88889rem;
}

@media (min-width: 1154px) {
  .tca__text, .tca__label {
    font-size: 1rem;
  }
}

.tca__button-group {
  clear: both;
}

@media (min-width: 780px) {
  .tca {
    margin: 40px auto;
    padding: 0 45px;
    min-width: 690px;
    max-width: 1030px;
  }
}

@media (min-width: 1154px) {
  .tca {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-left: calc((99.99% - 10px) * 0.13636 + 10px);
    width: calc((99.99% - 10px) * 16 /22 - 10px);
    margin: auto auto 50px auto;
    padding: 0;
  }
}

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 0;
  }
  20% {
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%);
  }
  40% {
    -webkit-transform: translateX(10%);
            transform: translateX(10%);
    opacity: 1;
  }
  60% {
    -webkit-transform: translateX(-15%);
            transform: translateX(-15%);
    opacity: 1;
  }
  70% {
    -webkit-transform: translateX(20%);
            transform: translateX(20%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
}

@keyframes bounce {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 0;
  }
  20% {
    -webkit-transform: translateX(-10%);
            transform: translateX(-10%);
  }
  40% {
    -webkit-transform: translateX(10%);
            transform: translateX(10%);
    opacity: 1;
  }
  60% {
    -webkit-transform: translateX(-15%);
            transform: translateX(-15%);
    opacity: 1;
  }
  70% {
    -webkit-transform: translateX(20%);
            transform: translateX(20%);
    opacity: 1;
  }
  90% {
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    opacity: 1;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLmNzcyIsInNvdXJjZXMiOlsiY3VzdG9tLnNhc3MiLCJfYmFzZS9fbm9ybWFsaXplLnNhc3MiLCJfYmFzZS9fdmFyaWFibGVzLnNhc3MiLCJfYmFzZS9fYnJlYWtwb2ludHMuc2FzcyIsIl9iYXNlL19nbG9iYWwuc2FzcyIsIl9iYXNlL19mb250cy5zYXNzIiwiX2Jhc2UvX21peGlucy5zYXNzIiwiX2Jhc2UvX3R5cG9ncmFwaHkuc2FzcyIsIl9iYXNlL19pbWFnZS5zYXNzIiwiX2Jhc2UvX2NrZWRpdG9yLnNhc3MiLCJfbGF5b3V0cy9faGVyby5zYXNzIiwiX2xheW91dHMvX25hdmlnYXRpb24uc2FzcyIsIl9sYXlvdXRzL19tYWluLWNvbnRlbnQuc2FzcyIsIl9sYXlvdXRzL19sLWNhcHRpb24tYW5kLWNvbnRlbnQuc2FzcyIsIl9sYXlvdXRzL19sb2dvLXJlZmVyZW5jZXMuc2FzcyIsIl9sYXlvdXRzL19tZXNzZW5nZXItc3RyaXAuc2FzcyIsIl9sYXlvdXRzL19xdW90ZS5zYXNzIiwiX2xheW91dHMvX2N0YS1mb290ZXIuc2FzcyIsIl9sYXlvdXRzL19mb290ZXIuc2FzcyIsIl9sYXlvdXRzL19ncmlkLWNvbnRhaW5lci5zYXNzIiwiX2xheW91dHMvX2l3Y2MtY29va2llYmFubmVyLnNhc3MiLCJfbW9kdWxlcy9fbS1idXR0b25zLnNhc3MiLCJfbW9kdWxlcy9fbS1idXR0b24tZ3JvdXAuc2FzcyIsIl9tb2R1bGVzL19tLWlubGluZS1jb250ZW50LnNhc3MiLCJfbW9kdWxlcy9fbS1mb3Jtcy5zYXNzIiwiX21vZHVsZXMvX20tdG9jLnNhc3MiLCJfc3RhdGVzL19hbmltYXRlZC5zYXNzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8vIEJhc2VcbkBpbXBvcnQgXCJfYmFzZS9fbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiX2Jhc2UvX3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIl9iYXNlL19icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIl9iYXNlL19nbG9iYWxcIjtcbkBpbXBvcnQgXCJfYmFzZS9fZm9udHNcIjtcbkBpbXBvcnQgXCJfYmFzZS9fbWl4aW5zXCI7XG5AaW1wb3J0IFwiX2Jhc2UvX3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJfYmFzZS9faW1hZ2VcIjtcbkBpbXBvcnQgXCJfYmFzZS9fY2tlZGl0b3JcIjtcblxuLy8gTGF5b3V0c1xuQGltcG9ydCBcIl9sYXlvdXRzL19oZXJvLnNhc3NcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9fbmF2aWdhdGlvbi5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX21haW4tY29udGVudC5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX2wtY2FwdGlvbi1hbmQtY29udGVudC5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX2xvZ28tcmVmZXJlbmNlcy5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX21lc3Nlbmdlci1zdHJpcC5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX3F1b3RlLnNhc3NcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9fY3RhLWZvb3Rlci5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX2Zvb3Rlci5zYXNzXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvX2dyaWQtY29udGFpbmVyLnNhc3NcIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9faXdjYy1jb29raWViYW5uZXIuc2Fzc1wiO1xuXG4vLyBNb2R1bGVzXG5AaW1wb3J0IFwiX21vZHVsZXMvX20tYnV0dG9uc1wiO1xuQGltcG9ydCBcIl9tb2R1bGVzL19tLWJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL19tLWlubGluZS1jb250ZW50LnNhc3NcIjtcbkBpbXBvcnQgXCJfbW9kdWxlcy9fbS1mb3Jtcy5zYXNzXCI7XG5AaW1wb3J0IFwiX21vZHVsZXMvX20tdG9jLnNhc3NcIjtcblxuLy8gU3RhdGVzXG5AaW1wb3J0IFwiX3N0YXRlcy9fYW5pbWF0ZWQuc2Fzc1wiO1xuIiwiLyohIG5vcm1hbGl6ZS5zY3NzIHYwLjEuMCB8IE1JVCBMaWNlbnNlIHwgYmFzZWQgb24gZ2l0LmlvL25vcm1hbGl6ZSAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuXG4gIC8vIDFcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG5cbiAgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG5cbiB9ICAvLyAyXG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC8vIDFcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gfSAgLy8gMlxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcblxuICAvLyAxXG4gIGZvbnQ6IGluaGVyaXQ7XG5cbiAgLy8gMlxuICBtYXJnaW46IDA7XG5cbiB9ICAvLyAzXG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuICovXG5cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuXG4gIC8vIDJcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gfSAgLy8gM1xuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAvLyAxXG4gIHBhZGRpbmc6IDA7XG5cbiB9ICAvLyAyXG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXG4gIC8vIDFcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuICAvLyAyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy4gKi9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuXG4gIC8vIDFcbiAgcGFkZGluZzogMDtcblxuIH0gIC8vIDJcblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogVGFibGVzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuIiwiLy9Db2xvcnNcbiRoZXJvLWJnOiAjOTJjNGQxO1xuJGJvcmRlcmdyZXk6ICM5NTk4OUE7XG4kdHlwZS1kYXJrZ3JleTogIzMzMzMzMztcbiRsaWdodGdyZXk6ICNFREVERUQ7XG4kbGlnaHRncmV5LWRpc2FibGVkOiByZ2JhKDIwNiwgMjA2LCAyMDYsIDAuNyk7XG4kbWVkaXVtZ3JleTogIzg2ODY4NjtcbiRtZWRpdW1ncmV5LWRpc2FibGVkOiByZ2JhKDEzNCwgMTM0LCAxMzQsIDAuNyk7XG4kYnRuLWdyZXk6ICM2QTZBNkE7XG4kZGFya2dyZXk6ICMzMzMzMzM7XG4kY3lhbjogIzQ5OUNCMztcbiRncmVlbjogIzNFRUREMztcbiRyZWQ6ICNGNDA4MDg7XG5cbiRjeWFuLXR5cGU6ICM0OTlDQjM7XG5cbi8vIEdyYWRpZW50c1xuJHJlZC1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCByaWdodCwgI0YwMjAyMCwgI0ZCOEY4RiA5MCUsICNGRkI3QjcgOTklKTtcbiRidG4tZ3JleS1ncmFkaWVudDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCByaWdodCwgIzVDNUM1QywgI0E3QTdBNyA5OSUpO1xuXG4vLyBMYXlvdXQgLyBQb3NpdGlvbmluZ1xuJGd1dHRlcjogMTBweDtcblxuLy9TdHlsZXNcbiRkZWZhdWx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcmdyZXk7XG4kdGhpY2tib3JkZXI6IDNweCBzb2xpZCAkYm9yZGVyZ3JleTtcbiRib3hzaGFkb3c6IDBweCA2cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuXG4vLyBFbGVtZW50IFNpemVzXG4kaGVyby1zbWFsbC1taW4taGVpZ2h0LW1vYmlsZTogMjE0cHg7XG4kaGVyby1zbWFsbC1taW4taGVpZ2h0OiAyNjBweDtcbiRoZXJvLW92ZXJ2aWV3LW1pbi1oZWlnaHQtbW9iaWxlOiAxMjBweDtcbiRoZXJvLW92ZXJ2aWV3LW1pbi1oZWlnaHQtdGFibGV0OiAyNjBweDtcbiRmb290ZXItaGVpZ2h0LWRlc2t0b3A6IDkwcHg7XG4iLCIkbW9iaWxlLXdpZHRoOiAyMjBweDtcbiRtb2JpbGUtYWx0LXdpZHRoOiA0MjVweDtcbiR0YWJsZXQtYWx0LXdpZHRoOiA3NjhweDtcbiR0YWJsZXQtd2lkdGg6IDc4MHB4O1xuJHRhYmxldC1tYXg6IDEwMjRweDtcbiRkZXNrdG9wLXdpZHRoOiAxMTU0cHg7XG4kbGFyZ2Utd2lkdGg6IDIwNDhweDtcblxuLy9hbHRlcm5hdGl2ZSBqdXN0IG1vYmlsZSBicmVha3BvaW50IGJlY2F1c2Ugb2Ygd2VpcmQgYnVnXG5AbWl4aW4gbW9iaWxlLW9ubHkge1xuICBAbWVkaWEgKG1heC13aWR0aDogI3skbW9iaWxlLWFsdC13aWR0aH0pIHtcbiAgICBAY29udGVudDsgfSB9XG5cbi8vIGFsdGVybmF0aXZlIGJyZWFrcG9pbnQgYWRkZWQgYXMgYSBsYXRlIHJlcXVlc3Qgb3ZlciB0aGUgc3BlY3NcbkBtaXhpbiBtb2JpbGUtYWx0IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICN7JG1vYmlsZS13aWR0aH0pIGFuZCAobWF4LXdpZHRoOiAjeyR0YWJsZXQtYWx0LXdpZHRoIC0gMXB4fSkge1xuICAgIEBjb250ZW50OyB9IH1cblxuQG1peGluIG1vYmlsZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAjeyRtb2JpbGUtd2lkdGh9KSBhbmQgKG1heC13aWR0aDogI3skdGFibGV0LXdpZHRoIC0gMXB4fSkge1xuICAgIEBjb250ZW50OyB9IH1cblxuLy8gYWx0ZXJuYXRpdmUgYnJlYWtwb2ludCBhZGRlZCBhcyBhIGxhdGUgcmVxdWVzdCBvdmVyIHRoZSBzcGVjc1xuQG1peGluIHRhYmxldC1hbHQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogI3skdGFibGV0LWFsdC13aWR0aH0pIHtcbiAgICBAY29udGVudDsgfSB9XG5cbkBtaXhpbiB0YWJsZXQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogI3skdGFibGV0LXdpZHRofSkge1xuICAgIEBjb250ZW50OyB9IH1cblxuQG1peGluIGRlc2t0b3Age1xuICBAbWVkaWEgKG1pbi13aWR0aDogI3skZGVza3RvcC13aWR0aH0pIHtcbiAgICBAY29udGVudDsgfSB9XG5cbkBtaXhpbiBkZXNrdG9wLWxnIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICN7JGxhcmdlLXdpZHRofSkge1xuICAgIEBjb250ZW50OyB9IH1cbiIsImh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGU6IG51bWVyaWM7IH1cbnVsIHtcbiAgbGlzdC1zdHlsZTogc3F1YXJlOyB9XG5cbi5qcy1pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbmlucHV0W3R5cGU9bnVtYmVyXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbm1haW4ge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmRhcmstdGhlbWUge1xuICBiYWNrZ3JvdW5kOiAkZGFya2dyZXk7IH1cblxuLnJlZCB7XG4gIGNvbG9yOiAkcmVkOyB9XG5cbmE6Zm9jdXMge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyB9XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tVGhpbi5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1UaGluLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1UaGluLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1UaGluLnN2ZyNzdmdGb250TmFtZVwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuICBAZm9udC1mYWNlIHt9XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUxpZ2h0LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1MaWdodC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tTGlnaHQuc3ZnI3N2Z0ZvbnROYW1lXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JvYm90byc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1JdGFsaWMuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUl0YWxpYy5zdmcjc3ZnRm9udE5hbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLy8gTm9ybWFsIFdlaWdodFxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLVJlZ3VsYXIuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tUmVndWxhci5zdmcjc3ZnRm9udE5hbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLU1lZGl1bS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tTWVkaXVtLnN2ZyNzdmdGb250TmFtZVwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vLyBCb2xkIFdlaWdodFxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUJvbGQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQm9sZC5zdmcjc3ZnRm9udE5hbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUJsYWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9yb2JvdG8vUm9ib3RvLUJsYWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvcm9ib3RvL1JvYm90by1CbGFjay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tQmxhY2suc3ZnI3N2Z0ZvbnROYW1lXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi8qQGZvbnQtZmFjZSB7XG4gKlx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICogICAgc3JjOiB1cmwoJy4uL2ZvbnRzL3JvYm90by9Sb2JvdG8tSGVhdnkyLmVvdCcpO1xuICpcdHNyYzogdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUhlYXZ5Mi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAqICAgICAgICAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUhlYXZ5Mi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gKiAgICAgICAgIHVybCgnLi4vZm9udHMvcm9ib3RvL1JvYm90by1IZWF2eTIudHRmJykgIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAqICAgICAgICAgdXJsKCcuLi9mb250cy9yb2JvdG8vUm9ib3RvLUhlYXZ5Mi5zdmcjc3ZnRm9udE5hbWUnKSBmb3JtYXQoJ3N2ZycpO1xuICpcdGZvbnQtd2VpZ2h0OiA5MDA7XG4gKlx0Zm9udC1zdHlsZTogbm9ybWFsO1xuICp9ICovXG4iLCIvKioqKioqIEhFTFBFUlMgKioqKiogKi9cblxuLyogR3JpZCAqL1xuXG4vKiBHUklEIFdJVEhPVVQgR1VUVEVSUyBPTiBUSEUgT1VUU0lERVxuICogICAg4pSPLS0tLS0tLeKUrC0tLeKUrC0tLS0tLS3ilKwtLS3ilKwtLS0tLS0t4pSTXG4gKiAgICB8ICBjb2wgIHwgZyB8ICBjb2wgIHwgZyB8ICBjb2wgIHwgKi9cblxuLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggZm9yIGEgZ3JpZCB3aXRoIG91ciBkZWZhdWx0IGd1dHRlclxuLy8gZS5nLiBncmlkQ29sdW1uKDEwLzIyKSBjYWxjdWxhdGVzIHRoZSB3aWR0aCBmb3IgMTAgY29sdW1ucyBpbiBhIDEvMjIgZ3JpZFxuQG1peGluIGNvbCgkcmF0aW8sICRndXR0ZXI6ICRndXR0ZXIpIHtcbiAgd2lkdGg6IGNhbGMoKDk5Ljk5JSArICN7JGd1dHRlcn0pICogI3skcmF0aW99IC0gI3skZ3V0dGVyfSk7IH1cblxuLyogbXRtc0dyaWQgPSAyMmNvbCBHUklEIFdJVEggT1VUU0lERSBHVVRURVJTXG4gKiDilI8tLS3ilKwtLS0tLS0t4pSsLS0t4pSsLS0tLS0tLeKUrC0tLeKUrC0tLS0tLS3ilKwtLS3ilJNcbiAqIHwgZyB8ICBjb2wgIHwgZyB8ICBjb2wgIHwgZyB8ICBjb2wgIHwgZyB8ICovXG5cbkBtaXhpbiBtdG1zR3JpZCgkY29sTnVtLCAkb2Zmc2V0Q29sczogMCwgJGNlbnRlcmVkOiBmYWxzZSwgJG9mZnNldDogdHJ1ZSkge1xuICBAaWYgJGNlbnRlcmVkID09IHRydWUge1xuICAgICRvZmZzZXRDb2xzOiAoMjIgLSAkY29sTnVtKSAvIDI7XG5cbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4gIEBpZiAkb2Zmc2V0ID09IHRydWUge1xuICAgIEBpbmNsdWRlIG10bXNPZmZzZXQoJG9mZnNldENvbHMgLyAyMik7XG5cbiAgICB3aWR0aDogY2FsYygoOTkuOTklIC0gI3skZ3V0dGVyfSkgKiAjeyRjb2xOdW19IC8yMiAtICN7JGd1dHRlcn0pOyB9IH1cblxuQG1peGluIG10bXNPZmZzZXQoJHJhdGlvKSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKCg5OS45OSUgLSAjeyRndXR0ZXJ9KSAqICN7JHJhdGlvfSArICN7JGd1dHRlcn0pOyB9XG5cbi8qIEFic29sdXRlIENlbnRlcmluZyAqL1xuXG5AbWl4aW4gYWNlbnQoJG1vZGU6IFwiZlwiKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICBAaWYgJG1vZGUgPT0gXCJmXCIge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICBAZWxzZSBpZiAkbW9kZSA9PSBcInZcIiB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpOyB9XG4gIEBlbHNlIGlmICRtb2RlID09IFwiaFwiIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpOyB9XG4gIEBlbHNlIGlmICRtb2RlID09IFwiclwiIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IGF1dG87XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLyogRmxleCBDZW50ZXJpbmcgKi9cblxuQG1peGluIGFsaWduLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi8qIEZsZXggU3BhY2UgQmV0d2VlbiAqL1xuXG5AbWl4aW4gc3BhY2UtYmV0d2VlbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4vKiBDZW50ZXJlZCBNYXggV2lkdGggKi9cblxuQG1peGluIGNlbnRlcmVkTWF4V2lkdGgoJG1heFdpZHRoOiAxNDQwcHgpIHtcbiAgbWF4LXdpZHRoOiAkbWF4V2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi8qIENsZWFyZml4ICovXG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG5cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4vKiBSZW0gQ2FsYyAqL1xuXG5AZnVuY3Rpb24gcmVtKCRzaXplKSB7XG4gICRyZW1TaXplOiAkc2l6ZSAvIDE4cHg7XG5cbiAgQHJldHVybiAjeyRyZW1TaXplfXJlbTsgfVxuXG4vKioqKioqKiBFTEVNRU5UUyAqKioqKiogKi9cblxuLyogQnV0dG9uICovXG5cbkBtaXhpbiBidXR0b24oJGJnOiBcImN0YVwiKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiAxOXB4IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogcmVtKDE2cHgpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXN0cmV0Y2g6IG5vcm1hbDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcblxuICBAaWYgJGJnID09IFwiY3RhXCIge1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtncmV5O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogJHRoaWNrYm9yZGVyO1xuICAgIGJvcmRlci1jb2xvcjogJGRhcmtncmV5O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogJHRoaWNrYm9yZGVyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWdyZXk7XG4gICAgICBib3JkZXItY29sb3I6ICRidG4tZ3JleTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bWdyZXktZGlzYWJsZWQ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogc29saWQgM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9IH1cbiAgQGVsc2UgaWYgJGJnID09IFwidHJhbnNwYXJlbnRcIiB7XG4gICAgbWluLXdpZHRoOiAyMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXI6IHNvbGlkIDNweCAjZmZmZmZmO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgICAgY29sb3I6ICR0eXBlLWRhcmtncmV5O1xuICAgICAgYm9yZGVyOiBzb2xpZCAzcHggcmdiYSg1MSwgNTEsIDUxLCAwKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiB9ICAgICAgLy8gdHJhbnNmb3JtOiBzY2FsZSgxLjEpXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bWdyZXktZGlzYWJsZWQ7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlcjogc29saWQgM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9IH1cbiAgQGVsc2UgaWYgJGJnID09IFwid2hpdGVcIiB7XG4gICAgbWluLXdpZHRoOiAyMjBweDtcbiAgICBjb2xvcjogJHR5cGUtZGFya2dyZXk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXI6ICR0aGlja2JvcmRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN5YW47XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlcjogJHRoaWNrYm9yZGVyO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3lhbjsgfSB9XG4gIEBlbHNlIGlmICRiZyA9PSBcImN0cmxcIiB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAkZGVmYXVsdGJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24tcGx1cy5zdmcpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gfSB9ICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bWdyZXlcbiAgQGVsc2UgaWYgJGJnID09IFwiY2FydFwiIHtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1ncmV5O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24tY2FydC5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNjAlIDYwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlcmdyZXk7IH1cblxuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICB3aWR0aDogMTMwcHg7IH0gfSB9XG4iLCIqIHtcbiAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogJ1JvYm90bycsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICBjb2xvcjogJHR5cGUtZGFya2dyZXk7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuYSB7XG4gIGNvbG9yOiAkbWVkaXVtZ3JleTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRtZWRpdW1ncmV5OyB9IH1cblxucCB7XG4gIG1hcmdpbjogMWVtIDA7IH1cblxucCwgYSwgbGFiZWwsIGJsb2NrcXVvdGUge1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbmg0IHtcbiAgY29sb3I6ICR0eXBlLWRhcmtncmV5O1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb25zdC1zaXplOiByZW0oMjBweCk7IH1cbiIsIi5pbWFnZS12aWV3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIGJvdHRvbTogMjBweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICB6LWluZGV4OiA1OyB9XG5cbiAgJl9fc3RyaXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAmLS1pbWFnZSB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDsgfSB9IH1cblxuXG4uaW1hZ2Utdmlldy5pbWFnZS12aWV3LS1maXhlZC1yYXRpbyB7XG4gIHBhZGRpbmctYm90dG9tOiA2Ni42NjY3JTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi5pbWFnZS12aWV3LS1wcmV2aWV3IC5pbWFnZS12aWV3X19jb250YWluZXIge1xuICBmaWx0ZXI6IGJsdXIoN3B4KTtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoN3B4KTsgfVxuXG4uaW1hZ2Utdmlld19fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC03cHg7XG4gIGxlZnQ6IC03cHg7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMTRweCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxNHB4KTsgfVxuXG4uaW1hZ2Utdmlld19fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmltYWdlLXZpZXctLWNvbnRhaW4gLmltYWdlLXZpZXdfX2NvbnRlbnQge1xuICAtby1vYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi5pbWFnZS12aWV3LS1maXhlZC1yYXRpbyAuaW1hZ2Utdmlld19fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5pbWFnZS12aWV3LS1pbnRyaW5zaWMgLmltYWdlLXZpZXdfX2NvbnRlbnQge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmltYWdlLXZpZXctLWludHJpbnNpYyAuaW1hZ2Utdmlld19fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bzsgfVxuXG4uaW1hZ2Utdmlldy0taW50cmluc2ljLmltYWdlLXZpZXctLWZpeGVkLXJhdGlvIC5pbWFnZS12aWV3X19jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmltYWdlLXZpZXctLW9iamVjdC1maXQtcGYgLmltYWdlLXZpZXdfX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLmltYWdlLXZpZXctLW9iamVjdC1maXQtcGYgLmltYWdlLXZpZXdfX2NvbnRlbnQge1xuICBvcGFjaXR5OiAwO1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDApOyB9XG5cbi5pbWFnZS12aWV3LS1vYmplY3QtZml0LXBmLmltYWdlLXZpZXctLWNvbnRhaW4gLmltYWdlLXZpZXdfX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuIiwiLypcbiAqIENLRWRpdG9yIDUgKHYxMi40LjApIGNvbnRlbnQgc3R5bGVzLlxuICogR2VuZXJhdGVkIG9uIE1vbiwgMjEgT2N0IDIwMTkgMTE6MzQ6NTYgR01ULlxuICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIGNoZWNrIG91dCBodHRwczogKi8vL2NrZWRpdG9yLmNvbS9kb2NzL2NrZWRpdG9yNS9sYXRlc3QvYnVpbGRzL2d1aWRlcy9pbnRlZ3JhdGlvbi9jb250ZW50LXN0eWxlcy5odG1sXG5cbiA6cm9vdCB7XG4gIC0tY2staW1hZ2Utc3R5bGUtc3BhY2luZzoxLjVlbSB7fVxuICAtLWNrLXRvZG8tbGlzdC1jaGVja21hcmstc2l6ZToxNnB4IHt9IH1cblxuLyogY2tlZGl0b3I1LWJhc2ljLXN0eWxlcy90aGVtZS9jb2RlLmNzcyAqL1xuXG4uY2stY29udGVudCB7XG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMCwgMCUsIDc4JSwgMC4zKTtcbiAgICBwYWRkaW5nOiAuMTVlbTtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuICAuaW1hZ2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xuXG4gICAgPiB7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiA1MHB4OyB9XG5cbiAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jYXB0aW9uO1xuICAgICAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgY29sb3I6IGhzbCgwLCAwJSwgMjAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaHNsKDAsIDAlLCA5NyUpO1xuICAgICAgICBwYWRkaW5nOiAuNmVtO1xuICAgICAgICBmb250LXNpemU6IC43NWVtO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogLTFweDsgfSB9XG5cbiAgICAmLmltYWdlX3Jlc2l6ZWQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuXG4gICAgICA+IGZpZ2NhcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9IH1cblxuICAubWVkaWEge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLXdpZHRoOiAxNWVtOyB9XG5cbiAgLnRvZG8tbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAgICAgLnRvZG8tbGlzdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDsgfSB9XG5cbiAgICAudG9kby1saXN0X19sYWJlbCB7XG4gICAgICA+IGlucHV0IHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IHZhcigtLWNrLXRvZG8tbGlzdC1jaGVja21hcmstc2l6ZSk7XG4gICAgICAgIGhlaWdodDogdmFyKC0tY2stdG9kby1saXN0LWNoZWNrbWFyay1zaXplKTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGhzbCgwLCAwJSwgMjAlKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMjUwbXMgZWFzZS1pbi1vdXQgYm94LXNoYWRvdywgMjUwbXMgZWFzZS1pbi1vdXQgYmFja2dyb3VuZCwgMjUwbXMgZWFzZS1pbi1vdXQgYm9yZGVyOyB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBsZWZ0OiBjYWxjKCB2YXIoLS1jay10b2RvLWxpc3QtY2hlY2ttYXJrLXNpemUpIC8gMyApO1xuICAgICAgICAgIHRvcDogY2FsYyggdmFyKC0tY2stdG9kby1saXN0LWNoZWNrbWFyay1zaXplKSAvIDUuMyApO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKCB2YXIoLS1jay10b2RvLWxpc3QtY2hlY2ttYXJrLXNpemUpIC8gNS4zICk7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKCB2YXIoLS1jay10b2RvLWxpc3QtY2hlY2ttYXJrLXNpemUpIC8gMi42ICk7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMCBjYWxjKCB2YXIoLS1jay10b2RvLWxpc3QtY2hlY2ttYXJrLXNpemUpIC8gOCApIGNhbGMoIHZhcigtLWNrLXRvZG8tbGlzdC1jaGVja21hcmstc2l6ZSkgLyA4ICkgMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuICAgICAgICAmW2NoZWNrZWRdIHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogaHNsKDEyNiwgNjQlLCA0MSUpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBoc2woMTI2LCA2NCUsIDQxJSk7IH1cblxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaHNsKDAsIDAlLCAxMDAlKTsgfSB9IH1cblxuICAgICAgLnRvZG8tbGlzdF9fbGFiZWxfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9IH1cblxuICAudGFibGUge1xuICAgIG1hcmdpbjogMWVtIGF1dG87XG4gICAgZGlzcGxheTogdGFibGU7XG5cbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICBib3JkZXI6IDFweCBkb3VibGUgaHNsKDAsIDAlLCA3MCUpO1xuXG4gICAgICB0ZCB7XG4gICAgICAgIG1pbi13aWR0aDogMmVtO1xuICAgICAgICBwYWRkaW5nOiAuNGVtO1xuICAgICAgICBib3JkZXItY29sb3I6IGhzbCgwLCAwJSwgODUlKTsgfVxuXG4gICAgICB0aCB7XG4gICAgICAgIG1pbi13aWR0aDogMmVtO1xuICAgICAgICBwYWRkaW5nOiAuNGVtO1xuICAgICAgICBib3JkZXItY29sb3I6IGhzbCgwLCAwJSwgODUlKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGJhY2tncm91bmQ6IGhzbCgwLCAwJSwgOTglKTsgfSB9IH1cblxuICAucGFnZS1icmVhayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IGRhc2hlZCBoc2woMCwgMCUsIDc3JSk7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbiAgLnBhZ2UtYnJlYWtfX2xhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiAuM2VtIC42ZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBoc2woMCwgMCUsIDc3JSk7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBUYWhvbWEsIFZlcmRhbmEsIFNhbnMtU2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IGhzbCgwLCAwJSwgMjAlKTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggMXB4IGhzbGEoMCwgMCUsIDAlLCAwLjE1KTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbiAgLmltYWdlLXN0eWxlLXNpZGUsIC5pbWFnZS1zdHlsZS1hbGlnbi1sZWZ0LCAuaW1hZ2Utc3R5bGUtYWxpZ24tY2VudGVyLCAuaW1hZ2Utc3R5bGUtYWxpZ24tcmlnaHQge1xuICAgIG1heC13aWR0aDogNTAlOyB9XG5cbiAgLmltYWdlLXN0eWxlLXNpZGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tY2staW1hZ2Utc3R5bGUtc3BhY2luZyk7IH1cblxuICAuaW1hZ2Utc3R5bGUtYWxpZ24tbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jay1pbWFnZS1zdHlsZS1zcGFjaW5nKTsgfVxuXG4gIC5pbWFnZS1zdHlsZS1hbGlnbi1jZW50ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4gIC5pbWFnZS1zdHlsZS1hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1jay1pbWFnZS1zdHlsZS1zcGFjaW5nKTsgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCA1cHggaHNsKDAsIDAlLCA4MCUpOyB9XG5cbiAgJltkaXI9XCJydGxcIl0gYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCA1cHggaHNsKDAsIDAlLCA4MCUpOyB9XG5cbiAgaHIge1xuICAgIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogaHNsKDAsIDAlLCAzNyUpO1xuICAgIG1hcmdpbjogMDsgfSB9XG5cbi8qIGNrZWRpdG9yNS1pbWFnZS90aGVtZS9pbWFnZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWltYWdlL3RoZW1lL2ltYWdlLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtaW1hZ2UvdGhlbWUvaW1hZ2VjYXB0aW9uLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtaW1hZ2UvdGhlbWUvaW1hZ2VyZXNpemUuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1pbWFnZS90aGVtZS9pbWFnZXJlc2l6ZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWltYWdlL3RoZW1lL2ltYWdlcmVzaXplLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtbWVkaWEtZW1iZWQvdGhlbWUvbWVkaWFlbWJlZC5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWxpc3QvdGhlbWUvdG9kb2xpc3QuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1saXN0L3RoZW1lL3RvZG9saXN0LmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtbGlzdC90aGVtZS90b2RvbGlzdC5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWxpc3QvdGhlbWUvdG9kb2xpc3QuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1saXN0L3RoZW1lL3RvZG9saXN0LmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtbGlzdC90aGVtZS90b2RvbGlzdC5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWxpc3QvdGhlbWUvdG9kb2xpc3QuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1saXN0L3RoZW1lL3RvZG9saXN0LmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtbGlzdC90aGVtZS90b2RvbGlzdC5jc3MgKi9cblxuLyogY2tlZGl0b3I1LXRhYmxlL3RoZW1lL3RhYmxlLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtdGFibGUvdGhlbWUvdGFibGUuY3NzICovXG5cbi8qIGNrZWRpdG9yNS10YWJsZS90aGVtZS90YWJsZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LXRhYmxlL3RoZW1lL3RhYmxlLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtcGFnZS1icmVhay90aGVtZS9wYWdlYnJlYWsuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1wYWdlLWJyZWFrL3RoZW1lL3BhZ2VicmVhay5jc3MgKi9cblxuLyogY2tlZGl0b3I1LXBhZ2UtYnJlYWsvdGhlbWUvcGFnZWJyZWFrLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtaW1hZ2UvdGhlbWUvaW1hZ2VzdHlsZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWltYWdlL3RoZW1lL2ltYWdlc3R5bGUuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1pbWFnZS90aGVtZS9pbWFnZXN0eWxlLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtaW1hZ2UvdGhlbWUvaW1hZ2VzdHlsZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWltYWdlL3RoZW1lL2ltYWdlc3R5bGUuY3NzICovXG5cbi8qIGNrZWRpdG9yNS1ibG9jay1xdW90ZS90aGVtZS9ibG9ja3F1b3RlLmNzcyAqL1xuXG4vKiBja2VkaXRvcjUtYmxvY2stcXVvdGUvdGhlbWUvYmxvY2txdW90ZS5jc3MgKi9cblxuLyogY2tlZGl0b3I1LWhvcml6b250YWwtbGluZS90aGVtZS9ob3Jpem9udGFsbGluZS5jc3MgKi9cblxuQG1lZGlhIHByaW50IHtcbiAgLyogY2tlZGl0b3I1LXBhZ2UtYnJlYWsvdGhlbWUvcGFnZWJyZWFrLmNzcyAqL1xuXG4gIC5jay1jb250ZW50IC5wYWdlLWJyZWFrIHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgLyogY2tlZGl0b3I1LXBhZ2UtYnJlYWsvdGhlbWUvcGFnZWJyZWFrLmNzcyAqLyB9XG4iLCJcbi5oZXJvIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQvLyBwYWRkaW5nLXRvcDogNzZweFxuXHRiYWNrZ3JvdW5kOiAkaGVyby1iZztcblx0YmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvcik7XG5cdHotaW5kZXg6IDE7XG5cblx0Jl9fY29udGFpbmVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblx0XHRtYXJnaW46IDAgMjBweCAwIDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDYwcHg7XG5cblx0XHRAaW5jbHVkZSB0YWJsZXQge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0bWFyZ2luOiAwIDQwcHggMCA0MHB4OyB9IH1cblxuXHQmX19jb250ZW50IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHRtYXgtd2lkdGg6IDY0MHB4O1xuXHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0cGFkZGluZy10b3A6IDIwcHg7IH1cblxuXHRcdGgxLCBoMiB7XG5cdFx0XHRjb2xvcjogI2ZmZmZmZjsgfVxuXG5cdFx0aDEge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDI2cHgpO1xuXHRcdFx0QGluY2x1ZGUgdGFibGV0IHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMzJweCk7IH1cblxuXHRcdFx0QGluY2x1ZGUgZGVza3RvcCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDM2cHgpOyB9IH1cblxuXHRcdGgyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDhweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAyMDA7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMnB4KTtcblx0XHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDI2cHgpOyB9XG5cblx0XHRcdEBpbmNsdWRlIGRlc2t0b3Age1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgzMHB4KTsgfSB9IH1cblxuXHQmX19jb250ZW50LWludHJvIHtcblx0XHRjb2xvcjogI2ZmZmZmZjsgfVxuXG5cdCZfX2ltYWdlIHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0bWluLXdpZHRoOiAxMDAlO1xuXHRcdEBpbmNsdWRlIHRhYmxldCB7XG5cdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdG1pbi13aWR0aDogNDAwcHg7XG4gfVx0XHRcdC8vIHBhZGRpbmctdG9wOiA2MHB4XG5cdFx0QGluY2x1ZGUgZGVza3RvcCB7XG5cdFx0XHRtYXgtd2lkdGg6IDY0MHB4OyB9IH0gfVxuIiwiLm5hdmlnYXRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVyby1iZztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIG1vYmlsZS1hbHQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4gICYtLW1lbnUtb3BlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbiAgJl9faGFtYnVyZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuICAgICYuY29sbGFwc2VkIC5uYXZpZ2F0aW9uX19oYW1idXJnZXItYmFyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigwLjc3LDAuMiwwLjA1LDEuMCksIGJhY2tncm91bmQgMC41cyBjdWJpYy1iZXppZXIoMC43NywwLjIsMC4wNSwxLjApLCBvcGFjaXR5IDAuNTVzIGVhc2U7XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZSgwcHgsIDBweCk7IH1cblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgxLCAxKTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpIHRyYW5zbGF0ZSgwcHgsIDBweCk7IH0gfSB9XG5cblxuICAmX19oYW1idXJnZXItYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDMwcHggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzNweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICNjZGNkY2Q7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNHB4IDBweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC43NywwLjIsMC4wNSwxLjApLCBiYWNrZ3JvdW5kIDAuNXMgY3ViaWMtYmV6aWVyKDAuNzcsMC4yLDAuMDUsMS4wKSwgb3BhY2l0eSAwLjU1cyBlYXNlO1xuXG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKC0xcHgsIC0ycHgpO1xuICAgIGJhY2tncm91bmQ6ICMyMzIzMjM7XG5cbiAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICBvcGFjaXR5OiAwOyB9XG5cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgwLjIsIDAuMik7XG4gICAgICBiYWNrZ3JvdW5kOiAkaGVyby1iZztcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW1haW4tY29sb3IpOyB9XG5cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgwLCAtMXB4KTsgfVxuXG5cbiAgICAmLS1kYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrZ3JleSAhaW1wb3J0YW50O1xuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZSgycHgsIC00cHgpOyB9IH0gfVxuXG4gICZfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlcm8tYmc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgei1pbmRleDogMTAwO1xuXG4gICAgQGluY2x1ZGUgbW9iaWxlLWFsdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwdnc7IH0gfVxuXG4gICZfX2Ryb3Bkb3duLWxpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZXJvLWJnO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA4cHggOHB4IDhweCA4cHg7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA4cHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA4cHggIWltcG9ydGFudDtcbiAgICAgIG1pbi13aWR0aDogMTkwcHg7IH0gfVxuXG4gICZfX2Ryb3Bkb3duLWxpc3QtaXRlbSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmc6IDRweCA3cHg7IH1cblxuICAmX19kcm9wZG93bi1saXN0LWl0ZW0tbGluayB7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgY29sb3I6ICR0eXBlLWRhcmtncmV5ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAzcHggIWltcG9ydGFudDsgfVxuXG4gICAgLm5hdmlnYXRpb25fX2Ryb3Bkb3duLWxpc3QtaXRlbS10ZXh0OjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBoZWlnaHQ6IDNweDsgfVxuXG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuXG4gICAgICAubmF2aWdhdGlvbl9fZHJvcGRvd24tbGlzdC1pdGVtLXRleHQ6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyZ3JleTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbjsgfSB9IH1cblxuICAmX19saXN0LWl0ZW0tbGluayB7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB3aWR0aDogMCU7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIG1hcmdpbi10b3A6IDJweDsgfVxuXG4gICAgJjphY3RpdmUsICY6aG92ZXIsICY6Zm9jdXMsICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAvLyBmb250LXdlaWdodDogNjAwXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1pbjsgfSB9XG5cbiAgICAmLS1sb2dpbiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtncmV5O1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgcGFkZGluZzogMTVweCAxN3B4ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICY6YWN0aXZlLCAmOmhvdmVyLCAmOmZvY3VzLCAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrZ3JleSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgICAgIGJveC1zaGFkb3c6ICRib3hzaGFkb3c7XG4gICAgICAgIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0gYm94LXNoYWRvdyBlYXNlLWluOyB9IH0gfSB9XG5cblxuIiwiLm1haW4tY29udGVudCB7XG4gICYtLW1lbnUtb3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9IH1cbiIsIi5jYXB0aW9uLWFuZC1jb250ZW50LWxheW91dCB7XG4gIHBhZGRpbmc6IDgwcHggMDtcblxuICBAaW5jbHVkZSB0YWJsZXQge1xuICAgIHBhZGRpbmc6IDgwcHggMDsgfVxuXG5cbiAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgcGFkZGluZzogODBweCAwOyB9XG5cblxuICAmX19jYXB0aW9uLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuIH0gfSAgICAgIC8vICAgICBwYWRkaW5nLXRvcDogNDBweDtcblxuICAmLS1maWxsc2NyZWVuIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVyby1zbWFsbC1taW4taGVpZ2h0fSAtIDM2MHB4KTtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gI3skaGVyby1zbWFsbC1taW4taGVpZ2h0fSAtICN7JGZvb3Rlci1oZWlnaHQtZGVza3RvcH0pO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9IH0gfVxuXG4ucGFuZWwtY2FwdGlvbiB7XG4gIG1hcmdpbjogMCAyMHB4IDI1cHggMjBweDtcbiAgLy8gdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZVxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJl9fdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIC8vIGJvcmRlci1ib3R0b206ICR0aGlja2JvcmRlclxuICAgIGNvbG9yOiAkdHlwZS1kYXJrZ3JleTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiByZW0oMjFweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAmLS1zdWJoZWFkbGluZSB7XG4gICAgICBmb250LXNpemU6IHJlbSgxOXB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3AtbGcge1xuICAgICAgZm9udC1zaXplOiByZW0oMjRweCk7IH1cblxuXG4gICAgJi0tZGFyay10aGVtZSB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiB9IH0gICAgICAvLyBib3JkZXItYm90dG9tOiAzcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpXG5cbiAgJl9fY2hlY2tvdXQtc3RlcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgQGluY2x1ZGUgZGVza3RvcC1sZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4iLCIubG9nby1yZWZlcmVuY2VzIHtcbiAgJl9faXRlbSB7XG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMjBweDsgfSB9IH1cbiIsIi5tZXNzZW5nZXItc3RyaXAge1xuICBwYWRkaW5nOiAyMHB4IDBweCAyMHB4IDBweDtcbiAgJl9faXRlbSB7XG4gICAgQGluY2x1ZGUgYWxpZ24tY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5pbWFnZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IDEyMHB4OyB9XG5cbiAgICAudGV4dCBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfSB9XG4iLCIucXVvdGUge1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gICZfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlcm8tYmc7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxOyB9XG5cbiAgJl9fbG9nbyB7XG4gICAgbWF4LXdpZHRoOiAxNDBweDsgfVxuXG4gICZfX3RleHQge1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgZm9udC1zaXplOiByZW0oMThweCk7IH0gfVxuXG4gICZfX2F1dGhvciB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH0gfVxuIiwiLmN0YS1mb290ZXIge1xuICBAaW5jbHVkZSBhbGlnbi1jZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRoZXJvLWJnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgcGFkZGluZzogMnZoIDIwcHg7XG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgcGFkZGluZzogMnZoIDQwcHg7IH1cblxuICAmX19oZWFkbGluZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogcmVtKDMycHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBmb250LXNpemU6IHJlbSgzOHB4KTsgfSB9XG5cbiAgJl9fc3ViaGVhZGxpbmUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IHJlbSgyMnB4KTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIG1hcmdpbjogMjBweCAwIDMwcHggMDtcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgZm9udC1zaXplOiByZW0oMzJweCk7XG4gICAgICBtYXJnaW46IDEwcHggMCA0MHB4IDA7IH0gfSB9XG4iLCIuZm9vdGVyIHtcbiAgcGFkZGluZzogNDBweCAwIDA7XG4gIGJhY2tncm91bmQ6ICRkYXJrZ3JleTtcblxuICAmX19oZWFkZXIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICBmb250LXNpemU6IHJlbSgyMnB4KTsgfVxuXG4gICZfX2xpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuICAmX19saW5rIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4gICAgJi0tY3JlZGl0cyB7XG4gICAgICBmb250LXNpemU6IHJlbSgxMnB4KTsgfSB9XG5cbiAgJl9fc29jaWFsLWxpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gfSAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kXG5cbiAgJl9fc29jaWFsLWxpbmtzLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBmb250LXNpemU6IHJlbSgyMHB4KTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4gICZfX2NvbXBhbnktbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBAaW5jbHVkZSBtb2JpbGUtb25seSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuXG4gICZfX2NvbXBhbnktbGlua3MtaXRlbSB7XG4gICAgcGFkZGluZzogOHB4IDIwcHggMTJweCAwO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7IH1cbiAgICAmLS1tYWluIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMzBweDsgfSB9IH0gfVxuIiwiLmdyaWQtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDQwcHg7XG5cbiAgJi0tMS1jb2wge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDEwMCUsIDgwMHB4KSk7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcblxuICAgIC5ncmlkLWNvbnRhaW5lcl9faXRlbSB7XG4gICAgICBwYWRkaW5nOiAwcHggMHB4O1xuXG4gICAgICBAaW5jbHVkZSBtb2JpbGUge1xuICAgICAgICBwYWRkaW5nOiAwcHggMjBweDsgfSB9IH1cblxuICAmLS0yLWNvbCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoNTAwcHgsIDFmcikpO1xuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7IH1cbiB9ICAgIC8vIGdhcDogMXJlbVxuICAmLS0zLWNvbCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMzIwcHgsIDFmcikpO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bzsgfVxuXG4gICYtLTQtY29sIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNzBweCwgMWZyKSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvOyB9XG5cbiAgJl9faXRlbSB7XG4gICAgcGFkZGluZzogMHB4IDIwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDB2dztcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBwYWRkaW5nOiAwcHggNDBweDsgfVxuXG4gICAgJi0tcGFkZGluZy10YiB7XG4gICAgICBwYWRkaW5nOiAwcHggMjBweCA0MHB4O1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgLy8gZ3JpZC1yb3c6IDFcbiAgICAgICAgcGFkZGluZzogMCAyMHB4OyB9IH1cblxuICAgICYtLTItY29sLXN0YXJ0IHtcbiAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xuICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAzOyB9XG5cbiAgICAmLS1ib3R0b20ge1xuICAgICAgYWxpZ24tc2VsZjogZW5kOyB9XG5cbiAgICAmLS1jZW50ZXIge1xuICAgICAgcGxhY2Utc2VsZjogY2VudGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAmLS1mdWxsLXdpZHRoLWZsZXgge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICAgIC8vIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDQ7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfSB9XG5cbiAgJl9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgcGFkZGluZzogMCAwO1xuICAgIHBsYWNlLXNlbGY6IGNlbnRlcjtcbiAgICBpbWcge1xuICAgICAgbWluLXdpZHRoOiAxMDAlOyB9XG4gICAgJi0tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyOyB9IH1cblxuICAgICYtLWxlZnQge1xuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxOyB9IH0gfSB9XG4iLCIuaXdjYy1iYWNrZ3JvdW5kIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjYpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICB6LWluZGV4OiA5OTk5OTk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLml3Y2Mtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNjBlbTtcbiAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4uaXdjYy13cmFwcGVyLWlubmVyIHtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5pd2NjLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uaXdjYy1kZXRhaWwge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4uaXdjYy1oZWFkbGluZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfSB9XG5cblxuLml3Y2Mtc2hvdy1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwIDAgMWVtIDA7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9IH1cblxuXG5cbi5pd2NjLXNhdmUtc2VsZWN0aW9uLFxuLml3Y2MtYWNjZXB0LWFsbCB7XG4gICAgLy8gdHJhbnNpdGlvbjogMjAwbXMgZWFzZSBhbGxcbiAgICAvLyBiYWNrZ3JvdW5kOiBncmVlblxuICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkIGdyZWVuXG4gICAgLy8gY29sb3I6ICNmZmZcbiAgICAvLyBwYWRkaW5nOiAuNWVtIDJlbVxuICAgIC8vIGJvcmRlci1yYWRpdXM6IC4yZW1cbiAgICAvLyBmb250LXdlaWdodDogYm9sZFxuICAgIC8vIHRleHQtYWxpZ246IGNlbnRlclxuICAgIC8vIG1hcmdpbjogLjVlbSAwXG4gICAgLy8gZGlzcGxheTogYmxvY2tcbiAgICAvLyAmOmhvdmVyXG4gICAgLy8gICAgIGJhY2tncm91bmQ6ICMwMDQwMDBcbiAgICAvLyAgICAgYm9yZGVyLWNvbG9yOiAjMDA0MDAwXG4gICAgLy8gICAgIGNvbG9yOiAjZmZmXG4gfSAgICAvLyAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lXG5cblxuLml3Y2Mtc2F2ZS1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAzcHggc29saWQgJG1lZGl1bWdyZXkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGRhcmtncmV5ICFpbXBvcnRhbnQ7XG4gICAgLy8gJjpob3ZlclxuICAgIC8vICAgICBiYWNrZ3JvdW5kOiAjNjY2XG4gICAgLy8gICAgIGJvcmRlci1jb2xvcjogIzY2NlxuIH0gICAgLy8gICAgIGNvbG9yOiAjZmZmXG5cblxuLml3Y2Mtc2l0ZWxpbmtzIHtcbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IC41ZW0gLjVlbSAuNWVtIDA7XG4gICAgICAgIGNvbG9yOiAjOTk5O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICM0MDQwNDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfSB9XG5cblxuXG4uaXdjYy1zYXZlLWFuZC1jbG9zZSB7XG4gICAgY29sb3I6IGdyZWVuO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwNDAwMDsgfSB9XG5cblxuLml3Y2MtY2xvc2UtYm94IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC41ZW07XG4gICAgdG9wOiAuNWVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjNDA0MDQwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfVxuXG5cbi5pd2NjLWNvb2tpZWdyb3VwcyB7XG4gICAgcGFkZGluZzogMWVtIDA7IH1cblxuLml3Y2MtY29va2llZ3JvdXAtY2hlY2tib3gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDFlbSAwO1xuICAgICYucHJldHR5IC5zdGF0ZSBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4gICAgJi5wcmV0dHkucC1kZWZhdWx0IGlucHV0OmNoZWNrZWQgfiAuc3RhdGUgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG1lZGl1bWdyZXk7IH1cblxuICAgICYucHJldHR5LnAtZGVmYXVsdCBpbnB1dDpjaGVja2VkIH4gLnN0YXRlIGxhYmVsOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW1ncmV5ICFpbXBvcnRhbnQ7IH1cblxuICAgICYucHJldHR5LnAtbG9ja2VkIHtcbiAgICAgICAgb3BhY2l0eTogLjc1OyB9IH1cblxuXG4uaXdjYy1jb29raWVncm91cCB7XG4gICAgJiArIC5pd2NjLWNvb2tpZWdyb3VwLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtOyB9IH1cblxuXG4uaXdjYy1jb29raWVncm91cC10aXRsZSB7fVxuXG5cbi5pd2NjLWNvb2tpZSB7XG4gICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICM5OTk7XG4gICAgcGFkZGluZzogLjVlbSAuNWVtIC41ZW0gMWVtO1xuICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuXG4uaXdjYy1idXR0b25zIHt9XG5cbi5wcmV0dHkucC1pY29uIC5zdGF0ZSAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjE1ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xcyBlYXNlOyB9XG5cbi5wcmV0dHkucC1pY29uIC5zdGF0ZSBsYWJlbDpiZWZvcmUge1xuICAgIG1hcmdpbi10b3A6IC0uMWVtOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzNWVtKSB7XG4gICAgLml3Y2MtY29va2llZ3JvdXBzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nLXRvcDogMmVtOyB9XG5cbiAgICAuaXdjYy1jb29raWVncm91cC1jaGVja2JveCB7XG4gICAgICAgIG1hcmdpbjogMCAyZW0gMCAwOyB9XG5cbiAgICAuaXdjYy1zaG93LWRldGFpbHMge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcGFkZGluZzogMWVtIDJlbSAyZW0gMDsgfVxuXG4gICAgLml3Y2MtYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuICAgIC5pd2NjLXNpdGVsaW5rcyB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46IC41ZW0gMCAuNWVtIDFlbTsgfSB9XG5cblxuICAgIC5pd2NjLXNhdmUtc2VsZWN0aW9uLFxuICAgIC5pd2NjLWFjY2VwdC1hbGwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgLjVlbTsgfSB9XG5cblxuQG1lZGlhIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgICAuaXdjYy13cmFwcGVyLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMmVtOyB9XG5cbiAgICAuaXdjYy1idXR0b25zLXNpdGVsaW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbiAgICAuaXdjYy1jbG9zZS1ib3gge1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cblxuXG4iLCIuYnV0dG9uIHtcbiAgJi0tY3RhIHtcbiAgICBAaW5jbHVkZSBidXR0b24oXCJjdGFcIik7IH1cblxuICAmLS1jdHJsIHtcbiAgICBAaW5jbHVkZSBidXR0b24oXCJjdHJsXCIpOyB9XG5cbiAgJi0tY2FydCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKFwiY2FydFwiKTsgfVxuXG4gICYtLXdoaXRlIHtcbiAgICBAaW5jbHVkZSBidXR0b24oXCJ3aGl0ZVwiKTsgfVxuXG4gICYtLXRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBidXR0b24oXCJ0cmFuc3BhcmVudFwiKTsgfSB9XG4iLCIuYnV0dG9uLWdyb3VwIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmLS1uYXJyb3cge1xuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBAaW5jbHVkZSBjZW50ZXJlZE1heFdpZHRoKDYyMHB4KTsgfVxuXG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIEBpbmNsdWRlIGNlbnRlcmVkTWF4V2lkdGgoNjQwcHgpOyB9IH1cblxuICAmX19idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiAyMjBweDsgfSB9XG5cbiAgJl9fYnRuLS1sZWZ0IHtcbiAgICBtYXJnaW46IDIwcHggYXV0byAwcHggYXV0bztcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDBweCAyMHB4IDEwcHggMHB4OyB9IH1cblxuICAmX19idG4tLXJpZ2h0IHtcbiAgICBtYXJnaW46IDIwcHggYXV0byAwcHggYXV0bztcbiAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAwcHggMjBweCAxMHB4IDBweDsgfSB9XG5cbiAgJl9fYnRuLS1jZW50ZXIge1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4gICZfX2J0bi0tcHJldmlvdXMge1xuICAgIEBpbmNsdWRlIG1vYmlsZSB7XG4gICAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gICAgICB3aWR0aDogMTE1cHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBvcmRlcjogMjtcblxuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6ICR0eXBlLWRhcmtncmV5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBhY2VudCh2KTtcblxuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgICAgIC8vdG9wOiAwXG4gICAgICAgIGxlZnQ6IC0wLjJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uLWFycm93LWxlZnQuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9IH0gfVxuXG4gICZfX2J1dHRvbi0tbmV4dCB7XG4gICAgQGluY2x1ZGUgbW9iaWxlIHtcbiAgICAgIG9yZGVyOiAxOyB9IH1cblxuICBAaW5jbHVkZSBtb2JpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47IH0gfVxuIiwiLmlubGluZSB7XG4gICYtY29udGVudCB7XG4gICAgJi1wYW5lbC1sYXlvdXQge1xuICAgICAgQGluY2x1ZGUgY2VudGVyZWRNYXhXaWR0aDtcblxuICAgICAgJl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICAgICAgYm94LWZsZXg6IDA7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtdG1zR3JpZCgxOCwgJGNlbnRlcmVkOiB0cnVlKTsgfSB9XG5cbiAgICAgICYtLWVycm9yIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuICAgICYtdGVhc2VyLWltYWdlLWxheW91dCB7XG4gICAgICBAaW5jbHVkZSBjZW50ZXJlZE1heFdpZHRoOyB9XG5cbiAgICAmX19jb250ZW50LWl0ZW0ge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICBtYXJnaW46IDAgMjBweDtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgYm94LWZsZXg6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbXRtc0dyaWQoMTgsICRjZW50ZXJlZDogdHJ1ZSk7IH1cblxuXG4gICAgICAmLS1uYXJyb3cge1xuICAgICAgICBAaW5jbHVkZSB0YWJsZXQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgQGluY2x1ZGUgY2VudGVyZWRNYXhXaWR0aCg2MjBweCk7IH1cblxuXG4gICAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcmVkTWF4V2lkdGgoNjQwcHgpOyB9IH1cblxuICAgICAgJi0tZXJyb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRyZWQ7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGFuaW1hdGlvbjogYm91bmNlIC42cyBlYXNlLWluLW91dCBmb3J3YXJkczsgfSB9IH1cblxuICAmLWhlYWRpbmcge1xuICAgICYtLWxldmVsLTEge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDIweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICR0eXBlLWRhcmtncmV5O1xuICAgICAgZm9udC1zaXplOiByZW0oMjFweCk7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICBAaW5jbHVkZSBkZXNrdG9wLWxnIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjRweCk7IH0gfSB9XG5cbiAgJi1wYXJhZ3JhcGgge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAkdHlwZS1kYXJrZ3JleTtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3AtbGcge1xuICAgICAgZm9udC1zaXplOiByZW0oMThweCk7IH1cblxuXG4gICAgJl9fbGluayB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkbWVkaXVtZ3JleTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH0gfVxuXG4gICAgJi0tY2VudGVyZWQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgICAmLS1lbXBoYXNpemVkIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuICAgICYtLWRhcmstdGhlbWUge1xuICAgICAgY29sb3I6ICNmZmY7IH0gfVxuXG4gICYtaW1hZ2Uge1xuICAgIG1hcmdpbjogMjBweCBhdXRvOyB9XG5cbiAgJi1xdW90ZSB7XG4gICAgbWFyZ2luOiBhdXRvIGF1dG8gMjBweCBhdXRvO1xuXG4gICAgJl9fdGV4dCB7XG4gICAgICBjb2xvcjogJHR5cGUtZGFya2dyZXk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDI0cHgpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgQGluY2x1ZGUgZGVza3RvcC1sZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDMycHgpOyB9IH1cblxuICAgICZfX2F1dGhvciB7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBjb2xvcjogJG1lZGl1bWdyZXk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiByZW0oMTMuNXB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbiAgJi1saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6ICR0eXBlLWRhcmtncmV5O1xuXG4gICAgJl9faXRlbSB7XG4gICAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG5cbiAgICAgIEBpbmNsdWRlIGRlc2t0b3AtbGcge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOHB4KTsgfSB9XG5cbiAgICAmLS1kYXJrLXRoZW1lIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9IH0gfVxuXG4uaW1hZ2UtY2FwdGlvbiB7XG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IHJlbSgxMnB4KTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiAkdHlwZS1kYXJrZ3JleTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiAgJl9fY29weXJpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHJlbSgxMHB4KTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGNvbG9yOiAkbWVkaXVtZ3JleTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9IH1cbiIsIi5mb3JtIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJl9fdGV4dC1wYW5lbCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbiAgJl9fbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBmb250LXNpemU6IHJlbSgxNnB4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogJGRhcmtncmV5O1xuXG4gICAgJi0tYm94ZWQge1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGJvcmRlcjogJGRlZmF1bHRib3JkZXI7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiAgICAmLS1kYXJrLXRoZW1lIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRncmV5OyB9IH1cblxuICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDsgfVxuXG5cbiAgICAmLS1zdGF5LXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTsgfSB9XG5cbiAgICAmLS1uby1tYXJnaW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG5cbiAgJl9faW5wdXQtZmllbGQtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIC8vICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMwMHB4O1xuXG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuXG4gICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICB3aWR0aDogMzEwcHg7IH1cblxuXG4gICAgJi0tZnVsbC13aWR0aCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cblxuICAgICYtLXN1Ym1pdCB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cblxuICAmX19pbnB1dC1maWVsZCB7XG4gICAgYm9yZGVyOiAkZGVmYXVsdGJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tOiAkZGVmYXVsdGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgZm9udC1zaXplOiByZW0oMThweCk7XG4gICAgcGFkZGluZzogcmVtKDEzcHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYtLXRleHRhcmVhIHtcbiAgICAgIHJlc2l6ZTogbm9uZTsgfVxuXG4gICAgJi0tcmFkaW8sXG4gICAgJi0tY2hlY2tib3gge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAmOmJlZm9yZSB7fVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfSB9IH1cblxuICAgICYtLWZ1bGwtd2lkdGgge1xuICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuXG4gICAgJi0tbm8tYm9yZGVyIHtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuXG4gICAgJi0tc3R5bGVkIHtcbiAgICAgIC8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDBweCA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4gICAgJi0tYm94ZWQge1xuICAgICAgLy8gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICBib3JkZXI6ICRkZWZhdWx0Ym9yZGVyOyB9XG5cbiAgICAmLS1jZW50ZXJlZCB7XG4gICAgICBAaW5jbHVkZSBhbGlnbi1jZW50ZXI7IH0gfVxuXG4gICZfX2lucHV0LWZpZWxkLWxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IHJlbSgxMy41cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM4YTkwOWE7XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICBjb2xvcjogJGRhcmtncmV5OyB9XG5cbiAgICAmLS1pbmxpbmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICAgIGNvbG9yOiAkZGFya2dyZXk7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiByZW0oMTZweCk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuXG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEzcHg7IH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAtMzVweDtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbWFyZ2luOiAtMTJweCAwIDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7IH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGxlZnQ6IC0yOHB4O1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBtYXJnaW46IC01cHggMCAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFya2dyZXk7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1pbi1vdXQ7IH1cblxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbiAgICAmLS1zdGF5LXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNnB4KTsgfSB9XG5cbiAgICAmLS1yb3VuZGVkIHtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfSB9XG5cbiAgICAmLS1kYXJrLXRoZW1lIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH0gfSB9XG5cblxuICAmX19idXR0b24tZmllbGQtd3JhcHBlciB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBAaW5jbHVkZSBjbGVhcmZpeDsgfVxuXG4gICZfX2lucHV0LWZpZWxkLXNwbGl0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLS1uYXJyb3cge1xuICAgICAgd2lkdGg6IDEwMHB4OyB9XG5cbiAgICAmLS13aWRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMTBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgICAgd2lkdGg6IDE5MHB4OyB9XG5cblxuICAgICAgQGluY2x1ZGUgZGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAyMDBweDsgfSB9IH1cblxuICAmX19pbnB1dC1maWVsZC1tZXNzYWdlIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IHJlbSgxMy41cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM4YTkwOWE7XG4gICAgJi0td2hpdGUge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAmLS1jZW50ZXJlZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4gICAgJi0tZGFyay10aGVtZSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfSB9XG5cbiAgJl9faW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgICAmLS1jaGVja2JveCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgJi0tcmFkaW8ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbiAgJl9fc3VibWl0IHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGluY2x1ZGUgY2VudGVyZWRNYXhXaWR0aCgyMjBweCk7IH0gfSB9XG5cbi5wbGFjZWhvbGRlci1vcHRpb24ge1xuICAuZHJvcGRvd25fX3RleHQge1xuICAgIGNvbG9yOiAjY2RjZWNmOyB9IH1cblxuLmFyZWFDb2RlIHtcbiAgLmRyb3Bkb3duX190ZXh0IHtcbiAgICBwYWRkaW5nOiAxM3B4IDVweCAxM3B4IDE1cHg7IH0gfVxuXG4uYWxlcnQtZGFuZ2VyLCAuYWxlcnQge1xuICBib3JkZXItcmFkaXVzOiA4cHggIWltcG9ydGFudDsgfVxuXG4vKiBGaWxlIHVwbG9hZGVyICovXG5cbi5pbnB1dGZpbGUge1xuICB3aWR0aDogMC4xcHg7XG4gIGhlaWdodDogMC4xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG5cbiAgJiArIGxhYmVsIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvOyB9IH1cblxuICAmOmZvY3VzICsgbGFiZWwsXG4gICYuaGFzLWZvY3VzICsgbGFiZWwge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgIzAwMDtcbiAgICBvdXRsaW5lOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3IgYXV0byA1cHg7IH1cblxuICAmICsgbGFiZWwgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjsgfVxuXG4gICYgKyBsYWJlbCB7XG4gICAgY29sb3I6ICNjZGNlY2Y7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBib3JkZXI6ICRkZWZhdWx0Ym9yZGVyO1xuICAgIHBhZGRpbmc6IDA7IH1cblxuICAmICsgbGFiZWwgc3BhbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICAgIHBhZGRpbmc6IDEwcHggMTNweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgQGluY2x1ZGUgdGFibGV0IHtcbiAgICAgIHdpZHRoOiAzNjBweDsgfVxuXG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHdpZHRoOiAzODBweDsgfSB9XG5cbiAgJiArIGxhYmVsIHN0cm9uZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDlweCAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkYm9yZGVyZ3JleTtcbiAgICBib3JkZXItbGVmdDogJHRoaWNrYm9yZGVyOyB9XG5cbiAgJl9fdXBsb2FkLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfSB9XG4iLCIudGNhIHtcbiAgcGFkZGluZzogMjBweDtcblxuICAmX19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDM1cHg7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXgtd2lkdGg6IDY4MHB4OyB9IH1cblxuICAmX190ZXh0LFxuICAmX19sYWJlbCB7XG4gICAgZm9udC1zaXplOiByZW0oMTZweCk7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbiAgJl9fYnV0dG9uLWdyb3VwIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4gIEBpbmNsdWRlIHRhYmxldCB7XG4gICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgcGFkZGluZzogMCA0NXB4O1xuICAgIG1pbi13aWR0aDogNjkwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDMwcHg7IH1cblxuXG4gIEBpbmNsdWRlIGRlc2t0b3Age1xuICAgIEBpbmNsdWRlIG10bXNHcmlkKDE2LCAkY2VudGVyZWQ6IHRydWUpO1xuXG4gICAgbWFyZ2luOiBhdXRvIGF1dG8gNTBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuIiwiQGtleWZyYW1lcyBib3VuY2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwJSk7IH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpO1xuICAgIG9wYWNpdHk6IDE7IH1cblxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSk7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQ0FBLHNFQUFzRTtBQUV0RTs7O21CQUdtQjtBQUVuQixBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxVQUFVO0VBR3ZCLG9CQUFvQixFQUFFLElBQUk7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 */
