/*! Baseguide v1.9.0 | MIT License | http://basegui.de */

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}

html {
  box-sizing: border-box;
}

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

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

audio {
  max-width: 100%;
}

img {
  width: auto;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

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

optgroup {
  font-weight: bold;
}

fieldset {
  min-width: 0;
  padding: 0;
  border: 0;
}

address {
  font-style: inherit;
}

pre {
  overflow: auto;
}

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

blockquote,
figure,
fieldset {
  margin: 0;
}

address,
blockquote,
table,
figure,
form,
fieldset,
legend,
pre,
dl,
ul,
ol,
hr,
p {
  margin-top: 0;
  margin-bottom: 1.5em;
}

nav > ul,
nav > ol,
li > ul,
li > ol {
  margin-bottom: 0;
}

body {
  font-family: "Roboto", sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.3;
  color: #424242;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 0.8em;
  margin-bottom: 0.4em;
  font-family: "Titillium Web", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  color: inherit;
}

h1:first-child,
.h1:first-child,
h2:first-child,
.h2:first-child,
h3:first-child,
.h3:first-child,
h4:first-child,
.h4:first-child,
h5:first-child,
.h5:first-child,
h6:first-child,
.h6:first-child {
  margin-top: 0;
}

h1,
.h1 {
  font-size: 2.53605906em;
}

h2,
.h2 {
  font-size: 2.20526875em;
}

h3,
.h3 {
  font-size: 1.917625em;
}

h4,
.h4 {
  font-size: 1.6675em;
}

h5,
.h5 {
  font-size: 1.45em;
}

h6,
.h6 {
  font-size: 1.26086957em;
}

small,
.small {
  font-size: 80%;
}

hr {
  border: 0;
  border-top: 1px solid #c2c1c1;
}

ul,
ol {
  padding-left: 2.5em;
}

a {
  color: #0066cc;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #01B1FA;
  text-decoration: underline;
}

html,
button,
input {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (min-resolution: 144dpi), (min-resolution: 1.5dppx) {
  html,
  button,
  input {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
  }
}

label {
  display: inline-block;
  max-width: 100%;
  padding-bottom: 0.375em;
}

.label-inline {
  margin-top: 1px;
  padding-top: 0.375em;
}

.form-group {
  margin-bottom: 1em;
}

input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
textarea,
select {
  display: block;
  width: 100%;
  height: 2.375em;
  border: 1px solid #b6b6b6;
  border-radius: 0;
  padding: 0.375em 0.75em;
  background-clip: padding-box;
  background-color: #fff;
  color: #424242;
  transition: border-color 0.15s ease-out;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus {
  border-color: #838383;
  outline: 0;
}

input[type="email"][disabled],
input[type="number"][disabled],
input[type="password"][disabled],
input[type="search"][disabled],
input[type="tel"][disabled],
input[type="text"][disabled],
input[type="url"][disabled],
textarea[disabled],
select[disabled] {
  border-color: #ccc;
  background-color: #eee;
  color: #555;
  cursor: not-allowed;
}

select {
  overflow-x: hidden;
}

select[multiple],
select[size] {
  height: auto;
}

textarea {
  height: auto;
  resize: vertical;
}

.checkbox,
.radio {
  line-height: 1.45;
}

input[type="radio"],
input[type="checkbox"] {
  position: absolute;
  margin-top: 0.25em;
  line-height: normal;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
  padding: 0;
  padding-left: 20px;
  font-weight: inherit;
  cursor: pointer;
}

input[type="radio"][disabled] + label,
input[type="checkbox"][disabled] + label {
  color: #555;
  cursor: not-allowed;
}

input[type="file"] {
  display: block;
}

[placeholder].placeholder {
  color: #828282;
}

[placeholder]:-ms-input-placeholder {
  color: #828282;
  opacity: 1;
}

[placeholder]::placeholder {
  color: #828282;
  opacity: 1;
}

.checkbox input[type="checkbox"],
.radio input[type="radio"] {
  opacity: 0;
}

.checkbox input[type="checkbox"] + label,
.checkbox input[type="checkbox"] + label::after,
.radio input[type="radio"] + label,
.radio input[type="radio"] + label::after {
  position: relative;
  padding-left: 1.4em;
}

.checkbox input[type="checkbox"] + label::before,
.radio input[type="radio"] + label::before {
  content: '';
  position: absolute;
  top: 0.1875em;
  left: 0;
  width: 1em;
  height: 1em;
  border: 1px solid #b6b6b6;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center center;
}

.checkbox input[type="checkbox"] + label:hover::before,
.checkbox input[type="checkbox"]:focus + label::before,
.radio input[type="radio"] + label:hover::before,
.radio input[type="radio"]:focus + label::before {
  border-color: #838383;
}

.checkbox input[type="checkbox"] + label:active::before,
.radio input[type="radio"] + label:active::before {
  background-color: #e6e5e5;
}

.checkbox input[type="checkbox"][disabled] + label::before,
.radio input[type="radio"][disabled] + label::before {
  border-color: #ccc;
  background-color: #eee;
}

.radio input[type="radio"] + label::before {
  border-radius: 1em;
}

.radio input[type="radio"]:checked + label::before {
  /* autoprefixer: off */
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAB1SURBVChTYyAEGKE0i6KiYjOQjoFwGZZwcnK2Xrt27QsziAeUbGVkZKwAYj4otvnz5w/b+/fvdzOB1TMw+EBpOPj//787iIYpwAnACoBG7gDzUMFeEAF2g6Sk5HGQnUBj5YDcT0A8D+jI2tevX/8CyeMBDAwAQ4wgZq0O/WQAAAAASUVORK5CYII=");
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath fill='%23333' d='M4 1C2.3 1 1 2.3 1 4s1.3 3 3 3 3-1.3 3-3S5.7 1 4 1z'/%3E%3C/svg%3E"), linear-gradient(transparent, transparent);
}

.checkbox input[type="checkbox"]:checked + label::before {
  /* autoprefixer: off */
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABzSURBVChTYyAEGKE0CjA2Ntb4////dGZm5khmqBgcQCX3MzIy6gBpBkZk1f/+/ROASkoA6TW8vLyRTCBJoIDD379/96NLHjx48A8TSCdQ4AZQQgNdEmQl2JGmpqYSIBOAzCvIkigA6BYRe3t7FigXChgYAGONRUtL5Ld6AAAAAElFTkSuQmCC");
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath fill='%23333' d='M6.4 1L5.7 1.7 2.9 4.5 2.1 3.7 1.4 3 0 4.4l0.7 0.7 1.5 1.5 0.7 0.7 0.7-0.7 3.5-3.5 0.7-0.7L6.4 1 6.4 1z'/%3E%3C/svg%3E"), linear-gradient(transparent, transparent);
}

.select {
  position: relative;
}

.select select {
  padding-right: 2em;
  padding-right: 0.75em \9;
  -moz-appearance: none;
       appearance: none;
}

.select select::-ms-expand {
  display: none;
}

.select select:focus::-ms-value {
  background: transparent;
  color: #424242;
}

.select::after {
  /* autoprefixer: off */
  content: '';
  pointer-events: none;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0.75em;
  width: 12px;
  height: 2.375em;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAGCAYAAAD37n+BAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAABlSURBVChTYzQyMqpnZGRsYCAC/P//v4H5+fPnByUlJRmAmhyg4lgBSPG5c+camUEcQppgikFssAYQwKUJWTEIwDWAAEiTlJSUAJBpAeIDFRcCFXeC2HiBsbFxPzAwCqBcJMDAAAD1cjECKulnugAAAABJRU5ErkJggg==");
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='6' viewBox='0 0 12 6'%3E%3Cpath fill='%23333' d='M0 0l6 6 6-6h-12z'/%3E%3C/svg%3E"), linear-gradient(transparent, transparent);
  display: none \9;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .select::after {
    display: block;
  }

  .select select {
    padding-right: 2em;
  }
}

.btn {
  display: inline-block;
  vertical-align: middle;
  padding: 0.375em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  background-color: #0066cc;
  color: #fff;
  transition: background-color 0.15s ease-out, color 0.15s ease-out;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.btn:hover,
.btn:focus {
  outline: 0;
  text-decoration: none;
  background-color: #004d99;
  color: #fff;
}

.btn:active {
  background-color: #004d99;
  color: #fff;
}

.btn.disabled,
.btn[disabled] {
  opacity: 0.65;
  cursor: default;
  pointer-events: none;
}

.table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.table th,
.table td {
  padding: 0.4em 0.6em;
  border-bottom: 1px solid #b6b6b6;
  vertical-align: top;
}

.table th {
  text-align: left;
}

.table thead th {
  border-bottom-width: 2px;
  vertical-align: bottom;
}

.table tbody tr:nth-child(2n+1) {
  background: #efefef;
}

.clearfix:after {
  content: '';
  display: block;
  clear: both;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -1em;
}

.list-inline:after {
  content: '';
  display: block;
  clear: both;
}

.list-inline > li {
  float: left;
  margin-left: 1em;
}

.list-inline > li > a {
  display: inline-block;
}

.list-equal {
  padding-left: 0;
  list-style: none;
  display: table;
  table-layout: fixed;
  width: 100%;
}

.list-equal > li {
  display: table-cell;
  text-align: center;
}

.list-equal > li > a {
  display: block;
}

.block-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-left {
  float: left !important;
}

.pull-right {
  float: right !important;
}

.spacing-bottom {
  margin-bottom: 1.5em;
}

.media img {
  max-width: none;
}

.media-left {
  padding-right: 1em;
}

.media-right {
  padding-left: 1em;
}

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}

.media-middle {
  vertical-align: middle;
}

.media-bottom {
  vertical-align: bottom;
}

.media-fullscreen {
  position: absolute;
  left: 50%;
  top: 50%;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  transform: translate(-50%, -50%);
}

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

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

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

.text-hide {
  text-indent: 110%;
  white-space: nowrap;
  overflow: hidden;
  color: transparent;
  text-shadow: none;
}

.text-truncate {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.embed-responsive {
  position: relative;
  overflow: hidden;
}

.embed-responsive:before {
  content: '';
  display: block;
  padding-bottom: 56.25%;
}

.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  clip-path: none;
  white-space: inherit;
}

.invisible {
  visibility: hidden !important;
}

.hidden {
  display: none !important;
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-sm-up {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-md-up {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

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

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

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

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

@media (min-width: 62em) and (max-width: 74.99em) {
  .hidden-md {
    display: none !important;
  }

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

@media (min-width: 75em) {
  .hidden-lg {
    display: none !important;
  }

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

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

  .visible-sm-up {
    display: block !important;
  }
}

@media (min-width: 62em) {
  .hidden-md-up {
    display: none !important;
  }

  .visible-md-up {
    display: block !important;
  }
}

@media print {
  *,
  *:before,
  *:after,
  p:first-letter,
  p:first-line {
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

.container {
  padding-left: 18px;
  padding-right: 18px;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1164px;
  max-width: 72.75rem;
}

.row {
  margin-left: -18px;
  margin-right: -18px;
  margin-left: -1.125rem;
  margin-right: -1.125rem;
  /* autoprefixer: off */
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.row:after {
  content: '';
  display: block;
  clear: both;
}

.col {
  padding-left: 18px;
  padding-right: 18px;
  padding-left: 1.125rem;
  padding-right: 1.125rem;
  width: 100%;
  position: relative;
  float: left;
  min-height: 1px;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-1 {
  width: 8.33333333%;
}

.col-xs-pull-1 {
  right: 8.33333333%;
}

.col-xs-push-1 {
  left: 8.33333333%;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-2 {
  width: 16.66666667%;
}

.col-xs-pull-2 {
  right: 16.66666667%;
}

.col-xs-push-2 {
  left: 16.66666667%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-4 {
  width: 33.33333333%;
}

.col-xs-pull-4 {
  right: 33.33333333%;
}

.col-xs-push-4 {
  left: 33.33333333%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-5 {
  width: 41.66666667%;
}

.col-xs-pull-5 {
  right: 41.66666667%;
}

.col-xs-push-5 {
  left: 41.66666667%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-7 {
  width: 58.33333333%;
}

.col-xs-pull-7 {
  right: 58.33333333%;
}

.col-xs-push-7 {
  left: 58.33333333%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-8 {
  width: 66.66666667%;
}

.col-xs-pull-8 {
  right: 66.66666667%;
}

.col-xs-push-8 {
  left: 66.66666667%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-10 {
  width: 83.33333333%;
}

.col-xs-pull-10 {
  right: 83.33333333%;
}

.col-xs-push-10 {
  left: 83.33333333%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-11 {
  width: 91.66666667%;
}

.col-xs-pull-11 {
  right: 91.66666667%;
}

.col-xs-push-11 {
  left: 91.66666667%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-12 {
  left: 100%;
}

@media (min-width: 48em) {
  .col-sm-pull-0 {
    right: auto;
  }

  .col-sm-push-0 {
    left: auto;
  }

  .col-sm-offset-0 {
    margin-left: 0%;
  }

  .col-sm-1 {
    width: 8.33333333%;
  }

  .col-sm-pull-1 {
    right: 8.33333333%;
  }

  .col-sm-push-1 {
    left: 8.33333333%;
  }

  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-sm-2 {
    width: 16.66666667%;
  }

  .col-sm-pull-2 {
    right: 16.66666667%;
  }

  .col-sm-push-2 {
    left: 16.66666667%;
  }

  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-pull-3 {
    right: 25%;
  }

  .col-sm-push-3 {
    left: 25%;
  }

  .col-sm-offset-3 {
    margin-left: 25%;
  }

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-pull-4 {
    right: 33.33333333%;
  }

  .col-sm-push-4 {
    left: 33.33333333%;
  }

  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

  .col-sm-pull-5 {
    right: 41.66666667%;
  }

  .col-sm-push-5 {
    left: 41.66666667%;
  }

  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-pull-6 {
    right: 50%;
  }

  .col-sm-push-6 {
    left: 50%;
  }

  .col-sm-offset-6 {
    margin-left: 50%;
  }

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-pull-7 {
    right: 58.33333333%;
  }

  .col-sm-push-7 {
    left: 58.33333333%;
  }

  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

  .col-sm-pull-8 {
    right: 66.66666667%;
  }

  .col-sm-push-8 {
    left: 66.66666667%;
  }

  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-pull-9 {
    right: 75%;
  }

  .col-sm-push-9 {
    left: 75%;
  }

  .col-sm-offset-9 {
    margin-left: 75%;
  }

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-pull-10 {
    right: 83.33333333%;
  }

  .col-sm-push-10 {
    left: 83.33333333%;
  }

  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

  .col-sm-pull-11 {
    right: 91.66666667%;
  }

  .col-sm-push-11 {
    left: 91.66666667%;
  }

  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-sm-12 {
    width: 100%;
  }

  .col-sm-pull-12 {
    right: 100%;
  }

  .col-sm-push-12 {
    left: 100%;
  }
}

@media (min-width: 62em) {
  .col-md-pull-0 {
    right: auto;
  }

  .col-md-push-0 {
    left: auto;
  }

  .col-md-offset-0 {
    margin-left: 0%;
  }

  .col-md-1 {
    width: 8.33333333%;
  }

  .col-md-pull-1 {
    right: 8.33333333%;
  }

  .col-md-push-1 {
    left: 8.33333333%;
  }

  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-md-2 {
    width: 16.66666667%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }

  .col-md-push-2 {
    left: 16.66666667%;
  }

  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-push-3 {
    left: 25%;
  }

  .col-md-offset-3 {
    margin-left: 25%;
  }

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-push-4 {
    left: 33.33333333%;
  }

  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

  .col-md-pull-5 {
    right: 41.66666667%;
  }

  .col-md-push-5 {
    left: 41.66666667%;
  }

  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-pull-6 {
    right: 50%;
  }

  .col-md-push-6 {
    left: 50%;
  }

  .col-md-offset-6 {
    margin-left: 50%;
  }

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-pull-7 {
    right: 58.33333333%;
  }

  .col-md-push-7 {
    left: 58.33333333%;
  }

  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

  .col-md-pull-8 {
    right: 66.66666667%;
  }

  .col-md-push-8 {
    left: 66.66666667%;
  }

  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-pull-9 {
    right: 75%;
  }

  .col-md-push-9 {
    left: 75%;
  }

  .col-md-offset-9 {
    margin-left: 75%;
  }

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-pull-10 {
    right: 83.33333333%;
  }

  .col-md-push-10 {
    left: 83.33333333%;
  }

  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

  .col-md-pull-11 {
    right: 91.66666667%;
  }

  .col-md-push-11 {
    left: 91.66666667%;
  }

  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-md-12 {
    width: 100%;
  }

  .col-md-pull-12 {
    right: 100%;
  }

  .col-md-push-12 {
    left: 100%;
  }
}

@media (min-width: 75em) {
  .col-lg-pull-0 {
    right: auto;
  }

  .col-lg-push-0 {
    left: auto;
  }

  .col-lg-offset-0 {
    margin-left: 0%;
  }

  .col-lg-1 {
    width: 8.33333333%;
  }

  .col-lg-pull-1 {
    right: 8.33333333%;
  }

  .col-lg-push-1 {
    left: 8.33333333%;
  }

  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-pull-2 {
    right: 16.66666667%;
  }

  .col-lg-push-2 {
    left: 16.66666667%;
  }

  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-pull-3 {
    right: 25%;
  }

  .col-lg-push-3 {
    left: 25%;
  }

  .col-lg-offset-3 {
    margin-left: 25%;
  }

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-pull-4 {
    right: 33.33333333%;
  }

  .col-lg-push-4 {
    left: 33.33333333%;
  }

  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

  .col-lg-pull-5 {
    right: 41.66666667%;
  }

  .col-lg-push-5 {
    left: 41.66666667%;
  }

  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-pull-6 {
    right: 50%;
  }

  .col-lg-push-6 {
    left: 50%;
  }

  .col-lg-offset-6 {
    margin-left: 50%;
  }

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-pull-7 {
    right: 58.33333333%;
  }

  .col-lg-push-7 {
    left: 58.33333333%;
  }

  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

  .col-lg-pull-8 {
    right: 66.66666667%;
  }

  .col-lg-push-8 {
    left: 66.66666667%;
  }

  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-pull-9 {
    right: 75%;
  }

  .col-lg-push-9 {
    left: 75%;
  }

  .col-lg-offset-9 {
    margin-left: 75%;
  }

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-pull-10 {
    right: 83.33333333%;
  }

  .col-lg-push-10 {
    left: 83.33333333%;
  }

  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

  .col-lg-pull-11 {
    right: 91.66666667%;
  }

  .col-lg-push-11 {
    left: 91.66666667%;
  }

  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }

  .col-lg-12 {
    width: 100%;
  }

  .col-lg-pull-12 {
    right: 100%;
  }

  .col-lg-push-12 {
    left: 100%;
  }
}

body.swal2-shown {
  overflow-y: hidden;
}

body.swal2-iosfix {
  position: fixed;
  left: 0;
  right: 0;
}

.swal2-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 10px;
  background-color: transparent;
  z-index: 1060;
}

.swal2-container.swal2-top {
  -ms-flex-align: start;
  align-items: flex-start;
}

.swal2-container.swal2-top-left {
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.swal2-container.swal2-top-right {
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.swal2-container.swal2-center {
  -ms-flex-align: center;
  align-items: center;
}

.swal2-container.swal2-center-left {
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.swal2-container.swal2-center-right {
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.swal2-container.swal2-bottom {
  -ms-flex-align: end;
  align-items: flex-end;
}

.swal2-container.swal2-bottom-left {
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.swal2-container.swal2-bottom-right {
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.swal2-container.swal2-grow-fullscreen > .swal2-modal {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex: 1;
  flex: 1;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  -ms-flex-pack: center;
  justify-content: center;
}

.swal2-container.swal2-grow-row > .swal2-modal {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex: 1;
  flex: 1;
  -ms-flex-line-pack: center;
  align-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.swal2-container.swal2-grow-column {
  -ms-flex: 1;
  flex: 1;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swal2-container.swal2-grow-column.swal2-top,
.swal2-container.swal2-grow-column.swal2-center,
.swal2-container.swal2-grow-column.swal2-bottom {
  -ms-flex-align: center;
  align-items: center;
}

.swal2-container.swal2-grow-column.swal2-top-left,
.swal2-container.swal2-grow-column.swal2-center-left,
.swal2-container.swal2-grow-column.swal2-bottom-left {
  -ms-flex-align: start;
  align-items: flex-start;
}

.swal2-container.swal2-grow-column.swal2-top-right,
.swal2-container.swal2-grow-column.swal2-center-right,
.swal2-container.swal2-grow-column.swal2-bottom-right {
  -ms-flex-align: end;
  align-items: flex-end;
}

.swal2-container.swal2-grow-column > .swal2-modal {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex: 1;
  flex: 1;
  -ms-flex-line-pack: center;
  align-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.swal2-container:not(.swal2-top):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-left):not(.swal2-bottom-right) > .swal2-modal {
  margin: auto;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .swal2-container .swal2-modal {
    margin: 0 !important;
  }
}

.swal2-container.swal2-fade {
  transition: background-color .1s;
}

.swal2-container.swal2-shown {
  background-color: rgba(0, 0, 0, 0.4);
}

.swal2-modal {
  -ms-flex-direction: column;
  flex-direction: column;
  background-color: #fff;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  border-radius: 5px;
  box-sizing: border-box;
  text-align: center;
  overflow-x: hidden;
  overflow-y: auto;
  display: none;
  position: relative;
  max-width: 100%;
}

.swal2-modal:focus {
  outline: none;
}

.swal2-modal.swal2-loading {
  overflow-y: hidden;
}

.swal2-modal .swal2-title {
  color: #595959;
  font-size: 30px;
  text-align: center;
  font-weight: 600;
  text-transform: none;
  position: relative;
  margin: 0 0 .4em;
  padding: 0;
  display: block;
  word-wrap: break-word;
}

.swal2-modal .swal2-buttonswrapper {
  margin-top: 15px;
}

.swal2-modal .swal2-buttonswrapper:not(.swal2-loading) .swal2-styled[disabled] {
  opacity: .4;
  cursor: no-drop;
}

.swal2-modal .swal2-buttonswrapper.swal2-loading .swal2-styled.swal2-confirm {
  box-sizing: border-box;
  border: 4px solid transparent;
  border-color: transparent;
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 7.5px;
  vertical-align: top;
  background-color: transparent !important;
  color: transparent;
  cursor: default;
  border-radius: 100%;
  animation: rotate-loading 1.5s linear 0s infinite normal;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.swal2-modal .swal2-buttonswrapper.swal2-loading .swal2-styled.swal2-cancel {
  margin-left: 30px;
  margin-right: 30px;
}

.swal2-modal .swal2-buttonswrapper.swal2-loading :not(.swal2-styled).swal2-confirm::after {
  display: inline-block;
  content: '';
  margin-left: 5px;
  vertical-align: -1px;
  height: 15px;
  width: 15px;
  border: 3px solid #999999;
  box-shadow: 1px 1px 1px #fff;
  border-right-color: transparent;
  border-radius: 50%;
  animation: rotate-loading 1.5s linear 0s infinite normal;
}

.swal2-modal .swal2-styled {
  border: 0;
  border-radius: 3px;
  box-shadow: none;
  color: #fff;
  cursor: pointer;
  font-size: 17px;
  font-weight: 500;
  margin: 15px 5px 0;
  padding: 10px 32px;
}

.swal2-modal .swal2-styled:focus {
  outline: none;
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(50, 100, 150, 0.4);
}

.swal2-modal .swal2-image {
  margin: 20px auto;
  max-width: 100%;
}

.swal2-modal .swal2-close {
  background: transparent;
  border: 0;
  margin: 0;
  padding: 0;
  width: 38px;
  height: 40px;
  font-size: 36px;
  line-height: 40px;
  font-family: serif;
  position: absolute;
  top: 5px;
  right: 8px;
  cursor: pointer;
  color: #cccccc;
  transition: color .1s ease;
}

.swal2-modal .swal2-close:hover {
  color: #d55;
}

.swal2-modal > .swal2-input,
.swal2-modal > .swal2-file,
.swal2-modal > .swal2-textarea,
.swal2-modal > .swal2-select,
.swal2-modal > .swal2-radio,
.swal2-modal > .swal2-checkbox {
  display: none;
}

.swal2-modal .swal2-content {
  font-size: 18px;
  text-align: center;
  font-weight: 300;
  position: relative;
  float: none;
  margin: 0;
  padding: 0;
  line-height: normal;
  color: #545454;
  word-wrap: break-word;
}

.swal2-modal .swal2-input,
.swal2-modal .swal2-file,
.swal2-modal .swal2-textarea,
.swal2-modal .swal2-select,
.swal2-modal .swal2-radio,
.swal2-modal .swal2-checkbox {
  margin: 20px auto;
}

.swal2-modal .swal2-input,
.swal2-modal .swal2-file,
.swal2-modal .swal2-textarea {
  width: 100%;
  box-sizing: border-box;
  font-size: 18px;
  border-radius: 3px;
  border: 1px solid #d9d9d9;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.06);
  transition: border-color .3s, box-shadow .3s;
}

.swal2-modal .swal2-input.swal2-inputerror,
.swal2-modal .swal2-file.swal2-inputerror,
.swal2-modal .swal2-textarea.swal2-inputerror {
  border-color: #f27474 !important;
  box-shadow: 0 0 2px #f27474 !important;
}

.swal2-modal .swal2-input:focus,
.swal2-modal .swal2-file:focus,
.swal2-modal .swal2-textarea:focus {
  outline: none;
  border: 1px solid #b4dbed;
  box-shadow: 0 0 3px #c4e6f5;
}

.swal2-modal .swal2-input::-webkit-input-placeholder,
.swal2-modal .swal2-file::-webkit-input-placeholder,
.swal2-modal .swal2-textarea::-webkit-input-placeholder {
  color: #cccccc;
}

.swal2-modal .swal2-input:-ms-input-placeholder,
.swal2-modal .swal2-file:-ms-input-placeholder,
.swal2-modal .swal2-textarea:-ms-input-placeholder {
  color: #cccccc;
}

.swal2-modal .swal2-input::-ms-input-placeholder,
.swal2-modal .swal2-file::-ms-input-placeholder,
.swal2-modal .swal2-textarea::-ms-input-placeholder {
  color: #cccccc;
}

.swal2-modal .swal2-input:-ms-input-placeholder,
.swal2-modal .swal2-file:-ms-input-placeholder,
.swal2-modal .swal2-textarea:-ms-input-placeholder {
  color: #cccccc;
}

.swal2-modal .swal2-input::placeholder,
.swal2-modal .swal2-file::placeholder,
.swal2-modal .swal2-textarea::placeholder {
  color: #cccccc;
}

.swal2-modal .swal2-range input {
  float: left;
  width: 80%;
}

.swal2-modal .swal2-range output {
  float: right;
  width: 20%;
  font-size: 20px;
  font-weight: 600;
  text-align: center;
}

.swal2-modal .swal2-range input,
.swal2-modal .swal2-range output {
  height: 43px;
  line-height: 43px;
  vertical-align: middle;
  margin: 20px auto;
  padding: 0;
}

.swal2-modal .swal2-input {
  height: 43px;
  padding: 0 12px;
}

.swal2-modal .swal2-input[type='number'] {
  max-width: 150px;
}

.swal2-modal .swal2-file {
  font-size: 20px;
}

.swal2-modal .swal2-textarea {
  height: 108px;
  padding: 12px;
}

.swal2-modal .swal2-select {
  color: #545454;
  font-size: inherit;
  padding: 5px 10px;
  min-width: 40%;
  max-width: 100%;
}

.swal2-modal .swal2-radio {
  border: 0;
}

.swal2-modal .swal2-radio label:not(:first-child) {
  margin-left: 20px;
}

.swal2-modal .swal2-radio input,
.swal2-modal .swal2-radio span {
  vertical-align: middle;
}

.swal2-modal .swal2-radio input {
  margin: 0 3px 0 0;
}

.swal2-modal .swal2-checkbox {
  color: #545454;
}

.swal2-modal .swal2-checkbox input,
.swal2-modal .swal2-checkbox span {
  vertical-align: middle;
}

.swal2-modal .swal2-validationerror {
  background-color: #f0f0f0;
  margin: 0 -20px;
  overflow: hidden;
  padding: 10px;
  color: gray;
  font-size: 16px;
  font-weight: 300;
  display: none;
}

.swal2-modal .swal2-validationerror::before {
  content: '!';
  display: inline-block;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: #ea7d7d;
  color: #fff;
  line-height: 24px;
  text-align: center;
  margin-right: 10px;
}

@supports (-ms-accelerator: true) {
  .swal2-range input {
    width: 100% !important;
  }

  .swal2-range output {
    display: none;
  }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .swal2-range input {
    width: 100% !important;
  }

  .swal2-range output {
    display: none;
  }
}

.swal2-icon {
  width: 80px;
  height: 80px;
  border: 4px solid transparent;
  border-radius: 50%;
  margin: 20px auto 30px;
  padding: 0;
  position: relative;
  box-sizing: content-box;
  cursor: default;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.swal2-icon.swal2-error {
  border-color: #f27474;
}

.swal2-icon.swal2-error .swal2-x-mark {
  position: relative;
  display: block;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
  position: absolute;
  height: 5px;
  width: 47px;
  background-color: #f27474;
  display: block;
  top: 37px;
  border-radius: 2px;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'][class$='left'] {
  transform: rotate(45deg);
  left: 17px;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'][class$='right'] {
  transform: rotate(-45deg);
  right: 16px;
}

.swal2-icon.swal2-warning {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #f8bb86;
  border-color: #facea8;
  font-size: 60px;
  line-height: 80px;
  text-align: center;
}

.swal2-icon.swal2-info {
  font-family: 'Open Sans', sans-serif;
  color: #3fc3ee;
  border-color: #9de0f6;
  font-size: 60px;
  line-height: 80px;
  text-align: center;
}

.swal2-icon.swal2-question {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #87adbd;
  border-color: #c9dae1;
  font-size: 60px;
  line-height: 80px;
  text-align: center;
}

.swal2-icon.swal2-success {
  border-color: #a5dc86;
}

.swal2-icon.swal2-success [class^='swal2-success-circular-line'] {
  border-radius: 50%;
  position: absolute;
  width: 60px;
  height: 120px;
  transform: rotate(45deg);
}

.swal2-icon.swal2-success [class^='swal2-success-circular-line'][class$='left'] {
  border-radius: 120px 0 0 120px;
  top: -7px;
  left: -33px;
  transform: rotate(-45deg);
  transform-origin: 60px 60px;
}

.swal2-icon.swal2-success [class^='swal2-success-circular-line'][class$='right'] {
  border-radius: 0 120px 120px 0;
  top: -11px;
  left: 30px;
  transform: rotate(-45deg);
  transform-origin: 0 60px;
}

.swal2-icon.swal2-success .swal2-success-ring {
  width: 80px;
  height: 80px;
  border: 4px solid rgba(165, 220, 134, 0.2);
  border-radius: 50%;
  box-sizing: content-box;
  position: absolute;
  left: -4px;
  top: -4px;
  z-index: 2;
}

.swal2-icon.swal2-success .swal2-success-fix {
  width: 7px;
  height: 90px;
  position: absolute;
  left: 28px;
  top: 8px;
  z-index: 1;
  transform: rotate(-45deg);
}

.swal2-icon.swal2-success [class^='swal2-success-line'] {
  height: 5px;
  background-color: #a5dc86;
  display: block;
  border-radius: 2px;
  position: absolute;
  z-index: 2;
}

.swal2-icon.swal2-success [class^='swal2-success-line'][class$='tip'] {
  width: 25px;
  left: 14px;
  top: 46px;
  transform: rotate(45deg);
}

.swal2-icon.swal2-success [class^='swal2-success-line'][class$='long'] {
  width: 47px;
  right: 8px;
  top: 38px;
  transform: rotate(-45deg);
}

.swal2-progresssteps {
  font-weight: 600;
  margin: 0 0 20px;
  padding: 0;
}

.swal2-progresssteps li {
  display: inline-block;
  position: relative;
}

.swal2-progresssteps .swal2-progresscircle {
  background: #3085d6;
  border-radius: 2em;
  color: #fff;
  height: 2em;
  line-height: 2em;
  text-align: center;
  width: 2em;
  z-index: 20;
}

.swal2-progresssteps .swal2-progresscircle:first-child {
  margin-left: 0;
}

.swal2-progresssteps .swal2-progresscircle:last-child {
  margin-right: 0;
}

.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep {
  background: #3085d6;
}

.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progresscircle {
  background: #add8e6;
}

.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep ~ .swal2-progressline {
  background: #add8e6;
}

.swal2-progresssteps .swal2-progressline {
  background: #3085d6;
  height: .4em;
  margin: 0 -1px;
  z-index: 10;
}

[class^='swal2'] {
  -webkit-tap-highlight-color: transparent;
}

@keyframes showSweetAlert {
  0% {
    transform: scale(0.7);
  }

  45% {
    transform: scale(1.05);
  }

  80% {
    transform: scale(0.95);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes hideSweetAlert {
  0% {
    transform: scale(1);
    opacity: 1;
  }

  100% {
    transform: scale(0.5);
    opacity: 0;
  }
}

.swal2-show {
  animation: showSweetAlert .3s;
}

.swal2-show.swal2-noanimation {
  animation: none;
}

.swal2-hide {
  animation: hideSweetAlert .15s forwards;
}

.swal2-hide.swal2-noanimation {
  animation: none;
}

@keyframes animate-success-tip {
  0% {
    width: 0;
    left: 1px;
    top: 19px;
  }

  54% {
    width: 0;
    left: 1px;
    top: 19px;
  }

  70% {
    width: 50px;
    left: -8px;
    top: 37px;
  }

  84% {
    width: 17px;
    left: 21px;
    top: 48px;
  }

  100% {
    width: 25px;
    left: 14px;
    top: 45px;
  }
}

@keyframes animate-success-long {
  0% {
    width: 0;
    right: 46px;
    top: 54px;
  }

  65% {
    width: 0;
    right: 46px;
    top: 54px;
  }

  84% {
    width: 55px;
    right: 0;
    top: 35px;
  }

  100% {
    width: 47px;
    right: 8px;
    top: 38px;
  }
}

@keyframes rotatePlaceholder {
  0% {
    transform: rotate(-45deg);
  }

  5% {
    transform: rotate(-45deg);
  }

  12% {
    transform: rotate(-405deg);
  }

  100% {
    transform: rotate(-405deg);
  }
}

.swal2-animate-success-line-tip {
  animation: animate-success-tip .75s;
}

.swal2-animate-success-line-long {
  animation: animate-success-long .75s;
}

.swal2-success.swal2-animate-success-icon .swal2-success-circular-line-right {
  animation: rotatePlaceholder 4.25s ease-in;
}

@keyframes animate-error-icon {
  0% {
    transform: rotateX(100deg);
    opacity: 0;
  }

  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}

.swal2-animate-error-icon {
  animation: animate-error-icon .5s;
}

@keyframes animate-x-mark {
  0% {
    transform: scale(0.4);
    margin-top: 26px;
    opacity: 0;
  }

  50% {
    transform: scale(0.4);
    margin-top: 26px;
    opacity: 0;
  }

  80% {
    transform: scale(1.15);
    margin-top: -6px;
  }

  100% {
    transform: scale(1);
    margin-top: 0;
    opacity: 1;
  }
}

.swal2-animate-x-mark {
  animation: animate-x-mark .5s;
}

@keyframes rotate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.card-js input.card-number {
  padding-right: 48px;
}

.card-js .card-number-wrapper .card-type-icon {
  height: 23px;
  width: 32px;
  position: absolute;
  display: block;
  right: 8px;
  top: 7px;
  background: url(https://cardjs.co.uk/img/cards.png) 0 23px no-repeat;
  pointer-events: none;
  opacity: 0;
  transition: opacity .15s linear;
}

.card-js .card-number-wrapper .show {
  opacity: 1;
}

.card-js .card-number-wrapper .card-type-icon.visa {
  background-position: 0 0;
}

.card-js .card-number-wrapper .card-type-icon.master-card {
  background-position: -32px 0;
}

.card-js .card-number-wrapper .card-type-icon.american-express {
  background-position: -64px 0;
}

.card-js .card-number-wrapper .card-type-icon.discover {
  background-position: -96px 0;
}

.card-js .card-number-wrapper .card-type-icon.diners {
  background-position: -128px 0;
}

.card-js .card-number-wrapper .card-type-icon.jcb {
  background-position: -160px 0;
}

.card-js .cvc-container {
  width: 50%;
  float: right;
}

.card-js .cvc-wrapper {
  box-sizing: border-box;
  margin-left: 5px;
}

.card-js .cvc-wrapper .cvc {
  display: block;
  width: 100%;
}

.card-js .expiry-container {
  width: 50%;
  float: left;
}

.card-js .expiry-wrapper {
  box-sizing: border-box;
  margin-right: 5px;
}

.card-js .expiry-wrapper .expiry {
  display: block;
  width: 100%;
}

.card-js .expiry-wrapper .expiry-month {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-left: 30px;
}

.card-js .expiry-wrapper .expiry-year {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-left: 0;
}

.card-js .expiry-wrapper .expiry-month,
.card-js .expiry-wrapper .expiry-year {
  display: inline-block;
}

.card-js .expiry-wrapper .expiry {
  padding-left: 38px;
}

.card-js .icon {
  position: absolute;
  display: block;
  width: 24px;
  height: 17px;
  left: 8px;
  top: 10px;
  pointer-events: none;
}

.card-js .icon.right {
  right: 8px;
  left: auto;
}

.card-js .icon.popup {
  cursor: pointer;
  pointer-events: auto;
}

.card-js .icon .svg {
  fill: #888;
}

.card-js .icon.popup .svg {
  fill: #aaa !important;
}

.card-js .card-number-wrapper,
.card-js .name-wrapper {
  margin-bottom: 15px;
  width: 100%;
}

.card-js .card-number-wrapper,
.card-js .cvc-wrapper,
.card-js .expiry-wrapper,
.card-js .name-wrapper {
  -ms-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.7);
  -o-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.7);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.7);
  position: relative;
}

.card-js .card-number-wrapper,
.card-js .cvc-container,
.card-js .expiry-container,
.card-js .name-wrapper {
  display: inline-block;
}

.card-js::after {
  content: ' ';
  display: table;
  clear: both;
}

.card-js input,
.card-js select {
  color: #676767;
  font-size: 15px;
  font-weight: 300;
  font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
  height: 36px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  box-shadow: none;
  background-color: #FDFDFD;
  box-sizing: border-box;
  padding: 0;
  transition: border-color .15s linear,box-shadow .15s linear;
}

.card-js select {
  -moz-appearance: none;
  text-indent: .01px;
  text-overflow: '';
}

.card-js input[disabled],
.card-js select[disabled] {
  background-color: #eee;
  color: #555;
}

.card-js select option[hidden] {
  color: #ABA9A9;
}

.card-js input:focus,
.card-js select:focus {
  background-color: #fff;
  outline: 0;
  border-color: #66afe9;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.card-js input[readonly=readonly]:not([disabled]),
.card-js input[readonly]:not([disabled]) {
  background-color: #fff;
  cursor: pointer;
}

.card-js .has-error input,
.card-js .has-error input:focus {
  border-color: #F64B2F;
  box-shadow: none;
}

.card-js input.card-number,
.card-js input.cvc,
.card-js input.name {
  padding-left: 38px;
  width: 100%;
}

.card-js.stripe .icon .svg {
  fill: #559A28;
}

@font-face {
  font-family: 'fontello';
  src: url(/content/themes/7g/dist/fonts/fontello.eot?83ec7b6b615f0ee52d7453d353f0db7e);
  src: url(/content/themes/7g/dist/fonts/fontello.eot?83ec7b6b615f0ee52d7453d353f0db7e) format("embedded-opentype"), url(/content/themes/7g/dist/fonts/fontello.woff2?a23e0b2ede4249ff47efb1b7c6a521a7) format("woff2"), url(/content/themes/7g/dist/fonts/fontello.woff?8350bba59287a5881117394a442af1c7) format("woff"), url(/content/themes/7g/dist/fonts/fontello.ttf?00693f4e17bd10e25579efee07399966) format("truetype"), url(/content/themes/7g/dist/fonts/fontello.svg?7c81ec8c65c95067eb912d253a6a0d30) format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .4rem;
  /* you can be more comfortable with increased icons size */
  font-size: 130%;
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-chat:before {
  content: '\e801';
}

.icon-check:before {
  content: '\e800';
}

h3,
.h3,
h4,
.h4 {
  font-family: "Roboto", sans-serif;
}

h3,
.h3 {
  font-size: 1.11em;
  margin-bottom: 1.4rem;
}

h4,
.h4 {
  font-size: 1.13em;
}

.entry-content {
  line-height: 1.5;
}

.btn {
  text-transform: uppercase;
  font-family: "Titillium Web", sans-serif;
  font-weight: bold;
  line-height: 1;
  padding: 0.8rem 1.3rem;
  border-radius: 7px;
  font-size: 1.2em;
}

input[type="email"] input[type="number"] input[type="password"] input[type="search"] input[type="tel"] input[type="text"] input[type="url"] textarea select {
  border: 0;
}

.btn-white,
#loginform .login-submit input {
  color: #01B1FA;
  background: #ffffff;
  text-transform: uppercase;
  border-radius: 10px;
  height: 100%;
  line-height: 1;
  text-shadow: none;
}

.btn-white:hover,
#loginform .login-submit input:hover {
  background-color: #01B1FA;
  color: #ffffff;
}

ol li {
  margin-bottom: 1rem;
}

#loginform {
  padding: 1.5rem;
  margin-bottom: 0;
  background: #358EC0;
  color: white;
}

#loginform .login-remember label {
  position: relative;
  left: 1rem;
}

#loginform .login-remember input {
  left: -1rem;
}

#loginform .login-submit {
  margin: 0;
}

#loginform .login-submit input {
  color: #0066cc;
  border: 0;
  padding: 0.5em;
}

div.wpcf7 .submit-box .ajax-loader {
  position: absolute;
  left: 0;
  width: 92%;
  height: 100%;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: center;
  border-radius: 10px;
}

div.wpcf7 div.wpcf7-response-output {
  display: block;
  margin: 0.5rem 0 0;
  border: 0;
  padding: 0 0.3rem;
}

.btn {
  font-size: 19px;
}

.btn-left {
  margin: 0 !important;
}

.btn-right {
  margin: 0 0 0 auto !important;
}

.content article .wpcf7-form .btn,
.content section .wpcf7-form .btn {
  display: block;
  margin: 0;
}

.fa-btn {
  margin-right: 0.4em;
}

.card-js .icon svg {
  display: block;
}

.checkout-form .modal-header {
  padding: 5px 10px;
  border-bottom: 1px solid #1a1c35;
  text-align: center;
  background: #404576;
  color: white;
}

.checkout-form label {
  margin: 0;
  font-size: 0.8em;
  padding: 0;
  text-transform: uppercase;
  color: #404576;
}

.checkout-form .modal-body h4 {
  color: #333;
}

.checkout-form .modal-footer {
  padding: 10px 15px;
}

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px;
}

.alert h4 {
  margin-top: 0;
  color: inherit;
}

.alert .alert-link {
  font-weight: bold;
}

.alert > p,
.alert > ul {
  margin-bottom: 0;
}

.alert > p + p {
  margin-top: 5px;
}

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}

.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}

.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}

.alert-success hr {
  border-top-color: #c9e2b3;
}

.alert-success .alert-link {
  color: #2b542c;
}

.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}

.alert-info hr {
  border-top-color: #a6e1ec;
}

.alert-info .alert-link {
  color: #245269;
}

.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}

.alert-warning hr {
  border-top-color: #f7e1b5;
}

.alert-warning .alert-link {
  color: #66512c;
}

.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}

.alert-danger hr {
  border-top-color: #e4b9c0;
}

.alert-danger .alert-link {
  color: #843534;
}

body {
  font-size: 16px !important;
}

.site-container {
  background-color: #fff;
  overflow: hidden;
}

.site-container {
  width: 100%;
}

.wrap {
  width: 100%;
  max-width: 875px;
  margin: 0 auto;
}

@media (max-width: 54.6875em) {
  .wrap {
    padding: 0 1rem;
  }
}

.site-inner article,
.site-inner section {
  padding: 4rem 0;
}

@media (max-width: 43.75em) {
  .site-inner article,
  .site-inner section {
    padding: 2rem 0;
  }
}

.top-nav {
  background-color: #434579;
  color: #fff;
  padding: 0.5rem 0;
  line-height: 1;
}

.top-nav .row {
  -ms-flex-align: center;
      align-items: center;
}

.top-nav p {
  font-family: "Titillium Web", sans-serif;
  font-weight: bold;
  font-size: 1.2em;
  margin-bottom: 0;
}

.top-header ul {
  margin-bottom: 0;
}

@media (max-width: 54.6875em) {
  .top-header {
    display: none;
  }
}

#site-header {
  background-color: #fff;
  border-bottom: 2px solid #9294c3;
  padding: 0.5rem 0;
}

#site-header > .wrap > .row {
  -ms-flex-align: center;
      align-items: center;
}

@media (max-width: 43.75em) {
  #site-header {
    padding-bottom: 0;
    border-bottom: 0;
  }

  #site-header .wrap {
    padding: 0;
  }
}

#site-header .wrap {
  position: relative;
  padding-bottom: 0;
}

.sm-links li {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
  float: right;
}

.sm-links li a {
  color: #ffffff;
}

.icon-gp:before {
  content: '\f0d4';
}

.icon-tw:before {
  content: '\f304';
}

.icon-fb:before {
  content: '\f308';
}

.title-area h1 {
  margin: 0;
  max-width: 300px;
}

.login-btns a {
  font-size: 0.9em;
  text-transform: none;
  padding: 0.5em 1em 0.3em;
  line-height: 1;
  border-radius: 5px;
  margin-left: 1rem;
  float: right;
}

.login-btns a:hover {
  background-color: #0066cc;
  color: #fff;
}

.login-btns .btn-signup {
  background: #04B3F9;
}

.login-btns .btn-login {
  color: #0066cc;
}

@media (max-width: 54.6875em) {
  .title-area,
  .right-header {
    width: 100%;
  }

  .title-area h1,
  .right-header h1 {
    margin: 0 auto 2rem;
  }
}

#main-nav {
  font-family: "Titillium Web", sans-serif;
  -ms-flex-item-align: end;
      align-self: flex-end;
  padding-right: 0;
}

@media (max-width: 54.6875em) {
  #main-nav {
    margin-top: 0;
    padding-left: 0;
  }
}

@media (max-width: 43.75em) {
  #main-nav {
    padding: 0;
    float: none;
    display: inline-block;
    margin-left: 0;
    width: 100%;
    background-color: #9294c3;
  }
}

#main-nav > ul {
  float: right;
  padding-left: 0;
  list-style: none;
  margin-left: -3rem;
}

#main-nav > ul:after {
  content: '';
  display: block;
  clear: both;
}

#main-nav > ul > li {
  float: left;
  margin-left: 3rem;
}

#main-nav > ul > li > a {
  display: inline-block;
}

@media (max-width: 54.6875em) {
  #main-nav > ul {
    padding-left: 0;
    list-style: none;
    display: table;
    table-layout: fixed;
    width: 100%;
    table-layout: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    width: 100%;
  }

  #main-nav > ul > li {
    display: table-cell;
    text-align: center;
  }

  #main-nav > ul > li > a {
    display: block;
  }
}

@media (max-width: 43.75em) {
  #main-nav > ul {
    background-color: #01B1FA;
    margin-top: 1rem;
  }

  #main-nav > ul > li:first-child {
    margin-left: 0;
  }
}

#main-nav > ul > li {
  position: relative;
}

#main-nav > ul > li.mobile-only {
  display: none;
  visibility: hidden;
}

@media (max-width: 43.75em) {
  #main-nav > ul > li.mobile-only {
    display: block;
    visibility: visible;
  }
}

#main-nav > ul > li.active > a,
#main-nav > ul > li > a:active {
  color: #434579;
  text-decoration: none;
}

#main-nav > ul > li > a:hover,
#main-nav > ul > li > a:focus {
  color: #434579;
  text-decoration: none;
}

#main-nav a {
  color: #0066cc;
  font-size: 1.3em;
}

@media (max-width: 43.75em) {
  #main-nav a {
    color: #fff;
  }
}

#main-nav > ul > li:hover > .sub-menu {
  visibility: visible;
  transition: 0.1s all ease-in-out;
  transition-delay: 0s;
  opacity: 1;
}

#main-nav .sub-menu {
  visibility: hidden;
  opacity: 0;
  transition: 0.1s all ease-in-out;
  transition-delay: 0.2s;
  position: absolute;
  left: 0;
  top: 37px;
  margin: 0 0 0 -30%;
  width: 160%;
  z-index: 9;
  overflow: hidden;
  padding: 0;
  list-style: none;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0px 2px 5px 0px #333;
  font-size: 1.1em;
  min-width: 175px;
  text-align: left;
}

#main-nav .sub-menu li {
  margin: 0;
}

#main-nav .sub-menu li.active a,
#main-nav .sub-menu li > a:hover,
#main-nav .sub-menu li > a:active,
#main-nav .sub-menu li > a:focus,
#main-nav .sub-menu li:hover a {
  text-decoration: none;
  background-color: #434579;
  color: #ffffff;
}

#main-nav .sub-menu li a {
  font-size: 0.9em;
  width: 100%;
  display: inline-block;
  padding: 0.6rem 1rem;
}

#main-nav .sub-menu li a:hover {
  background-color: #434579;
  color: #ffffff;
}

@media (max-width: 43.75em) {
  #main-nav .sub-menu li a {
    background-color: transparent !important;
  }
}

.menu-trigger {
  display: none;
  background: transparent;
  border: none;
  width: 48px;
  height: 45px;
  text-indent: -900em;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  outline: none;
  left: 0.5rem;
}

.menu-trigger:after {
  content: '';
  position: absolute;
  width: 68%;
  height: 5px;
  background: #fff;
  top: 10px;
  left: 16%;
  box-shadow: 0 10px 0 #fff, 0 20px 0 #fff;
}

@media (max-width: 43.75em) {
  #main-nav .menu {
    left: -240px;
    padding: 2rem 0;
    width: 240px;
    height: 100%;
    z-index: 1000;
    position: fixed;
    display: block;
    float: none;
    top: 0;
    text-align: left;
    margin: 0;
    padding-left: 0;
    list-style: none;
  }

  #main-nav .menu li {
    margin: 0;
  }

  #main-nav .menu li a {
    text-align: left;
    margin: 0;
    padding: 0.5rem 1.5rem;
  }

  .mobile-open #main-nav .menu {
    left: 0;
    box-shadow: 0 0 5px #000;
  }

  .mobile-opened #main-nav .menu {
    transition: left 0.3s ease-in-out;
    overflow: scroll;
  }

  #main-nav .menu li {
    display: block !important;
    width: 100%;
    margin-bottom: 1rem;
  }

  #main-nav .sub-menu {
    visibility: visible;
    opacity: 1;
    background-color: transparent;
    position: static;
    height: auto;
    width: 100%;
    margin-left: 0rem;
    box-shadow: none;
  }

  #main-nav .sub-menu li {
    margin: 0;
  }

  #main-nav .sub-menu li a {
    display: block;
    margin: 0.5rem 0 0 1rem;
    border-bottom: 0;
  }

  #main-nav .sub-menu:after {
    content: none;
  }

  .menu-trigger {
    display: block;
  }

  .mobile-open {
    overflow: hidden;
  }

  .mobile-overlay {
    display: none;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9;
  }

  .mobile-open .mobile-overlay {
    display: block;
  }
}

@media (max-width: 50em) {
  .plan-details .ls-responsive .liquid-slider {
    background: transparent !important;
  }

  .plan-details .ls-responsive .liquid-slider .price-details {
    font-size: 1.3em;
  }

  .plan-details .ls-responsive .liquid-slider .price-details * {
    text-align: center !important;
    max-width: none !important;
  }

  .plan-details .ls-responsive .liquid-slider .panel-wrapper .row {
    width: auto !important;
  }
}

footer {
  font-family: "PT Sans", sans-serif;
  background-color: #424242;
  color: #dfdfdf;
  padding: 4.5rem 0 6rem;
}

@media (max-width: 43.75em) {
  footer {
    padding-bottom: 1rem;
  }
}

@media (max-width: 43.75em) {
  footer .col {
    margin-bottom: 2rem;
  }

  footer .col.col-sm-6 {
    -ms-flex-order: 1;
        order: 1;
  }

  footer .col.col-sm-3 {
    -ms-flex-order: 2;
        order: 2;
    width: 50%;
  }
}

@media (max-width: 21.875em) {
  footer .col.col-sm-3 {
    width: 100%;
  }
}

footer h2 {
  text-transform: uppercase;
  margin-bottom: 2rem;
  font-size: 1.5em;
}

@media (max-width: 43.75em) {
  footer h2 {
    margin-bottom: 1rem;
    text-align: center;
  }
}

footer .stacked-links {
  margin: 0;
  padding: 0;
  width: 160px;
}

@media (max-width: 43.75em) {
  footer .stacked-links {
    margin: 0 auto;
  }
}

footer .stacked-links li {
  list-style: none;
  border-top: 1px solid #dfdfdf;
  padding: 0.3rem 0;
}

footer .stacked-links li a {
  color: #dfdfdf;
  font-size: 0.9em;
}

footer .newsletter-signup {
  max-width: 375px;
  padding: 1.5rem;
  background-color: #3a3a3a;
}

@media (max-width: 43.75em) {
  footer .newsletter-signup {
    margin: 0 auto;
  }
}

footer .newsletter-signup form {
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
  margin-right: -0.5rem;
  /* autoprefixer: off */
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 0;
}

footer .newsletter-signup form:after {
  content: '';
  display: block;
  clear: both;
}

footer .newsletter-signup .wpcf7-form > p {
  width: 100%;
  margin: 0;
}

footer .newsletter-signup .mc4wp-checkbox-contact-form-7 {
  display: block;
  line-height: 1;
}

footer .newsletter-signup .mc4wp-checkbox-contact-form-7 input[type=checkbox] {
  position: static;
  margin: 0.5rem 0.3rem 0 0.2rem;
}

footer .newsletter-signup .wpcf7-not-valid-tip,
footer .newsletter-signup .wpcf7-validation-errors {
  display: block;
  color: #ff3737;
  font-weight: bold;
}

footer .newsletter-signup .email-box {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  width: 100%;
  position: relative;
  float: left;
  min-height: 1px;
  width: 71.42857143%;
}

footer .newsletter-signup .submit-box {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  width: 100%;
  position: relative;
  float: left;
  min-height: 1px;
  width: 28.57142857%;
}

footer .newsletter-signup .submit-box input {
  max-height: 38px;
  height: 100%;
  width: 100%;
  padding: 0;
  font-size: 1em;
  line-height: 1;
}

.logo-contact {
  width: 165px;
  margin-left: auto;
  margin-top: -2rem;
  font-size: 0.895em;
}

@media (max-width: 43.75em) {
  .logo-contact {
    margin: -1rem auto 0;
    width: auto;
  }
}

.logo-contact svg {
  width: 90%;
  margin-left: auto;
  margin-bottom: 1rem;
  display: block;
}

@media (max-width: 43.75em) {
  .logo-contact svg {
    width: 100%;
  }
}

.logo-contact svg ~ p {
  text-align: right;
}

@media (max-width: 43.75em) {
  .logo-contact svg ~ p {
    text-align: left;
  }
}

.logo-contact .contact-li {
  padding: 0;
  list-style: none;
  margin-top: 1.5rem;
}

.logo-contact .contact-li li {
  margin-bottom: 0.5rem;
}

.logo-contact .contact-li li a {
  color: #dfdfdf;
}

.bottom-footer {
  margin-top: 3rem;
  font-size: 0.9em;
}

@media (max-width: 43.75em) {
  .bottom-footer {
    text-align: center;
    margin-top: 0;
  }
}

.bottom-footer p {
  display: inline-block;
  margin: 0;
  line-height: 1;
}

.bottom-footer .bottom-links {
  padding-left: 0;
  list-style: none;
  margin-left: -1rem;
  display: inline-block;
  margin: 0 0 0 2rem;
  position: relative;
  bottom: -3px;
}

.bottom-footer .bottom-links:after {
  content: '';
  display: block;
  clear: both;
}

.bottom-footer .bottom-links > li {
  float: left;
  margin-left: 1rem;
}

.bottom-footer .bottom-links > li > a {
  display: inline-block;
}

@media (max-width: 43.75em) {
  .bottom-footer .bottom-links {
    margin: 0.5rem 0 0;
  }
}

.bottom-footer .bottom-links li {
  line-height: 1;
}

@media (max-width: 43.75em) {
  .bottom-footer .bottom-links li:first-child {
    margin-left: 0;
  }
}

.bottom-footer .bottom-links li:after {
  content: "|";
  color: #dfdfdf;
  position: relative;
  right: -0.5rem;
}

.bottom-footer .bottom-links li:first-child:after {
  content: "";
}

.bottom-footer .bottom-links li:last-child:after {
  content: "";
}

.bottom-footer .bottom-links li a {
  color: #dfdfdf;
}

#big-slider {
  color: white;
  font-weight: 600;
  text-shadow: 1px 1px 5px #333;
}

@media (max-width: 43.75em) {
  #big-slider {
    font-size: 0.7em;
  }
}

#big-slider h1,
#big-slider .h2 {
  font-weight: 400;
  font-size: 4.9em;
  margin-bottom: 5rem;
}

@media (max-width: 43.75em) {
  #big-slider h1,
  #big-slider .h2 {
    margin-bottom: 2rem;
  }
}

#big-slider .sub {
  text-transform: uppercase;
  font-size: 1.5em;
  margin: 0 0 0 2rem;
  max-width: 500px;
}

@media (max-width: 43.75em) {
  #big-slider .sub {
    margin: 0;
  }
}

#big-slider .row {
  padding: 0 2rem;
}

@media (max-width: 43.75em) {
  #big-slider .row {
    padding: 0;
  }
}

#big-slider .ls-panel {
  height: 675px;
  padding: 4rem 0 6rem;
  background-position: bottom;
}

@media (max-width: 43.75em) {
  #big-slider .ls-panel {
    padding: 1rem 0 6rem;
    height: 556px;
  }
}

#big-slider .slide-body {
  font-family: "Titillium Web", sans-serif;
  line-height: 1.7;
  margin-top: 1.5rem;
  font-size: 24px;
  font-size: 1.4em;
}

#big-slider .btn {
  padding: 1rem 1.5rem;
  display: block;
  margin: 0;
  width: 265px;
}

.circle-callout-white {
  font-family: "Titillium Web", sans-serif;
  background: white;
  width: 225px;
  height: 225px;
  border-radius: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  text-shadow: none;
  color: #0066cc;
  text-align: center;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 600;
  font-size: 1.7em;
}

@media (max-width: 48.125em) {
  .circle-callout-white {
    display: none;
    visibility: hidden;
  }
}

.circle-callout-white p {
  margin: -2rem 0 0;
}

.circle-callout-white span {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.3em;
}

.pretty-ul {
  text-transform: capitalize;
  padding-left: 1.4rem;
  list-style: none;
  min-width: 450px;
  position: relative;
  z-index: 1;
}

.pretty-ul li {
  position: relative;
}

.pretty-ul li:before {
  content: "\e800";
  font-family: "fontello";
  position: relative;
  left: -20px;
}

.entry-header {
  height: 435px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  color: #ffffff;
  padding: 0 1rem;
  text-shadow: 1px 1px 1px #333;
  background-repeat: no-repeat;
  background-size: cover;
}

@media (max-width: 43.75em) {
  .entry-header {
    height: auto;
    padding: 2.5rem 1rem;
  }
}

.content article,
.content section {
  font-size: 0.95em;
  line-height: 1.4;
  color: #797979;
}

.content article h2,
.content section h2 {
  color: #0066cc;
  text-align: center;
  margin-bottom: 3.5rem;
}

@media (max-width: 43.75em) {
  .content article h2,
  .content section h2 {
    margin-bottom: 1.5rem;
  }
}

.content article h3,
.content section h3 {
  color: #0066cc;
}

.content article .media-left,
.content section .media-left {
  padding: 0 2rem 2rem 0;
}

@media (max-width: 43.75em) {
  .content article .media-left,
  .content section .media-left {
    display: block;
  }
}

.content article .sub-callout,
.content section .sub-callout {
  font-weight: bold;
  text-align: center;
  margin: 4rem 0 2rem;
  font-size: 1.2em;
}

body:not(.home) .content article:nth-child(2n+1),
body:not(.home)
.content section:nth-child(2n+1) {
  background: #01B1FA;
  color: #ffffff;
}

body:not(.home) .content article:nth-child(2n+1) h2,
body:not(.home) .content article:nth-child(2n+1) .h2,
body:not(.home) .content article:nth-child(2n+1) h3,
body:not(.home) .content article:nth-child(2n+1) .h3,
body:not(.home)
.content section:nth-child(2n+1) h2,
body:not(.home)
.content section:nth-child(2n+1) .h2,
body:not(.home)
.content section:nth-child(2n+1) h3,
body:not(.home)
.content section:nth-child(2n+1) .h3 {
  color: #ffffff;
}

body:not(.home) .content article:nth-child(2n+1) .sub-callout,
body:not(.home)
.content section:nth-child(2n+1) .sub-callout {
  color: #ffffff;
}

.content article.blue-theme,
.content section.blue-theme {
  background: #01B1FA;
  color: #ffffff;
}

.content article.blue-theme h2,
.content article.blue-theme .h2,
.content article.blue-theme h3,
.content article.blue-theme .h3,
.content section.blue-theme h2,
.content section.blue-theme .h2,
.content section.blue-theme h3,
.content section.blue-theme .h3 {
  color: #ffffff;
}

.content article.dark-blue-theme,
.content section.dark-blue-theme {
  background: #0066cc !important;
  color: #ffffff !important;
}

.content article.dark-blue-theme h2,
.content article.dark-blue-theme .h2,
.content article.dark-blue-theme h3,
.content article.dark-blue-theme .h3,
.content section.dark-blue-theme h2,
.content section.dark-blue-theme .h2,
.content section.dark-blue-theme h3,
.content section.dark-blue-theme .h3 {
  color: #ffffff !important;
}

.content article .btn,
.content section .btn {
  display: table;
  margin: 0 auto;
}

#testimonials {
  font-size: 1.3em;
  font-weight: bold;
  font-style: italic;
  text-align: center;
}

#testimonials .testimonial {
  padding: 0 3rem;
}

@media (max-width: 43.75em) {
  #testimonials .testimonial {
    padding: 0 1rem;
  }
}

#testimonials .testimonial-author {
  font-size: 0.82em;
  font-style: normal;
}

#testimonials .testimonial-author span {
  font-weight: normal;
}

.tab-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  border-bottom: 1px solid #0066cc;
}

.tab-nav ul {
  padding-left: 0;
  list-style: none;
  margin-left: -0.5rem;
  background: #0066cc;
  padding: 0.5rem 0.5rem 0;
  color: #ffffff;
  font-weight: bold;
}

.tab-nav ul:after {
  content: '';
  display: block;
  clear: both;
}

.tab-nav ul > li {
  float: left;
  margin-left: 0.5rem;
}

.tab-nav ul > li > a {
  display: inline-block;
}

.tab-nav ul li:first-child {
  margin: 0.35rem 0 0;
}

.tab-nav ul li a {
  background: #01B1FA;
  padding: 0.4rem 2rem;
  border-radius: 10px 10px 0 0;
  color: #ffffff;
  text-decoration: none;
}

.tab-nav ul li a:hover,
.tab-nav ul li a.active {
  background: #ffffff;
  color: #0066cc;
}

@media (max-width: 43.75em) {
  .tab-nav {
    border-bottom: 0;
  }

  .tab-nav ul {
    width: 100%;
    border-radius: 1rem 1rem 0 0;
  }

  .tab-nav ul li:first-child {
    margin: 0 0.5rem 0.5rem;
  }

  .tab-nav ul li:nth-child(2) {
    clear: left;
  }

  .tab-nav ul li a {
    padding: 0.5rem;
    border-radius: 0;
  }
}

#virtual-local-numbers .panel-wrapper,
#toll-free-plans .panel-wrapper {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 6rem;
}

@media (max-width: 43.75em) {
  #virtual-local-numbers .panel-wrapper,
  #toll-free-plans .panel-wrapper {
    display: block;
    margin-bottom: 0;
  }
}

#virtual-local-numbers .price-col,
#toll-free-plans .price-col {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -ms-flex-positive: 1;
      flex-grow: 1;
}

@media (max-width: 43.75em) {
  #virtual-local-numbers .price-col,
  #toll-free-plans .price-col {
    overflow: hidden;
    margin: 2rem 0;
  }

  #virtual-local-numbers .price-col .price-circle,
  #toll-free-plans .price-col .price-circle {
    margin: 0.5rem 2rem;
    float: left;
  }

  #virtual-local-numbers .price-col .price-details,
  #toll-free-plans .price-col .price-details {
    float: left;
    margin-top: 0.5rem;
  }

  #virtual-local-numbers .price-col .price-details h3,
  #toll-free-plans .price-col .price-details h3 {
    text-align: left;
    margin-bottom: 0.5rem;
  }

  #virtual-local-numbers .price-col .price-details p,
  #toll-free-plans .price-col .price-details p {
    text-align: left !important;
    margin-bottom: 0.5rem;
  }

  #virtual-local-numbers .price-col .price-details .btn,
  #toll-free-plans .price-col .price-details .btn {
    margin-left: 0;
  }

  #virtual-local-numbers .price-col .toll-guarantee,
  #toll-free-plans .price-col .toll-guarantee {
    margin: 0;
  }
}

@media (max-width: 33.125em) {
  #virtual-local-numbers .price-col .price-circle,
  #toll-free-plans .price-col .price-circle {
    margin: 0;
  }

  #virtual-local-numbers .price-col .price-col,
  #toll-free-plans .price-col .price-col {
    margin-bottom: 0;
  }

  #virtual-local-numbers .price-col .price-details,
  #toll-free-plans .price-col .price-details {
    width: 100%;
    margin-top: 1.5rem;
  }

  #virtual-local-numbers .price-col .price-details p,
  #toll-free-plans .price-col .price-details p {
    max-width: 100% !important;
  }
}

#virtual-local-numbers .price-col .btn,
#toll-free-plans .price-col .btn {
  margin-bottom: 1rem;
}

#virtual-local-numbers .toll-guarantee,
#toll-free-plans .toll-guarantee {
  font-family: "PT Sans";
  color: #0066cc;
  font-style: italic;
  font-size: 1.4em;
  text-align: center;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 300;
  margin-top: 2rem;
}

#virtual-local-numbers .toll-guarantee strong,
#toll-free-plans .toll-guarantee strong {
  font-weight: bold;
  font-size: 1.3em;
}

@media (max-width: 43.75em) {
  #virtual-local-numbers .ls-panel,
  #toll-free-plans .ls-panel {
    background-image: none !important;
  }
}

#virtual-local-numbers .ls-panel {
  background-repeat: no-repeat;
  background-position: center 40%;
  background-size: 50%;
}

#toll-free-plans .ls-panel {
  background-repeat: no-repeat;
  background-position: 40% bottom;
  background-size: 45%;
}

.price-circle {
  font-family: "PT Sans";
  font-size: 2.5em;
  color: #ffffff;
  background: #0066cc;
  display: inline-block;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 3rem 1.5rem;
  border-radius: 50%;
  width: 160px;
  height: 160px;
  margin: 3rem auto 2rem;
}

.number-callout {
  color: #0066cc;
  font-weight: bold;
  font-family: "PT Sans";
  text-transform: uppercase;
  text-align: center;
  font-size: 1.1em;
}

.why-choose .row-custom {
  margin-left: -2rem;
  margin-right: -2rem;
  margin-left: -2rem;
  margin-right: -2rem;
  /* autoprefixer: off */
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.why-choose .row-custom:after {
  content: '';
  display: block;
  clear: both;
}

.why-choose .col-custom {
  padding-left: 2rem;
  padding-right: 2rem;
  padding-left: 2rem;
  padding-right: 2rem;
  width: 100%;
  position: relative;
  float: left;
  min-height: 1px;
  width: 50%;
}

@media (max-width: 43.75em) {
  .why-choose .col-custom {
    width: 100%;
  }
}

.why-choose .box-elem {
  height: 400px;
  margin-bottom: 3.5rem;
  font-weight: bold;
  border: 2px solid #fff;
  padding: 2rem;
  background-position: center 4rem;
  background-repeat: no-repeat;
  padding-top: 14rem;
}

@media (max-width: 54.6875em) {
  .why-choose .box-elem {
    padding: 14rem 0.5rem 0.5rem;
  }
}

@media (max-width: 43.75em) {
  .why-choose .box-elem {
    margin-bottom: 1.5rem;
  }
}

.why-choose .box-elem h3 {
  text-transform: uppercase;
  font-size: 1.2em;
  text-align: center;
}

@media (max-width: 54.6875em) {
  .why-choose .box-elem h3 {
    font-size: 1.1em;
  }
}

.why-choose .box-elem p {
  font-size: 0.9em;
  max-width: 340px;
  margin: 0 auto;
}

.why-choose .box-elem.headphones {
  background-image: url(/content/themes/7g/dist/images/headphones_icon.png?c4f3c61e34cc274cebe57d31f6b8cda3);
}

.why-choose .box-elem.prize {
  background-image: url(/content/themes/7g/dist/images/awards_icon.png?6e2e700b8a3acff4405aa5e37c207399);
}

.why-choose .box-elem.gears {
  background-image: url(/content/themes/7g/dist/images/gears_icon.png?28d1e32bec6871256271ad95d2b01fdc);
}

.why-choose .box-elem.globe {
  background-image: url(/content/themes/7g/dist/images/globe_icon.png?30c786687166b891ae804176c65ad252);
}

.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5rem;
}

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5rem;
}

.aligncenter {
  clear: both;
  margin: 0 auto 1rem;
  display: block;
}

.alignleft .wp-caption-text {
  text-align: left;
}

.alignright .wp-caption-text {
  text-align: right;
}

.ls-responsive .ls-nav-right-arrow,
.ls-responsive .ls-nav-left-arrow {
  margin-top: -17px;
  top: 50%;
}

.contact-form p {
  margin-bottom: 1rem;
}

.contact-form input {
  max-width: 300px;
}

.contact-form .submit-box .btn {
  margin: 0;
}

.content article .map h2 {
  margin: 1.4rem 0 0;
  text-align: left;
}

.contact-container {
  margin: 0;
  padding: 0;
}

.contact-container ul {
  margin: 0 0 0 -0.3rem;
  padding: 0;
}

.contact-container li {
  float: left;
}

.contact-container li a {
  color: #434579;
}

.contact-container li a i {
  font-size: 2em;
}

.contact-container li a:focus,
.contact-container li a:active {
  outline: 0;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL21haW4uc2NzcyIsInNvdXJjZXMiOlsiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL21haW4uc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9hc3NldHMvc2Fzcy9fc2V0dGluZ3Muc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9ub2RlX21vZHVsZXMvYmFzZWd1aWRlL3Njc3MvYmFzZWd1aWRlLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9fc2V0dGluZ3Muc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9ub2RlX21vZHVsZXMvYmFzZWd1aWRlL3Njc3MvYmFzZWd1aWRlL3ZlbmRvci9fbXEuc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9ub2RlX21vZHVsZXMvYmFzZWd1aWRlL3Njc3MvYmFzZWd1aWRlL3ZlbmRvci9fbm9ybWFsaXplLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9fZnVuY3Rpb25zLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9fbWl4aW5zLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL19iYXNlLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL19zcGFjaW5nLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL25vZGVfbW9kdWxlcy9iYXNlZ3VpZGUvc2Nzcy9iYXNlZ3VpZGUvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL25vZGVfbW9kdWxlcy9iYXNlZ3VpZGUvc2Nzcy9iYXNlZ3VpZGUvY29tcG9uZW50cy9fdGFibGVzLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL19oZWxwZXJzLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9jb21wb25lbnRzL19wcmludC5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL25vZGVfbW9kdWxlcy9iYXNlZ3VpZGUvc2Nzcy9iYXNlZ3VpZGUvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9ncmlkL19jb250YWluZXIuc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9ub2RlX21vZHVsZXMvYmFzZWd1aWRlL3Njc3MvYmFzZWd1aWRlL2dyaWQvX3Jvdy5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL25vZGVfbW9kdWxlcy9iYXNlZ3VpZGUvc2Nzcy9iYXNlZ3VpZGUvZ3JpZC9fY29sdW1uLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL2Jhc2VndWlkZS9zY3NzL2Jhc2VndWlkZS9ncmlkL19jbGFzc2VzLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvbm9kZV9tb2R1bGVzL3N3ZWV0YWxlcnQyL2Rpc3Qvc3dlZXRhbGVydDIuY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL25vZGVfbW9kdWxlcy9jYXJkLWpzL2NhcmQtanMubWluLmNzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9hc3NldHMvc2Fzcy9fdHlwb2dyYXBoeS5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL19mb3Jtcy5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL19hbGVydHMuc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9hc3NldHMvc2Fzcy9fYmFzZS5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL19sYXlvdXQuc2NzcyIsIi92YXIvd3d3L2h0bWwvN2ctMl8wL2h0ZG9jcy9jb250ZW50L3RoZW1lcy83Zy9hc3NldHMvc2Fzcy9faGVhZGVyLnNjc3MiLCIvdmFyL3d3dy9odG1sLzdnLTJfMC9odGRvY3MvY29udGVudC90aGVtZXMvN2cvYXNzZXRzL3Nhc3MvX2Zvb3Rlci5zY3NzIiwiL3Zhci93d3cvaHRtbC83Zy0yXzAvaHRkb2NzL2NvbnRlbnQvdGhlbWVzLzdnL2Fzc2V0cy9zYXNzL19wYWdlcy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIiRtaWQtYnJlYWs6ODc1cHg7XG4kbW9iaWxlLW1lbnU6NzAwcHg7XG4kdGl0aWxsaXVtOiAnVGl0aWxsaXVtIFdlYicsIHNhbnMtc2VyaWY7XG4kcHQtc2FuczogJ1BUIFNhbnMnLCBzYW5zLXNlcmlmO1xuJHJvYm90bzogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cbiRwdXJwbGU6ICM0MzQ1Nzk7XG4kZGFyay1ibHVlOiAjMDA2NmNjO1xuJGJsdWU6ICMwMUIxRkE7XG4kYmxhY2s6ICM0MjQyNDI7XG4kZ3JheTogI2RmZGZkZjtcbiRkYXJrLWdyYXk6Izc5Nzk3OTtcblxuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdub2RlX21vZHVsZXMvYmFzZWd1aWRlL3Njc3MvYmFzZWd1aWRlLnNjc3MnO1xuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9zd2VldGFsZXJ0Mi9kaXN0L3N3ZWV0YWxlcnQyXCI7XG5AaW1wb3J0ICdub2RlX21vZHVsZXMvY2FyZC1qcy9jYXJkLWpzLm1pbic7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Zvcm1zJztcbkBpbXBvcnQgJ2FsZXJ0cyc7XG5AaW1wb3J0ICdiYXNlJztcbkBpbXBvcnQgJ2xheW91dCc7XG5AaW1wb3J0ICdoZWFkZXInO1xuQGltcG9ydCAnZm9vdGVyJztcbkBpbXBvcnQgJ3BhZ2VzJztcbiIsIi8vIEZvbnQgc2V0dGluZ3NcbiRmb250LXNpemUtYmFzZTogMWVtICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICRyb2JvdG87XG4kbGluZS1oZWlnaHQtYmFzZTogMS4zICFkZWZhdWx0O1xuJHNwYWNpbmctYmFzZTogMS41ZW0gIWRlZmF1bHQ7XG5cbiR0eXBlLXNjYWxlLWJhc2U6IDEuNDVlbSAhZGVmYXVsdDtcbiR0eXBlLXNjYWxlOiAxLjE1ICFkZWZhdWx0O1xuXG4kaGVhZGluZ3M6IChcblx0J2gxLCAuaDEnLCAnaDIsIC5oMicsICdoMywgLmgzJyxcblx0J2g0LCAuaDQnLCAnaDUsIC5oNScsICdoNiwgLmg2J1xuKSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLXNwYWNpbmc6IDAuNGVtICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAkdGl0aWxsaXVtO1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA3MDA7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6IDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuJGZvbnQtYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gQmFzZSBjb2xvcnMgYW5kIGxpbmtzXG4kdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuJGxpbmstY29sb3I6ICRkYXJrLWJsdWUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogJGJsdWUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuJGJ1dHRvbi1wYWRkaW5nLXZlcnRpY2FsOiAwLjM3NWVtICFkZWZhdWx0O1xuJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw6IDFlbSAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcblxuJGJ1dHRvbi1iZzogJGRhcmstYmx1ZSAhZGVmYXVsdDtcbiRidXR0b24taG92ZXItYmc6IGRhcmtlbigkYnV0dG9uLWJnLCAxMCUpICFkZWZhdWx0O1xuJGJ1dHRvbi1hY3RpdmUtYmc6ICRidXR0b24taG92ZXItYmcgIWRlZmF1bHQ7XG4kYnV0dG9uLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGJ1dHRvbi1ob3Zlci1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tYWN0aXZlLWNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAwLjY1ICFkZWZhdWx0O1xuXG4kYnV0dG9uLXNlbGVjdG9yOiAnLmJ0bicgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcbiR1c2UtY3VzdG9tLWZvcm1zOiB0cnVlICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAyLjM3NWVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmctdmVydGljYWw6IDAuMzc1ZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy1ob3Jpem9udGFsOiAwLjc1ZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogI2ZmZiAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvcjogJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAjYjZiNmI2ICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogZGFya2VuKCRpbnB1dC1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1kaXNhYmxlZC1iZzogI2VlZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogIzU1NSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICNjY2MgIWRlZmF1bHQ7XG5cbiRwbGFjZWhvbGRlci1jb2xvcjogbGlnaHRlbigkaW5wdXQtY29sb3IsIDI1JSk7XG5cbiRpbnB1dC1zZWxlY3RvcjogKFxuXHQnaW5wdXRbdHlwZT1cImVtYWlsXCJdJyxcblx0J2lucHV0W3R5cGU9XCJudW1iZXJcIl0nLFxuXHQnaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdJyxcblx0J2lucHV0W3R5cGU9XCJzZWFyY2hcIl0nLFxuXHQnaW5wdXRbdHlwZT1cInRlbFwiXScsXG5cdCdpbnB1dFt0eXBlPVwidGV4dFwiXScsXG5cdCdpbnB1dFt0eXBlPVwidXJsXCJdJyxcblx0J3RleHRhcmVhJyxcblx0J3NlbGVjdCdcbikgIWRlZmF1bHQ7XG5cbiRpY29uLXJhZGlvOiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyUyMzMzMycgZD0nTTQgMUMyLjMgMSAxIDIuMyAxIDRzMS4zIDMgMyAzIDMtMS4zIDMtM1M1LjcgMSA0IDF6Jy8lM0UlM0Mvc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kaWNvbi1yYWRpby1mYWxsYmFjazogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUIxU1VSQlZDaFRZeUFFR0tFMGk2S2lZak9Ram9Gd0daWndjbksyWHJ0MjdRc3ppQWVVYkdWa1pLd0FZajRvdHZuejV3L2IrL2Z2ZHpPQjFUTXcrRUJwT1BqLy83ODdpSVlwd0FuQUNvQkc3Z0R6VU1GZUVBRjJnNlNrNUhHUW5VQmo1WURjVDBBOEQrakkydGV2WC84Q3llTUJEQXdBUTR3Z1pxME8vV1FBQUFBQVNVVk9SSzVDWUlJPScgIWRlZmF1bHQ7XG4kaWNvbi1jaGVja2JveDogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPSclMjMzMzMnIGQ9J002LjQgMUw1LjcgMS43IDIuOSA0LjUgMi4xIDMuNyAxLjQgMyAwIDQuNGwwLjcgMC43IDEuNSAxLjUgMC43IDAuNyAwLjctMC43IDMuNS0zLjUgMC43LTAuN0w2LjQgMSA2LjQgMXonLyUzRSUzQy9zdmclM0VcIiAhZGVmYXVsdDtcbiRpY29uLWNoZWNrYm94LWZhbGxiYWNrOiAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBZ0FBQUFJQ0FZQUFBREVENzZMQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQnpTVVJCVkNoVFl5QUVHS0UwQ2pBMk50YjQvLy8vZEdabTVraG1xQmdjUUNYM016SXk2Z0JwQmtaazFmLysvUk9BU2tvQTZUVzh2THlSVENCSm9JREQzNzkvOTZOTEhqeDQ4QThUU0NkUTRBWlFRZ05kRW1RbDJKR21wcVlTSUJPQXpDdklraWdBNkJZUmUzdDdGaWdYQ2hnWUFHT05SVXRMNUxkNkFBQUFBRWxGVGtTdVFtQ0MnICFkZWZhdWx0O1xuJGljb24tc2VsZWN0OiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzYnIHZpZXdCb3g9JzAgMCAxMiA2JyUzRSUzQ3BhdGggZmlsbD0nJTIzMzMzJyBkPSdNMCAwbDYgNiA2LTZoLTEyeicvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGljb24tc2VsZWN0LWZhbGxiYWNrOiAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBd0FBQUFHQ0FZQUFBRDM3bitCQUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQmxTVVJCVkNoVFl6UXlNcXBuWkdSc1lDQUMvUC8vdjRINStmUG5CeVVsSlJtQW1oeWc0bGdCU1BHNWMrY2FtVUVjUXBwZ2lrRnNzQVlRd0tVSldURUl3RFdBQUVpVGxKU1VBSkJwQWVJREZSY0NGWGVDMkhpQnNiRnhQekF3Q3FCY0pNREFBQUQxY2pFQ0t1bG51Z0FBQUFCSlJVNUVya0pnZ2c9PScgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4kdGFibGUtcGFkZGluZy12ZXJ0aWNhbDogMC40ZW0gIWRlZmF1bHQ7XG4kdGFibGUtcGFkZGluZy1ob3Jpem9udGFsOiAwLjZlbSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICNiNmI2YjYgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWtwb2ludHNcbiRtcS1icmVha3BvaW50czogKFxuXHR4czogNDgwcHgsXG5cdHNtOiA3NjhweCxcblx0bWQ6IDk5MnB4LFxuXHRsZzogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG4kbXEtYnJlYWtwb2ludHMtbGlzdDogbWFwLWtleXMoJG1xLWJyZWFrcG9pbnRzKSAhZGVmYXVsdDtcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogbnRoKCRtcS1icmVha3BvaW50cy1saXN0LCBsZW5ndGgoJG1xLWJyZWFrcG9pbnRzLWxpc3QpKSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIHNldHRpbmdzXG4kZ3JpZC1mbGV4Ym94OiB0cnVlO1xuJGdyaWQtY29sdW1ucy1vdXRwdXQ6IHRydWUgIWRlZmF1bHQ7XG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlcjogMzZweCAhZGVmYXVsdDtcbiRncmlkLWNvbnRhaW5lcjogbnRoKG1hcC12YWx1ZXMoJG1xLWJyZWFrcG9pbnRzKSwgbGVuZ3RoKCRtcS1icmVha3BvaW50cy1saXN0KSkgIWRlZmF1bHQ7XG4iLCIvKiEgQmFzZWd1aWRlIHYxLjkuMCB8IE1JVCBMaWNlbnNlIHwgaHR0cDovL2Jhc2VndWkuZGUgKi9cclxuXHJcbi8vIFNldHRpbmdzXHJcbkBpbXBvcnQgJ2Jhc2VndWlkZS9zZXR0aW5ncyc7XHJcblxyXG4vLyBWZW5kb3JcclxuQGltcG9ydCAnYmFzZWd1aWRlL3ZlbmRvci9tcSc7XHJcbkBpbXBvcnQgJ2Jhc2VndWlkZS92ZW5kb3Ivbm9ybWFsaXplJztcclxuXHJcbi8vIEZ1bmN0aW9ucyBhbmQgTWl4aW5zXHJcbkBpbXBvcnQgJ2Jhc2VndWlkZS9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICdiYXNlZ3VpZGUvbWl4aW5zJztcclxuXHJcbi8vIENvbXBvbmVudHNcclxuQGltcG9ydCAnYmFzZWd1aWRlL2NvbXBvbmVudHMvYmFzZSc7XHJcbkBpbXBvcnQgJ2Jhc2VndWlkZS9jb21wb25lbnRzL3NwYWNpbmcnO1xyXG5AaW1wb3J0ICdiYXNlZ3VpZGUvY29tcG9uZW50cy90eXBvZ3JhcGh5JztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2NvbXBvbmVudHMvZm9ybXMnO1xyXG5AaW1wb3J0ICdiYXNlZ3VpZGUvY29tcG9uZW50cy9idXR0b25zJztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2NvbXBvbmVudHMvdGFibGVzJztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2NvbXBvbmVudHMvaGVscGVycyc7XHJcbkBpbXBvcnQgJ2Jhc2VndWlkZS9jb21wb25lbnRzL3ByaW50JztcclxuXHJcbi8vIEdyaWRcclxuQGltcG9ydCAnYmFzZWd1aWRlL2dyaWQvZ3V0dGVyJztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2dyaWQvY29udGFpbmVyJztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2dyaWQvcm93JztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2dyaWQvY29sdW1uJztcclxuQGltcG9ydCAnYmFzZWd1aWRlL2dyaWQvY2xhc3Nlcyc7XHJcbiIsIi8vIFR5cG9ncmFwaHkgYW5kIFNwYWNpbmdcclxuJGZvbnQtc2l6ZS1iYXNlOiAxZW0gIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1iYXNlOiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LXdlaWdodC1iYXNlOiA0MDAgIWRlZmF1bHQ7XHJcbiRmb250LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xyXG4kbGluZS1oZWlnaHQtYmFzZTogMS41ICFkZWZhdWx0O1xyXG4kc3BhY2luZy1iYXNlOiAxLjVlbSAhZGVmYXVsdDtcclxuXHJcbiR0eXBlLXNjYWxlLWJhc2U6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcclxuJHR5cGUtc2NhbGU6IDEuMzMzICFkZWZhdWx0OyAvLyBQZXJmZWN0IEZvdXJ0aCwgc2VlOiBodHRwOi8vdHlwZS1zY2FsZS5jb20vXHJcblxyXG4kaGVhZGluZ3M6IChcclxuXHQnaDEsIC5oMScsICdoMiwgLmgyJywgJ2gzLCAuaDMnLFxyXG5cdCdoNCwgLmg0JywgJ2g1LCAuaDUnLCAnaDYsIC5oNidcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRoZWFkaW5ncy1zcGFjaW5nOiAwLjRlbSAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xyXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDcwMCAhZGVmYXVsdDtcclxuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAxLjIgIWRlZmF1bHQ7XHJcbiRoZWFkaW5ncy1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcclxuXHJcbiR0ZXh0LWNvbG9yOiAjMzMzICFkZWZhdWx0O1xyXG4kbGluay1jb2xvcjogIzAyODNmMSAhZGVmYXVsdDtcclxuJGxpbmstaG92ZXItY29sb3I6ICRsaW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gQnV0dG9uc1xyXG4kYnV0dG9uLXNlbGVjdG9yOiAnLmJ0bicgIWRlZmF1bHQ7XHJcbiRidXR0b24tcGFkZGluZy12ZXJ0aWNhbDogMC4zNzVlbSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1wYWRkaW5nLWhvcml6b250YWw6IDFlbSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1iZzogIzAyNzVkOCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1ob3Zlci1iZzogZGFya2VuKCRidXR0b24tYmcsIDEwJSkgIWRlZmF1bHQ7XHJcbiRidXR0b24tYWN0aXZlLWJnOiAkYnV0dG9uLWhvdmVyLWJnICFkZWZhdWx0O1xyXG4kYnV0dG9uLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xyXG4kYnV0dG9uLWhvdmVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xyXG4kYnV0dG9uLWFjdGl2ZS1jb2xvcjogJGJ1dHRvbi1ob3Zlci1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJvcmRlci1yYWRpdXM6IDAgIWRlZmF1bHQ7XHJcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLW91dCwgY29sb3IgMC4xNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XHJcbiRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTogMC42NSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBGb3Jtc1xyXG4kdXNlLWN1c3RvbS1mb3JtczogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1zZWxlY3RvcjogKFxyXG5cdCdpbnB1dFt0eXBlPVwiZW1haWxcIl0nLFxyXG5cdCdpbnB1dFt0eXBlPVwibnVtYmVyXCJdJyxcclxuXHQnaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdJyxcclxuXHQnaW5wdXRbdHlwZT1cInNlYXJjaFwiXScsXHJcblx0J2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxyXG5cdCdpbnB1dFt0eXBlPVwidGV4dFwiXScsXHJcblx0J2lucHV0W3R5cGU9XCJ1cmxcIl0nLFxyXG5cdCd0ZXh0YXJlYScsXHJcblx0J3NlbGVjdCdcclxuKSAhZGVmYXVsdDtcclxuXHJcbiRpbnB1dC1oZWlnaHQ6IDIuMzc1ZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1wYWRkaW5nLXZlcnRpY2FsOiAwLjM3NWVtICFkZWZhdWx0O1xyXG4kaW5wdXQtcGFkZGluZy1ob3Jpem9udGFsOiAwLjc1ZW0gIWRlZmF1bHQ7XHJcbiRpbnB1dC1iZzogI2ZmZiAhZGVmYXVsdDtcclxuJGlucHV0LWNvbG9yOiAkdGV4dC1jb2xvciAhZGVmYXVsdDtcclxuJGlucHV0LWJvcmRlci1jb2xvcjogI2I2YjZiNiAhZGVmYXVsdDtcclxuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogZGFya2VuKCRpbnB1dC1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwICFkZWZhdWx0O1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2Utb3V0ICFkZWZhdWx0O1xyXG4kaW5wdXQtZGlzYWJsZWQtYmc6ICNlZWUgIWRlZmF1bHQ7XHJcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogIzU1NSAhZGVmYXVsdDtcclxuJGlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogI2NjYyAhZGVmYXVsdDtcclxuXHJcbiRwbGFjZWhvbGRlci1jb2xvcjogbGlnaHRlbigkaW5wdXQtY29sb3IsIDUwJSkgIWRlZmF1bHQ7XHJcblxyXG4kaWNvbi1yYWRpbzogXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPSclMjMzMzMnIGQ9J000IDFDMi4zIDEgMSAyLjMgMSA0czEuMyAzIDMgMyAzLTEuMyAzLTNTNS43IDEgNCAxeicvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xyXG4kaWNvbi1yYWRpby1mYWxsYmFjazogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUIxU1VSQlZDaFRZeUFFR0tFMGk2S2lZak9Ram9Gd0daWndjbksyWHJ0MjdRc3ppQWVVYkdWa1pLd0FZajRvdHZuejV3L2IrL2Z2ZHpPQjFUTXcrRUJwT1BqLy83ODdpSVlwd0FuQUNvQkc3Z0R6VU1GZUVBRjJnNlNrNUhHUW5VQmo1WURjVDBBOEQrakkydGV2WC84Q3llTUJEQXdBUTR3Z1pxME8vV1FBQUFBQVNVVk9SSzVDWUlJPScgIWRlZmF1bHQ7XHJcbiRpY29uLWNoZWNrYm94OiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCclM0UlM0NwYXRoIGZpbGw9JyUyMzMzMycgZD0nTTYuNCAxTDUuNyAxLjcgMi45IDQuNSAyLjEgMy43IDEuNCAzIDAgNC40bDAuNyAwLjcgMS41IDEuNSAwLjcgMC43IDAuNy0wLjcgMy41LTMuNSAwLjctMC43TDYuNCAxIDYuNCAxeicvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xyXG4kaWNvbi1jaGVja2JveC1mYWxsYmFjazogJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBQUJ6U1VSQlZDaFRZeUFFR0tFMENqQTJOdGI0Ly8vL2RHWm01a2htcUJnY1FDWDNNekl5NmdCcEJrWmsxZi8rL1JPQVNrb0E2VFc4dkx5UlRDQkpvSUREMzc5Lzk2TkxIang0OEE4VFNDZFE0QVpRUWdOZEVtUWwySkdtcHFZU0lCT0F6Q3ZJa2lnQTZCWVJlM3Q3RmlnWENoZ1lBR09OUlV0TDVMZDZBQUFBQUVsRlRrU3VRbUNDJyAhZGVmYXVsdDtcclxuJGljb24tc2VsZWN0OiBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzYnIHZpZXdCb3g9JzAgMCAxMiA2JyUzRSUzQ3BhdGggZmlsbD0nJTIzMzMzJyBkPSdNMCAwbDYgNiA2LTZoLTEyeicvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xyXG4kaWNvbi1zZWxlY3QtZmFsbGJhY2s6ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUF3QUFBQUdDQVlBQUFEMzduK0JBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFCbFNVUkJWQ2hUWXpReU1xcG5aR1JzWUNBQy9QLy92NEg1K2ZQbkJ5VWxKUm1BbWh5ZzRsZ0JTUEc1YytjYW1VRWNRcHBnaWtGc3NBWVF3S1VKV1RFSXdEV0FBRWlUbEpTVUFKQnBBZUlERlJjQ0ZYZUMySGlCc2JGeFB6QXdDcUJjSk1EQUFBRDFjakVDS3VsbnVnQUFBQUJKUlU1RXJrSmdnZz09JyAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBUYWJsZXNcclxuJHRhYmxlLXNlbGVjdG9yOiAnLnRhYmxlJyAhZGVmYXVsdDtcclxuJHRhYmxlLXBhZGRpbmctdmVydGljYWw6IDAuNGVtICFkZWZhdWx0O1xyXG4kdGFibGUtcGFkZGluZy1ob3Jpem9udGFsOiAwLjZlbSAhZGVmYXVsdDtcclxuJHRhYmxlLWJvcmRlci1jb2xvcjogI2RlZGVkZSAhZGVmYXVsdDtcclxuJHRhYmxlLXN0cmlwZS1iZzogI2VmZWZlZiAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBCcmVha3BvaW50c1xyXG4kbXEtYnJlYWtwb2ludHM6IChcclxuXHR4czogNDgwcHgsXHJcblx0c206IDc2OHB4LFxyXG5cdG1kOiA5OTJweCxcclxuXHRsZzogMTIwMHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG4kbXEtYnJlYWtwb2ludHMtbGlzdDogbWFwLWtleXMoJG1xLWJyZWFrcG9pbnRzKSAhZGVmYXVsdDtcclxuJG1xLXN0YXRpYy1icmVha3BvaW50OiBudGgoJG1xLWJyZWFrcG9pbnRzLWxpc3QsIGxlbmd0aCgkbXEtYnJlYWtwb2ludHMtbGlzdCkpICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIEdyaWRcclxuJGdyaWQtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XHJcbiRncmlkLWNvbHVtbnMtb3V0cHV0OiB0cnVlICFkZWZhdWx0O1xyXG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcclxuJGdyaWQtZ3V0dGVyOiAzMHB4ICFkZWZhdWx0O1xyXG4kZ3JpZC1jb250YWluZXI6IG50aChtYXAtdmFsdWVzKCRtcS1icmVha3BvaW50cyksIGxlbmd0aCgkbXEtYnJlYWtwb2ludHMtbGlzdCkpICFkZWZhdWx0O1xyXG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcclxuICAgICAgICAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEvcHVsbC8xMFxyXG5cclxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XHJcbi8vLyBAdHlwZSBOdW1iZXIgKHVuaXQpXHJcbiRtcS1iYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcclxuXHJcbi8vLyBSZXNwb25zaXZlIG1vZGVcclxuLy8vXHJcbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcclxuLy8vIChJRSA8PSA4LCBGaXJlZm94IDw9IDMsIE9wZXJhIDw9IDkpXHJcbi8vL1xyXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxyXG4vLy8gd2hlcmUgQG1lZGlhIHF1ZXJpZXMgYXJlIHJhc3Rlcml6ZWRcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gb2xkLWllLnNjc3NcclxuLy8vICAkbXEtcmVzcG9uc2l2ZTogZmFsc2U7XHJcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbi8vLyAgICAgICAgICAgICAgICAgICAvLyBsYXJnZXIgYnJlYWtwb2ludHMgd2lsbCBiZSBpZ25vcmVkXHJcbi8vL1xyXG4vLy8gQHR5cGUgQm9vbGVhblxyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb2ZmIERpc2FibGVkIHJlc3BvbnNpdmUgbW9kZSBkb2N1bWVudGF0aW9uXHJcbiRtcS1yZXNwb25zaXZlOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8vIEJyZWFrcG9pbnQgbGlzdFxyXG4vLy9cclxuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXHJcbi8vLyBhY3Jvc3MgdGVhbSBtZW1iZXJzLiBJdCB3aWxsIGltcHJvdmUgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXHJcbi8vLyBzdGFrZWhvbGRlcnMsIGRlc2lnbmVycywgZGV2ZWxvcGVycywgYW5kIHRlc3RlcnMuXHJcbi8vL1xyXG4vLy8gQHR5cGUgTWFwXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50IEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuJG1xLWJyZWFrcG9pbnRzOiAoXHJcbiAgICBtb2JpbGU6ICAzMjBweCxcclxuICAgIHRhYmxldDogIDc0MHB4LFxyXG4gICAgZGVza3RvcDogOTgwcHgsXHJcbiAgICB3aWRlOiAgICAxMzAwcHhcclxuKSAhZGVmYXVsdDtcclxuXHJcbi8vLyBTdGF0aWMgYnJlYWtwb2ludCAoZm9yIGZpeGVkLXdpZHRoIGxheW91dHMpXHJcbi8vL1xyXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXHJcbi8vLyBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgd2lkdGggZm9yIHRoZSBmaXhlZC13aWR0aCBsYXlvdXRcclxuLy8vIChpLmUuIHdoZW4gJG1xLXJlc3BvbnNpdmUgaXMgc2V0IHRvICdmYWxzZScpIGluIGEgb2xkLWllLnNjc3NcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gdGFibGV0LW9ubHkuc2Nzc1xyXG4vLy8gIC8vXHJcbi8vLyAgLy8gSWdub3JlIGFsbCBzdHlsZXMgYWJvdmUgdGFibGV0IGJyZWFrcG9pbnQsXHJcbi8vLyAgLy8gYW5kIGZpeCB0aGUgc3R5bGVzIChlLmcuIGxheW91dCkgYXQgdGFibGV0IHdpZHRoXHJcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xyXG4vLy8gICRtcS1zdGF0aWMtYnJlYWtwb2ludDogdGFibGV0O1xyXG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvIHRhYmxldFxyXG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxyXG4vLy9cclxuLy8vIEB0eXBlIFN0cmluZ1xyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuJG1xLXN0YXRpYy1icmVha3BvaW50OiBkZXNrdG9wICFkZWZhdWx0O1xyXG5cclxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcclxuLy8vXHJcbi8vLyBJZiB5b3Ugd2FudCB0byBkaXNwbGF5IHRoZSBjdXJyZW50bHkgYWN0aXZlIGJyZWFrcG9pbnQgaW4gdGhlIHRvcFxyXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcclxuLy8vIHRvIHRoaXMgbGlzdCwgb3JkZXJlZCBieSB3aWR0aCwgZS5nLiAobW9iaWxlLCB0YWJsZXQsIGRlc2t0b3ApLlxyXG4vLy9cclxuLy8vIEB0eXBlIG1hcFxyXG4kbXEtc2hvdy1icmVha3BvaW50czogKCkgIWRlZmF1bHQ7XHJcblxyXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcclxuLy8vIEJ5IGRlZmF1bHQgc2Fzcy1tcSB1c2VzIGFuIFwiYWxsXCIgbWVkaWEgdHlwZSAoYEBtZWRpYSBhbGwgYW5kIOKApmApXHJcbi8vL1xyXG4vLy8gQHR5cGUgU3RyaW5nXHJcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI2NoYW5naW5nLW1lZGlhLXR5cGUgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xyXG4kbXEtbWVkaWEtdHlwZTogYWxsICFkZWZhdWx0O1xyXG5cclxuLy8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UtZm9udC1zaXplICgkbXEtYmFzZS1mb250LXNpemUpIC0gYDxib2R5PmAgZm9udCBzaXplXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gICRmb250LXNpemUtaW4tZW1zOiBtcS1weDJlbSgxNnB4KTtcclxuLy8vICBwIHsgZm9udC1zaXplOiBtcS1weDJlbSgxNnB4KTsgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyAkbXEtYmFzZS1mb250LXNpemVcclxuLy8vIEByZXR1cm5zIHtOdW1iZXJ9XHJcbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XHJcbiAgICBAaWYgdW5pdGxlc3MoJHB4KSB7XHJcbiAgICAgICAgQHdhcm4gXCJBc3N1bWluZyAjeyRweH0gdG8gYmUgaW4gcGl4ZWxzLCBhdHRlbXB0aW5nIHRvIGNvbnZlcnQgaXQgaW50byBwaXhlbHMuXCI7XHJcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XHJcbiAgICB9IEBlbHNlIGlmIHVuaXQoJHB4KSA9PSBlbSB7XHJcbiAgICAgICAgQHJldHVybiAkcHg7XHJcbiAgICB9XHJcbiAgICBAcmV0dXJuICgkcHggLyAkYmFzZS1mb250LXNpemUpICogMWVtO1xyXG59XHJcblxyXG4vLy8gR2V0IGEgYnJlYWtwb2ludCdzIHdpZHRoXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aChkZXNrdG9wKSkge31cclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBWYWx1ZSBpbiBwaXhlbHNcclxuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG5hbWUpIHtcclxuICAgICAgICBAcmV0dXJuIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAd2FybiBcIkJyZWFrcG9pbnQgI3skbmFtZX0gd2Fzbid0IGZvdW5kIGluICRicmVha3BvaW50cy5cIjtcclxuICAgIH1cclxufVxyXG5cclxuLy8vIE1lZGlhIFF1ZXJ5IG1peGluXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkZnJvbSAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBCb29sZWFufSAkdW50aWwgKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lZGlhLXR5cGUgKCRtcS1tZWRpYS10eXBlKSAtIE1lZGlhIHR5cGU6IHNjcmVlbiwgcHJpbnTigKZcclxuLy8vXHJcbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcclxuLy8vIEBpZ25vcmUgQHBhcmFtIHtNYXB9ICRicmVha3BvaW50cyAoJG1xLWJyZWFrcG9pbnRzKVxyXG4vLy8gQGlnbm9yZSBAcGFyYW0ge1N0cmluZ30gJHN0YXRpYy1icmVha3BvaW50ICgkbXEtc3RhdGljLWJyZWFrcG9pbnQpXHJcbi8vL1xyXG4vLy8gQGNvbnRlbnQgc3R5bGluZyBydWxlcywgd3JhcHBlZCBpbnRvIGEgQG1lZGlhIHF1ZXJ5IHdoZW4gJHJlc3BvbnNpdmUgaXMgdHJ1ZVxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zdGF0aWMtYnJlYWtwb2ludFxyXG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cclxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLWdldC1icmVha3BvaW50LXdpZHRoXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gIC5lbGVtZW50IHtcclxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiBtb2JpbGUpIHtcclxuLy8vICAgICAgY29sb3I6IHJlZDtcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XHJcbi8vLyAgICAgIGNvbG9yOiBibHVlO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEobW9iaWxlLCB0YWJsZXQpIHtcclxuLy8vICAgICAgY29sb3I6IGdyZWVuO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEoJGZyb206IHRhYmxldCwgJGFuZDogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScpIHtcclxuLy8vICAgICAgY29sb3I6IHRlYWw7XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcSg5NTBweCkge1xyXG4vLy8gICAgICBjb2xvcjogaG90cGluaztcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKHRhYmxldCwgJG1lZGlhLXR5cGU6IHNjcmVlbikge1xyXG4vLy8gICAgICBjb2xvcjogaG90cGluaztcclxuLy8vICAgIH1cclxuLy8vICAgIC8vIEFkdmFuY2VkIHVzZTpcclxuLy8vICAgICRteS1icmVha3BvaW50czogKEw6IDkwMHB4LCBYTDogMTIwMHB4KTtcclxuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcclxuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG5AbWl4aW4gbXEoXHJcbiAgICAkZnJvbTogZmFsc2UsXHJcbiAgICAkdW50aWw6IGZhbHNlLFxyXG4gICAgJGFuZDogZmFsc2UsXHJcbiAgICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXHJcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcclxuICAgICRyZXNwb25zaXZlOiAkbXEtcmVzcG9uc2l2ZSxcclxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbikge1xyXG4gICAgJG1pbi13aWR0aDogMDtcclxuICAgICRtYXgtd2lkdGg6IDA7XHJcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xyXG5cclxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxyXG4gICAgQGlmICRmcm9tIHtcclxuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0oJGZyb20pO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbShtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcclxuICAgIEBpZiAkdW50aWwge1xyXG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0oJHVudGlsKTtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgJG1heC13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpKSAtIC4wMWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZGlzYWJsZWQsIHJhc3Rlcml6ZSB0aGUgb3V0cHV0IG91dHNpZGUgQG1lZGlhIGJsb2Nrc1xyXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cclxuICAgIEBpZiAkcmVzcG9uc2l2ZSA9PSBmYWxzZSB7XHJcbiAgICAgICAgJHN0YXRpYy1icmVha3BvaW50LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkc3RhdGljLWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XHJcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcclxuXHJcbiAgICAgICAgLy8gT3V0cHV0IG9ubHkgcnVsZXMgdGhhdCBzdGFydCBhdCBvciBzcGFuIG91ciB0YXJnZXQgd2lkdGhcclxuICAgICAgICBAaWYgKFxyXG4gICAgICAgICAgICAkYW5kID09IGZhbHNlXHJcbiAgICAgICAgICAgIGFuZCAkbWluLXdpZHRoIDw9ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgYW5kIChcclxuICAgICAgICAgICAgICAgICR1bnRpbCA9PSBmYWxzZSBvciAkbWF4LXdpZHRoID49ICR0YXJnZXQtd2lkdGhcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaWYgJG1pbi13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWluLXdpZHRoOiAjeyRtaW4td2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cclxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxyXG5cclxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcclxuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcclxuICAgICAgICAgICAgJG1lZGlhLXR5cGU6ICcnO1xyXG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy8gQWRkIGEgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICBAaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludCh0dnNjcmVlbiwgMTkyMHB4KTtcclxuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cclxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcclxuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkd2lkdGgpO1xyXG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XHJcbn1cclxuXHJcbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3NcclxuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xyXG4vLy9cclxuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xyXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xyXG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XHJcbiAgICBib2R5OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XHJcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XHJcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcclxuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTAwO1xyXG5cclxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXHJcbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XHJcbiAgICAgICAgICAgICR3aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xyXG4gICAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcclxufVxyXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2NS4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXHJcblxyXG4vKipcclxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cclxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxyXG4gKi9cclxuXHJcbi8qIERvY3VtZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cclxufVxyXG5cclxuLyogU2VjdGlvbnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICovXHJcblxyXG5ib2R5IHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICovXHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbm5hdixcclxuc2VjdGlvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXHJcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXHJcbiAqL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8qIEdyb3VwaW5nIGNvbnRlbnRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAqL1xyXG5cclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5tYWluIHsgLyogMSAqL1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxyXG4gKi9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXHJcbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxyXG4gKi9cclxuXHJcbmhyIHtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xyXG4gIGhlaWdodDogMDsgLyogMSAqL1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxucHJlIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cclxuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xyXG59XHJcblxyXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxyXG4gKi9cclxuXHJcbmEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXHJcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXHJcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxyXG4gKi9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lLXdpZHRoOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxyXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmFiYnJbdGl0bGVdIHtcclxuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxyXG4gKi9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnNhbXAge1xyXG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xyXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXHJcbiAqL1xyXG5cclxuZGZuIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXHJcbiAqL1xyXG5cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbnNtYWxsIHtcclxuICBmb250LXNpemU6IDgwJTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxyXG4gKiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG5zdXAge1xyXG4gIHRvcDogLTAuNWVtO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXHJcbiAqL1xyXG5cclxuYXVkaW8sXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxyXG4gKi9cclxuXHJcbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cclxuICovXHJcblxyXG5pbWcge1xyXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxyXG4gKi9cclxuXHJcbnN2Zzpub3QoOnJvb3QpIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBGb3Jtc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXHJcbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cclxuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cclxuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xyXG4gIG1hcmdpbjogMDsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXHJcbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCB7IC8qIDEgKi9cclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxyXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3QgeyAvKiAxICovXHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcclxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxyXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5bdHlwZT1cInJlc2V0XCJdLFxyXG5bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcclxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIGJvcmRlci1zdHlsZTogbm9uZTtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxyXG4gKi9cclxuXHJcbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcclxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXHJcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcclxuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cclxuICovXHJcblxyXG5maWVsZHNldCB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcclxuICBtYXJnaW46IDAgMnB4O1xyXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXHJcbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cclxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxyXG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5sZWdlbmQge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xyXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXHJcbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXHJcbiAgcGFkZGluZzogMDsgLyogMyAqL1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4gKi9cclxuXHJcbnByb2dyZXNzIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXHJcbiAqL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxyXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxyXG4gKi9cclxuXHJcblt0eXBlPVwiY2hlY2tib3hcIl0sXHJcblt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cclxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXHJcbiAqL1xyXG5cclxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXHJcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxyXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXHJcbiAqL1xyXG5cclxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cclxuICBmb250OiBpbmhlcml0OyAvKiAyICovXHJcbn1cclxuXHJcbi8qIEludGVyYWN0aXZlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKlxyXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cclxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxyXG4gKi9cclxuXHJcbmRldGFpbHMsIC8qIDEgKi9cclxubWVudSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5zdW1tYXJ5IHtcclxuICBkaXNwbGF5OiBsaXN0LWl0ZW07XHJcbn1cclxuXHJcbi8qIFNjcmlwdGluZ1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxyXG4gKi9cclxuXHJcbmNhbnZhcyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXHJcbiAqL1xyXG5cclxudGVtcGxhdGUge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEhpZGRlblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cclxuICovXHJcblxyXG5baGlkZGVuXSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCJAZnVuY3Rpb24gcG93KCRudW1iZXIsICRleHApIHtcclxuXHQkcmV0dXJuOiAxO1xyXG5cclxuXHRAaWYgJGV4cCA+IDAge1xyXG5cdFx0Ly8gSWYgdGhlIGV4cG9uZW50IGlzIHBvc2l0aXZlIHRoZW4gbXVsdGlwbHkgaXRcclxuXHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGV4cCB7XHJcblx0XHRcdCRyZXR1cm46ICRyZXR1cm4gKiAkbnVtYmVyO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRAZWxzZSBpZiAkZXhwIDwgMCB7XHJcblx0XHQvLyBJZiB0aGUgbnVtYmVyIGlzIDAgb3IgbmVnYXRpdmUgdGhlbiBkaXZpZGUgaXRcclxuXHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggLSRleHAge1xyXG5cdFx0XHQkcmV0dXJuOiAkcmV0dXJuIC8gJG51bWJlcjtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEByZXR1cm4gJHJldHVybjtcclxufVxyXG5cclxuQGZ1bmN0aW9uIG1vZHVsYXItc2NhbGUoJG51bWJlciwgJGJhc2U6ICR0eXBlLXNjYWxlLWJhc2UpIHtcclxuXHQkc2l6ZTogcG93KCR0eXBlLXNjYWxlLCAkbnVtYmVyKSAqICRiYXNlO1xyXG5cclxuXHRAcmV0dXJuICRzaXplO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XHJcblx0QHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0by1yZW0oJHZhbHVlLCAkYmFzZTogMTZweCkge1xyXG5cdEBpZiAodW5pdCgkdmFsdWUpICE9IHJlbSkgYW5kIChzdHJpcC11bml0KCR2YWx1ZSkgIT0gMCkge1xyXG5cdFx0JHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XHJcblx0fVxyXG5cclxuXHRAcmV0dXJuICR2YWx1ZTtcclxufVxyXG4iLCIvLyBjbGVhcmZpeFxyXG5AbWl4aW4gY2xlYXJmaXgge1xyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGNsZWFyOiBib3RoO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8vIGxpc3RzXHJcbkBtaXhpbiBsaXN0LXVuc3R5bGVkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuQG1peGluIGxpc3QtaW5saW5lKCRzcGFjaW5nOiAxZW0sICRjaGlsZC1zZWxlY3RvcjogbGkpIHtcclxuXHRAaW5jbHVkZSBsaXN0LXVuc3R5bGVkO1xyXG5cdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cclxuXHRtYXJnaW4tbGVmdDogLSRzcGFjaW5nO1xyXG5cclxuXHQ+ICN7JGNoaWxkLXNlbGVjdG9yfSB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdG1hcmdpbi1sZWZ0OiAkc3BhY2luZztcclxuXHR9XHJcblxyXG5cdD4gI3skY2hpbGQtc2VsZWN0b3J9ID4gYSB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gbGlzdC1lcXVhbCgkY2hpbGQtc2VsZWN0b3I6IGxpKSB7XHJcblx0QGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcclxuXHJcblx0ZGlzcGxheTogdGFibGU7XHJcblx0dGFibGUtbGF5b3V0OiBmaXhlZDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0PiAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xyXG5cdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR9XHJcblxyXG5cdD4gI3skY2hpbGQtc2VsZWN0b3J9ID4gYSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vLyB0ZXh0IGhlbHBlcnNcclxuQG1peGluIHRleHQtaGlkZSB7XHJcblx0dGV4dC1pbmRlbnQ6IDExMCU7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR0ZXh0LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuQG1peGluIHRleHQtdHJ1bmNhdGUge1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuQG1peGluIHRleHQtaHlwaGVuYXRlIHtcclxuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuXHRoeXBoZW5zOiBhdXRvO1xyXG59XHJcblxyXG5cclxuLy8gdmlzaWJpbGl0eSBoZWxwZXJzXHJcbkBtaXhpbiBzci1vbmx5IHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6IDFweDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcblx0Y2xpcC1wYXRoOiBpbnNldCg1MCUpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XHJcblx0JjphY3RpdmUsXHJcblx0Jjpmb2N1cyB7XHJcblx0XHRwb3NpdGlvbjogc3RhdGljO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcclxuXHRcdGNsaXA6IGF1dG87XHJcblx0XHRjbGlwLXBhdGg6IG5vbmU7XHJcblx0XHR3aGl0ZS1zcGFjZTogaW5oZXJpdDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vLyB0cmlhbmdsZSBtaXhpbiBmcm9tIGJvdXJib25cclxuQG1peGluIHRyaWFuZ2xlKCRzaXplLCAkY29sb3IsICRkaXJlY3Rpb24pIHtcclxuXHQkd2lkdGg6IG50aCgkc2l6ZSwgMSk7XHJcblx0JGhlaWdodDogbnRoKCRzaXplLCBsZW5ndGgoJHNpemUpKTtcclxuXHQkZm9yZWdyb3VuZC1jb2xvcjogbnRoKCRjb2xvciwgMSk7XHJcblx0JGJhY2tncm91bmQtY29sb3I6IGlmKGxlbmd0aCgkY29sb3IpID09IDIsIG50aCgkY29sb3IsIDIpLCB0cmFuc3BhcmVudCk7XHJcblxyXG5cdGhlaWdodDogMDtcclxuXHR3aWR0aDogMDtcclxuXHJcblx0QGlmICgkZGlyZWN0aW9uID09IHVwKSBvciAoJGRpcmVjdGlvbiA9PSBkb3duKSBvciAoJGRpcmVjdGlvbiA9PSByaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gbGVmdCkge1xyXG5cdFx0JHdpZHRoOiAkd2lkdGggLyAyO1xyXG5cdFx0JGhlaWdodDogaWYobGVuZ3RoKCRzaXplKSA+IDEsICRoZWlnaHQsICRoZWlnaHQgLyAyKTtcclxuXHJcblx0XHRAaWYgJGRpcmVjdGlvbiA9PSB1cCB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblx0XHRcdGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRcdGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0QGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblx0XHRcdGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHRcdH1cclxuXHRcdEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XHJcblx0XHRcdGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHRcdGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdFx0XHRib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0QGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdFx0XHRib3JkZXItcmlnaHQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblx0XHRcdGJvcmRlci10b3A6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHRcdH1cclxuXHR9XHJcblx0QGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gdXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IHVwLWxlZnQpIHtcclxuXHRcdGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblxyXG5cdFx0QGlmICRkaXJlY3Rpb24gPT0gdXAtcmlnaHQge1xyXG5cdFx0XHRib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdFx0fVxyXG5cdFx0QGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cC1sZWZ0IHtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHR9XHJcblx0fVxyXG5cdEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGRvd24tcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGRvd24tbGVmdCkge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuXHJcblx0XHRAaWYgJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0IHtcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuXHRcdH1cclxuXHRcdEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0IHtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gYmVhdXRpZnVsIHVuZGVybGluZVxyXG5AbWl4aW4gdW5kZXJsaW5lKCRjb2xvcjogY3VycmVudENvbG9yLCAkZGlzdGFuY2U6IDEwMCUsICRzaXplOiAxcHgpIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRjb2xvciwgJGNvbG9yKTtcclxuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwICRkaXN0YW5jZTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDFweCAkc2l6ZTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XHJcbn1cclxuXHJcblxyXG4vLyB0YXJnZXQgSGlEUEkgc2NyZWVuc1xyXG5AbWl4aW4gaGlkcGkoJHJhdGlvOiAxLjUpIHtcclxuXHRAbWVkaWEgKG1pbi1yZXNvbHV0aW9uOiByb3VuZCgkcmF0aW8gKiA5NmRwaSkpLCAobWluLXJlc29sdXRpb246ICRyYXRpbyAqIDFkcHB4KSB7XHJcblx0XHRAY29udGVudDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vLyBzY2FsZSBoZWFkaW5ncyB1c2luZyBtb2R1bGFyIHNjYWxlXHJcbkBtaXhpbiBzY2FsZS1oZWFkaW5ncygkbWF4LXNjYWxlOiA0LCAkYmFzZTogJHR5cGUtc2NhbGUtYmFzZSkge1xyXG5cdEBlYWNoICRoZWFkaW5nIGluICRoZWFkaW5ncyB7XHJcblx0XHQjeyRoZWFkaW5nfSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogbW9kdWxhci1zY2FsZSgkbWF4LXNjYWxlLCAkYmFzZSk7XHJcblx0XHR9XHJcblxyXG5cdFx0JG1heC1zY2FsZTogJG1heC1zY2FsZSAtIDE7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gbG9vcCBhbGwgYnJlYWtwb2ludHMgYW5kIG91dHB1dCBjb250ZW50XHJcbkBtaXhpbiBsb29wLWJyZWFrcG9pbnRzKCRtcTogdHJ1ZSwgJGluY2x1c2l2ZTogZmFsc2UsICRicmVha3BvaW50LWtleXM6ICRtcS1icmVha3BvaW50cy1saXN0KSB7XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJGJyZWFrcG9pbnQta2V5cykge1xyXG5cdFx0JGJyZWFrcG9pbnQ6IG50aCgkYnJlYWtwb2ludC1rZXlzLCAkaSkgIWdsb2JhbDtcclxuXHRcdCRpcy1maXJzdC1icmVha3BvaW50OiAkYnJlYWtwb2ludCA9PSBudGgoJGJyZWFrcG9pbnQta2V5cywgMSkgIWdsb2JhbDtcclxuXHRcdCRpcy1sYXN0LWJyZWFrcG9pbnQ6ICRicmVha3BvaW50ID09IG50aCgkYnJlYWtwb2ludC1rZXlzLCBsZW5ndGgoJGJyZWFrcG9pbnQta2V5cykpICFnbG9iYWw7XHJcblxyXG5cdFx0QGlmICRtcSB7XHJcblx0XHRcdEBpZiAkaW5jbHVzaXZlIHtcclxuXHRcdFx0XHQvLyBmaXJzdCBicmVha3BvaW50XHJcblx0XHRcdFx0QGlmICRpcy1maXJzdC1icmVha3BvaW50IHtcclxuXHRcdFx0XHRcdEBjb250ZW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQvLyByZW1haW5pbmcgYnJlYWtwb2ludHNcclxuXHRcdFx0XHRAZWxzZSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkYnJlYWtwb2ludCkge1xyXG5cdFx0XHRcdFx0XHRAY29udGVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0QGVsc2Uge1xyXG5cdFx0XHRcdC8vIGZpcnN0IGJyZWFrcG9pbnRcclxuXHRcdFx0XHRAaWYgJGlzLWZpcnN0LWJyZWFrcG9pbnQge1xyXG5cdFx0XHRcdFx0QGlmIGxlbmd0aCgkYnJlYWtwb2ludC1rZXlzKSA+IDEge1xyXG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBtcSgkdW50aWw6IG50aCgkYnJlYWtwb2ludC1rZXlzLCAkaSArIDEpKSB7XHJcblx0XHRcdFx0XHRcdFx0QGNvbnRlbnQ7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBlbHNlIHtcclxuXHRcdFx0XHRcdFx0QGNvbnRlbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC8vIGxhc3QgYnJlYWtwb2ludFxyXG5cdFx0XHRcdEBlbHNlIGlmICRpcy1sYXN0LWJyZWFrcG9pbnQge1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgbXEoJGJyZWFrcG9pbnQpIHtcclxuXHRcdFx0XHRcdFx0QGNvbnRlbnQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC8vIHJlbWFpbmluZyBicmVha3BvaW50c1xyXG5cdFx0XHRcdEBlbHNlIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIG1xKCRicmVha3BvaW50LCBudGgoJGJyZWFrcG9pbnQta2V5cywgJGkgKyAxKSkge1xyXG5cdFx0XHRcdFx0XHRAY29udGVudDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBlbHNlIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsImh0bWwge1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbiosXHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuXHRib3gtc2l6aW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG5jYW52YXMsXHJcbmltZyxcclxudmlkZW8ge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmF1ZGlvIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmltZyB7XHJcblx0d2lkdGg6IGF1dG87XHJcbn1cclxuXHJcbmF1ZGlvLFxyXG5jYW52YXMsXHJcbmlmcmFtZSxcclxuaW1nLFxyXG5zdmcsXHJcbnZpZGVvIHtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcblx0Zm9udDogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxub3B0Z3JvdXAge1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiAwO1xyXG59XHJcblxyXG5hZGRyZXNzIHtcclxuXHRmb250LXN0eWxlOiBpbmhlcml0O1xyXG59XHJcblxyXG5wcmUge1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiIsImJsb2NrcXVvdGUsXHJcbmZpZ3VyZSxcclxuZmllbGRzZXQge1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuYWRkcmVzcyxcclxuYmxvY2txdW90ZSxcclxudGFibGUsXHJcbmZpZ3VyZSxcclxuZm9ybSxcclxuZmllbGRzZXQsXHJcbmxlZ2VuZCxcclxucHJlLFxyXG5kbCxcclxudWwsXHJcbm9sLFxyXG5ocixcclxucCB7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRtYXJnaW4tYm90dG9tOiAkc3BhY2luZy1iYXNlO1xyXG59XHJcblxyXG5uYXYsXHJcbmxpIHtcclxuXHQ+IHVsLFxyXG5cdD4gb2wge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHR9XHJcbn1cclxuIiwiYm9keSB7XHJcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xyXG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xyXG5cdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYmFzZTtcclxuXHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XHJcblx0Y29sb3I6ICR0ZXh0LWNvbG9yO1xyXG59XHJcblxyXG4jeyRoZWFkaW5nc30ge1xyXG5cdG1hcmdpbi10b3A6ICRoZWFkaW5ncy1zcGFjaW5nICogMjtcclxuXHRtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3Mtc3BhY2luZztcclxuXHRmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xyXG5cdGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XHJcblx0bGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcclxuXHRjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xyXG5cclxuXHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSBzY2FsZS1oZWFkaW5ncztcclxuXHJcbnNtYWxsLFxyXG4uc21hbGwge1xyXG5cdGZvbnQtc2l6ZTogODAlO1xyXG59XHJcblxyXG5ociB7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCR0ZXh0LWNvbG9yLCA1MCUpO1xyXG59XHJcblxyXG51bCxcclxub2wge1xyXG5cdHBhZGRpbmctbGVmdDogMi41ZW07XHJcbn1cclxuXHJcbmEge1xyXG5cdGNvbG9yOiAkbGluay1jb2xvcjtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG5cdCY6aG92ZXIsXHJcblx0Jjpmb2N1cyB7XHJcblx0XHRjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XHJcblx0fVxyXG59XHJcblxyXG5cclxuLy8gZm9udCBhbnRpYWxpYXNpbmdcclxuQGlmICRmb250LWFudGlhbGlhc2VkIHtcclxuXHRodG1sLFxyXG5cdGJ1dHRvbixcclxuXHRpbnB1dCB7XHJcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuXHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcblx0fVxyXG5cclxuXHQvLyBkaXNhYmxlIGFudGlhbGlhc2luZyBvbiBIaURQSSBzY3JlZW5zXHJcblx0QGluY2x1ZGUgaGlkcGkge1xyXG5cdFx0aHRtbCxcclxuXHRcdGJ1dHRvbixcclxuXHRcdGlucHV0IHtcclxuXHRcdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XHJcblx0XHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCJsYWJlbCB7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nLWJvdHRvbTogJGlucHV0LXBhZGRpbmctdmVydGljYWw7XHJcbn1cclxuXHJcbi5sYWJlbC1pbmxpbmUge1xyXG5cdG1hcmdpbi10b3A6IDFweDtcclxuXHRwYWRkaW5nLXRvcDogJGlucHV0LXBhZGRpbmctdmVydGljYWw7XHJcbn1cclxuXHJcbi5mb3JtLWdyb3VwIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxZW07XHJcbn1cclxuXHJcbiN7JGlucHV0LXNlbGVjdG9yfSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XHJcblx0Ym9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXM7XHJcblx0cGFkZGluZzogJGlucHV0LXBhZGRpbmctdmVydGljYWwgJGlucHV0LXBhZGRpbmctaG9yaXpvbnRhbDtcclxuXHRiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94OyAvLyByZW1vdmUgc2hhZG93IGluIGlPU1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcclxuXHRjb2xvcjogJGlucHV0LWNvbG9yO1xyXG5cdHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xyXG5cclxuXHQmOmZvY3VzIHtcclxuXHRcdGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuXHRcdG91dGxpbmU6IDA7XHJcblx0fVxyXG5cclxuXHQmW2Rpc2FibGVkXSB7XHJcblx0XHRib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XHJcblx0XHRjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xyXG5cdFx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHR9XHJcbn1cclxuXHJcbnNlbGVjdCB7XHJcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuXHQmW211bHRpcGxlXSxcclxuXHQmW3NpemVdIHtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxuLmNoZWNrYm94LFxyXG4ucmFkaW8ge1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ1O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdG1hcmdpbi10b3A6IDAuMjVlbTtcclxuXHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cclxuXHQrIGxhYmVsIHtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRmb250LXdlaWdodDogaW5oZXJpdDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHR9XHJcblxyXG5cdCZbZGlzYWJsZWRdICsgbGFiZWwge1xyXG5cdFx0Y29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcclxuXHRcdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblx0fVxyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcblxyXG4vLyBwbGFjZWhvbGRlclxyXG5bcGxhY2Vob2xkZXJdLnBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xyXG59XHJcblxyXG5bcGxhY2Vob2xkZXJdOjpwbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG5cclxuLy8gY3VzdG9tIGZvcm0gY29udHJvbHNcclxuQGlmICR1c2UtY3VzdG9tLWZvcm1zIHtcclxuXHQuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5cdC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHJcblx0XHQrIGxhYmVsLFxyXG5cdFx0KyBsYWJlbDo6YWZ0ZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMS40ZW07XHJcblx0XHR9XHJcblxyXG5cdFx0KyBsYWJlbDo6YmVmb3JlIHtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAwLjE4NzVlbTtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0d2lkdGg6IDFlbTtcclxuXHRcdFx0aGVpZ2h0OiAxZW07XHJcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcclxuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuXHRcdH1cclxuXHJcblx0XHQrIGxhYmVsOmhvdmVyOjpiZWZvcmUsXHJcblx0XHQmOmZvY3VzICsgbGFiZWw6OmJlZm9yZSB7XHJcblx0XHRcdGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuXHRcdH1cclxuXHJcblx0XHQrIGxhYmVsOmFjdGl2ZTo6YmVmb3JlIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRpbnB1dC1iZywgMTAlKTtcclxuXHRcdH1cclxuXHJcblx0XHQmW2Rpc2FibGVkXSArIGxhYmVsOjpiZWZvcmUge1xyXG5cdFx0XHRib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5yYWRpbyBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDFlbTtcclxuXHR9XHJcblxyXG5cdC8vIHVzZSB0aGUgaW52aXNpYmxlIGdyYWRpZW50IHRlY2huaXF1ZSBmb3IgYSBjc3Mgb25seSBzdmcgZmFsbGJhY2s6IGh0dHA6Ly9wYXVnaW5lci5jb20vcG9zdC8zNjYxNDY4MDYzNi9pbnZpc2libGUtZ3JhZGllbnQtdGVjaG5pcXVlXHJcblx0LnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XHJcblx0XHQvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpY29uLXJhZGlvLWZhbGxiYWNrKTtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaWNvbi1yYWRpbyksIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xyXG5cdH1cclxuXHJcblx0LmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XHJcblx0XHQvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCRpY29uLWNoZWNrYm94LWZhbGxiYWNrKTtcclxuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaWNvbi1jaGVja2JveCksIGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xyXG5cdH1cclxuXHJcblxyXG5cdC5zZWxlY3Qge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdHNlbGVjdCB7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDJlbTtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogJGlucHV0LXBhZGRpbmctaG9yaXpvbnRhbCBcXDk7XHJcblx0XHRcdGFwcGVhcmFuY2U6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0c2VsZWN0OjotbXMtZXhwYW5kIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRzZWxlY3Q6Zm9jdXM6Oi1tcy12YWx1ZSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRjb2xvcjogJGlucHV0LWNvbG9yO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6OmFmdGVyIHtcclxuXHRcdFx0LyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0cmlnaHQ6ICRpbnB1dC1wYWRkaW5nLWhvcml6b250YWw7XHJcblx0XHRcdHdpZHRoOiAxMnB4O1xyXG5cdFx0XHRoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XHJcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaWNvbi1zZWxlY3QtZmFsbGJhY2spO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGljb24tc2VsZWN0KSwgbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCk7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgXFw5O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ly8gc2hvdyBjdXN0b20gYXJyb3cgaW4gSUUgMTArXHJcblx0QG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcclxuXHRcdC5zZWxlY3Q6OmFmdGVyIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0LnNlbGVjdCBzZWxlY3Qge1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAyZW07XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIiN7JGJ1dHRvbi1zZWxlY3Rvcn0ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdHBhZGRpbmc6ICRidXR0b24tcGFkZGluZy12ZXJ0aWNhbCAkYnV0dG9uLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkYnV0dG9uLWJvcmRlci1jb2xvcjtcclxuXHRib3JkZXItcmFkaXVzOiAkYnV0dG9uLWJvcmRlci1yYWRpdXM7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1iZztcclxuXHRjb2xvcjogJGJ1dHRvbi1jb2xvcjtcclxuXHR0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XHJcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMge1xyXG5cdFx0b3V0bGluZTogMDtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRidXR0b24taG92ZXItYmc7XHJcblx0XHRjb2xvcjogJGJ1dHRvbi1ob3Zlci1jb2xvcjtcclxuXHR9XHJcblxyXG5cdCY6YWN0aXZlIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tYWN0aXZlLWJnO1xyXG5cdFx0Y29sb3I6ICRidXR0b24tYWN0aXZlLWNvbG9yO1xyXG5cdH1cclxuXHJcblx0Ji5kaXNhYmxlZCxcclxuXHQmW2Rpc2FibGVkXSB7XHJcblx0XHRvcGFjaXR5OiAkYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk7XHJcblx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR9XHJcbn1cclxuIiwiI3skdGFibGUtc2VsZWN0b3J9IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuXHRib3JkZXItc3BhY2luZzogMDtcclxuXHJcblx0dGgsXHJcblx0dGQge1xyXG5cdFx0cGFkZGluZzogJHRhYmxlLXBhZGRpbmctdmVydGljYWwgJHRhYmxlLXBhZGRpbmctaG9yaXpvbnRhbDtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG5cdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHR9XHJcblxyXG5cdHRoIHtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG5cclxuXHR0aGVhZCB0aCB7XHJcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG5cdH1cclxuXHJcblx0dGJvZHkgdHI6bnRoLWNoaWxkKDJuKzEpIHtcclxuXHRcdGJhY2tncm91bmQ6ICR0YWJsZS1zdHJpcGUtYmc7XHJcblx0fVxyXG59XHJcbiIsIi8vIGNsZWFyZml4XHJcbi5jbGVhcmZpeCB7XHJcblx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcbn1cclxuXHJcblxyXG4vLyBsaXN0c1xyXG4ubGlzdC11bnN0eWxlZCB7XHJcblx0QGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcclxufVxyXG5cclxuLmxpc3QtaW5saW5lIHtcclxuXHRAaW5jbHVkZSBsaXN0LWlubGluZTtcclxufVxyXG5cclxuLmxpc3QtZXF1YWwge1xyXG5cdEBpbmNsdWRlIGxpc3QtZXF1YWw7XHJcbn1cclxuXHJcblxyXG4vLyBwb3NpdGlvbmluZ1xyXG4uYmxvY2stY2VudGVyIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5wdWxsLWxlZnQge1xyXG5cdGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wdWxsLXJpZ2h0IHtcclxuXHRmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vIHNwYWNpbmdcclxuLnNwYWNpbmctYm90dG9tIHtcclxuXHRtYXJnaW4tYm90dG9tOiAkc3BhY2luZy1iYXNlO1xyXG59XHJcblxyXG5cclxuLy8gbWVkaWFcclxuLm1lZGlhIGltZyB7XHJcblx0bWF4LXdpZHRoOiBub25lO1xyXG59XHJcblxyXG4ubWVkaWEtbGVmdCB7XHJcblx0cGFkZGluZy1yaWdodDogMWVtO1xyXG59XHJcblxyXG4ubWVkaWEtcmlnaHQge1xyXG5cdHBhZGRpbmctbGVmdDogMWVtO1xyXG59XHJcblxyXG4ubWVkaWEtbGVmdCxcclxuLm1lZGlhLXJpZ2h0LFxyXG4ubWVkaWEtYm9keSB7XHJcblx0ZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG4ubWVkaWEtbWlkZGxlIHtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubWVkaWEtYm90dG9tIHtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG59XHJcblxyXG4ubWVkaWEtZnVsbHNjcmVlbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR0b3A6IDUwJTtcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0bWluLXdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiBub25lO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG5cclxuLy8gdGV4dCBoZWxwZXJzXHJcbi50ZXh0LWxlZnQge1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi50ZXh0LWNlbnRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGV4dC1yaWdodCB7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi50ZXh0LWhpZGUge1xyXG5cdEBpbmNsdWRlIHRleHQtaGlkZTtcclxufVxyXG5cclxuLnRleHQtdHJ1bmNhdGUge1xyXG5cdEBpbmNsdWRlIHRleHQtdHJ1bmNhdGU7XHJcbn1cclxuXHJcblxyXG4vLyByZXNwb25zaXZlIGVtYmVkXHJcbi5lbWJlZC1yZXNwb25zaXZlIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDkgLyAxNik7XHJcblx0fVxyXG5cclxuXHRpZnJhbWUsXHJcblx0ZW1iZWQsXHJcblx0b2JqZWN0LFxyXG5cdHZpZGVvIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJvcmRlcjogMDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vLyBkaXNwbGF5IGFuZCB2aXNpYmlsaXR5IGhlbHBlcnNcclxuLnNyLW9ubHkge1xyXG5cdEBpbmNsdWRlIHNyLW9ubHk7XHJcbn1cclxuXHJcbi5zci1vbmx5LWZvY3VzYWJsZSB7XHJcblx0QGluY2x1ZGUgc3Itb25seS1mb2N1c2FibGU7XHJcbn1cclxuXHJcbi5pbnZpc2libGUge1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcblx0LmhpZGRlbi1wcmludCB7XHJcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSBsb29wLWJyZWFrcG9pbnRzKCRtcTogZmFsc2UpIHtcclxuXHQudmlzaWJsZS0jeyRicmVha3BvaW50fSB7XHJcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHRAaWYgbm90ICgkaXMtZmlyc3QtYnJlYWtwb2ludCBvciAkaXMtbGFzdC1icmVha3BvaW50KSB7XHJcblx0XHQudmlzaWJsZS0jeyRicmVha3BvaW50fS11cCB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGxvb3AtYnJlYWtwb2ludHMge1xyXG5cdC5oaWRkZW4tI3skYnJlYWtwb2ludH0ge1xyXG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0LnZpc2libGUtI3skYnJlYWtwb2ludH0ge1xyXG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGxvb3AtYnJlYWtwb2ludHMoJGluY2x1c2l2ZTogdHJ1ZSkge1xyXG5cdEBpZiBub3QgKCRpcy1maXJzdC1icmVha3BvaW50IG9yICRpcy1sYXN0LWJyZWFrcG9pbnQpIHtcclxuXHRcdC5oaWRkZW4tI3skYnJlYWtwb2ludH0tdXAge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0LnZpc2libGUtI3skYnJlYWtwb2ludH0tdXAge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvLyBQcmludCBzdHlsZXMgYWRhcHRlZCBmcm9tIEhUTUw1IEJvaWxlcnBsYXRlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZVxyXG5cclxuQG1lZGlhIHByaW50IHtcclxuXHQqLFxyXG5cdCo6YmVmb3JlLFxyXG5cdCo6YWZ0ZXIsXHJcblx0cDpmaXJzdC1sZXR0ZXIsXHJcblx0cDpmaXJzdC1saW5lIHtcclxuXHRcdGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XHJcblx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcblx0XHR0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHJcblx0YSxcclxuXHRhOnZpc2l0ZWQge1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0fVxyXG5cclxuXHRhYmJyW3RpdGxlXTphZnRlciB7XHJcblx0XHRjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJztcclxuXHR9XHJcblxyXG5cdHByZSxcclxuXHRibG9ja3F1b3RlIHtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcblx0XHRwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcblx0fVxyXG5cclxuXHR0aGVhZCB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XHJcblx0fVxyXG5cclxuXHR0cixcclxuXHRpbWcge1xyXG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG5cdH1cclxuXHJcblx0cCxcclxuXHRoMixcclxuXHRoMyB7XHJcblx0XHRvcnBoYW5zOiAzO1xyXG5cdFx0d2lkb3dzOiAzO1xyXG5cdH1cclxuXHJcblx0aDIsXHJcblx0aDMge1xyXG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XHJcblx0fVxyXG59XHJcbiIsIkBmdW5jdGlvbiBnZXQtZ3V0dGVyKCRicmVha3BvaW50OiBmYWxzZSwgJGd1dHRlcjogJGdyaWQtZ3V0dGVyKSB7XHJcblx0QGlmICh0eXBlLW9mKCRndXR0ZXIpID09IG1hcCkge1xyXG5cdFx0QGlmICRicmVha3BvaW50IHtcclxuXHRcdFx0QGlmIG1hcC1oYXMta2V5KCRndXR0ZXIsICRicmVha3BvaW50KSB7XHJcblx0XHRcdFx0JGd1dHRlcjogbWFwLWdldCgkZ3V0dGVyLCAkYnJlYWtwb2ludCk7XHJcblx0XHRcdH1cclxuXHRcdFx0QGVsc2Uge1xyXG5cdFx0XHRcdEBlcnJvciBcIkJyZWFrcG9pbnQgI3skYnJlYWtwb2ludH0gd2Fzbid0IGZvdW5kIGluICRndXR0ZXIuXCI7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBlbHNlIHtcclxuXHRcdFx0JGd1dHRlcjogbnRoKG1hcC12YWx1ZXMoJGd1dHRlciksIDEpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0QHJldHVybiAkZ3V0dGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZ3V0dGVyKCRndXR0ZXIsICR0eXBlKSB7XHJcblx0JGd1dHRlcjogJGd1dHRlciAvIDI7XHJcblxyXG5cdEBpZiAkdHlwZSA9PSBpbm5lciB7XHJcblx0XHRwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xyXG5cclxuXHRcdEBpZiBzdHJpcC11bml0KCRndXR0ZXIpICE9IDAge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IHRvLXJlbSgkZ3V0dGVyKTtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogdG8tcmVtKCRndXR0ZXIpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRAZWxzZSB7XHJcblx0XHQkZ3V0dGVyOiAkZ3V0dGVyICogLTE7XHJcblxyXG5cdFx0bWFyZ2luLWxlZnQ6ICRndXR0ZXI7XHJcblx0XHRtYXJnaW4tcmlnaHQ6ICRndXR0ZXI7XHJcblxyXG5cdFx0QGlmIHN0cmlwLXVuaXQoJGd1dHRlcikgIT0gMCB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiB0by1yZW0oJGd1dHRlcik7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogdG8tcmVtKCRndXR0ZXIpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuQG1peGluIG1ha2UtZ3V0dGVycygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXIsICR0eXBlOiBpbm5lcikge1xyXG5cdEBpZiAodHlwZS1vZigkZ3V0dGVyKSA9PSBtYXApIHtcclxuXHRcdEBlYWNoICRicmVha3BvaW50LCAkd2lkdGggaW4gJGd1dHRlciB7XHJcblx0XHRcdEBpZiAkYnJlYWtwb2ludCA9PSBudGgoJG1xLWJyZWFrcG9pbnRzLWxpc3QsIDEpIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBndXR0ZXIoJHdpZHRoLCAkdHlwZSk7XHJcblx0XHRcdH1cclxuXHRcdFx0QGVsc2Uge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1xKCRicmVha3BvaW50KSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBndXR0ZXIoJHdpZHRoLCAkdHlwZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdEBpbmNsdWRlIGd1dHRlcigkZ3V0dGVyLCAkdHlwZSk7XHJcblx0fVxyXG59XHJcbiIsIkBtaXhpbiBjb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLCAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcikge1xyXG5cdEBpZiAodHlwZS1vZigkZ3V0dGVyKSA9PSBtYXApIHtcclxuXHRcdCR3aWR0aDogJHdpZHRoIC0gbnRoKG1hcC12YWx1ZXMoJGd1dHRlciksIGxlbmd0aCgkZ3V0dGVyKSk7XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdCR3aWR0aDogJHdpZHRoIC0gJGd1dHRlcjtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1ha2UtZ3V0dGVycygkZ3V0dGVyKTtcclxuXHJcblx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogJHdpZHRoO1xyXG5cdG1heC13aWR0aDogdG8tcmVtKCR3aWR0aCk7XHJcbn1cclxuIiwiQG1peGluIHJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXIpIHtcclxuXHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRAaW5jbHVkZSBtYWtlLWd1dHRlcnMoJGd1dHRlciwgb3V0ZXIpO1xyXG5cclxuXHRAaWYgJGdyaWQtZmxleGJveCB7XHJcblx0XHQvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xyXG5cdFx0ZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG5cdFx0ZGlzcGxheTogLW1zLWZsZXhib3g7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0LXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XHJcblx0XHQtbXMtZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdH1cclxufVxyXG4iLCJAbWl4aW4gY29sdW1uLWJhc2UoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLCAkc2l6ZTogMTAwJSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAaW5jbHVkZSBtYWtlLWd1dHRlcnMoJGd1dHRlcik7XHJcblx0QGluY2x1ZGUgY29sdW1uKCRzaXplLCAkY29sdW1ucyk7XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRtaW4taGVpZ2h0OiAxcHg7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4oJHNpemU6IGV4cGFuZCwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAaWYgJHNpemUge1xyXG5cdFx0QGlmICh0eXBlLW9mKCRzaXplKSA9PSBudW1iZXIpIHtcclxuXHRcdFx0QGlmICh1bml0KCRzaXplKSA9PSAnJScpIHtcclxuXHRcdFx0XHR3aWR0aDogJHNpemU7XHJcblx0XHRcdH1cclxuXHRcdFx0QGVsc2Uge1xyXG5cdFx0XHRcdEBpZiAkc2l6ZSA8IDEge1xyXG5cdFx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAZWxzZSB7XHJcblx0XHRcdFx0XHR3aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBlbHNlIHtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHJcblx0XHRcdEBpZiAkZ3JpZC1mbGV4Ym94IHtcclxuXHRcdFx0XHRAaWYgJHNpemUgPT0gc2hyaW5rIHtcclxuXHRcdFx0XHRcdGZsZXg6IDAgMCBhdXRvO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0QGlmICRzaXplID09IGV4cGFuZCB7XHJcblx0XHRcdFx0XHRmbGV4OiAxIDEgYXV0bztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tYmxvY2soJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHR3aWR0aDogcGVyY2VudGFnZSgxIC8gJGNvbHVtbnMpO1xyXG5cclxuXHQmOm50aC1vZi10eXBlKDFuKSB7XHJcblx0XHRjbGVhcjogbm9uZTtcclxuXHR9XHJcblxyXG5cdCY6bnRoLWNoaWxkKCN7JGNvbHVtbnN9bisxKSB7XHJcblx0XHRjbGVhcjogYm90aDtcclxuXHR9XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tcHVzaCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAaWYgJHNpemUgPiAwIHtcclxuXHRcdGxlZnQ6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XHJcblx0fVxyXG5cdEBlbHNlIHtcclxuXHRcdGxlZnQ6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXB1bGwoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XHJcblx0QGlmICRzaXplID4gMCB7XHJcblx0XHRyaWdodDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxuXHR9XHJcblx0QGVsc2Uge1xyXG5cdFx0cmlnaHQ6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAaWYgJHNpemUgPCAkY29sdW1ucyB7XHJcblx0XHRtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcclxuXHR9XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIGNvbHVtbnMgZm9yIGEgc3BlY2lmaWMgYnJlYWtwb2ludFxyXG5AbWl4aW4gbG9vcC1jb2x1bW5zKCRicmVha3BvaW50KSB7XHJcblx0QGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuXHRcdEBpZiAkaSA+IDAge1xyXG5cdFx0XHQuY29sLSN7JGJyZWFrcG9pbnR9LSN7JGl9IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBjb2x1bW4oJGksICRncmlkLWNvbHVtbnMpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmNvbC0jeyRicmVha3BvaW50fS1wdWxsLSN7JGl9IHtcclxuXHRcdFx0QGluY2x1ZGUgY29sdW1uLXB1bGwoJGksICRncmlkLWNvbHVtbnMpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5jb2wtI3skYnJlYWtwb2ludH0tcHVzaC0jeyRpfSB7XHJcblx0XHRcdEBpbmNsdWRlIGNvbHVtbi1wdXNoKCRpLCAkZ3JpZC1jb2x1bW5zKTtcclxuXHRcdH1cclxuXHJcblx0XHQuY29sLSN7JGJyZWFrcG9pbnR9LW9mZnNldC0jeyRpfSB7XHJcblx0XHRcdEBpbmNsdWRlIGNvbHVtbi1vZmZzZXQoJGksICRncmlkLWNvbHVtbnMpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIuY29udGFpbmVyIHtcclxuXHRAaW5jbHVkZSBjb250YWluZXI7XHJcbn1cclxuXHJcbi5yb3cge1xyXG5cdEBpbmNsdWRlIHJvdztcclxufVxyXG5cclxuLmNvbCB7XHJcblx0QGluY2x1ZGUgY29sdW1uLWJhc2U7XHJcbn1cclxuXHJcbi8vIEdlbmVyYXRlIGNvbHVtbnMgZm9yIGFsbCBicmVha3BvaW50c1xyXG5AaWYgJGdyaWQtY29sdW1ucy1vdXRwdXQge1xyXG5cdEBpbmNsdWRlIGxvb3AtYnJlYWtwb2ludHMoJGluY2x1c2l2ZTogdHJ1ZSkge1xyXG5cdFx0QGluY2x1ZGUgbG9vcC1jb2x1bW5zKCRicmVha3BvaW50KTtcclxuXHR9XHJcbn1cclxuIiwiYm9keS5zd2FsMi1zaG93biB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG5ib2R5LnN3YWwyLWlvc2ZpeCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLnN3YWwyLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxMDYwOyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wIHtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLWxlZnQge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItdG9wLXJpZ2h0IHtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIC13ZWJraXQtYm94LXBhY2s6IGVuZDtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuc3dhbDItY29udGFpbmVyLnN3YWwyLWNlbnRlciB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1jZW50ZXItbGVmdCB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1ib3gtcGFjazogc3RhcnQ7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItY2VudGVyLXJpZ2h0IHtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBlbmQ7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20ge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tbGVmdCB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGVuZDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBzdGFydDtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ib3R0b20tcmlnaHQge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgLXdlYmtpdC1ib3gtcGFjazogZW5kO1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1mdWxsc2NyZWVuID4gLnN3YWwyLW1vZGFsIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAgIC1tcy1mbGV4OiAxO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdHJldGNoO1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LXJvdyA+IC5zd2FsMi1tb2RhbCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3ggIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAgICAgICAtbXMtZmxleDogMTtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4ge1xuICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAgIC1tcy1mbGV4OiAxO1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLXRvcCwgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi1jZW50ZXIsIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItYm90dG9tIHtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItdG9wLWxlZnQsIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItY2VudGVyLWxlZnQsIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItYm90dG9tLWxlZnQge1xuICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgICAuc3dhbDItY29udGFpbmVyLnN3YWwyLWdyb3ctY29sdW1uLnN3YWwyLXRvcC1yaWdodCwgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbi5zd2FsMi1jZW50ZXItcmlnaHQsIC5zd2FsMi1jb250YWluZXIuc3dhbDItZ3Jvdy1jb2x1bW4uc3dhbDItYm90dG9tLXJpZ2h0IHtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1ncm93LWNvbHVtbiA+IC5zd2FsMi1tb2RhbCB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3ggIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gICAgICAgICAgLW1zLWZsZXg6IDE7XG4gICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuc3dhbDItY29udGFpbmVyOm5vdCguc3dhbDItdG9wKTpub3QoLnN3YWwyLXRvcC1sZWZ0KTpub3QoLnN3YWwyLXRvcC1yaWdodCk6bm90KC5zd2FsMi1jZW50ZXItbGVmdCk6bm90KC5zd2FsMi1jZW50ZXItcmlnaHQpOm5vdCguc3dhbDItYm90dG9tKTpub3QoLnN3YWwyLWJvdHRvbS1sZWZ0KTpub3QoLnN3YWwyLWJvdHRvbS1yaWdodCkgPiAuc3dhbDItbW9kYWwge1xuICAgIG1hcmdpbjogYXV0bzsgfVxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIC5zd2FsMi1jb250YWluZXIgLnN3YWwyLW1vZGFsIHtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9IH1cbiAgLnN3YWwyLWNvbnRhaW5lci5zd2FsMi1mYWRlIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjFzOyB9XG4gIC5zd2FsMi1jb250YWluZXIuc3dhbDItc2hvd24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuXG4uc3dhbDItbW9kYWwge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnN3YWwyLW1vZGFsOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zd2FsMi1tb2RhbC5zd2FsMi1sb2FkaW5nIHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi10aXRsZSB7XG4gICAgY29sb3I6ICM1OTU5NTk7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDAgMCAuNGVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkOyB9XG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItYnV0dG9uc3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWJ1dHRvbnN3cmFwcGVyOm5vdCguc3dhbDItbG9hZGluZykgLnN3YWwyLXN0eWxlZFtkaXNhYmxlZF0ge1xuICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICBjdXJzb3I6IG5vLWRyb3A7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWJ1dHRvbnN3cmFwcGVyLnN3YWwyLWxvYWRpbmcgLnN3YWwyLXN0eWxlZC5zd2FsMi1jb25maXJtIHtcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogNy41cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRlLWxvYWRpbmcgMS41cyBsaW5lYXIgMHMgaW5maW5pdGUgbm9ybWFsO1xuICAgICAgICAgICAgICBhbmltYXRpb246IHJvdGF0ZS1sb2FkaW5nIDEuNXMgbGluZWFyIDBzIGluZmluaXRlIG5vcm1hbDtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWJ1dHRvbnN3cmFwcGVyLnN3YWwyLWxvYWRpbmcgLnN3YWwyLXN0eWxlZC5zd2FsMi1jYW5jZWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWJ1dHRvbnN3cmFwcGVyLnN3YWwyLWxvYWRpbmcgOm5vdCguc3dhbDItc3R5bGVkKS5zd2FsMi1jb25maXJtOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogLTFweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgIzk5OTk5OTtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IDFweCAxcHggI2ZmZjtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCAxcHggI2ZmZjtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRlLWxvYWRpbmcgMS41cyBsaW5lYXIgMHMgaW5maW5pdGUgbm9ybWFsO1xuICAgICAgICAgICAgICBhbmltYXRpb246IHJvdGF0ZS1sb2FkaW5nIDEuNXMgbGluZWFyIDBzIGluZmluaXRlIG5vcm1hbDsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLXN0eWxlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW46IDE1cHggNXB4IDA7XG4gICAgcGFkZGluZzogMTBweCAzMnB4OyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1zdHlsZWQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmYsIDAgMCAwIDRweCByZ2JhKDUwLCAxMDAsIDE1MCwgMC40KTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmYsIDAgMCAwIDRweCByZ2JhKDUwLCAxMDAsIDE1MCwgMC40KTsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWltYWdlIHtcbiAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1jbG9zZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDVweDtcbiAgICByaWdodDogOHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogI2NjY2NjYztcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4xcyBlYXNlO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4xcyBlYXNlOyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1jbG9zZTpob3ZlciB7XG4gICAgICBjb2xvcjogI2Q1NTsgfVxuICAuc3dhbDItbW9kYWwgPiAuc3dhbDItaW5wdXQsXG4gIC5zd2FsMi1tb2RhbCA+IC5zd2FsMi1maWxlLFxuICAuc3dhbDItbW9kYWwgPiAuc3dhbDItdGV4dGFyZWEsXG4gIC5zd2FsMi1tb2RhbCA+IC5zd2FsMi1zZWxlY3QsXG4gIC5zd2FsMi1tb2RhbCA+IC5zd2FsMi1yYWRpbyxcbiAgLnN3YWwyLW1vZGFsID4gLnN3YWwyLWNoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjNTQ1NDU0O1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWlucHV0LFxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWZpbGUsXG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItdGV4dGFyZWEsXG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItc2VsZWN0LFxuICAuc3dhbDItbW9kYWwgLnN3YWwyLXJhZGlvLFxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWNoZWNrYm94IHtcbiAgICBtYXJnaW46IDIwcHggYXV0bzsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWlucHV0LFxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWZpbGUsXG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuM3MsIC13ZWJraXQtYm94LXNoYWRvdyAuM3M7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4zcywgLXdlYmtpdC1ib3gtc2hhZG93IC4zcztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjNzLCBib3gtc2hhZG93IC4zcztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjNzLCBib3gtc2hhZG93IC4zcywgLXdlYmtpdC1ib3gtc2hhZG93IC4zczsgfVxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItaW5wdXQuc3dhbDItaW5wdXRlcnJvcixcbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWZpbGUuc3dhbDItaW5wdXRlcnJvcixcbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLXRleHRhcmVhLnN3YWwyLWlucHV0ZXJyb3Ige1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZjI3NDc0ICFpbXBvcnRhbnQ7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAycHggI2YyNzQ3NCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4ICNmMjc0NzQgIWltcG9ydGFudDsgfVxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItaW5wdXQ6Zm9jdXMsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1maWxlOmZvY3VzLFxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItdGV4dGFyZWE6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiNGRiZWQ7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAzcHggI2M0ZTZmNTtcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDNweCAjYzRlNmY1OyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWZpbGU6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi10ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogI2NjY2NjYzsgfVxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItZmlsZTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi10ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNjY2NjY2M7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1maWxlOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi10ZXh0YXJlYTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjY2NjY2NjOyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1pbnB1dDo6cGxhY2Vob2xkZXIsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1maWxlOjpwbGFjZWhvbGRlcixcbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLXRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogI2NjY2NjYzsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLXJhbmdlIGlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogODAlOyB9XG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItcmFuZ2Ugb3V0cHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1yYW5nZSBpbnB1dCxcbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1yYW5nZSBvdXRwdXQge1xuICAgIGhlaWdodDogNDNweDtcbiAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1pbnB1dCB7XG4gICAgaGVpZ2h0OiA0M3B4O1xuICAgIHBhZGRpbmc6IDAgMTJweDsgfVxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgICAgbWF4LXdpZHRoOiAxNTBweDsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLWZpbGUge1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLXRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDEwOHB4O1xuICAgIHBhZGRpbmc6IDEycHg7IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1zZWxlY3Qge1xuICAgIGNvbG9yOiAjNTQ1NDU0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBtaW4td2lkdGg6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnN3YWwyLW1vZGFsIC5zd2FsMi1yYWRpbyB7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1yYWRpbyBsYWJlbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgIC5zd2FsMi1tb2RhbCAuc3dhbDItcmFkaW8gaW5wdXQsXG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1yYWRpbyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLXJhZGlvIGlucHV0IHtcbiAgICAgIG1hcmdpbjogMCAzcHggMCAwOyB9XG4gIC5zd2FsMi1tb2RhbCAuc3dhbDItY2hlY2tib3gge1xuICAgIGNvbG9yOiAjNTQ1NDU0OyB9XG4gICAgLnN3YWwyLW1vZGFsIC5zd2FsMi1jaGVja2JveCBpbnB1dCxcbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLWNoZWNrYm94IHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuc3dhbDItbW9kYWwgLnN3YWwyLXZhbGlkYXRpb25lcnJvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGNvbG9yOiBncmF5O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc3dhbDItbW9kYWwgLnN3YWwyLXZhbGlkYXRpb25lcnJvcjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICchJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhN2Q3ZDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuQHN1cHBvcnRzICgtbXMtYWNjZWxlcmF0b3I6IHRydWUpIHtcbiAgLnN3YWwyLXJhbmdlIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5zd2FsMi1yYW5nZSBvdXRwdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuc3dhbDItcmFuZ2UgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnN3YWwyLXJhbmdlIG91dHB1dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zd2FsMi1pY29uIHtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMzBweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnN3YWwyLWljb24uc3dhbDItZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogI2YyNzQ3NDsgfVxuICAgIC5zd2FsMi1pY29uLnN3YWwyLWVycm9yIC5zd2FsMi14LW1hcmsge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuc3dhbDItaWNvbi5zd2FsMi1lcnJvciBbY2xhc3NePSdzd2FsMi14LW1hcmstbGluZSddIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgd2lkdGg6IDQ3cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI3NDc0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0b3A6IDM3cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cbiAgICAgIC5zd2FsMi1pY29uLnN3YWwyLWVycm9yIFtjbGFzc149J3N3YWwyLXgtbWFyay1saW5lJ11bY2xhc3MkPSdsZWZ0J10ge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIGxlZnQ6IDE3cHg7IH1cbiAgICAgIC5zd2FsMi1pY29uLnN3YWwyLWVycm9yIFtjbGFzc149J3N3YWwyLXgtbWFyay1saW5lJ11bY2xhc3MkPSdyaWdodCddIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHJpZ2h0OiAxNnB4OyB9XG4gIC5zd2FsMi1pY29uLnN3YWwyLXdhcm5pbmcge1xuICAgIGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjZjhiYjg2O1xuICAgIGJvcmRlci1jb2xvcjogI2ZhY2VhODtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zd2FsMi1pY29uLnN3YWwyLWluZm8ge1xuICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzNmYzNlZTtcbiAgICBib3JkZXItY29sb3I6ICM5ZGUwZjY7XG4gICAgZm9udC1zaXplOiA2MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc3dhbDItaWNvbi5zd2FsMi1xdWVzdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM4N2FkYmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjYzlkYWUxO1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnN3YWwyLWljb24uc3dhbDItc3VjY2VzcyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYTVkYzg2OyB9XG4gICAgLnN3YWwyLWljb24uc3dhbDItc3VjY2VzcyBbY2xhc3NePSdzd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmUnXSB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gICAgICAuc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIFtjbGFzc149J3N3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZSddW2NsYXNzJD0nbGVmdCddIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTIwcHggMCAwIDEyMHB4O1xuICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgIGxlZnQ6IC0zM3B4O1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA2MHB4IDYwcHg7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNjBweCA2MHB4OyB9XG4gICAgICAuc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIFtjbGFzc149J3N3YWwyLXN1Y2Nlc3MtY2lyY3VsYXItbGluZSddW2NsYXNzJD0ncmlnaHQnXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMTIwcHggMTIwcHggMDtcbiAgICAgICAgdG9wOiAtMTFweDtcbiAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA2MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNjBweDsgfVxuICAgIC5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgLnN3YWwyLXN1Y2Nlc3MtcmluZyB7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHJnYmEoMTY1LCAyMjAsIDEzNCwgMC4yKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTRweDtcbiAgICAgIHRvcDogLTRweDtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAuc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLWZpeCB7XG4gICAgICB3aWR0aDogN3B4O1xuICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMjhweDtcbiAgICAgIHRvcDogOHB4O1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAgIC5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj0nc3dhbDItc3VjY2Vzcy1saW5lJ10ge1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTVkYzg2O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgICAuc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIFtjbGFzc149J3N3YWwyLXN1Y2Nlc3MtbGluZSddW2NsYXNzJD0ndGlwJ10ge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgbGVmdDogMTRweDtcbiAgICAgICAgdG9wOiA0NnB4O1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAgIC5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj0nc3dhbDItc3VjY2Vzcy1saW5lJ11bY2xhc3MkPSdsb25nJ10ge1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgcmlnaHQ6IDhweDtcbiAgICAgICAgdG9wOiAzOHB4O1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4uc3dhbDItcHJvZ3Jlc3NzdGVwcyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnN3YWwyLXByb2dyZXNzc3RlcHMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnN3YWwyLXByb2dyZXNzc3RlcHMgLnN3YWwyLXByb2dyZXNzY2lyY2xlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzA4NWQ2O1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBoZWlnaHQ6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMmVtO1xuICAgIHotaW5kZXg6IDIwOyB9XG4gICAgLnN3YWwyLXByb2dyZXNzc3RlcHMgLnN3YWwyLXByb2dyZXNzY2lyY2xlOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnN3YWwyLXByb2dyZXNzc3RlcHMgLnN3YWwyLXByb2dyZXNzY2lyY2xlOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLnN3YWwyLXByb2dyZXNzc3RlcHMgLnN3YWwyLXByb2dyZXNzY2lyY2xlLnN3YWwyLWFjdGl2ZXByb2dyZXNzc3RlcCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzA4NWQ2OyB9XG4gICAgICAuc3dhbDItcHJvZ3Jlc3NzdGVwcyAuc3dhbDItcHJvZ3Jlc3NjaXJjbGUuc3dhbDItYWN0aXZlcHJvZ3Jlc3NzdGVwIH4gLnN3YWwyLXByb2dyZXNzY2lyY2xlIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2FkZDhlNjsgfVxuICAgICAgLnN3YWwyLXByb2dyZXNzc3RlcHMgLnN3YWwyLXByb2dyZXNzY2lyY2xlLnN3YWwyLWFjdGl2ZXByb2dyZXNzc3RlcCB+IC5zd2FsMi1wcm9ncmVzc2xpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjYWRkOGU2OyB9XG4gIC5zd2FsMi1wcm9ncmVzc3N0ZXBzIC5zd2FsMi1wcm9ncmVzc2xpbmUge1xuICAgIGJhY2tncm91bmQ6ICMzMDg1ZDY7XG4gICAgaGVpZ2h0OiAuNGVtO1xuICAgIG1hcmdpbjogMCAtMXB4O1xuICAgIHotaW5kZXg6IDEwOyB9XG5cbltjbGFzc149J3N3YWwyJ10ge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaG93U3dlZXRBbGVydCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43KTsgfVxuICA0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNob3dTd2VldEFsZXJ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjcpOyB9XG4gIDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoaWRlU3dlZXRBbGVydCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgaGlkZVN3ZWV0QWxlcnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uc3dhbDItc2hvdyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzaG93U3dlZXRBbGVydCAuM3M7XG4gICAgICAgICAgYW5pbWF0aW9uOiBzaG93U3dlZXRBbGVydCAuM3M7IH1cbiAgLnN3YWwyLXNob3cuc3dhbDItbm9hbmltYXRpb24ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBub25lOyB9XG5cbi5zd2FsMi1oaWRlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGhpZGVTd2VldEFsZXJ0IC4xNXMgZm9yd2FyZHM7XG4gICAgICAgICAgYW5pbWF0aW9uOiBoaWRlU3dlZXRBbGVydCAuMTVzIGZvcndhcmRzOyB9XG4gIC5zd2FsMi1oaWRlLnN3YWwyLW5vYW5pbWF0aW9uIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbm9uZTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbWF0ZS1zdWNjZXNzLXRpcCB7XG4gIDAlIHtcbiAgICB3aWR0aDogMDtcbiAgICBsZWZ0OiAxcHg7XG4gICAgdG9wOiAxOXB4OyB9XG4gIDU0JSB7XG4gICAgd2lkdGg6IDA7XG4gICAgbGVmdDogMXB4O1xuICAgIHRvcDogMTlweDsgfVxuICA3MCUge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGxlZnQ6IC04cHg7XG4gICAgdG9wOiAzN3B4OyB9XG4gIDg0JSB7XG4gICAgd2lkdGg6IDE3cHg7XG4gICAgbGVmdDogMjFweDtcbiAgICB0b3A6IDQ4cHg7IH1cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgbGVmdDogMTRweDtcbiAgICB0b3A6IDQ1cHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGUtc3VjY2Vzcy10aXAge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gICAgbGVmdDogMXB4O1xuICAgIHRvcDogMTlweDsgfVxuICA1NCUge1xuICAgIHdpZHRoOiAwO1xuICAgIGxlZnQ6IDFweDtcbiAgICB0b3A6IDE5cHg7IH1cbiAgNzAlIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBsZWZ0OiAtOHB4O1xuICAgIHRvcDogMzdweDsgfVxuICA4NCUge1xuICAgIHdpZHRoOiAxN3B4O1xuICAgIGxlZnQ6IDIxcHg7XG4gICAgdG9wOiA0OHB4OyB9XG4gIDEwMCUge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGxlZnQ6IDE0cHg7XG4gICAgdG9wOiA0NXB4OyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUtc3VjY2Vzcy1sb25nIHtcbiAgMCUge1xuICAgIHdpZHRoOiAwO1xuICAgIHJpZ2h0OiA0NnB4O1xuICAgIHRvcDogNTRweDsgfVxuICA2NSUge1xuICAgIHdpZHRoOiAwO1xuICAgIHJpZ2h0OiA0NnB4O1xuICAgIHRvcDogNTRweDsgfVxuICA4NCUge1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMzVweDsgfVxuICAxMDAlIHtcbiAgICB3aWR0aDogNDdweDtcbiAgICByaWdodDogOHB4O1xuICAgIHRvcDogMzhweDsgfSB9XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZS1zdWNjZXNzLWxvbmcge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gICAgcmlnaHQ6IDQ2cHg7XG4gICAgdG9wOiA1NHB4OyB9XG4gIDY1JSB7XG4gICAgd2lkdGg6IDA7XG4gICAgcmlnaHQ6IDQ2cHg7XG4gICAgdG9wOiA1NHB4OyB9XG4gIDg0JSB7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAzNXB4OyB9XG4gIDEwMCUge1xuICAgIHdpZHRoOiA0N3B4O1xuICAgIHJpZ2h0OiA4cHg7XG4gICAgdG9wOiAzOHB4OyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZVBsYWNlaG9sZGVyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgMTIlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpOyB9IH1cblxuQGtleWZyYW1lcyByb3RhdGVQbGFjZWhvbGRlciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIDUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIDEyJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00MDVkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQwNWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDA1ZGVnKTsgfSB9XG5cbi5zd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS10aXAge1xuICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1zdWNjZXNzLXRpcCAuNzVzO1xuICAgICAgICAgIGFuaW1hdGlvbjogYW5pbWF0ZS1zdWNjZXNzLXRpcCAuNzVzOyB9XG5cbi5zd2FsMi1hbmltYXRlLXN1Y2Nlc3MtbGluZS1sb25nIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGFuaW1hdGUtc3VjY2Vzcy1sb25nIC43NXM7XG4gICAgICAgICAgYW5pbWF0aW9uOiBhbmltYXRlLXN1Y2Nlc3MtbG9uZyAuNzVzOyB9XG5cbi5zd2FsMi1zdWNjZXNzLnN3YWwyLWFuaW1hdGUtc3VjY2Vzcy1pY29uIC5zd2FsMi1zdWNjZXNzLWNpcmN1bGFyLWxpbmUtcmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRlUGxhY2Vob2xkZXIgNC4yNXMgZWFzZS1pbjtcbiAgICAgICAgICBhbmltYXRpb246IHJvdGF0ZVBsYWNlaG9sZGVyIDQuMjVzIGVhc2UtaW47IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUtZXJyb3ItaWNvbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgxMDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDEwMGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQGtleWZyYW1lcyBhbmltYXRlLWVycm9yLWljb24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMTAwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5zd2FsMi1hbmltYXRlLWVycm9yLWljb24ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1lcnJvci1pY29uIC41cztcbiAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGUtZXJyb3ItaWNvbiAuNXM7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUteC1tYXJrIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjQpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjQpO1xuICAgIG1hcmdpbi10b3A6IDI2cHg7XG4gICAgb3BhY2l0eTogMDsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjQpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjQpO1xuICAgIG1hcmdpbi10b3A6IDI2cHg7XG4gICAgb3BhY2l0eTogMDsgfVxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgbWFyZ2luLXRvcDogLTZweDsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZS14LW1hcmsge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNCk7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNCk7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMTUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcbiAgICBtYXJnaW4tdG9wOiAtNnB4OyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLnN3YWwyLWFuaW1hdGUteC1tYXJrIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGFuaW1hdGUteC1tYXJrIC41cztcbiAgICAgICAgICBhbmltYXRpb246IGFuaW1hdGUteC1tYXJrIC41czsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlLWxvYWRpbmcge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1sb2FkaW5nIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cbiIsIi5jYXJkLWpzIGlucHV0LmNhcmQtbnVtYmVye3BhZGRpbmctcmlnaHQ6NDhweH0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciAuY2FyZC10eXBlLWljb257aGVpZ2h0OjIzcHg7d2lkdGg6MzJweDtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3JpZ2h0OjhweDt0b3A6N3B4O2JhY2tncm91bmQ6dXJsKGh0dHBzOi8vY2FyZGpzLmNvLnVrL2ltZy9jYXJkcy5wbmcpIDAgMjNweCBuby1yZXBlYXQ7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBsaW5lYXI7LW1vei10cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBsaW5lYXI7LW1zLXRyYW5zaXRpb246b3BhY2l0eSAuMTVzIGxpbmVhcjstby10cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBsaW5lYXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyfS5jYXJkLWpzIC5jYXJkLW51bWJlci13cmFwcGVyIC5zaG93e29wYWNpdHk6MX0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciAuY2FyZC10eXBlLWljb24udmlzYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMH0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciAuY2FyZC10eXBlLWljb24ubWFzdGVyLWNhcmR7YmFja2dyb3VuZC1wb3NpdGlvbjotMzJweCAwfS5jYXJkLWpzIC5jYXJkLW51bWJlci13cmFwcGVyIC5jYXJkLXR5cGUtaWNvbi5hbWVyaWNhbi1leHByZXNze2JhY2tncm91bmQtcG9zaXRpb246LTY0cHggMH0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciAuY2FyZC10eXBlLWljb24uZGlzY292ZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjotOTZweCAwfS5jYXJkLWpzIC5jYXJkLW51bWJlci13cmFwcGVyIC5jYXJkLXR5cGUtaWNvbi5kaW5lcnN7YmFja2dyb3VuZC1wb3NpdGlvbjotMTI4cHggMH0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciAuY2FyZC10eXBlLWljb24uamNie2JhY2tncm91bmQtcG9zaXRpb246LTE2MHB4IDB9LmNhcmQtanMgLmN2Yy1jb250YWluZXJ7d2lkdGg6NTAlO2Zsb2F0OnJpZ2h0fS5jYXJkLWpzIC5jdmMtd3JhcHBlcntib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luLWxlZnQ6NXB4fS5jYXJkLWpzIC5jdmMtd3JhcHBlciAuY3Zje2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJX0uY2FyZC1qcyAuZXhwaXJ5LWNvbnRhaW5lcnt3aWR0aDo1MCU7ZmxvYXQ6bGVmdH0uY2FyZC1qcyAuZXhwaXJ5LXdyYXBwZXJ7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbi1yaWdodDo1cHh9LmNhcmQtanMgLmV4cGlyeS13cmFwcGVyIC5leHBpcnl7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5jYXJkLWpzIC5leHBpcnktd3JhcHBlciAuZXhwaXJ5LW1vbnRoe2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDtwYWRkaW5nLWxlZnQ6MzBweH0uY2FyZC1qcyAuZXhwaXJ5LXdyYXBwZXIgLmV4cGlyeS15ZWFye2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWxlZnQ6MH0uY2FyZC1qcyAuZXhwaXJ5LXdyYXBwZXIgLmV4cGlyeS1tb250aCwuY2FyZC1qcyAuZXhwaXJ5LXdyYXBwZXIgLmV4cGlyeS15ZWFye2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jYXJkLWpzIC5leHBpcnktd3JhcHBlciAuZXhwaXJ5e3BhZGRpbmctbGVmdDozOHB4fS5jYXJkLWpzIC5pY29ue3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MjRweDtoZWlnaHQ6MTdweDtsZWZ0OjhweDt0b3A6MTBweDtwb2ludGVyLWV2ZW50czpub25lfS5jYXJkLWpzIC5pY29uLnJpZ2h0e3JpZ2h0OjhweDtsZWZ0OmF1dG99LmNhcmQtanMgLmljb24ucG9wdXB7Y3Vyc29yOnBvaW50ZXI7cG9pbnRlci1ldmVudHM6YXV0b30uY2FyZC1qcyAuaWNvbiAuc3Zne2ZpbGw6Izg4OH0uY2FyZC1qcyAuaWNvbi5wb3B1cCAuc3Zne2ZpbGw6I2FhYSFpbXBvcnRhbnR9LmNhcmQtanMgLmNhcmQtbnVtYmVyLXdyYXBwZXIsLmNhcmQtanMgLm5hbWUtd3JhcHBlcnttYXJnaW4tYm90dG9tOjE1cHg7d2lkdGg6MTAwJX0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciwuY2FyZC1qcyAuY3ZjLXdyYXBwZXIsLmNhcmQtanMgLmV4cGlyeS13cmFwcGVyLC5jYXJkLWpzIC5uYW1lLXdyYXBwZXJ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuNyksaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC43KTstbW96LWJveC1zaGFkb3c6MCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC43KSxpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjcpOy1tcy1ib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuNyksaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC43KTstby1ib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuNyksaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC43KTtib3gtc2hhZG93OjAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuNyksaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC43KTtwb3NpdGlvbjpyZWxhdGl2ZX0uY2FyZC1qcyAuY2FyZC1udW1iZXItd3JhcHBlciwuY2FyZC1qcyAuY3ZjLWNvbnRhaW5lciwuY2FyZC1qcyAuZXhwaXJ5LWNvbnRhaW5lciwuY2FyZC1qcyAubmFtZS13cmFwcGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jYXJkLWpzOjphZnRlcntjb250ZW50OicgJztkaXNwbGF5OnRhYmxlO2NsZWFyOmJvdGh9LmNhcmQtanMgaW5wdXQsLmNhcmQtanMgc2VsZWN0e2NvbG9yOiM2NzY3Njc7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6MzAwO2ZvbnQtZmFtaWx5OlwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtoZWlnaHQ6MzZweDtib3JkZXI6MXB4IHNvbGlkICNkOWQ5ZDk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNoYWRvdzpub25lO2JhY2tncm91bmQtY29sb3I6I0ZERkRGRDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowOy13ZWJraXQtdHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBsaW5lYXIsYm94LXNoYWRvdyAuMTVzIGxpbmVhcjstbW96LXRyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgbGluZWFyLGJveC1zaGFkb3cgLjE1cyBsaW5lYXI7LW1zLXRyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgbGluZWFyLGJveC1zaGFkb3cgLjE1cyBsaW5lYXI7LW8tdHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBsaW5lYXIsYm94LXNoYWRvdyAuMTVzIGxpbmVhcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGxpbmVhcixib3gtc2hhZG93IC4xNXMgbGluZWFyfS5jYXJkLWpzIHNlbGVjdHstbW96LWFwcGVhcmFuY2U6bm9uZTt0ZXh0LWluZGVudDouMDFweDt0ZXh0LW92ZXJmbG93OicnfS5jYXJkLWpzIGlucHV0W2Rpc2FibGVkXSwuY2FyZC1qcyBzZWxlY3RbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6I2VlZTtjb2xvcjojNTU1fS5jYXJkLWpzIHNlbGVjdCBvcHRpb25baGlkZGVuXXtjb2xvcjojQUJBOUE5fS5jYXJkLWpzIGlucHV0OmZvY3VzLC5jYXJkLWpzIHNlbGVjdDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7b3V0bGluZTowO2JvcmRlci1jb2xvcjojNjZhZmU5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwwIDAgOHB4IHJnYmEoMTAyLDE3NSwyMzMsLjYpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksMCAwIDhweCByZ2JhKDEwMiwxNzUsMjMzLC42KX0uY2FyZC1qcyBpbnB1dFtyZWFkb25seT1yZWFkb25seV06bm90KFtkaXNhYmxlZF0pLC5jYXJkLWpzIGlucHV0W3JlYWRvbmx5XTpub3QoW2Rpc2FibGVkXSl7YmFja2dyb3VuZC1jb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyfS5jYXJkLWpzIC5oYXMtZXJyb3IgaW5wdXQsLmNhcmQtanMgLmhhcy1lcnJvciBpbnB1dDpmb2N1c3tib3JkZXItY29sb3I6I0Y2NEIyRjtib3gtc2hhZG93Om5vbmV9LmNhcmQtanMgaW5wdXQuY2FyZC1udW1iZXIsLmNhcmQtanMgaW5wdXQuY3ZjLC5jYXJkLWpzIGlucHV0Lm5hbWV7cGFkZGluZy1sZWZ0OjM4cHg7d2lkdGg6MTAwJX0uY2FyZC1qcy5zdHJpcGUgLmljb24gLnN2Z3tmaWxsOiM1NTlBMjh9IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybCgnLi9mb250cy9mb250ZWxsby9mb250ZWxsby5lb3Q/Njg1ODcyNzEnKTtcbiAgc3JjOiB1cmwoJy4vZm9udHMvZm9udGVsbG8vZm9udGVsbG8uZW90PzY4NTg3MjcxI2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnLi9mb250cy9mb250ZWxsby9mb250ZWxsby53b2ZmMj82ODU4NzI3MScpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4vZm9udHMvZm9udGVsbG8vZm9udGVsbG8ud29mZj82ODU4NzI3MScpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi9mb250cy9mb250ZWxsby9mb250ZWxsby50dGY/Njg1ODcyNzEnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgdXJsKCcuL2ZvbnRzL2ZvbnRlbGxvL2ZvbnRlbGxvLnN2Zz82ODU4NzI3MSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiBmb250LWZhbWlseTogXCJmb250ZWxsb1wiO1xuIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiBmb250LXdlaWdodDogbm9ybWFsO1xuIHNwZWFrOiBub25lO1xuXG4gZGlzcGxheTogaW5saW5lLWJsb2NrO1xuIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiB3aWR0aDogMWVtO1xuIHRleHQtYWxpZ246IGNlbnRlcjtcblxuIC8qIEZvciBzYWZldHkgLSByZXNldCBwYXJlbnQgc3R5bGVzLCB0aGF0IGNhbiBicmVhayBnbHlwaCBjb2RlcyovXG4gZm9udC12YXJpYW50OiBub3JtYWw7XG4gdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAvKiBmaXggYnV0dG9ucyBoZWlnaHQsIGZvciB0d2l0dGVyIGJvb3RzdHJhcCAqL1xuIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAvKiBBbmltYXRpb24gY2VudGVyIGNvbXBlbnNhdGlvbiAtIG1hcmdpbnMgc2hvdWxkIGJlIHN5bW1ldHJpYyAqL1xuIC8qIHJlbW92ZSBpZiBub3QgbmVlZGVkICovXG4gbWFyZ2luLWxlZnQ6IC40cmVtO1xuXG4gLyogeW91IGNhbiBiZSBtb3JlIGNvbWZvcnRhYmxlIHdpdGggaW5jcmVhc2VkIGljb25zIHNpemUgKi9cbiBmb250LXNpemU6IDEzMCU7XG5cbiAvKiBGb250IHNtb290aGluZy4gVGhhdCB3YXMgdGFrZW4gZnJvbSBUV0JTICovXG4gLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tY2hhdDpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAxJzsgfVxuLmljb24tY2hlY2s6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwMCc7IH1cblxuXG5oMywgLmgzLCBoNCwgLmg0IHtcbiAgZm9udC1mYW1pbHk6ICRyb2JvdG87XG59XG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjExZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbn1cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMTNlbTtcbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uYnRuIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6ICR0aXRpbGxpdW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMC44cmVtIDEuM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuIiwiaW5wdXRbdHlwZT1cImVtYWlsXCJdXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl1cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl1cbmlucHV0W3R5cGU9XCJ0ZWxcIl1cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdXG5pbnB1dFt0eXBlPVwidXJsXCJdXG50ZXh0YXJlYVxuc2VsZWN0IHtcbiAgYm9yZGVyOjA7XG59XG5cbi5idG4td2hpdGUge1xuICBjb2xvcjogJGJsdWU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbiAgICBjb2xvcjojZmZmZmZmO1xuICB9XG59XG5vbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbiNsb2dpbmZvcm0ge1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQ6ICMzNThFQzA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgLmxvZ2luLXJlbWVtYmVyIHtcbiAgICBsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAxcmVtO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBsZWZ0OiAtMXJlbTtcbiAgICB9XG4gIH1cbiAgLmxvZ2luLXN1Ym1pdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGlucHV0e1xuICAgICAgY29sb3I6ICMwMDY2Y2M7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICAgIEBleHRlbmQgLmJ0bi13aGl0ZTtcbiAgICB9XG4gIH1cbn1cbmRpdi53cGNmNyB7XG4gIC5zdWJtaXQtYm94IHtcbiAgICAuYWpheC1sb2FkZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiA5MiU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIH1cbiAgfVxuICBkaXYud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAuNXJlbSAwIDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAgMC4zcmVtO1xuICB9XG59XG4uYnRuIHtcbiAgZm9udC1zaXplOiAxOXB4O1xufVxuLmJ0bi1sZWZ0IHtcbiAgbWFyZ2luOjAhaW1wb3J0YW50O1xufVxuLmJ0bi1yaWdodCB7XG4gIG1hcmdpbjowIDAgMCBhdXRvICFpbXBvcnRhbnRcbn1cbi5jb250ZW50IGFydGljbGUsXG4uY29udGVudCBzZWN0aW9uIHtcbiAgLndwY2Y3LWZvcm0ge1xuICAgIC5idG4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbi5mYS1idG4ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNGVtO1xufVxuXG4uY2FyZC1qcyAuaWNvbiBzdmcge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmNoZWNrb3V0LWZvcm0ge1xuXHQubW9kYWwtaGVhZGVyIHtcblx0XHRwYWRkaW5nOiA1cHggMTBweDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgIzFhMWMzNTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZDogIzQwNDU3Njtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cblx0bGFiZWwge1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IDAuOGVtO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRjb2xvcjogIzQwNDU3Njtcblx0fVxuXHQubW9kYWwtYm9keSB7XG5cdFx0aDQge1xuXHRcdFx0Y29sb3I6ICMzMzM7XG5cdFx0fVxuXHR9XG5cdC5tb2RhbC1mb290ZXIge1xuXHRcdHBhZGRpbmc6IDEwcHggMTVweDtcblx0fVxufSIsIi5hbGVydCB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4uYWxlcnQgaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5hbGVydCAuYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmFsZXJ0ID4gcCxcbi5hbGVydCA+IHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hbGVydCA+IHAgKyBwIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuLmFsZXJ0LWRpc21pc3NhYmxlLFxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbn1cbi5hbGVydC1kaXNtaXNzYWJsZSAuY2xvc2UsXG4uYWxlcnQtZGlzbWlzc2libGUgLmNsb3NlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0ycHg7XG4gIHJpZ2h0OiAtMjFweDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uYWxlcnQtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZmYwZDg7XG4gIGJvcmRlci1jb2xvcjogI2Q2ZTljNjtcbiAgY29sb3I6ICMzYzc2M2Q7XG59XG4uYWxlcnQtc3VjY2VzcyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjOWUyYjM7XG59XG4uYWxlcnQtc3VjY2VzcyAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjMmI1NDJjO1xufVxuLmFsZXJ0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGY3O1xuICBib3JkZXItY29sb3I6ICNiY2U4ZjE7XG4gIGNvbG9yOiAjMzE3MDhmO1xufVxuLmFsZXJ0LWluZm8gaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjYTZlMWVjO1xufVxuLmFsZXJ0LWluZm8gLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogIzI0NTI2OTtcbn1cbi5hbGVydC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZjhlMztcbiAgYm9yZGVyLWNvbG9yOiAjZmFlYmNjO1xuICBjb2xvcjogIzhhNmQzYjtcbn1cbi5hbGVydC13YXJuaW5nIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2Y3ZTFiNTtcbn1cbi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHtcbiAgY29sb3I6ICM2NjUxMmM7XG59XG4uYWxlcnQtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZGVkZTtcbiAgYm9yZGVyLWNvbG9yOiAjZWJjY2QxO1xuICBjb2xvcjogI2E5NDQ0Mjtcbn1cbi5hbGVydC1kYW5nZXIgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZTRiOWMwO1xufVxuLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiAjODQzNTM0O1xufVxuIiwiYm9keSB7XG4gIGZvbnQtc2l6ZTogMTZweCFpbXBvcnRhbnQ7XG59XG4uc2l0ZS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnNpdGUtaW5uZXIge1xuXG4gIEBpbmNsdWRlIG1xKCR1bnRpbDogJG1vYmlsZS1tZW51KSB7XG4gICAgLy8gcGFkZGluZzogMC41cmVtO1xuICB9XG59XG4iLCIuc2l0ZS1jb250YWluZXIge1xuICB3aWR0aDoxMDAlO1xuICBAaW5jbHVkZSBtcSgkdW50aWw6ICRtb2JpbGUtbWVudSkge1xuICB9XG59XG4ud3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRtaWQtYnJlYWs7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBAaW5jbHVkZSBtcSgkdW50aWw6ICRtaWQtYnJlYWspIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gIH1cbn1cbi5zaXRlLWlubmVyIHtcbiAgYXJ0aWNsZSxcbiAgc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNHJlbSAwO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB9XG4gIH1cbn1cbiIsIi50b3AtbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgY29sb3I6I2ZmZjtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAucm93IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkdGl0aWxsaXVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLnRvcC1oZWFkZXIge1xuICB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1pZC1icmVhaykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiNzaXRlLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBsaWdodGVuKCRwdXJwbGUsIDMwJSk7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xuICA+IC53cmFwID4gLnJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAud3JhcCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuICAud3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG4uc20tbGlua3Mge1xuICBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGEge1xuICAgICAgY29sb3I6I2ZmZmZmZjtcbiAgICB9XG4gIH1cbn1cbi5pY29uLWdwOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwZDQnOyB9XG4uaWNvbi10dzpiZWZvcmUgeyBjb250ZW50OiAnXFxmMzA0JzsgfVxuLmljb24tZmI6YmVmb3JlIHsgY29udGVudDogJ1xcZjMwOCc7IH1cblxuLnRpdGxlLWFyZWEge1xuICBoMSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuLmxvZ2luLWJ0bnMge1xuICBhIHtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHBhZGRpbmc6IDAuNWVtIDFlbSAwLjNlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBjb2xvcjojZmZmO1xuICAgIH1cbiAgfVxuICAuYnRuLXNpZ251cCB7XG4gICAgYmFja2dyb3VuZDogIzA0QjNGOTtcbiAgfVxuICAuYnRuLWxvZ2luIHtcbiAgICBjb2xvcjokbGluay1jb2xvcjtcbiAgfVxufVxuXG4udGl0bGUtYXJlYSxcbi5yaWdodC1oZWFkZXIge1xuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1pZC1icmVhaykge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGgxIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDJyZW07XG4gICAgfVxuICB9XG59XG5cblxuI21haW4tbmF2IHtcbiAgZm9udC1mYW1pbHk6ICR0aXRpbGxpdW07XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1pZC1icmVhaykge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDogJG1vYmlsZS1tZW51KSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkcHVycGxlLCAzMCUpO1xuICB9XG4gID4gdWwge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAaW5jbHVkZSBsaXN0LWlubGluZSgzcmVtKTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1pZC1icmVhaykge1xuICAgICAgQGluY2x1ZGUgbGlzdC1lcXVhbDtcbiAgICAgIHRhYmxlLWxheW91dDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiAkbW9iaWxlLW1lbnUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgID5saTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICYubW9iaWxlLW9ubHkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSA+IGEsXG4gICAgICA+IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6JHB1cnBsZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgPiBhOmhvdmVyLFxuICAgICAgPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6JHB1cnBsZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6ICRtb2JpbGUtbWVudSkge1xuICAgICAgY29sb3I6I2ZmZjtcbiAgICB9XG4gIH1cbiAgPnVsPmxpOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IDAuMXMgYWxsIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgLnN1Yi1tZW51IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2l0aW9uOiAwLjFzIGFsbCBlYXNlLWluLW91dDtcblx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMzdweDtcbiAgICBtYXJnaW46IDAgMCAwIC0zMCU7XG4gICAgd2lkdGg6IDE2MCU7XG5cdFx0ei1pbmRleDogOTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgYm94LXNoYWRvdzogMHB4IDJweCA1cHggMHB4ICMzMzM7XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICBtaW4td2lkdGg6IDE3NXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgJi5hY3RpdmUgYSxcbiAgICAgID4gYTpob3ZlcixcbiAgICAgID4gYTphY3RpdmUsXG4gICAgICA+IGE6Zm9jdXMsXG4gICAgICAmOmhvdmVyIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwdXJwbGU7XG4gICAgICAgIGNvbG9yOiNmZmZmZmY7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzowLjZyZW0gMXJlbTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcbiAgICAgICAgICBjb2xvcjojZmZmZmZmO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogJG1vYmlsZS1tZW51KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLm1lbnUtdHJpZ2dlciB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdHdpZHRoOiA0OHB4O1xuXHRoZWlnaHQ6IDQ1cHg7XG5cdHRleHQtaW5kZW50OiAtOTAwZW07XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRvdXRsaW5lOiBub25lO1xuICBsZWZ0OiAwLjVyZW07XG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR3aWR0aDogNjglO1xuXHRcdGhlaWdodDogNXB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0dG9wOiAxMHB4O1xuXHRcdGxlZnQ6IDE2JTtcblx0XHRib3gtc2hhZG93OlxuXHRcdDAgMTBweCAwICNmZmYsXG5cdFx0MCAyMHB4IDAgI2ZmZjtcblx0fVxufVxuQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAjbWFpbi1uYXYge1xuICAgIC5tZW51IHtcbiAgICAgIGxlZnQ6IC0yNDBweDtcbiAgICAgIHBhZGRpbmc6MnJlbSAwO1xuICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB0b3A6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubW9iaWxlLW9wZW4gJiB7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAjMDAwO1xuICAgICAgfVxuICAgICAgLm1vYmlsZS1vcGVuZWQgJiB7XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc3ViLW1lbnUge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBoZWlnaHQ6YXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDByZW07XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjowLjVyZW0gMCAwIDFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6bm9uZTtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWVudS10cmlnZ2VyIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG4gIC5tb2JpbGUtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAubW9iaWxlLW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC42KTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6MDtcbiAgICB6LWluZGV4OiA5O1xuICAgIC5tb2JpbGUtb3BlbiAmIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuLnBsYW4tZGV0YWlscyAubHMtcmVzcG9uc2l2ZSAubGlxdWlkLXNsaWRlciB7XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDogODAwcHgpIHtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtcbiAgICAucHJpY2UtZGV0YWlscyB7XG4gICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIH1cbiAgICAucHJpY2UtZGV0YWlscyAqIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnBhbmVsLXdyYXBwZXIgLnJvdyB7XG4gICAgICB3aWR0aDphdXRvIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCJmb290ZXIge1xuICBmb250LWZhbWlseTogJHB0LXNhbnM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgY29sb3I6JGdyYXk7XG4gIHBhZGRpbmc6IDQuNXJlbSAwIDZyZW07XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxuICAuY29sIHtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgJi5jb2wtc20tNiB7XG4gICAgICAgIG9yZGVyOjE7XG4gICAgICB9XG4gICAgICAmLmNvbC1zbS0zIHtcbiAgICAgICAgb3JkZXI6MjtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOjM1MHB4KSB7XG4gICAgICAmLmNvbC1zbS0zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbiAgaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5zdGFja2VkLWxpbmtzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTYwcHg7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICB9XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAgICAgcGFkZGluZzogMC4zcmVtIDA7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXdzbGV0dGVyLXNpZ251cCB7XG4gICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRibGFjaywgMyUpO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIEBpbmNsdWRlIHJvdygxcmVtKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblx0LndwY2Y3LWZvcm0gPiBwIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46IDA7XG5cdH1cblx0Lm1jNHdwLWNoZWNrYm94LWNvbnRhY3QtZm9ybS03IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdFx0bWFyZ2luOiAwLjVyZW0gMC4zcmVtIDAgMC4ycmVtO1xuXHRcdH1cblx0fVxuXHQud3BjZjctbm90LXZhbGlkLXRpcCxcblx0LndwY2Y3LXZhbGlkYXRpb24tZXJyb3JzIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb2xvcjogI2ZmMzczNztcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuICAgIC5lbWFpbC1ib3gge1xuICAgICAgQGluY2x1ZGUgY29sdW1uLWJhc2UoMC41cmVtKTtcbiAgICAgIEBpbmNsdWRlIGNvbHVtbig1LCA3KVxuICAgIH1cbiAgICAuc3VibWl0LWJveCB7XG4gICAgICBAaW5jbHVkZSBjb2x1bW4tYmFzZSgwLjVyZW0pO1xuICAgICAgQGluY2x1ZGUgY29sdW1uKDIsIDcpO1xuICAgICAgaW5wdXQge1xuXHRcdCAgbWF4LWhlaWdodDogMzhweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmxvZ28tY29udGFjdCB7XG4gIHdpZHRoOiAxNjVweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0ycmVtO1xuICBmb250LXNpemU6IDAuODk1ZW07XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICBtYXJnaW46ICAtMXJlbSBhdXRvIDA7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgc3ZnIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIH4gcCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbnRhY3QtbGkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRncmF5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmJvdHRvbS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBmb250LXNpemU6MC45ZW07XG4gIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICBwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgLmJvdHRvbS1saW5rcyB7XG4gICAgQGluY2x1ZGUgbGlzdC1pbmxpbmUoMXJlbSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDAgMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOi0zcHg7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgY29sb3I6JGdyYXk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcmlnaHQ6LTAuNXJlbTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRncmF5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9tZSBQYWdlc1xuI2JpZy1zbGlkZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDVweCAjMzMzO1xuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gIH1cbiAgaDEsIC5oMiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDQuOWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cbiAgLnN1YiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIG1hcmdpbjogMCAwIDAgMnJlbTtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLnJvdyB7XG4gICAgcGFkZGluZzogMCAycmVtO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIC5scy1wYW5lbCB7XG4gICAgaGVpZ2h0OiA2NzVweDtcbiAgICBwYWRkaW5nOiA0cmVtIDAgNnJlbTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgcGFkZGluZzogMXJlbSAwIDZyZW07XG4gICAgICBoZWlnaHQ6NTU2cHg7XG4gICAgfVxuICB9XG4gIC5zbGlkZS1ib2R5IHtcbiAgICBmb250LWZhbWlseTogJHRpdGlsbGl1bTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgfVxuICAuYnRuIHtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgO1xuICAgIHdpZHRoOiAyNjVweDtcbiAgfVxufVxuLmNpcmNsZS1jYWxsb3V0LXdoaXRlIHtcbiAgZm9udC1mYW1pbHk6ICR0aXRpbGxpdW07XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICB3aWR0aDogMjI1cHg7XG4gIGhlaWdodDogMjI1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICRkYXJrLWJsdWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDEuN2VtO1xuICBAaW5jbHVkZSBtcSgkdW50aWw6NzcwcHgpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW46LTJyZW0gMCAwO1xuICB9XG4gIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICB9XG59XG4ucHJldHR5LXVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHBhZGRpbmctbGVmdDogMS40cmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtaW4td2lkdGg6IDQ1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlxcZTgwMFwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiZm9udGVsbG9cIjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IC0yMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vLyBJbm5lciBQYWdlc1xuXG4uZW50cnktaGVhZGVyIHtcbiAgaGVpZ2h0OiA0MzVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDFweCAjMzMzO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDIuNXJlbSAxcmVtO1xuICAgIH1cbn1cbi5jb250ZW50IGFydGljbGUsXG4uY29udGVudCBzZWN0aW9uIHtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiRkYXJrLWdyYXk7XG4gIGgyIHtcbiAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiRkYXJrLWJsdWU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDMuNXJlbTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICB9XG4gIGgzIHtcbiAgICBjb2xvcjokZGFyay1ibHVlO1xuICB9XG4gIC5tZWRpYS1sZWZ0IHtcbiAgICBwYWRkaW5nOiAwIDJyZW0gMnJlbSAwO1xuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAuc3ViLWNhbGxvdXQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDRyZW0gMCAycmVtO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cbiAgYm9keTpub3QoLmhvbWUpICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICBiYWNrZ3JvdW5kOiRibHVlO1xuICAgIGNvbG9yOiNmZmZmZmY7XG4gICAgaDIsIC5oMiwgaDMsIC5oMyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB9XG4gICAgLnN1Yi1jYWxsb3V0IHtcbiAgICAgIGNvbG9yOiNmZmZmZmY7XG4gICAgfVxuICB9XG4gICYuYmx1ZS10aGVtZSB7XG4gICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgY29sb3I6I2ZmZmZmZjtcbiAgICBoMiwgLmgyLCBoMywgLmgzIHtcbiAgICAgIGNvbG9yOiNmZmZmZmY7XG4gICAgfVxuXG4gIH1cbiAgJi5kYXJrLWJsdWUtdGhlbWUge1xuICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWUhaW1wb3J0YW50O1xuICAgIGNvbG9yOiNmZmZmZmYhaW1wb3J0YW50O1xuICAgIGgyLCAuaDIsIGgzLCAuaDMge1xuICAgICAgY29sb3I6I2ZmZmZmZiFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5idG4ge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4jdGVzdGltb25pYWxzIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAudGVzdGltb25pYWwge1xuICAgIHBhZGRpbmc6IDAgM3JlbTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgfVxuICB9XG4gIC50ZXN0aW1vbmlhbC1hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTowLjgyZW07XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cbn1cbi50YWItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ibHVlO1xuICB1bCB7XG4gICAgQGluY2x1ZGUgbGlzdC1pbmxpbmUoMC41cmVtKTtcbiAgICBiYWNrZ3JvdW5kOiAkZGFyay1ibHVlO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjVyZW0gMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luOiAwLjM1cmVtIDAgMDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAgICAgcGFkZGluZzogMC40cmVtIDJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAwIDA7XG4gICAgICAgIGNvbG9yOiNmZmZmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICAgICAgY29sb3I6JGRhcmstYmx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB1bCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW0gMXJlbSAwIDA7XG4gICAgICBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMCAwLjVyZW0gMC41cmVtO1xuICAgICAgfVxuICAgICAgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgY2xlYXI6bGVmdDtcbiAgICAgIH1cbiAgICAgIGxpIGEge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jdmlydHVhbC1sb2NhbC1udW1iZXJzLFxuI3RvbGwtZnJlZS1wbGFucyB7XG4gIC5wYW5lbC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuICAucHJpY2UtY29sIHtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgICAucHJpY2UtY2lyY2xlIHtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMnJlbTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgICAucHJpY2UtZGV0YWlscyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIGgzIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0IWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50b2xsLWd1YXJhbnRlZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOjUzMHB4KSB7XG4gICAgICAucHJpY2UtY2lyY2xlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgICAgLnByaWNlLWNvbCAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLnByaWNlLWRldGFpbHMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICBwIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cbiAgLnRvbGwtZ3VhcmFudGVlIHtcbiAgICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxuICB9XG4gIC5scy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtb2JpbGUtbWVudSkge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTpub25lIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiN2aXJ0dWFsLWxvY2FsLW51bWJlcnMge1xuICAubHMtcGFuZWwge1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDQwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgfVxufVxuI3RvbGwtZnJlZS1wbGFucyB7XG4gIC5scy1wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA0MCUgYm90dG9tO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDUlO1xuICB9XG59XG4ucHJpY2UtY2lyY2xlIHtcbiAgZm9udC1mYW1pbHk6IFwiUFQgU2Fuc1wiO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogJGRhcmstYmx1ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogM3JlbSAxLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDE2MHB4O1xuICBoZWlnaHQ6IDE2MHB4O1xuICBtYXJnaW46IDNyZW0gYXV0byAycmVtO1xufVxuLm51bWJlci1jYWxsb3V0IHtcbiAgY29sb3I6ICRkYXJrLWJsdWU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LWZhbWlseTogXCJQVCBTYW5zXCI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLndoeS1jaG9vc2Uge1xuICAucm93LWN1c3RvbSB7XG4gICAgQGluY2x1ZGUgcm93KDRyZW0pO1xuICB9XG4gIC5jb2wtY3VzdG9tIHtcbiAgICBAaW5jbHVkZSBjb2x1bW4tYmFzZSg0cmVtKTtcbiAgICBAaW5jbHVkZSBjb2x1bW4oMSwyKTtcbiAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1vYmlsZS1tZW51KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5ib3gtZWxlbSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA0cmVtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcGFkZGluZy10b3A6MTRyZW07XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiRtaWQtYnJlYWspIHtcbiAgICAgIHBhZGRpbmc6IDE0cmVtIDAuNXJlbSAwLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDokbW9iaWxlLW1lbnUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtcSgkdW50aWw6JG1pZC1icmVhaykge1xuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBtYXgtd2lkdGg6IDM0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgICYuaGVhZHBob25lcyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9oZWFkcGhvbmVzX2ljb24ucG5nJyk7XG4gICAgfVxuICAgICYucHJpemUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYXdhcmRzX2ljb24ucG5nJyk7XG4gICAgfVxuICAgICYuZ2VhcnMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvZ2VhcnNfaWNvbi5wbmcnKTtcbiAgICB9XG4gICAgJi5nbG9iZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9nbG9iZV9pY29uLnBuZycpO1xuICAgIH1cbiAgfVxufVxuXG4uYWxpZ25sZWZ0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLXJpZ2h0OiAxLjVyZW07XG59XG5cbi5hbGlnbnJpZ2h0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi1sZWZ0OiAxLjVyZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG5cdGNsZWFyOiBib3RoO1xuXHRtYXJnaW46IDAgYXV0byAxcmVtO1xuICBkaXNwbGF5OmJsb2NrO1xufVxuLmFsaWdubGVmdCAud3AtY2FwdGlvbi10ZXh0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5hbGlnbnJpZ2h0IC53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmxzLXJlc3BvbnNpdmUgLmxzLW5hdi1yaWdodC1hcnJvdyxcbi5scy1yZXNwb25zaXZlIC5scy1uYXYtbGVmdC1hcnJvdyB7XG4gIG1hcmdpbi10b3A6IC0xN3B4O1xuICB0b3A6NTAlO1xufVxuXG4uY29udGFjdC1mb3JtIHtcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOjMwMHB4O1xuICB9XG4gIC5zdWJtaXQtYm94IHtcbiAgICAuYnRuIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbn1cbi5jb250ZW50IGFydGljbGUgLm1hcCB7XG4gIGgyIHtcbiAgICBtYXJnaW46IDEuNHJlbSAwIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuLmNvbnRhY3QtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB1bCB7XG5cbiAgICBtYXJnaW46IDAgMCAwIC0wLjNyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYSB7XG4gICAgICBjb2xvcjojNDM0NTc5O1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgfVxuICAgICAgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOjA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFFQUEseURBQXlEO0FHQXpELDRFQUE0RTtBQUU1RTs7Ozs7R0FLRztBQUVIO2dGQUNnRjtBQUVoRixBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxVQUFVO0VBQUUsT0FBTztFQUNoQyxXQUFXLEVBQUUsSUFBSTtFQUFFLE9BQU87RUFDMUIsb0JBQW9CLEVBQUUsSUFBSTtFQUFFLE9BQU87RUFDbkMsd0JBQXdCLEVBQUUsSUFBSTtFQUFFLE9BQU87Q0FDeEM7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUgsQUFB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 */