/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

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

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none; }

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

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

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

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

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

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

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

/**
 * 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
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

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

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

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

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold; }

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

/**
 * 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 OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

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

html, body {
  font-size: 100%;
  font-family: 'Open Sans', sans-serif; }

.text-slider__title-main,
.hidden-nav:not(.hidden-nav--footer) a,
h1,
h2 {
  font-family: 'Open Sans Condensed', sans-serif;
  font-weight: 700; }

h1, h2, h3, h4 {
  color: #454552;
  line-height: 1; }
h1.h-upper, h2.h-upper, h3.h-upper, h4.h-upper {
  text-transform: uppercase; }

h1, h2 {
  text-transform: uppercase; }

h1.h-line,
h3.h-line {
  position: relative;
  padding-left: 100px; }
h1.h-line:before,
h3.h-line:before {
  position: absolute;
  top: 0.58em;
  left: 0;
  display: block;
  width: 70px;
  height: 5px;
  background-color: #e3001b;
  content: ""; }

h3.h-line:before {
  top: 0.75em; }

h1 {
  margin: 0 0 1.6em;
  font-size: 3.125rem; }
h1.h-line:before {
  top: 0.75em; }

h2 {
  margin: 2em 0 1.3333em;
  font-size: 1.875rem; }

h3, h4 {
  font-weight: 600; }

h3 {
  margin: .8em 0 2.5em;
  font-size: 1.5rem;
  line-height: 1.25; }

h4 {
  margin: 3em 0 2em;
  font-size: 1.25rem; }
h4:first-child {
  margin-top: 0; }

p,
.u-list li {
  color: #372f2d;
  font-size: 1.125rem;
  line-height: 1.39; }
p a,
.u-list li a {
  color: #4285f4;
  text-decoration: underline; }
p a:hover,
.u-list li a:hover {
  text-decoration: none; }

p {
  margin: 1.3333em 0; }
p.box {
  margin: 3.33333em 0;
  background-color: #a6acbc;
  padding: 1.66666em;
  color: #fff; }
p:last-child {
  margin-bottom: 0; }
p.high-line {
  line-height: 1.6666; }

.u-list {
  padding: 0 0 0 6.25em;
  margin: 2.5em 0 0;
  list-style: none; }
.u-list li {
  position: relative; }
.u-list li:not(:last-child) {
  margin-bottom: 1.6666em; }
.u-list li:before {
  position: absolute;
  left: -20px;
  top: .5em;
  display: block;
  width: 5px;
  height: 5px;
  background-color: #e3001b;
  content: ""; }

/* Main
***************************/
.inner-page {
  padding: 50px 0 160px; }

/* Overflow
***************************/
.wrapper {
  position: relative;
  overflow: hidden; }

/* Container
***************************/
.template-width {
  width: 100%;
  max-width: 1170px;
  margin: 0 auto; }

/* Link inheritance
***************************/
a {
  color: inherit;
  text-decoration: none; }

/* Box-sizing with inheritance
***************************/
html {
  box-sizing: border-box; }

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

/* Style text selection
***************************/
::-moz-selection {
  background: rgba(46, 198, 247, 0.33); }
::selection {
  background: rgba(46, 198, 247, 0.33); }

::-moz-selection {
  background: rgba(46, 198, 247, 0.33); }

/* Placeholder
***************************/
::-webkit-input-placeholder {
  color: #83838d;
  -webkit-transition: color .2s;
  transition: color .2s;
  opacity: 1; }

::-moz-placeholder {
  color: #83838d;
  -webkit-transition: color .2s;
  transition: color .2s;
  opacity: 1; }

:-moz-placeholder {
  color: #83838d;
  -webkit-transition: color .2s;
  transition: color .2s;
  opacity: 1; }

:-ms-input-placeholder {
  color: #83838d;
  -webkit-transition: color .2s;
  transition: color .2s;
  opacity: 1; }

input:focus::-webkit-input-placeholder {
  color: transparent; }

input:focus::-moz-placeholder {
  color: transparent; }

input:focus:-moz-placeholder {
  color: transparent; }

input:focus:-ms-input-placeholder {
  color: transparent; }

input.error::-webkit-input-placeholder {
  color: #e01f63; }

input.error::-moz-placeholder {
  color: #e01f63; }

input.error:-moz-placeholder {
  color: #e01f63; }

input.error:-ms-input-placeholder {
  color: #e01f63; }

textarea.error::-webkit-input-placeholder {
  color: #e01f63; }

textarea.error::-moz-placeholder {
  color: #e01f63; }

textarea.error:-moz-placeholder {
  color: #e01f63; }

textarea.error:-ms-input-placeholder {
  color: #e01f63; }

/* Images
***************************/
img {
  display: block;
  max-width: 100%;
  height: auto; }

/* Images
***************************/
html.hide-scroll {
  overflow: hidden; }
html.hide-scroll body {
  margin-right: 15px;
  overflow: visible;
  -ms-touch-action: none;
  touch-action: none; }
@media only screen and (max-width: 1024px) {
  html.hide-scroll body {
    margin-right: 0; } }

.grid-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*margin-right: -1.875rem; */
}

.grid-col-3, .grid-col-4, .grid-col-6, .grid-col-8 {
  padding-right: 1.875rem; }

.grid-col-3 {
  -webkit-flex-basis: 25%;
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%; }

.grid-col-4 {
  -webkit-flex-basis: 33.33333%;
  -ms-flex-preferred-size: 33.33333%;
  flex-basis: 33.33333%;
  max-width: 33.33333%; }

.grid-col-6 {
  -webkit-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%; }

.grid-col-8 {
  -webkit-flex-basis: 66.66666%;
  -ms-flex-preferred-size: 66.66666%;
  flex-basis: 66.66666%;
  max-width: 66.66666%; }

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

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

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

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

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

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

.fancybox-enabled {
  overflow: hidden; }

.fancybox-enabled body {
  overflow: visible;
  -ms-touch-action: none;
  touch-action: none; }

.fancybox-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99993;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.fancybox-container ~ .fancybox-container {
  z-index: 99992; }

.fancybox-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #0f0f11;
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
  transition-timing-function: cubic-bezier(0.55, 0.06, 0.68, 0.19);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.fancybox-container--ready .fancybox-bg {
  opacity: .87;
  -webkit-transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1); }

.fancybox-controls {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  text-align: center;
  opacity: 0;
  z-index: 99994;
  -webkit-transition: opacity .2s;
  transition: opacity .2s;
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  direction: ltr; }

.fancybox-show-controls .fancybox-controls {
  opacity: 1; }

.fancybox-infobar {
  display: none; }

.fancybox-show-infobar .fancybox-infobar {
  display: inline-block;
  pointer-events: all; }

.fancybox-infobar__body {
  display: inline-block;
  width: 70px;
  line-height: 44px;
  font-size: 13px;
  font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
  text-align: center;
  color: #ddd;
  background-color: rgba(30, 30, 30, 0.7);
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: subpixel-antialiased; }

.fancybox-buttons {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  pointer-events: all; }

.fancybox-show-buttons .fancybox-buttons {
  display: block; }

.fancybox-slider-wrap {
  overflow: hidden;
  direction: ltr; }

.fancybox-slider, .fancybox-slider-wrap {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  z-index: 99993;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.fancybox-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
  outline: none;
  white-space: normal;
  box-sizing: border-box;
  text-align: center;
  z-index: 99994;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: transparent; }

.fancybox-slide:before {
  content: "";
  height: 100%;
  width: 0; }

.fancybox-slide:before, .fancybox-slide > * {
  display: inline-block;
  vertical-align: middle; }

.fancybox-slide > * {
  position: relative;
  padding: 24px;
  margin: 44px 0;
  border-width: 0;
  text-align: left;
  background-color: #fff;
  overflow: auto;
  box-sizing: border-box; }

.fancybox-slide--image {
  overflow: hidden; }

.fancybox-slide--image:before {
  display: none; }

.fancybox-content {
  display: inline-block;
  position: relative;
  margin: 44px auto;
  padding: 0;
  border: 0;
  width: 80%;
  height: calc(100% - 88px);
  vertical-align: middle;
  line-height: normal;
  text-align: left;
  white-space: normal;
  outline: none;
  font-size: 16px;
  font-family: Arial,sans-serif;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-overflow-scrolling: touch; }

.fancybox-iframe {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  width: 100%;
  height: 100%;
  background: #fff; }

.fancybox-slide--video .fancybox-content, .fancybox-slide--video .fancybox-iframe {
  background: transparent; }

.fancybox-placeholder {
  z-index: 99995;
  background: transparent;
  cursor: default;
  overflow: visible;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.fancybox-image, .fancybox-placeholder, .fancybox-spaceball {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  border: 0; }

.fancybox-image, .fancybox-spaceball {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  background: transparent;
  background-size: 100% 100%; }

.fancybox-controls--canzoomOut .fancybox-placeholder {
  cursor: zoom-out; }

.fancybox-controls--canzoomIn .fancybox-placeholder {
  cursor: zoom-in; }

.fancybox-controls--canGrab .fancybox-placeholder {
  cursor: -webkit-grab;
  cursor: grab; }

.fancybox-controls--isGrabbing .fancybox-placeholder {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.fancybox-spaceball {
  z-index: 1; }

.fancybox-tmp {
  position: absolute;
  top: -9999px;
  left: -9999px;
  visibility: hidden; }

.fancybox-error {
  position: absolute;
  margin: 0;
  padding: 40px;
  top: 50%;
  left: 50%;
  width: 380px;
  max-width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: #fff;
  cursor: default; }

.fancybox-error p {
  margin: 0;
  padding: 0;
  color: #444;
  font: 16px/20px Helvetica Neue,Helvetica,Arial,sans-serif; }

.fancybox-close-small {
  position: absolute;
  top: 4px;
  right: 4px;
  padding: 0;
  margin: 0;
  width: 30px;
  height: 30px;
  font: 21px/1 Arial,Helvetica Neue,Helvetica,sans-serif;
  color: #888;
  font-weight: 300;
  text-align: center;
  border-radius: 50%;
  border-width: 0;
  cursor: pointer;
  background: #fff;
  -webkit-transition: background .2s;
  transition: background .2s;
  box-sizing: border-box;
  z-index: 2; }

.fancybox-close-small:focus {
  outline: 1px dotted #888; }

.fancybox-slide--video .fancybox-close-small {
  top: -36px;
  right: -36px;
  background: transparent; }

.fancybox-close-small:hover {
  color: #555;
  background: #eee; }

.fancybox-caption-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 60px 30px 0;
  z-index: 99998;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  background: -webkit-linear-gradient(top, transparent 0, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8));
  background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, 0.1) 20%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.6) 80%, rgba(0, 0, 0, 0.8));
  opacity: 0;
  -webkit-transition: opacity .2s;
  transition: opacity .2s;
  pointer-events: none; }

.fancybox-show-caption .fancybox-caption-wrap {
  opacity: 1; }

.fancybox-caption {
  padding: 30px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 14px;
  font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
  color: #fff;
  line-height: 20px;
  -webkit-text-size-adjust: none; }

.fancybox-caption a, .fancybox-caption button {
  pointer-events: all; }

.fancybox-caption a {
  color: #fff;
  text-decoration: underline; }

.fancybox-button {
  display: inline-block;
  position: relative;
  width: 44px;
  height: 44px;
  line-height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  cursor: pointer;
  background: transparent;
  color: #fff;
  box-sizing: border-box;
  vertical-align: top;
  outline: none; }

.fancybox-button--disabled {
  cursor: default;
  pointer-events: none; }

.fancybox-button, .fancybox-infobar__body {
  background: rgba(30, 30, 30, 0.6); }

.fancybox-button:hover {
  background: rgba(0, 0, 0, 0.8); }

.fancybox-button:after, .fancybox-button:before {
  content: "";
  pointer-events: none;
  position: absolute;
  border-color: #fff;
  background-color: currentColor;
  color: currentColor;
  opacity: .9;
  box-sizing: border-box;
  display: inline-block; }

.fancybox-button--disabled:after, .fancybox-button--disabled:before {
  opacity: .5; }

.fancybox-button--left:after {
  left: 20px;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg); }

.fancybox-button--left:after, .fancybox-button--right:after {
  top: 18px;
  width: 6px;
  height: 6px;
  background: transparent;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor; }

.fancybox-button--right:after {
  right: 20px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.fancybox-button--left {
  border-bottom-left-radius: 5px; }

.fancybox-button--right {
  border-bottom-right-radius: 5px; }

.fancybox-button--close {
  float: right; }

.fancybox-button--close:after, .fancybox-button--close:before {
  content: "";
  display: inline-block;
  position: absolute;
  height: 2px;
  width: 16px;
  top: calc(50% - 1px);
  left: calc(50% - 8px); }

.fancybox-button--close:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.fancybox-button--close:after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.fancybox-loading {
  border: 6px solid rgba(99, 99, 99, 0.4);
  border-top: 6px solid rgba(255, 255, 255, 0.6);
  border-radius: 100%;
  height: 50px;
  width: 50px;
  -webkit-animation: a .8s infinite linear;
  animation: a .8s infinite linear;
  background: transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -25px;
  margin-left: -25px;
  z-index: 99999; }

@-webkit-keyframes a {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes a {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@media (max-width: 800px) {
  .fancybox-controls {
    text-align: left; }
  .fancybox-button--left, .fancybox-button--right, .fancybox-buttons button:not(.fancybox-button--close) {
    display: none !important; }
  .fancybox-caption {
    padding: 20px 0;
    margin: 0; } }

.fancybox-button--fullscreen:before {
  width: 15px;
  height: 11px;
  left: 15px;
  top: 16px;
  border: 2px solid;
  background: none; }

.fancybox-button--play:before {
  top: 16px;
  left: 18px;
  width: 0;
  height: 0;
  border-top: 6px inset transparent;
  border-bottom: 6px inset transparent;
  border-left: 10px solid;
  border-radius: 1px;
  background: transparent; }

.fancybox-button--pause:before {
  top: 16px;
  left: 18px;
  width: 7px;
  height: 11px;
  border-style: solid;
  border-width: 0 2px;
  background: transparent; }

.fancybox-button--thumbs span {
  font-size: 23px; }

.fancybox-button--thumbs:before {
  top: 20px;
  left: 21px;
  width: 3px;
  height: 3px;
  box-shadow: 0 -4px 0,-4px -4px 0,4px -4px 0,inset 0 0 0 32px,-4px 0 0,4px 0 0,0 4px 0,-4px 4px 0,4px 4px 0; }

.fancybox-container--thumbs .fancybox-caption-wrap, .fancybox-container--thumbs .fancybox-controls, .fancybox-container--thumbs .fancybox-slider-wrap {
  right: 220px; }

.fancybox-thumbs {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  width: 220px;
  margin: 0;
  padding: 5px 5px 0 0;
  background: #fff;
  z-index: 99993;
  word-break: normal;
  -webkit-overflow-scrolling: touch;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box; }

.fancybox-thumbs > ul {
  list-style: none;
  position: absolute;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  font-size: 0; }

.fancybox-thumbs > ul > li {
  float: left;
  overflow: hidden;
  max-width: 50%;
  padding: 0;
  margin: 0;
  width: 105px;
  height: 75px;
  position: relative;
  cursor: pointer;
  outline: none;
  border: 5px solid #fff;
  border-top-width: 0;
  border-right-width: 0;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box; }

li.fancybox-thumbs-loading {
  background: rgba(0, 0, 0, 0.1); }

.fancybox-thumbs > ul > li > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  max-height: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.fancybox-thumbs > ul > li:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 2px;
  border: 4px solid #4ea7f9;
  z-index: 99991;
  opacity: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.fancybox-thumbs > ul > li.fancybox-thumbs-active:before {
  opacity: 1; }

@media (max-width: 800px) {
  .fancybox-thumbs {
    display: none !important; }
  .fancybox-container--thumbs .fancybox-caption-wrap, .fancybox-container--thumbs .fancybox-controls, .fancybox-container--thumbs .fancybox-slider-wrap {
    right: 0; } }

.baron__clipper {
  position: relative;
  overflow: hidden; }

.baron__scroller {
  overflow-y: scroll;
  -ms-overflow-style: none;
  box-sizing: border-box;
  margin: 0;
  border: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  -webkit-overflow-scrolling: touch;
  /* remove line to customize scrollbar in iOs */ }

.baron__scroller::-webkit-scrollbar {
  width: 0;
  height: 0; }

.baron__track {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0; }

.baron._scrollbar .baron__track {
  display: block; }

.baron__free {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0; }

.baron__bar {
  display: none;
  position: absolute;
  right: 0;
  z-index: 1;
  width: 10px;
  background: #999; }

.baron._scrollbar .baron__bar {
  display: block; }

.baron__control {
  display: none; }

/* SIMPLE */
.baron._simple .baron__track {
  opacity: 0;
  position: absolute;
  z-index: 3;
  top: 15px;
  bottom: 15px;
  right: 10px;
  width: 10px;
  border-radius: 5px;
  background: #f5f6f7;
  pointer-events: none; }

.baron._simple._scrollbar .baron__track {
  opacity: 1; }

.baron._simple .baron__bar {
  position: absolute;
  right: 0;
  z-index: 1;
  width: 10px;
  border-radius: 5px;
  background-color: #83838d;
  -webkit-transition: opacity .2s linear;
  transition: opacity .2s linear;
  pointer-events: auto; }

.baron._simple .baron__bar:hover,
.baron._simple .baron__bar:active {
  background-color: #83838d; }

/* Mac OS X */
.baron._macosx .baron__track {
  opacity: 0;
  position: absolute;
  z-index: 3;
  top: 2px;
  bottom: 2px;
  right: 2px;
  width: 0; }

.baron._macosx._scrollbar .baron__track {
  opacity: 1; }

.baron._macosx .baron__bar {
  position: absolute;
  z-index: 1;
  width: 6px;
  border-radius: 3px;
  background: #333;
  opacity: 0;
  -webkit-transition: .1s opacity .4s linear;
  transition: .1s opacity .4s linear;
  pointer-events: auto; }

.baron._macosx .baron__bar:hover,
.baron._scrolling .baron__bar {
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s; }

/* Windows XP */
.baron._winxp .baron__scroller {
  padding-right: 17px; }

.baron._winxp .baron__track {
  opacity: 0;
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  right: 0;
  width: 15px;
  overflow: hidden;
  background-image: -webkit-linear-gradient(left, #f2f1ec, #fdfef9);
  background-image: linear-gradient(to right, #f2f1ec, #fdfef9);
  border: 1px solid #ecede5; }

.baron._winxp._scrollbar .baron__track {
  opacity: 1; }

.baron._winxp .baron__control {
  display: block; }

.baron._winxp .baron__control,
.baron._winxp .baron__bar {
  border: 1px solid #f3ffff;
  box-shadow: 1px 1px 1px #b7caf5 inset, 1px 1px 1px #7b9fd3;
  border-radius: 3px;
  background-image: -webkit-linear-gradient(left, #c9d7fc, #baccf4);
  background-image: linear-gradient(to right, #c9d7fc, #baccf4);
  text-align: center;
  font-size: 8px;
  line-height: 14px;
  color: #4e6287;
  cursor: default;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.baron._winxp .baron__control:hover,
.baron._winxp .baron__bar:hover {
  background-image: -webkit-linear-gradient(left, #d9e7ff, #cadcff);
  background-image: linear-gradient(to right, #d9e7ff, #cadcff); }

.baron._winxp .baron__up,
.baron._winxp .baron__down {
  position: absolute;
  z-index: 1;
  width: 15px;
  height: 16px;
  box-sizing: border-box; }

.baron._winxp .baron__up {
  top: 0; }

.baron._winxp .baron__down {
  bottom: 0; }

.baron._winxp .baron__free {
  position: absolute;
  top: 18px;
  bottom: 18px;
  right: 0;
  width: 0; }

.baron._winxp .baron__bar {
  position: absolute;
  z-index: 1;
  width: 15px;
  box-sizing: border-box;
  border: 1px solid #f3ffff;
  box-shadow: 1px 1px 1px #b7caf5 inset, 1px 1px 1px #7b9fd3;
  border-radius: 3px;
  background-image: -webkit-linear-gradient(left, #c9d7fc, #baccf4);
  background-image: linear-gradient(to right, #c9d7fc, #baccf4);
  opacity: 1;
  -webkit-transition: opacity .2s ease-in;
  transition: opacity .2s ease-in;
  pointer-events: auto; }

.baron._winxp .baron__bar:before {
  content: '';
  position: absolute;
  top: 45%;
  left: 3px;
  width: 6px;
  height: 7px;
  z-index: 1;
  background-image: -webkit-linear-gradient(top, #f0f4ff 0px, #f0f4ff 1px, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0) 2px, #f0f4ff 2px, #f0f4ff 3px, rgba(255, 255, 255, 0) 3px, rgba(255, 255, 255, 0) 4px, #f0f4ff 4px, #f0f4ff 5px, rgba(255, 255, 255, 0) 5px, rgba(255, 255, 255, 0) 6px, #f0f4ff 6px, #f0f4ff 7px, rgba(255, 255, 255, 0) 7px, rgba(255, 255, 255, 0) 8px);
  background-image: linear-gradient(to bottom, #f0f4ff 0px, #f0f4ff 1px, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0) 2px, #f0f4ff 2px, #f0f4ff 3px, rgba(255, 255, 255, 0) 3px, rgba(255, 255, 255, 0) 4px, #f0f4ff 4px, #f0f4ff 5px, rgba(255, 255, 255, 0) 5px, rgba(255, 255, 255, 0) 6px, #f0f4ff 6px, #f0f4ff 7px, rgba(255, 255, 255, 0) 7px, rgba(255, 255, 255, 0) 8px); }

.baron._winxp .baron__bar:after {
  content: '';
  position: absolute;
  top: 47%;
  left: 4px;
  width: 6px;
  height: 7px;
  background-image: -webkit-linear-gradient(top, #8aaff6 0px, #8aaff6 1px, rgba(138, 175, 246, 0) 1px, rgba(138, 175, 246, 0) 2px, #8aaff6 2px, #8aaff6 3px, rgba(138, 175, 246, 0) 3px, rgba(138, 175, 246, 0) 4px, #8aaff6 4px, #8aaff6 5px, rgba(138, 175, 246, 0) 5px, rgba(138, 175, 246, 0) 6px, #8aaff6 6px, #8aaff6 7px, rgba(138, 175, 246, 0) 7px, rgba(138, 175, 246, 0) 8px);
  background-image: linear-gradient(to bottom, #8aaff6 0px, #8aaff6 1px, rgba(138, 175, 246, 0) 1px, rgba(138, 175, 246, 0) 2px, #8aaff6 2px, #8aaff6 3px, rgba(138, 175, 246, 0) 3px, rgba(138, 175, 246, 0) 4px, #8aaff6 4px, #8aaff6 5px, rgba(138, 175, 246, 0) 5px, rgba(138, 175, 246, 0) 6px, #8aaff6 6px, #8aaff6 7px, rgba(138, 175, 246, 0) 7px, rgba(138, 175, 246, 0) 8px); }

.baron._winxp._dragging .baron__bar,
.baron._winxp .baron__bar:hover {
  background-image: -webkit-linear-gradient(left, #d9e7ff, #cadcff);
  background-image: linear-gradient(to right, #d9e7ff, #cadcff); }

/* Ubuntu */
.baron._ubuntu12 .baron__scroller {
  padding-right: 14px; }

.baron._ubuntu12 .baron__track {
  opacity: 0;
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  right: 0;
  width: 14px;
  box-sizing: border-box;
  border: 1px solid #c5c1bd;
  border-radius: 7px;
  background-image: -webkit-linear-gradient(left, #d3d3d3, #e5e5e5);
  background-image: linear-gradient(to right, #d3d3d3, #e5e5e5); }

.baron._ubuntu12._scrollbar .baron__track {
  opacity: 1; }

.baron._ubuntu12 .baron__bar {
  position: absolute;
  z-index: 1;
  width: 12px;
  box-sizing: border-box;
  border: 1px solid #fff;
  border-radius: 6px;
  background-image: -webkit-linear-gradient(left, #fcfbfb, #eeeceb);
  background-image: linear-gradient(to right, #fcfbfb, #eeeceb);
  opacity: 1;
  pointer-events: auto;
  box-shadow: 0 0 1px #d6d3d0; }

.baron._ubuntu12 .baron__bar:hover,
.baron._ubuntu12._dragging .baron__bar {
  background-image: -webkit-linear-gradient(left, #e96d3a, #f58050);
  background-image: linear-gradient(to right, #e96d3a, #f58050);
  border-color: #e1632f; }

.header--main {
  height: 100vh;
  position: relative; }

.header:not(.header--main) {
  background-color: #454552; }
/*.header:not(.header--main) .main-logo svg {*/
/*width: 70px; }*/
.header:not(.header--main) .top-menu__content {
  height: 120px; }
/*.header:not(.header--main) .main-logo__wrap {*/
/*padding-top: 20px; }*/

.top-menu__content {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 240px;
  flex-wrap: wrap;
}

.main-logo {
  z-index: 1;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 400px; }
.main-logo svg {
  width: 88px;
  height: 100px; }
.main-logo path {
  -webkit-transition: fill .15s ease-in-out;
  transition: fill .15s ease-in-out; }
.main-logo--white:not(:hover) path {
  fill: #fff; }

.main-logo__wrap {
  padding-top: 15px;
  padding-left: 10px; }

.main-logo__text,
.main-logo__text-sub {
  display: block;
  color: #f1f1f1;
  line-height: 1; }

.main-logo__text {
  margin-bottom: 15px;
  font-size: 24px;
  font-weight: 700; }

.main-logo__text-sub {
  font-size: 16px;
  font-weight: 600; }

.main-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-basis: 19.5em;
  -ms-flex-preferred-size: 19.5em;
  flex-basis: 19.5em;
  margin: 0 5.63em 0 0;
  padding: 0.625em 0 0;
  list-style: none; }
.main-nav li:not(:last-child) {
  margin-right: 3.13em; }
.main-nav a {
  position: relative;
  display: block;
  overflow: hidden;
  font-size: 1rem;
  font-weight: 700;
  line-height: 2.5em;
  color: #ffffff; }
.main-nav a:after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background-color: #fff;
  -webkit-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateX(-103%);
  -ms-transform: translateX(-103%);
  transform: translateX(-103%);
  content: ""; }
.main-nav a:hover:after, .main-nav a.active:after {
  -webkit-transition: 0.2s ease-in;
  transition: 0.2s ease-in;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transform: translateX(0%);
  -ms-transform: translateX(0%);
  transform: translateX(0%); }
.main-nav a.active {
  pointer-events: none; }

.main-buttons__menu {
  z-index: 1;
  right: 0; }
.main-buttons__menu:hover {
  will-change: width, height, border-radius; }

.main-buttons__label {
  position: relative;
  height: 60px;
  margin: 0;
  padding-right: 20px;
  color: #f1f1f1;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 60px;
  text-transform: uppercase; }

.main-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none; }
.main-buttons > li {
  cursor: pointer; }
.main-buttons > li > a:not(.hide-menu) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: inherit;
  width: inherit; }

.humburger {
  position: absolute;
  top: 21px;
  right: 18px;
  width: 26px;
  height: 18px;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  pointer-events: none; }
.humburger span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #fff;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  transition: .25s ease-in-out; }
.humburger span:nth-child(1) {
  top: 0;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center; }
.humburger span:nth-child(2) {
  top: 8px;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center; }
.humburger span:nth-child(3) {
  top: 16px;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center; }

.main-buttons__menu:hover .humburger span:nth-child(2) {
  -webkit-transform: scaleX(0.75);
  -ms-transform: scaleX(0.75);
  transform: scaleX(0.75); }

.main-buttons__menu:hover .humburger span:nth-child(3) {
  -webkit-transform: scaleX(0.5);
  -ms-transform: scaleX(0.5);
  transform: scaleX(0.5); }

.top-menu {
  position: relative;
  z-index: 100;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.header__page-info {
  margin-top: 2.3125em; }

.header__pagename {
  margin: 0 0 .83334em;
  font-weight: 700;
  font-size: 3.75rem;
  line-height: .8;
  color: #fff; }

.main-tel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: .15s ease;
  transition: .15s ease; }
.main-tel svg {
  display: block;
  width: 17px;
  height: 17px;
  margin-right: 10px; }
.main-tel span {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1; }
.main-tel--hidden {
  opacity: 0;
  visibility: hidden; }

.slider,
.image-slider,
.svg-layer,
.text-slider {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden; }

.slider {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #33333d; }

.image-slider:after {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #33333d;
  opacity: .55;
  content: ""; }

.image-slider div {
  height: 100%; }

.image-slider__item {
  background-size: cover;
  background-position: center; }

.svg-layer {
  top: 150px;
  height: calc(95% - 130px); }
.svg-layer svg {
  height: 100%;
  max-width: 99.0625%;
  display: block;
  margin: 0 auto; }

.text-slider {
  right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

.text-slider__cont,
.text-slider__controls {
  max-width: 1045px;
  margin-left: auto; }

.text-slider__cont {
  top: 0;
  bottom: 0;
  margin-right: 70px;
  padding-left: 100px;
  min-height: 0;
  min-width: 0;
  opacity: 0;
  -webkit-transition: opacity .2s ease-out;
  transition: opacity .2s ease-out; }
.text-slider__cont.slick-initialized {
  opacity: 1; }
.text-slider__cont * {
  overflow: visible; }

.text-slider__controls {
  position: absolute;
  right: 0;
  padding-left: 30px;
  bottom: 10%; }

.text-slider__title-main {
  position: relative;
  margin: 0 0 1em;
  color: #f1f1f1;
  font-size: 3.125em;
  line-height: 1.2;
  text-transform: uppercase; }
.text-slider__title-main:before {
  position: absolute;
  right: 100%;
  bottom: 1px;
  display: block;
  width: 70px;
  height: 5px;
  margin-right: 30px;
  background-color: #e3001b;
  content: ""; }

.text-slider__title-add {
  margin: 0 0 2em;
  color: #f1f1f1;
  font-size: 1.25em;
  font-weight: 600;
  line-height: 1.5; }
.svg-main-animation {
  transform-origin: 50% 50%;
  animation-delay: 0.5;
  animation: svg-animation 1.7s cubic-bezier(.41,.4,.44,1.76) infinite;
}
.svg-main-animation_del1 {
  animation-delay: 0.4s;
}
.svg-main-animation_del2 {
  animation-delay: 0.6s;
}
.svg-main-animation_del2 {
  animation-delay: 0.8s;
}
.svg-small-animation {
  animation: svg-animation_for-small 1.7s cubic-bezier(.41,.4,.44,1.76) infinite;
  transform-origin: 50% 50%;
  animation-delay: 0.2;
}
.svg-circle-animation {
  transform-origin: 50% 50%;
  animation: svg-circle-animation 1.7s cubic-bezier(.41,.4,.44,1.76) infinite;
  animation-delay: 0.5;
}
.svg-circle-animation_del1 {
  animation-delay: .1s;
}
.svg-circle-animation_del2 {
  animation-delay: .6s;
}
.svg-circle-animation_del3 {
  animation-delay: 1.1s;
}
.svg-circle-animation_del4 {
  animation-delay: 1.5s;
}
.toogle-services_specification .btn--fix-width {
  max-width: 250px;
  width: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@keyframes svg-animation {
  from {
    transform: scale(1);
    fill-opacity:0.39215686;
  }
  to {
    transform: scale(1.5);
    fill-opacity:0;
  }
}
@keyframes svg-animation_for-small {
  from {
    transform: scale(1);
    fill-opacity:0.39215686;
  }
  to {
    transform: scale(3);
    fill-opacity:0;
  }
}
@keyframes svg-circle-animation {
  from {
    stroke-width:2;
    stroke-opacity:0.35;
  }
  to {
    stroke-width:20;
    stroke-opacity:0;
  }
}
@media only screen and (max-width: 1440px) {
  .text-slider__cont {
    font-size: 0.875rem; } }

@-webkit-keyframes dot-background {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(2);
    transform: scale(2); } }

@keyframes dot-background {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1); }
  100% {
    -webkit-transform: scale(2);
    transform: scale(2); } }

@-webkit-keyframes dot-show {
  0% {
    opacity: 0; }
  110% {
    opacity: 1; } }

@keyframes dot-show {
  0% {
    opacity: 0; }
  110% {
    opacity: 1; } }

.text-slider__controls {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between; }
.text-slider__controls .slick-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none; }
.text-slider__controls .slick-dots li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-right: 20px; }
.text-slider__controls .slick-dots button {
  width: 16px;
  height: 16px;
  padding: 0;
  font-size: 0;
  border: 2px solid #fff;
  background-color: #33333d;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0.6;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out; }
.text-slider__controls .slick-dots button:hover {
  opacity: 1; }
.text-slider__controls .slick-dots button:focus {
  outline: none; }
.text-slider__controls .slick-dots li.slick-active button {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: transparent;
  border-color: transparent;
  opacity: 1; }
.text-slider__controls .slick-dots li.slick-active button:after, .text-slider__controls .slick-dots li.slick-active button:before {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  background-color: #e3001b;
  border-radius: 50%;
  content: ""; }
.text-slider__controls .slick-dots li.slick-active button:before {
  -webkit-animation: dot-background .3s ease-out forwards;
  animation: dot-background .3s ease-out forwards;
  opacity: .4; }
.text-slider__controls .slick-dots li.slick-active button:after {
  -webkit-animation: dot-show .2s ease-out forwards;
  animation: dot-show .2s ease-out forwards; }

.text-slider__arrows {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.text-slider__arrows .slick-arrow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  margin-left: 15px;
  font-size: 0;
  color: transparent;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background-color: transparent;
  cursor: pointer;
  opacity: 0.65;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
  display: inline-block;
  line-height: 40px;
  text-align: center;
}
.text-slider__arrows .slick-arrow:hover {
  opacity: 1; }
.text-slider__arrows .slick-arrow:focus {
  outline: none; }
.text-slider__arrows .slick-arrow:after {
  display: block;
  height: 13px;
  width: 13px;
  background: url("../images/svg/back.svg");
  content: "";
  vertical-align: middle;
  display: inline-block;
  margin-bottom: 4px;
}
.text-slider__arrows .slick-arrow.slick-next:after {
  -webkit-transform: rotate(180deg) translate3d(0, 0, 0);
  transform: rotate(180deg) translate3d(0, 0, 0);
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  margin-left: 2px; }

.btn__wrap {
  display: inline-block;
  position: relative;
  overflow: hidden;
  border-radius: 2px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  -webkit-transition: .2s;
  transition: .2s; }
.btn__wrap:active {
  -webkit-transition: .1s;
  transition: .1s;
  box-shadow: 0 2px 5px transparent; }

.btn {
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  text-transform: uppercase;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-transition: background-color .3s,color .3s,border-color .3s;
  transition: background-color .3s,color .3s,border-color .3s;
  width: 100%;
  color: #fff;
  display: block;
  padding: 9px 0 10px;
  cursor: pointer; }
.btn--primary {
  background-color: #e3001b; }
.btn--primary:hover:not(.btn--disabled) {
  background-color: #a10013;
  color: #fff; }
.btn--rect {
  width: 3.75rem;
  height: 3.75rem;
  padding: 0; }
.btn--fix-width {
  width: 170px; }
.btn--fix-width-small {
  width: 140px; }
.btn--big {
  width: 240px;
  padding: 21px 0 22px; }
.btn:before {
  position: absolute;
  -webkit-transform: translate3d(50%, 0, 0);
  transform: translate3d(50%, 0, 0);
  opacity: 0;
  content: attr(data-text); }
.btn:hover:not(.btn--disabled):before {
  color: #fff;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  opacity: 1; }
.btn:hover:not(.btn--disabled) .btn__overlay {
  -webkit-transform: translate3d(10%, 0, 0) skew(-20deg);
  transform: translate3d(10%, 0, 0) skew(-20deg);
  opacity: 1; }
.btn:hover:not(.btn--disabled) .btn__text {
  -webkit-transform: translate3d(-50%, 0, 0);
  transform: translate3d(-50%, 0, 0);
  opacity: 0; }

.btn__overlay {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 140%;
  -webkit-transform: translate3d(100%, 0, 0) skew(0deg);
  transform: translate3d(100%, 0, 0) skew(0deg);
  background-color: #a10013;
  opacity: 0;
  -webkit-transition: opacity .3s ease,-webkit-transform .5s ease;
  transition: opacity .3s ease,-webkit-transform .5s ease;
  transition: transform .5s ease,opacity .3s ease;
  transition: transform .5s ease,opacity .3s ease,-webkit-transform .5s ease;
  border-radius: 2px;
  display: block; }

.btn__text, .btn:before {
  -webkit-transition: opacity .25s ease,-webkit-transform .25s ease;
  transition: opacity .25s ease,-webkit-transform .25s ease;
  transition: opacity .25s ease,transform .25s ease;
  transition: opacity .25s ease,transform .25s ease,-webkit-transform .25s ease;
  z-index: 1;
  display: inline-block; }

.btn--disabled {
  cursor: default;
  background-color: #a6acbc; }

.btn--white {
  background-color: #fff;
  border: 1px solid #a6acbc;
  color: #a6acbc; }
.btn--white:hover:not(.btn--disabled) {
  background-color: #fff; }
.btn--white .btn__overlay {
  background-color: #a6acbc; }

.btn__wrap--hidden {
  visibility: hidden;
  opacity: 0; }

.footer {
  padding: 50px 0;
  background-color: #f1f1f1; }

.footer__top > .grid-col-3:first-child {
  position: relative; }
.footer__top > .grid-col-3:first-child:after {
  position: absolute;
  top: 0;
  right: 1.875rem;
  display: block;
  height: 100%;
  width: 1px;
  border-right: 1px solid #a6acbc;
  content: ""; }

.footer__top > .grid-col-3:last-child {
  padding-left: 30px; }

.footer__logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start; }
.footer__logo svg {
  margin-right: 10px;
  width: 52px;
  height: 60px; }
.footer__logo span {
  margin-top: 15px;
  color: #454552;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1; }

.footer__copy,
.footer__contact {
  color: #454552; }

.footer__copy {
  margin: 20px 0 30px;
  font-size: 0.75rem;
  line-height: 1.6666; }

.footer__contact span {
  display: block;
  line-height: 1; }

.footer__city,
.footer__num,
.footer__street {
  font-weight: 600; }

.footer__city {
  margin-bottom: 12px;
  font-size: 0.625rem;
  text-transform: uppercase; }

.footer__num {
  margin-bottom: 15px;
  font-size: 1.5rem; }

.footer__email {
  font-size: 1.125rem;
  margin-bottom: 30px; }

.footer__street {
  margin-bottom: 22px; }

.footer__year {
  margin: 0;
  color: #a6acbc;
  font-size: 0.875rem;
  line-height: 1; }

.footer__services-title {
  margin: 0 0 1.66em;
  color: #454552;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1; }

.footer__services {
  margin: 0 -50px 0 0;
  padding: 0;
  list-style: none;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.footer__services li {
  /*margin-right: 50px;*/
  width: 50%;
  padding-right: 15px;
  margin-bottom: 0.75rem; }
.footer__services a {
  display: block;
  color: #454552;
  font-size: 0.75rem;
  line-height: 1.5;
  -webkit-transition: color .15s ease-in-out;
  transition: color .15s ease-in-out; }
.footer__services a:hover {
  color: #e3001b; }

.footer__dev {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 100px; }
.footer__dev svg {
  width: 150px;
  min-width: 150px;
  height: 36px;
  margin-right: 10px; }
.footer__dev path,
.footer__dev span {
  -webkit-transition: .15s ease-in-out;
  transition: .15s ease-in-out; }
.footer__dev path {
  fill: #a6acbc; }
.footer__dev span {
  color: #a6acbc;
  font-size: 0.875rem;
  line-height: 1.25; }
.footer__dev:hover path {
  fill: #454552; }
.footer__dev:hover span {
  color: #454552; }

.to-top-cont {
  position: relative; }

.to-top__fixable {
  width: 100%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility, opacity .2s ease-in-out;
  transition: visibility, opacity .2s ease-in-out; }
.to-top__fixable--fixed {
  position: fixed;
  bottom: 0;
  width: 90%;
  max-width: 1170px; }
.to-top__fixable--visible {
  visibility: visible;
  opacity: 1; }

.to-top__top {
  position: absolute;
  right: -70px;
  bottom: 30px;
  width: 40px;
  height: 40px;
  background: #454552 url("../images/png/to-top.png") no-repeat center;
  opacity: .6;
  -webkit-transition: .15s ease;
  transition: .15s ease; }
.to-top__top:hover {
  opacity: .8; }
.to-top__top svg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto; }
.to-top__top svg path {
  fill: #fff; }
.to-top__top--fixed {
  position: fixed; }

.header--main + footer .to-top-cont {
  display: none; }

.hidden-menu {
  position: absolute;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-top: 260px;
  width: 100%;
  height: 1000px;
  max-height: 100vh;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  cursor: default;
  -webkit-transition: opacity .15s 0s, visibility 0s .15s;
  transition: opacity .15s 0s, visibility 0s .15s; }
@media only screen and (max-width: 1440px) {
  .hidden-menu {
    padding-top: 225px; } }
.hidden-menu--open {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity .25s 0s, visibility 0s 0s;
  transition: opacity .25s 0s, visibility 0s 0s; }
.hidden-menu--open + .main-buttons__menu {
  width: 100%;
  height: 30.625em;
  border-radius: 6px; }

.hidden-menu--open + .main-buttons__menu .humburger span:nth-child(1) {
  -webkit-transform: rotate(45deg) translateX(2px) translateY(-4px);
  -ms-transform: rotate(45deg) translateX(2px) translateY(-4px);
  transform: rotate(45deg) translateX(2px) translateY(-4px); }

.hidden-menu--open + .main-buttons__menu .humburger span:nth-child(2) {
  width: 0;
  opacity: 0; }

.hidden-menu--open + .main-buttons__menu .humburger span:nth-child(3) {
  -webkit-transform: rotate(-45deg) translateX(2px) translateY(4px);
  -ms-transform: rotate(-45deg) translateX(2px) translateY(4px);
  transform: rotate(-45deg) translateX(2px) translateY(4px); }

.wrapper:after {
  position: fixed;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #454552;
  -webkit-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
  visibility: hidden;
  opacity: 0;
  content: ""; }

.wrapper--overlay:after {
  visibility: visible;
  opacity: 1; }

.hidden-nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 470px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  -webkit-transform: translateY(-25px);
  -ms-transform: translateY(-25px);
  transform: translateY(-25px);
  -webkit-transition: -webkit-transform .75s ease-out;
  transition: -webkit-transform .75s ease-out;
  transition: transform .75s ease-out;
  transition: transform .75s ease-out, -webkit-transform .75s ease-out; }
.hidden-nav li {
  font-size: 2.5rem;
  line-height: 1;
  color: #f1f1f1; }
@media only screen and (max-width: 1440px) {
  .hidden-nav li {
    font-size: 2rem; } }
.hidden-nav li:not(:last-child) {
  margin-bottom: .75em; }
.hidden-nav a {
  text-transform: uppercase; }
.hidden-nav--footer {
  position: static;
  top: auto;
  width: auto;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none; }
.hidden-nav--footer li {
  font-size: 1.125rem;
  color: #454552;
  font-weight: 600;
  line-height: 1.175; }
.hidden-nav--footer li:not(:last-child) {
  margin-bottom: .33em; }
.hidden-nav--footer a {
  text-transform: none; }

.hidden-menu--open .hidden-nav {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0); }

@-webkit-keyframes anim-in-layer {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes anim-in-layer {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@-webkit-keyframes anim-out-layer {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes anim-out-layer {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@-webkit-keyframes anim-in-text {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes anim-in-text {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@-webkit-keyframes anim-out-text {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes anim-out-text {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.menu__link {
  text-decoration: none;
  -webkit-transition: color .3s;
  transition: color .3s;
  position: relative;
  overflow: hidden;
  display: inline-block; }

.link__layer {
  position: absolute;
  left: 0;
  overflow: hidden;
  background-color: #454552;
  width: 100%;
  display: block;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  -webkit-animation: anim-out-layer .3s ease-out;
  animation: anim-out-layer .3s ease-out;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
.link__layer:before {
  background-color: #454552;
  content: attr(data-text);
  width: 100%;
  display: block;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  color: #e3001b;
  -webkit-animation: anim-out-text .3s ease-out;
  animation: anim-out-text .3s ease-out;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
.link__layer--footer {
  background-color: #f1f1f1; }
.link__layer--footer:before {
  background-color: #f1f1f1; }

.menu__link:hover .link__layer {
  -webkit-animation: anim-in-layer .3s ease forwards;
  animation: anim-in-layer .3s ease forwards; }
.menu__link:hover .link__layer:before {
  -webkit-animation: anim-in-text .3s ease forwards;
  animation: anim-in-text .3s ease forwards; }

.hidden-tel {
  display: block;
  margin-top: 100px;
  width: 470px;
  padding-top: 45px;
  border-top: 1px solid #a6acbc;
  color: #a6acbc;
  font-size: 1.25rem;
  line-height: 1;
  opacity: 0;
  -webkit-transform: translateY(-25px);
  -ms-transform: translateY(-25px);
  transform: translateY(-25px);
  -webkit-transition: .35s 0s ease-out;
  transition: .35s 0s ease-out; }
.hidden-tel + .hidden-tel {
  border-top: none;
  margin-top: 0;
  padding-top: 15px;
}
@media only screen and (max-width: 1440px) {
  .hidden-tel {
    margin-top: 45px;
    padding-top: 25px; } }
@media only screen and (max-width: 1720px) {
  .hidden-tel {
    margin-top: 65px;
    padding-top: 30px;
  } }

.hidden-menu--open .hidden-tel {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
  -webkit-transition: .35s .2s ease-out;
  transition: .35s .2s ease-out; }

.callback__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1em 1.66667em;
  margin: 0 0 10px;
  min-height: 4.4444em;
  font-size: 1.125rem;
  line-height: 1.25;
  font-weight: 600;
  color: #fff;
  background-color: #454552; }
.callback__title--success {
  background-color: #4cb050;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }

.callback__form-content {
  background-color: #f5f5f5;
  padding: 3.125em 1.875em; }

.callback__field {
  position: relative;
  margin-bottom: 20px;
  font-size: 0.875rem;
  font-weight: 600; }
.callback__field input, .callback__field label {
  display: block; }
.callback__field label {
  margin-bottom: 5px;
  color: #454552; }
.callback__field input {
  height: 45px;
  width: 100%;
  padding: 0 15px;
  color: #372f2d !important;
  border-radius: 3px;
  border: 1px solid #a6acbc;
  background-color: #fff !important;
  -webkit-transition: border-color .075s linear;
  transition: border-color .075s linear;
  -webkit-appearance: none !important;
}
.callback__field input:hover, .callback__field input:focus {
  border-color: #454552;
  outline: none; }
.callback__field.error:after {
  position: absolute;
  top: 42px;
  right: 17px;
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  background-image: url("../images/form/error.png");
  content: ""; }
.callback__field.error .callback__error {
  display: block; }
.callback__field.error .callback__ok {
  display: none; }
.callback__field.success:after {
  position: absolute;
  top: 39px;
  right: 14px;
  display: block;
  width: 16px;
  height: 16px;
  margin: auto;
  background-image: url("../images/form/success.png");
  content: ""; }
.callback__field.success .callback__error {
  display: none; }
.callback__field.success .callback__ok {
  display: block; }

.callback__placeholder {
  margin: 5px 0 0;
  color: #a6acbc;
  font-size: .75rem;
  font-weight: 400;
  font-style: italic; }

.callback__error {
  display: none;
  color: #454552; }

.callback__agreement {
  position: relative;
  max-width: 224px;
  padding-left: 26px;
  margin-bottom: 25px; }
.callback__agreement input {
  width: 1px;
  height: 1px;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0; }
.callback__agreement label {
  display: block;
  font-size: .75rem;
  line-height: 1.33;
  font-weight: 600;
  color: #454552; }
.callback__agreement label:before,
.callback__agreement label:after {
  position: absolute;
  display: block;
  cursor: pointer;
  content: ""; }
.callback__agreement label:before {
  left: 0;
  top: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #a6acbc;
  background-color: #fff; }
.callback__agreement label:after {
  left: 3px;
  top: 3px;
  width: 12px;
  height: 12px;
  background-color: #e3001b;
  opacity: 0;
  -webkit-transition: .075s;
  transition: .075s; }
.callback__agreement input:checked + label:after {
  opacity: 1; }
.callback__agreement a {
  color: #4285f4;
  text-decoration: underline; }
.callback__agreement a:hover {
  text-decoration: none; }

.callback__agreement-info {
  position: relative;
  margin-left: 3px;
  display: inline-block;
  vertical-align: sub;
  width: 14px;
  height: 14px;
  background-image: url("../images/form/info.png"); }

.tooltip {
  z-index: 1;
  position: absolute;
  left: 24px;
  top: -200px;
  bottom: -200px;
  width: 245px;
  height: 90px;
  margin: auto !important;
  padding: 15px;
  color: #fff;
  font-style: normal;
  font-size: 0.75rem;
  line-height: 1.285;
  border-radius: 3px;
  background-color: #454552;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: .2s ease-in;
  transition: .2s ease-in; }
.tooltip:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 100%;
  display: block;
  height: 0;
  width: 0;
  border-left: 0px solid transparent;
  border-top: 6.5px solid transparent;
  border-bottom: 6.5px solid transparent;
  border-right: 6px solid #454552;
  margin: auto;
  content: ""; }

.callback__agreement-info:hover .tooltip {
  opacity: 1;
  visibility: visible;
  -webkit-transition: .25s ease-out;
  transition: .25s ease-out; }

.callback__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.callback__submit {
  position: relative; }

.callback__tooltip {
  left: calc(100% + 11px);
  display: inline-block;
  width: auto;
  padding: 10px 15px;
  height: 50px;
  white-space: nowrap; }

.callback__submit:hover .callback__tooltip--show {
  opacity: 1;
  visibility: visible; }

.callback__success-text {
  margin: 0 0 50px;
  text-align: center;
  color: #454552;
  font-size: 1rem;
  font-weight: 600; }

.callback__form-content--success {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center; }

.map {
  margin-top: 60px;
  margin-bottom: 60px;
}

.breadcrumbs__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  padding: 17px 0;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #f1f1f1; }

.breadcrumbs {
  color: #454552;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.1111; }
.breadcrumbs .breadcrumbs__el {
  display: inline-flex;
  -webkit-transition: .2s ease-in;
  transition: .2s ease-in;
  align-items: center;
  padding: 4px 0;
}
.breadcrumbs .breadcrumbs__el:not(:last-child) {
  margin-right: 1.25rem; }
.breadcrumbs .breadcrumbs__el svg,
.breadcrumbs .breadcrumbs__el span {
  display: inline-block;
  vertical-align: middle; }
.breadcrumbs .breadcrumbs__el svg {
  margin-right: 1.25rem;
  flex-shrink: 0;
}
.breadcrumbs__el span {
  line-height: 1.2;
}
.breadcrumbs .breadcrumbs__el path {
  fill: #454552;
  -webkit-transition: .2s ease-in;
  transition: .2s ease-in; }
.breadcrumbs a.breadcrumbs__el:hover path, .breadcrumbs a.breadcrumbs__el:hover {
  opacity: .85;
  -webkit-transition: .25s ease-out;
  transition: .25s ease-out; }
.breadcrumbs span.breadcrumbs__el {
  color: #a6acbc; }

.company__benefits,
.company__employees,
.company__images_block {
  margin-bottom: -60px;
  margin-top: 0;
  padding: 0;
  list-style: none; }

.company__images_block{
  margin-top: 120px;
}

.company__benefits li,
.company__employees li {
  margin-bottom: 30px; }

.company__images_block li{
  margin-bottom: 30px;
}

.company__benefits figure,
.company__employees figure,
.company__images_block figure {
  margin: 0; }


.company__benefits figure div {
  height: 235px;
  margin-bottom: 20px;
  background-position: center;
  background-repeat: no-repeat; }

.company__benefits figcaption {
  color: #372f2d;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3333;
  text-align: center; }

.company__employees h5 {
  margin: 0 0 .5em;
  color: #454552;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.25; }

.company__employees p {
  margin: 0; }

.company__employees figure div {
  margin-bottom: 20px;
  height: 420px;
  background-size: cover;
  background-position: center; }

.company__images_block figure div {
  margin-bottom: 20px;
  height: 235px;
  background-size: cover;
  background-position: center; }

.tabs {
  list-style: none;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0; }
.tabs a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 80px;
  padding: 0 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: 600;
  font-size: 1.125rem;
  color: #372f2d;
  background-color: #f5f5f5;
  -webkit-transition: .15s ease-in-out;
  transition: .15s ease-in-out; }
.tabs a:after {
  display: block;
  width: 20px;
  height: 20px;
  background: #a6acbc url("../images/tabs/tabs-arrow.png") no-repeat 54% center;
  border-radius: 50%;
  content: ""; }
.tabs a:hover, .tabs a.active {
  color: #fff;
  background-color: #454552; }
.tabs a.active:after {
  background-color: #e3001b;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.services {
  margin-top: 0;
  margin-bottom: -10px;
  list-style: none;
  padding: 0; }

.services li {
  margin-bottom: 10px; }

.services li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 3.888888889em;
  padding: 10px 20px;
  font-size: 1.125rem;
  color: #372f2d;
  font-weight: 600;
  line-height: 1.3333;
  border: 1px solid #e3001b;
  background-color: #f1f1f1;
  box-shadow: 0 2px 5px transparent;
  -webkit-transition: .15s ease;
  transition: .15s ease; }
.services li a:hover, .services li a:focus {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  color: #e3001b;
  outline: none; }
.services li a.active {
  background-color: #e3001b;
  color: #fff;
  border-color: #9c0013;
}

.service-item__figure-cont {
  margin: 60px 0; }

.services-item__figure {
  margin: 0; }

.services-item__figure div {
  height: 248px;
  margin-bottom: 10px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center; }

.services-item__figure figcaption {
  color: #454552;
  font-size: 0.875rem;
  font-weight: 600;
  font-style: italic; }

.toogle-services {
  border-bottom: 1px solid #a6acbc;
  margin-bottom: 40px;
  padding-bottom: 60px; }

.modal .modal-content {
  width: calc(100% - 40px);
  max-width: 830px;
  padding: 57px 30px 60px; }
.modal .modal-content--wide {

  width: calc(100% - 60px);
  max-width: 1170px;
  margin: 0 auto;
}

.modal .fancybox-close-small {
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  background: #e3001b url("../images/form/close-modal.png") no-repeat center;
  color: transparent;
  font-size: 0;
  border-radius: 0; }
.modal .fancybox-close-small:hover {
  background-color: #a10013; }
.modal .fancybox-close-small:focus {
  outline: none; }

.modal .modal-button {
  margin-top: 40px;
  text-align: center; }

.modal .modal-header {
  margin: 0 0 1.6em; }

.reviews__list {
  margin-bottom: -1.875rem;
  margin-top: 60px; }

.reviews__item {
  margin-bottom: 1.875rem; }
.reviews__item a {
  display: block;
  height: 240px;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px solid #f1f1f1;
  background-color: #fff;
  box-shadow: 0 2px 5px transparent;
  -webkit-transition: .15s ease;
  transition: .15s ease;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%); }
.reviews__item a:hover {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  -webkit-filter: grayscale(0);
  filter: grayscale(0); }

.modal .modal-content--reviews {
  padding: 40px 30px; }

.review-modal {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.review-modal__img {
  -webkit-flex-basis: 170px;
  -ms-flex-preferred-size: 170px;
  flex-basis: 170px;
  margin-right: 30px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }

.review-modal__content {
  -webkit-flex-basis: calc(100% - 200px);
  -ms-flex-preferred-size: calc(100% - 200px);
  flex-basis: calc(100% - 200px); }

.review-modal__title {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #454552; }

.review-modal__title h5 {
  margin: 0 0 5px;
  color: #e3001b;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3333; }

.review-modal__title p {
  margin: 0;
  color: #372f2d;
  font-size: 1rem;
  line-height: 1.3333; }

.review-modal__text p {
  font-size: 1rem; }

.to-top-cont {
  position: relative; }

.to-top__fixable {
  width: 100%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: visibility, opacity .2s ease-in-out;
  transition: visibility, opacity .2s ease-in-out; }
.to-top__fixable--fixed {
  position: fixed;
  bottom: 0;
  width: 90%;
  max-width: 1170px; }
.to-top__fixable--visible {
  visibility: visible;
  opacity: 1; }

.to-top__top {
  position: absolute;
  right: -70px;
  bottom: 30px;
  width: 40px;
  height: 40px;
  background: #454552 url("../images/png/to-top.png") no-repeat center;
  opacity: .6;
  -webkit-transition: .15s ease;
  transition: .15s ease; }
.to-top__top:hover {
  opacity: .8; }
.to-top__top svg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto; }
.to-top__top svg path {
  fill: #fff; }
.to-top__top--fixed {
  position: fixed; }

.header--main + footer .to-top-cont {
  display: none; }



/* -----------info.html----------- */
.info-wrapper {
  max-width: 770px;
}
.info__title, .download-title {
  font-weight: 600;
  font-size: 1.25em;
  color: #454552;
  margin: 1.2em 0 2em;
  display: block;
  -webkit-transition: .15s ease-in-out;
  -moz-transition: .15s ease-in-out;
  -ms-transition: .15s ease-in-out;
  -o-transition: .15s ease-in-out;
  transition: .15s ease-in-out;
}
.info__title:hover {
  color: #e3001b;
}
.download-block {
  background-color: #fafafa;
  padding: 30px;
  padding-bottom: 17px;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  overflow: hidden;
  -webkit-transition: max-height 1.5s ease-in-out;
  -moz-transition: max-height 1.5s ease-in-out;
  -ms-transition: max-height 1.5s ease-in-out;
  -o-transition: max-height 1.5s ease-in-out;
  transition: max-height 1.5s ease-in-out;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  max-height: none !important;
}
.download-block.download-block_slide-down {
  max-height: 10000px !important;
}
.info__text-prev {
  margin-bottom: 28px;
}
.download-block__item {
  width: 50%;
  margin: 0;
  display: none;
  margin-bottom: 30px;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  opacity: 0;
  -webkit-transition: opacity 2s ease-in-out;
  -moz-transition: opacity 2s ease-in-out;
  -ms-transition: opacity 2s ease-in-out;
  -o-transition: opacity 2s ease-in-out;
  transition: opacity 2s ease-in-out;
}
.download-block__item img {
  margin-right: 19px;
}
.download-block__item:nth-child(odd) {
  padding-right: 30px;
}
.download-block__title {
  display: block;
  font-size: 0.875em;
  font-weight: 700;
  color: #454552;
  margin-bottom: 4px;
  -webkit-transition: .15s ease-in-out;
  -moz-transition: .15s ease-in-out;
  -ms-transition: .15s ease-in-out;
  -o-transition: .15s ease-in-out;
  transition: .15s ease-in-out;
}
.download-block__title:hover {
  color: #A6ACBC;
}
.download-block__size, .show-all, .helpful-info {
  font-size: 0.75em;
  color: #454552;
}
.show-all:hover {
  text-decoration: underline;
}
.download-block__item figcaption {
  line-height: 1;
}
.show-all, .helpful-info {
  width: 50%;
  line-height: 20px;
}
.show-all {
  cursor: pointer;
  -webkit-transition: .15s ease-in-out;
  -moz-transition: .15s ease-in-out;
  -ms-transition: .15s ease-in-out;
  -o-transition: .15s ease-in-out;
  transition: .15s ease-in-out;
// display: none;
}
.helpful-info {
  font-weight: 600;
  color: #A6ACBC;
}
.download-block__footer {
  width: 100%;
  display: flex;
  margin-top: 8px;
}
.info__item {
  padding: 25px;
  border: 1px solid #a6acbc;
  margin-top: 50px;
}
.btn-go-back {
  border: 1px solid #A6ACBC;
  width: 200px;
  color: #a6acbc;
  -webkit-box-shadow: none;
  box-shadow: none;
  margin-top: 61px;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-transition: .15s ease-in-out;
  -moz-transition: .15s ease-in-out;
  -ms-transition: .15s ease-in-out;
  -o-transition: .15s ease-in-out;
  transition: .15s ease-in-out;
}
.btn__arrow-img {
  margin-right: 15px;
}
.btn-go-back::before {
  content: none;
}
.btn__arrow-img {
  background: url('/images/png/go-back-sprite.png') no-repeat 0 0;
  display: block;
  width: 6px;
  height: 10px;
}
.btn-go-back:hover {
  background-color: #A6ACBC;
  color: #fff;
}
.btn-go-back:hover .btn__arrow-img {
  background-position: -6px 0;
}
.callback_background {
  background: url('../images/form/background-form.jpg') no-repeat center;
  padding: 45px 50px 50px;
  background-size: cover;
}
.callback__title-search {
  font-size: 1.5rem;
  color: #fff;
  font-weight: 600;
  display: block;
  background: none;
  padding: 0;
  min-height: 0;
}
.callback__content_flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.callback__field-search {
  width: 100%;
}
.callback__field-search label {
  color: #fff;
}
.callback__field-two {
  width: 47%;
}
.callback__placeholder-search span {
  color: #fff;
}
.callback__agreement_full-size, .callback__buttons_full-size {
  width: 100%;
  max-width: 100%;
}
.callback__agreement_full-size label {
  color: #fff;
}
.callback__agreement-info_white {
  background-image: url("../images/form/info_white.png");
}
.search__buttons {
  justify-content: flex-start;
}
.search__button_width {
  min-width: 200px;
}
.search__submit {
  margin-right: 20px;
}
.search__title {
  background: none;
  padding: 0;
}
.search__form-content {
  background: none;
  padding: 0;
}
.search__success-text {
  color: #fff;
}
.contacts-border {
  padding: 30px;
  border: 1px solid #a6acbc;
}
.header-contact-information + ul {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  padding-bottom: 16px;
  border-bottom: 1px solid #c0c0c1;
}
.header-contact-information + ul li {
  font-weight: 900;
  font-size: 18px;
  line-height: 24px;
}
.header-contact-information + ul li a {
  color: #fff;
  transition: .3 ease-in-out;
}
.header-contact-information + ul li a:hover {
  color: #e3001b;
}
.header-contact-information + ul li + li {
  margin-left: 31px;
}
.header-contact-information + ul .link__layer:before {
  background-color: transparent;
}
.header-contact-information + ul .link__layer {
  background-color: transparent;
}
.header-contact-information .main-tel {
  margin-bottom: 7px;
}
.tel-wrapper a:nth-child(1) {
  margin-bottom: 8px;
}
.tel-wrapper a span {
  font-size: 1.3rem;
}
.top-menu__content ul + .main-buttons {
  display: none;
}
.hidden-link {
  display: none;
}
.footer__dev_hidden {
  display: none;
}
.company__benefits {
  margin-bottom: 20px;
}
@media (max-width: 1500px) {
  .header--main {
    height: 690px;
  }
  .text-slider {
    align-items: flex-start;
  }
  .text-slider__cont {
    margin-top: 307px;
  }
}
@media (max-width: 1200px) {
  .template-width {
    padding-left: 30px;
    padding-right: 30px;
    width: 100%;
  }
  .footer__top > .grid-col-3:first-child > * {
    padding-right: 10px;
  }
  .callback__buttons {
    flex-wrap: wrap;
  }
  .callback__submit, .callback__cancel {
    margin-bottom: 10px;
  }
  .callback__submit {
    margin-right: 30px;
  }
}
@media (max-width: 1024px) {
  .main-logo__text {
    font-size: 20px;
    margin-bottom: 13px;
  }
  .main-logo__text-sub {
    font-size: 13px;
  }
  .main-logo__wrap {
    padding-left: 21px;
  }
  .main-logo svg {
    width: 70px;
    height: 80px;
  }
  .main-tel span {
    font-size: 20px;
  }
  .header-contact-information + ul li {
    font-size: 16px;
  }
  .header-contact-information + ul {
    padding-left: 91px;
  }
  .text-slider__cont {
    margin-left: 91px;
  }
  .text-slider__title-main {
    margin-bottom: 30px;
  }
  .text-slider__title-add {
    font-size: 16px;
    line-height: 30px;
  }
  .text-slider__controls {
    left: 0;
    justify-content: center;
    bottom: 37px;
  }
  .text-slider__arrows {
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
  }
  .footer__top .grid-col-3:first-child {
    flex-direction: column;
    flex-wrap: wrap;
    height: 195px;
    flex-basis: auto;
    width: 50%;
    display: flex;
    max-width: none;
    padding-right: 0;
  }
  .footer__top .grid-col-3:last-child {
    height: 195px;
    width: 50%;
    flex-basis: auto;
    max-width: none;
    padding-right: 0;
  }
  .hidden-nav--footer {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    height: 135px;
  }
  .footer__top .grid-col-3:first-child > * {
    width: 50%;
  }
  .footer__year {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .footer__top > .grid-col-3:first-child:after {
    right: 0;
  }
  .footer__top .grid-col-6 {
    display: none;
  }
  .hidden-link {
    display: block;
  }
  .footer__dev {
    margin-top: 26px;
    justify-content: flex-end;
  }
  .footer__dev span {
    width: 82px;
  }
  .tel-wrapper {
    display: none;
  }
  h1.h-line {
    font-size: 36px;
    padding-left: 57px;
  }
  h1.h-line:before {
    width: 50px;
  }
  .inner-page {
    padding: 24px 0 90px;
  }
  h1 {
    margin: 0 0 34px;
  }
  .services li a {
    line-height: 28px;
    height: 100%;
  }
  .services li:nth-child(odd) {
    padding-right: 10px;
  }
  .services li:nth-child(even) {
    padding-right: 0;
    padding-left: 10px;
  }
  .services li {
    margin-bottom: 20px;
  }
  .to-top__fixable--fixed {
    width: 100%;
    left: 0;
  }
  .to-top__top {
    right: 30px;
  }
  .services li a {
    padding: 20px;
  }
  .hidden-menu {
    justify-content: flex-start;
    padding-top: 0;
    margin-top: 73px;
    height: calc(100vh - 143px);
  }
  .hidden-menu__content {
    padding-left: 30px;
    padding-bottom: 30px;
    padding-top: 30px;
  }
  .hidden-menu--open + .main-buttons__menu .main-buttons__label {
    display: block;
  }
  .main-logo--white {
    display: none;
  }
  .wrapper--overlay .top-menu__content ul.main-buttons {
    width: 100%;
  }
  .wrapper--overlay .top-menu__content ul.main-buttons > li {
    width: 100%;
  }
  .hidden-menu--open + .main-buttons__menu {
    justify-content: space-between;
  }
  .hidden-menu--open + .main-buttons__menu .main-buttons__label {
    font-size: 47px;
    font-weight: 300;
    font-family: "Open Sans Condensed";
  }
  .wrapper--overlay {
    height: 100vh;
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
  }
  h3.h-line:before {
    width: 56px;
  }
  h3.h-line {
    padding-left: 94px;
  }
  h4 {
    margin-bottom: 22px;
    margin-top: 31px;
  }
  p {
    margin: 26px 0;
  }
  .u-list {
    margin-top: 47px;
    margin-bottom: 47px;
    padding: 0 0 0 33px;
  }
  .u-list li:not(:last-child) {
    margin-bottom: 24px;
  }
  .services-item__figure div {
    height: 210px;
    background-size: cover;
    margin-bottom: 20px;
  }
  .service-item__figure-cont .grid-col-6:nth-child(odd) {
    padding-right: 10px;
  }
  .service-item__figure-cont .grid-col-6:nth-child(even) {
    padding-left: 10px;
    padding-right: 0;
  }
  .service-item__figure-cont {
    margin: 42px 0;
  }
  div.news-list {
    padding-top: 76px;
  }
  .news-item {
    display: flex;
  }
  .news-item a {
    width: 309px;
    flex-shrink: 0;
  }
  .news-item__text {
    padding-left: 0;
  }
  .news-item__image {
    width: auto;
    height: 100%;
    object-fit: cover;
  }
  .news-item__date {
    padding-left: 0;
  }
  .news-item__title {
    padding-left: 0;
    font-size: 18px;
  }
  .news-item__text_block {
    padding: 14px 30px 14px 50px;
  }
  h2 {
    margin-bottom: 36px;
  }
  form[name='SIMPLE_FORM_3'] ol li p {
    font-size: 18px;
    line-height: 21px;
  }
}
@media (max-width: 950px) {
  .footer__top .grid-col-3:first-child {
    height: auto;
    display: block;
  }
  .footer__year {
    position: static;
    margin-top: 28px;
  }
  .footer__top > .grid-col-3:first-child:after {
    content: none;
  }
  .hidden-nav--footer {
    display: block;
    height: auto;
  }
  .footer__dev {
    justify-content: flex-start;
  }
  .footer__top .grid-col-3:first-child > * {
    width: 100%;
  }
  .footer__top .grid-col-3:last-child {
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .hidden-nav--footer li:not(:last-child) {
    margin-bottom: 11px;
  }
  .header-contact-information {
    display: none;
  }
  .header-contact-information + ul, .header-contact-information {
    display: none;
  }
  .top-menu__content ul + .main-buttons {
    display: block;
  }
  .top-menu__content {
    height: 140px;
    align-items: flex-start;
    padding-top: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
  .main-logo svg {
    width: 53px;
    height: auto;
  }
  .main-logo {
    align-items: flex-start;
  }
  .main-logo__wrap {
    padding-left: 11px;
  }
  .main-buttons__label + .btn__wrap, .btn--rect {
    width: 40px;
    height: 40px;
  }
  .main-buttons__label {
    height: 40px;
    line-height: 40px;
  }
  .humburger {
    width: 22px;
    height: 16px;
    top: 50%;
    right: 50%;
    transform: rotate(0deg) translate(50%, -50%);
  }
  .humburger span:nth-child(2) {
    top: 7px;
  }
  .humburger span:nth-child(3) {
    top: 14px;
  }
  .hidden-menu--open + .main-buttons__menu .humburger span:nth-child(3) {
    -webkit-transform: rotate(-45deg) translateX(2px) translateY(3px);
    -ms-transform: rotate(-45deg) translateX(2px) translateY(3px);
    transform: rotate(-45deg) translateX(2px) translateY(3px);
  }
  .hidden-menu--open + .main-buttons__menu .humburger span:nth-child(1) {
    -webkit-transform: rotate(45deg) translateX(2px) translateY(-3px);
    -ms-transform: rotate(45deg) translateX(2px) translateY(-3px);
    transform: rotate(45deg) translateX(2px) translateY(-3px);
  }
  .text-slider__cont {
    margin-top: 0;
  }
  .text-slider {
    display: flex;
    align-items: center;
  }
  .svg-layer {
    display: none;
  }
  /*.hidden-menu {*/
  /*justify-content: flex-start;*/
  /*padding-top: 0;*/
  /*margin-top: 73px;*/
  /*height: calc(100vh - 143px);*/
  /*}*/
  /*.hidden-menu__content {*/
  /*padding-left: 30px;*/
  /*padding-bottom: 30px;*/
  /*padding-top: 30px;*/
  /*}*/
  /*.hidden-menu--open + .main-buttons__menu .main-buttons__label {*/
  /*display: block;*/
  /*}*/
  /*.main-logo--white {*/
  /*display: none;*/
  /*}*/
  /*.wrapper--overlay .top-menu__content ul.main-buttons {*/
  /*width: 100%;*/
  /*}*/
  /*.wrapper--overlay .top-menu__content ul.main-buttons > li {*/
  /*width: 100%;*/
  /*}*/
  /*.hidden-menu--open + .main-buttons__menu {*/
  /*justify-content: space-between;*/
  /*}*/
  /*.hidden-menu--open + .main-buttons__menu .main-buttons__label {*/
  /*font-size: 47px;*/
  /*font-weight: 300;*/
  /*font-family: "Open Sans Condensed";*/
  /*}*/
  /*.wrapper--overlay {*/
  /*height: 100vh;*/
  /*position: fixed;*/
  /*width: 100%;*/
  /*top: 0;*/
  /*left: 0;*/
  /*}*/
  .modal .modal-content--wide {
    width: calc(100% - 40px);
  }
  h3 {
    margin-bottom: 17px;
    font-size: 21px;
    margin-top: 10px;
  }
  .grid-row {
    flex-wrap: wrap;
  }
  .inner-page .page__content .grid-row:not(.services):not(.company__benefits):not(.reviews__list):not(.tabs):not(.service-item__figure-cont) > *[class^="grid"] {
    width: 100%;
    max-width: none;
    flex-basis: auto;
    padding-left: 0;
    padding-right: 0;
  }
  h3.h-line {
    padding-left: 71px;
  }
  p {
    margin: 22px 0;
  }
  .u-list {
    margin-top: 31px;
  }
  .service-item__figure-cont {
    margin: 22px 0;
  }
  .u-list li:not(:last-child) {
    margin-bottom: 22px;
  }
  .toogle-services {
    text-align: center;
  }
  .callback__form-wrap {
    max-width: 385px;
    margin: 0 auto;
  }
  .breadcrumbs .breadcrumbs__el {
    line-height: 29px;
  }
  .callback_background {
    margin-bottom: 50px;
  }
  .tabs *[class^="grid-col"] {
    width: 50%;
    flex-basis: auto;
    max-width: none;
    margin-bottom: 20px;
  }
  .tabs *[class^="grid-col"]:nth-child(odd) {
    padding-right: 10px;
  }
  *[class^="grid-col"]:nth-child(even) {
    padding-left: 10px;
    padding-right: 0;
  }
  div.news-list {
    display: flex;
    flex-wrap: wrap;
  }
  .news-item {
    width: calc(50% - 10px);
    flex-direction: column;
    margin-bottom: 20px;
  }
  .news-item:nth-child(odd) {
    margin-right: 10px;
  }
  .news-item:nth-child(even) {
    margin-left: 10px;
  }
  .news-item__image {
    width: 100%;
    height: auto;
  }
  .news-item a {
    width: 100%;
  }
  .news-item__text_block {
    padding-left: 12px;
    padding-right: 12px;
  }
  .news-item__text, .news-item__date {
    font-size: 14px;
  }
  .news-item__text {
    margin-top: 6px;
    margin-bottom: 9px;
  }
  .pagenav_block {
    margin: 0 0 0 auto;
  }
  .reviews__list .reviews__item {
    padding-right: 1.875rem;
    padding-left: 0;
  }
  .reviews__item a {
    background-size: calc(100% - 40px) auto;
    height: 210px;
  }
  form[name='SIMPLE_FORM_3'] {
    width: 100%;
    margin-top: 40px;
  }
  form[name='SIMPLE_FORM_3'] ol li p {
    margin-left: 41px;
  }
  form[name='SIMPLE_FORM_3'] .row_fields {
    padding-bottom: 52px;
  }
  form[name='SIMPLE_FORM_3'] ol {
    padding-right: 40px;
    margin-left: 0;
  }
  .company__benefits figcaption {
    max-width: 320px;
    margin: 0 auto;
  }
  .company__benefits > li {
    width: 50%;
    flex-basis: auto;
    max-width: none;
  }
  .company__benefits > li:nth-child(odd) {
    padding-right: 10px;
  }
  .company__benefits > li:nth-child(even) {
    padding-left: 10px;
    padding-right: 0;
  }
  .toogle-services {
    margin-top: 35px;
  }
  .btn--back {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 70px !important;
  }
}
@media (max-width: 764px) {
  .template-width {
    padding-left: 20px;
    padding-right: 20px;
  }
  .text-slider__title-main {
    font-size: 36px;
  }
  .text-slider__cont {
    margin-left: 0;
    margin-right: 0;
  }
  .text-slider__controls {
    justify-content: flex-start;
  }
  .text-slider__controls .slick-dots {
    margin-left: 100px;
  }
  .hidden-menu__content {
    padding-left: 20px;
  }
  .to-top__top {
    right: 20px;
  }
  .callback_background .callback__field-two {
    width: 100%;
  }
  .reviews__list .reviews__item {
    width: 50%;
    flex-basis: auto;
    max-width: none;
  }
  .review-modal__img {
    display: none;
  }
  .download-block__item {
    width: 100%;
  }
}
@media (max-width: 640px) {
  .main-logo {
    width: auto;
  }
  .main-buttons__label {
    display: none;
  }
  .footer__num {
    font-size: 20px;
  }
  .hidden-nav--footer a {
    font-size: 16px;
  }
  .footer__dev span {
    font-size: 11px;
  }
  .footer__dev svg {
    width: 110px;
    height: auto;
    min-width: auto;
  }
  .hidden-tel, .hidden-nav  {
    width: 100%;
  }
  .hidden-menu__content {
    width: 100%;
    padding-right: 20px;
  }
  h3 {
    font-size: 21px;
  }
  .modal .modal-header {
    margin-bottom: 31px;
  }
  .services li a {
    font-size: 16px;
  }
  .services-item__figure div {
    height: 180px;
  }
  .review-modal__content {
    width: 100%;
    flex-basis: auto;
    max-width: none;
  }
  .company__benefits > li {
    width: 100%;
    padding: 0 !important;
  }
  .btn-go-back {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 560px) {
  .services li a {
    font-size: 12px;
    line-height: 14px;
  }
  h1.h-line {
    font-size: 29px;
    line-height: 1.2;
    padding-left: 0;
    padding-top: 18px;
  }
  .breadcrumbs {
    font-size: 12px;
    line-height: 1.2;
  }
  .breadcrumbs .breadcrumbs__el svg {
    margin-right: 4px;
  }
  .breadcrumbs .breadcrumbs__el:not(:last-child) {
    margin-right: 4px;
  }
  h1.h-line:before {
    width: 70px;
    top: 0;
  }
  .inner-page {
    padding: 14px 0 40px;
  }
  h1 {
    margin: 0 0 13px;
  }
  .services li:nth-child(odd) {
    padding-right: 5px;
  }
  .services li:nth-child(even) {
    padding-left: 5px;
  }
  .services li {
    margin-bottom: 10px;
  }
  .services li a {
    padding: 2px 9px;
  }
  h3 {
    font-size: 18px;
  }
  h3.h-line:before {
    top: 0;

  }
  h3.h-line {
    padding-left: 0;
    padding-top: 23px;
  }
  p {
    font-size: 14px;
    line-height: 21px;
  }
  .u-list li {
    font-size: 14px;
  }
  .modal .modal-content--wide {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }
  .toogle-services {
    border-bottom: none;
    padding-bottom: 0;
  }
  .callback__form-wrap {
    max-width: none;
  }
  .callback__title {
    font-size: 16px;
  }
  .service-item__figure-cont .grid-col-6 {
    width: 100%;
    padding-right: 0 !important;
    padding-left: 0 !important;
    flex-basis: auto;
    max-width: none;
  }
  .services-item__figure div {
    height: 255px;
  }
  p.box {
    margin: 35px 0;
  }
  .callback_background {
    padding: 20px;
    margin: -19px 0 30px 0;
  }
  .tabs *[class^="grid-col"] {
    width: 100%;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .news-item {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .reviews__list .reviews__item {
    width: 100%;
    max-width: 320px;
    padding-right: 0;
  }
  .reviews__list {
    justify-content: center;
  }
  .modal .modal-content--reviews {
    padding: 20px 15px;
  }
  form[name='SIMPLE_FORM_3'] .radio_buttons_inline--item span {
    padding-bottom: 14px;
  }
  form[name='SIMPLE_FORM_3'] .row_fields {
    padding-bottom: 40px;
  }
  form[name='SIMPLE_FORM_3'] ol {
    margin-top: 21px;
    padding-right: 21px;
    padding-left: 21px;
    font-size: 16px;
  }
  form[name='SIMPLE_FORM_3'] ol li p {
    font-size: 12px;
  }
  form[name='SIMPLE_FORM_3'] .radio_buttons_inline--item {
    padding-right: 27px;
  }
  .info__title {
    font-size: 17px;
    margin: 10px 0;
  }
  .company__benefits {
    margin-bottom: 0;
  }
  .company__images_block {
    margin-top: 70px;
  }
  .pagenav_block {
    margin-bottom: 44px;
  }
  .btn--back {
    margin-top: 40px !important;
  }
}
@media (max-width: 440px) {
  .top-menu__content {
    padding: 10px;
  }
  .main-logo__text-sub {
    font-size: 11px;
  }
  .main-buttons__label + .btn__wrap, .btn--rect {
    width: 33px;
    height: 33px;
  }
  .humburger {
    width: 15px;
    height: 10px;
  }
  .humburger span:nth-child(2) {
    top: 4px;
  }
  .humburger span:nth-child(3) {
    top: 8px;
  }
  .hidden-menu--open + .main-buttons__menu .humburger span:nth-child(1) {
    -webkit-transform: rotate(45deg) translateX(0px) translateY(-3px);
    -ms-transform: rotate(45deg) translateX(0px) translateY(-3px);
    transform: rotate(45deg) translateX(0px) translateY(-3px);
  }
  .hidden-menu--open + .main-buttons__menu .humburger span:nth-child(3) {
    -webkit-transform: rotate(-45deg) translateX(1px) translateY(2px);
    -ms-transform: rotate(-45deg) translateX(1px) translateY(2px);
    transform: rotate(-45deg) translateX(1px) translateY(2px);
  }
  .main-logo svg {
    width: 34px;
  }
  .main-logo__wrap {
    padding-top: 0;
  }
  .main-logo__text {
    margin-bottom: 6px;
  }
  .text-slider__title-main {
    font-size: 24px;
  }
  .text-slider__title-add {
    line-height: 21px;
  }
  .btn {
    font-size: 10px;
  }
  .btn--fix-width {
    width: 130px;
  }
  .text-slider__title-main:before {
    left: 0;
    top: -18px;
  }
  .header--main {
    height: 540px;
  }
  .text-slider__cont {
    padding-left: 35px;
  }
  .text-slider__controls .slick-dots {
    margin-left: 35px;
  }
  .footer__top {
    flex-direction: column-reverse;
    position: relative;
  }
  .footer__top .grid-col-3:first-child, .footer__top .grid-col-3:last-child {
    width: 100%;
  }
  .footer__logo {
    display: none;
  }
  .template-width {
    padding-left: 10px;
    padding-right: 10px;
  }
  .footer__top .grid-col-3:last-child {
    padding-left: 0;
  }
  .hidden-nav--footer {
    height: 112px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
  }
  .hidden-nav--footer li {
    padding-right: 10px;
    width: 50%;
    margin-bottom: 0 !important;
  }
  .footer {
    padding: 30px 0;
  }
  .hidden-nav--footer a {
    font-size: 12px;
  }
  .footer__city {
    font-size: 10px;
  }
  .footer__dev {
    display: none;
  }
  .footer__dev_hidden {
    display: flex;
  }
  .footer__year-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .footer__year {
    margin-right: 25px;
    font-size: 10px;
    flex-shrink: 0;
  }
  .hidden-menu__content {
    padding-left: 10px;
    padding-right: 10px;
  }
  .hidden-menu--open + .main-buttons__menu .main-buttons__label {
    font-size: 36px;
  }
  .hidden-nav li {
    font-size: 25px;
  }
  .header:not(.header--main) .top-menu__content {
    height: 84px;
  }
  .to-top__top {
    right: 10px;
  }
  .modal .fancybox-close-small {
    width: 33px;
    height: 33px;
    background-size: 15px;
  }
  .services-item__figure div {
    margin-bottom: 10px;
  }
  .modal .modal-content {
    width: calc(100% - 20px);
  }
  .info__item {
    padding: 10px;
  }
  .download-block {
    padding: 15px;
  }
  .download-block__title {
    font-size: 13px;
  }
  .helpful-info {
    display: none;
  }
  h2 {
    margin-top: 41px;
    margin-bottom: 25px;
    font-size: 25px;
    line-height: 1.2;
  }
  .company__benefits figcaption {
    font-size: 15px;
  }
  .contacts-border {
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media (max-width: 320px) {

}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdsb2JhbHMvX25vcm1hbGl6ZS5zY3NzIiwibWFpbi5jc3MiLCJnbG9iYWxzL19mb250cy5zY3NzIiwiZ2xvYmFscy9fdmFyaWFibGVzLnNjc3MiLCJnbG9iYWxzL19nZW5lcmFsLnNjc3MiLCJnbG9iYWxzL19ncmlkLnNjc3MiLCJsaWJzL3NsaWNrL19zbGljay5zY3NzIiwibGlicy9mYW5jeWJveDMvX2pxdWVyeS5mYW5jeWJveC5taW4uc2NzcyIsImxpYnMvYmFyb24vX2Jhcm9uLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL3NsaWRlci9fc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL2J1dHRvbi9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL3RvLXRvcC9fdG8tdG9wLnNjc3MiLCJjb21wb25lbnRzL2hpZGRlbi1tZW51L19oaWRkZW4tbWVudS5zY3NzIiwiY29tcG9uZW50cy9jYWxsYmFjay9fY2FsbGJhY2suc2NzcyIsImNvbXBvbmVudHMvY29udGFjdHMvX2NvbnRhY3RzLnNjc3MiLCJjb21wb25lbnRzL2JyZWFkY3J1bWJzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9jb21wYW55L19jb21wYW55LnNjc3MiLCJjb21wb25lbnRzL3RhYnMvX3RhYnMuc2NzcyIsImNvbXBvbmVudHMvc2VydmljZXMvX3NlcnZpY2VzLnNjc3MiLCJjb21wb25lbnRzL3NlcnZpY2VzLWl0ZW0vX3NlcnZpY2VzLWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvbW9kYWwvX21vZGFsLnNjc3MiLCJjb21wb25lbnRzL3Jldmlld3MvX3Jldmlld3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0RUFBNEU7QUFFNUU7OztHQUdHO0FBRUg7RUFDRSx3QkFBd0I7RUFBRSxPQUFPO0VBQ2pDLDJCQUEyQjtFQUFFLE9BQU87RUFDcEMsK0JBQStCO0VB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NUIseUJBQXlCLEVBQzVCOztBQUVEO0VBQ0ksdUNBQWdCO01BQWhCLDRDQUFnQjtVQUFoQiwrQkFBZ0IsRUFDbkI7O0FBRUQ7RUFDSSxvQkFBb0I7RUFDcEIscUJBQXFCO0VBQ3JCLGlDcEIxQ2UsRW9CMkNsQjs7QUFFRDtFQUNJLGdCQUFnQjtFQUNoQixlcEJuRFM7RW9Cb0RULGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsb0JBQ0gsRUFBQzs7QUFFRjtFQUNJLFVBQVU7RUFDVixlcEJ0RFc7RW9CdURYLGdCQUFnQjtFQUNoQixvQkFBb0IsRUFDdkI7O0FBRUQ7RUFDSSxnQkFBZ0IsRUFDbkI7O0FWdkVEO0VBQ0UsbUJBQW1CLEVBQ3BCOztBQUVEO0VBQ0UsWUFBWTtFQUNaLFdBQVc7RUFDWCxtQkFBbUI7RUFDbkIsd0RBQWdEO0VBQWhELGdEQUFnRCxFQWFqRDtFQWpCRDtJQU9JLGdCQUFnQjtJQUNoQixVQUFVO0lBQ1YsV0FBVztJQUNYLGtCQUFrQixFQUNuQjtFQVhIO0lBY0ksb0JBQW9CO0lBQ3BCLFdBQVcsRUFDWjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsYUFBYTtFQUNiLFlBQVk7RUFDWixhQUFhO0VBRWIscUVBQTBFO0VBQzFFLFlBQVk7RUFDWiw4QkFBc0I7RUFBdEIsc0JBQXNCLEVBdUJ2QjtFQWhDRDtJQVlJLFlBQVksRUFDYjtFQWJIO0lBZ0JJLG1CQUFtQjtJQUNuQixRQUFRO0lBQ1IsU0FBUztJQUNULE9BQU87SUFDUCxVQUFVO0lBQ1YsZUFBZTtJQUNmLGFBQWEsRUFLZDtJQTNCSDtNQXlCTSxXQUFXLEVBQ1o7RUExQkw7SUE4QkksZ0JBQWdCLEVBQ2pCOztBQUdIO0VBQ0UsY0FBYyxFQUNmIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMS4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsIC8qIDEgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5tYWluLCAvKiAyICovXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkgeyAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlLCAvKiAxICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250OiBpbmhlcml0OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHRleHQgc3R5bGUgb2YgcGxhY2Vob2xkZXJzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2NC4xLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG50ZW1wbGF0ZSxcbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb250IHdlaWdodCB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuaHRtbCwgYm9keSB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmOyB9XG5cbi50ZXh0LXNsaWRlcl9fdGl0bGUtbWFpbixcbi5oaWRkZW4tbmF2Om5vdCguaGlkZGVuLW5hdi0tZm9vdGVyKSBhLFxuaDEsXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zIENvbmRlbnNlZCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuaDEsIGgyLCBoMywgaDQge1xuICBjb2xvcjogIzQ1NDU1MjtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgaDEuaC11cHBlciwgaDIuaC11cHBlciwgaDMuaC11cHBlciwgaDQuaC11cHBlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5oMSwgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmgxLmgtbGluZSxcbmgzLmgtbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxMDBweDsgfVxuICBoMS5oLWxpbmU6YmVmb3JlLFxuICBoMy5oLWxpbmU6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjU4ZW07XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMwMDFiO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuaDMuaC1saW5lOmJlZm9yZSB7XG4gIHRvcDogMC43NWVtOyB9XG5cbmgxIHtcbiAgbWFyZ2luOiAwIDAgMS42ZW07XG4gIGZvbnQtc2l6ZTogMy4xMjVyZW07IH1cbiAgaDEuaC1saW5lOmJlZm9yZSB7XG4gICAgdG9wOiAwLjc1ZW07IH1cblxuaDIge1xuICBtYXJnaW46IDJlbSAwIDEuMzMzM2VtO1xuICBmb250LXNpemU6IDEuODc1cmVtOyB9XG5cbmgzLCBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuaDMge1xuICBtYXJnaW46IC44ZW0gMCAyLjVlbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1OyB9XG5cbmg0IHtcbiAgbWFyZ2luOiAzZW0gMCAyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBoNDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG5wLFxuLnUtbGlzdCBsaSB7XG4gIGNvbG9yOiAjMzcyZjJkO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zOTsgfVxuICBwIGEsXG4gIC51LWxpc3QgbGkgYSB7XG4gICAgY29sb3I6ICM0Mjg1ZjQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICBwIGE6aG92ZXIsXG4gICAgLnUtbGlzdCBsaSBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5wIHtcbiAgbWFyZ2luOiAxLjMzMzNlbSAwOyB9XG4gIHAuYm94IHtcbiAgICBtYXJnaW46IDMuMzMzMzNlbSAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNmFjYmM7XG4gICAgcGFkZGluZzogMS42NjY2NmVtO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBwLmhpZ2gtbGluZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjY2NjsgfVxuXG4udS1saXN0IHtcbiAgcGFkZGluZzogMCAwIDAgNi4yNWVtO1xuICBtYXJnaW46IDIuNWVtIDAgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAudS1saXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudS1saXN0IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS42NjY2ZW07IH1cbiAgICAudS1saXN0IGxpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMjBweDtcbiAgICAgIHRvcDogLjVlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDVweDtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UzMDAxYjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLyogTWFpblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmlubmVyLXBhZ2Uge1xuICBwYWRkaW5nOiAxMDBweCAwIDE2MHB4OyB9XG5cbi8qIE92ZXJmbG93XG4qKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBDb250YWluZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi50ZW1wbGF0ZS13aWR0aCB7XG4gIHdpZHRoOiA5MCU7XG4gIG1heC13aWR0aDogMTE3MHB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4vKiBMaW5rIGluaGVyaXRhbmNlXG4qKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5hIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKiBCb3gtc2l6aW5nIHdpdGggaW5oZXJpdGFuY2VcbioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vKiBTdHlsZSB0ZXh0IHNlbGVjdGlvblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQ2LCAxOTgsIDI0NywgMC4zMyk7IH1cblxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDYsIDE5OCwgMjQ3LCAwLjMzKTsgfVxuXG4vKiBQbGFjZWhvbGRlclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4MzgzOGQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbiAgb3BhY2l0eTogMTsgfVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzgzODM4ZDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xuICBvcGFjaXR5OiAxOyB9XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4MzgzOGQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbiAgb3BhY2l0eTogMTsgfVxuXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM4MzgzOGQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4ycztcbiAgb3BhY2l0eTogMTsgfVxuXG5pbnB1dDpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5pbnB1dDpmb2N1czo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5pbnB1dDpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmlucHV0OmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5pbnB1dC5lcnJvcjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTAxZjYzOyB9XG5cbmlucHV0LmVycm9yOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlMDFmNjM7IH1cblxuaW5wdXQuZXJyb3I6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTAxZjYzOyB9XG5cbmlucHV0LmVycm9yOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZTAxZjYzOyB9XG5cbnRleHRhcmVhLmVycm9yOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlMDFmNjM7IH1cblxudGV4dGFyZWEuZXJyb3I6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2UwMWY2MzsgfVxuXG50ZXh0YXJlYS5lcnJvcjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlMDFmNjM7IH1cblxudGV4dGFyZWEuZXJyb3I6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNlMDFmNjM7IH1cblxuLyogSW1hZ2VzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyogSW1hZ2VzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5odG1sLmhpZGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBodG1sLmhpZGUtc2Nyb2xsIGJvZHkge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIGh0bWwuaGlkZS1zY3JvbGwgYm9keSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZ3JpZC1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTEuODc1cmVtOyB9XG5cbi5ncmlkLWNvbC0zLCAuZ3JpZC1jb2wtNCwgLmdyaWQtY29sLTYsIC5ncmlkLWNvbC04IHtcbiAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH1cblxuLmdyaWQtY29sLTMge1xuICBmbGV4LWJhc2lzOiAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5ncmlkLWNvbC00IHtcbiAgZmxleC1iYXNpczogMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1jb2wtNiB7XG4gIGZsZXgtYmFzaXM6IDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLmdyaWQtY29sLTgge1xuICBmbGV4LWJhc2lzOiA2Ni42NjY2NiU7XG4gIG1heC13aWR0aDogNjYuNjY2NjYlOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGVyICoge1xuICAgIG91dGxpbmU6IGluaGVyaXQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mYW5jeWJveC1lbmFibGVkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uZmFuY3lib3gtZW5hYmxlZCBib2R5IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4uZmFuY3lib3gtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTkzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC1jb250YWluZXIgfiAuZmFuY3lib3gtY29udGFpbmVyIHtcbiAgei1pbmRleDogOTk5OTI7IH1cblxuLmZhbmN5Ym94LWJnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICMwZjBmMTE7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNiwgMC42OCwgMC4xOSk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmZhbmN5Ym94LWNvbnRhaW5lci0tcmVhZHkgLmZhbmN5Ym94LWJnIHtcbiAgb3BhY2l0eTogLjg3O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpOyB9XG5cbi5mYW5jeWJveC1jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiA5OTk5NDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4uZmFuY3lib3gtc2hvdy1jb250cm9scyAuZmFuY3lib3gtY29udHJvbHMge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYW5jeWJveC1pbmZvYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmFuY3lib3gtc2hvdy1pbmZvYmFyIC5mYW5jeWJveC1pbmZvYmFyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG5cbi5mYW5jeWJveC1pbmZvYmFyX19ib2R5IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNzBweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSBOZXVlLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMwLCAzMCwgMzAsIDAuNyk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkOyB9XG5cbi5mYW5jeWJveC1idXR0b25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG5cbi5mYW5jeWJveC1zaG93LWJ1dHRvbnMgLmZhbmN5Ym94LWJ1dHRvbnMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmFuY3lib3gtc2xpZGVyLXdyYXAge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4uZmFuY3lib3gtc2xpZGVyLCAuZmFuY3lib3gtc2xpZGVyLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiA5OTk5MztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uZmFuY3lib3gtc2xpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgb3V0bGluZTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiA5OTk5NDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5mYW5jeWJveC1zbGlkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAwOyB9XG5cbi5mYW5jeWJveC1zbGlkZTpiZWZvcmUsIC5mYW5jeWJveC1zbGlkZSA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmZhbmN5Ym94LXNsaWRlID4gKiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjRweDtcbiAgbWFyZ2luOiA0NHB4IDA7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mYW5jeWJveC1jb250ZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogNDRweCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiA4MCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gODhweCk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLHNhbnMtc2VyaWY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4uZmFuY3lib3gtaWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNvbnRlbnQsIC5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWlmcmFtZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5mYW5jeWJveC1wbGFjZWhvbGRlciB7XG4gIHotaW5kZXg6IDk5OTk1O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC1pbWFnZSwgLmZhbmN5Ym94LXBsYWNlaG9sZGVyLCAuZmFuY3lib3gtc3BhY2ViYWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5mYW5jeWJveC1pbWFnZSwgLmZhbmN5Ym94LXNwYWNlYmFsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWF4LWhlaWdodDogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlOyB9XG5cbi5mYW5jeWJveC1jb250cm9scy0tY2Fuem9vbU91dCAuZmFuY3lib3gtcGxhY2Vob2xkZXIge1xuICBjdXJzb3I6IHpvb20tb3V0OyB9XG5cbi5mYW5jeWJveC1jb250cm9scy0tY2Fuem9vbUluIC5mYW5jeWJveC1wbGFjZWhvbGRlciB7XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4uZmFuY3lib3gtY29udHJvbHMtLWNhbkdyYWIgLmZhbmN5Ym94LXBsYWNlaG9sZGVyIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjsgfVxuXG4uZmFuY3lib3gtY29udHJvbHMtLWlzR3JhYmJpbmcgLmZhbmN5Ym94LXBsYWNlaG9sZGVyIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi5mYW5jeWJveC1zcGFjZWJhbGwge1xuICB6LWluZGV4OiAxOyB9XG5cbi5mYW5jeWJveC10bXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgbGVmdDogLTk5OTlweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5mYW5jeWJveC1lcnJvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA0MHB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMzgwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uZmFuY3lib3gtZXJyb3IgcCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICM0NDQ7XG4gIGZvbnQ6IDE2cHgvMjBweCBIZWx2ZXRpY2EgTmV1ZSxIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjsgfVxuXG4uZmFuY3lib3gtY2xvc2Utc21hbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNHB4O1xuICByaWdodDogNHB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGZvbnQ6IDIxcHgvMSBBcmlhbCxIZWx2ZXRpY2EgTmV1ZSxIZWx2ZXRpY2Esc2Fucy1zZXJpZjtcbiAgY29sb3I6ICM4ODg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMnM7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHotaW5kZXg6IDI7IH1cblxuLmZhbmN5Ym94LWNsb3NlLXNtYWxsOmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCAjODg4OyB9XG5cbi5mYW5jeWJveC1zbGlkZS0tdmlkZW8gLmZhbmN5Ym94LWNsb3NlLXNtYWxsIHtcbiAgdG9wOiAtMzZweDtcbiAgcmlnaHQ6IC0zNnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZmFuY3lib3gtY2xvc2Utc21hbGw6aG92ZXIge1xuICBjb2xvcjogIzU1NTtcbiAgYmFja2dyb3VuZDogI2VlZTsgfVxuXG4uZmFuY3lib3gtY2FwdGlvbi13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiA2MHB4IDMwcHggMDtcbiAgei1pbmRleDogOTk5OTg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHRyYW5zcGFyZW50IDAsIHJnYmEoMCwgMCwgMCwgMC4xKSAyMCUsIHJnYmEoMCwgMCwgMCwgMC4yKSA0MCUsIHJnYmEoMCwgMCwgMCwgMC42KSA4MCUsIHJnYmEoMCwgMCwgMCwgMC44KSk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uZmFuY3lib3gtc2hvdy1jYXB0aW9uIC5mYW5jeWJveC1jYXB0aW9uLXdyYXAge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYW5jeWJveC1jYXB0aW9uIHtcbiAgcGFkZGluZzogMzBweCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EgTmV1ZSxIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7IH1cblxuLmZhbmN5Ym94LWNhcHRpb24gYSwgLmZhbmN5Ym94LWNhcHRpb24gYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDsgfVxuXG4uZmFuY3lib3gtY2FwdGlvbiBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5mYW5jeWJveC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1kaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbiwgLmZhbmN5Ym94LWluZm9iYXJfX2JvZHkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDMwLCAzMCwgMzAsIDAuNik7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uOmFmdGVyLCAuZmFuY3lib3gtYnV0dG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICBvcGFjaXR5OiAuOTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5mYW5jeWJveC1idXR0b24tLWRpc2FibGVkOmFmdGVyLCAuZmFuY3lib3gtYnV0dG9uLS1kaXNhYmxlZDpiZWZvcmUge1xuICBvcGFjaXR5OiAuNTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1sZWZ0OmFmdGVyIHtcbiAgbGVmdDogMjBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tbGVmdDphZnRlciwgLmZhbmN5Ym94LWJ1dHRvbi0tcmlnaHQ6YWZ0ZXIge1xuICB0b3A6IDE4cHg7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgY3VycmVudENvbG9yOyB9XG5cbi5mYW5jeWJveC1idXR0b24tLXJpZ2h0OmFmdGVyIHtcbiAgcmlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tbGVmdCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1yaWdodCB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tY2xvc2U6YWZ0ZXIsIC5mYW5jeWJveC1idXR0b24tLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDE2cHg7XG4gIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDhweCk7IH1cblxuLmZhbmN5Ym94LWJ1dHRvbi0tY2xvc2U6YmVmb3JlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1jbG9zZTphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4uZmFuY3lib3gtbG9hZGluZyB7XG4gIGJvcmRlcjogNnB4IHNvbGlkIHJnYmEoOTksIDk5LCA5OSwgMC40KTtcbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgLXdlYmtpdC1hbmltYXRpb246IGEgLjhzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBhIC44cyBpbmZpbml0ZSBsaW5lYXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0yNXB4O1xuICBtYXJnaW4tbGVmdDogLTI1cHg7XG4gIHotaW5kZXg6IDk5OTk5OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBhIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBhIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5mYW5jeWJveC1jb250cm9scyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZmFuY3lib3gtYnV0dG9uLS1sZWZ0LCAuZmFuY3lib3gtYnV0dG9uLS1yaWdodCwgLmZhbmN5Ym94LWJ1dHRvbnMgYnV0dG9uOm5vdCguZmFuY3lib3gtYnV0dG9uLS1jbG9zZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZmFuY3lib3gtY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIG1hcmdpbjogMDsgfSB9XG5cbi5mYW5jeWJveC1idXR0b24tLWZ1bGxzY3JlZW46YmVmb3JlIHtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTFweDtcbiAgbGVmdDogMTVweDtcbiAgdG9wOiAxNnB4O1xuICBib3JkZXI6IDJweCBzb2xpZDtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS1wbGF5OmJlZm9yZSB7XG4gIHRvcDogMTZweDtcbiAgbGVmdDogMThweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogNnB4IGluc2V0IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA2cHggaW5zZXQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5mYW5jeWJveC1idXR0b24tLXBhdXNlOmJlZm9yZSB7XG4gIHRvcDogMTZweDtcbiAgbGVmdDogMThweDtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiAxMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAgMnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS10aHVtYnMgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMjNweDsgfVxuXG4uZmFuY3lib3gtYnV0dG9uLS10aHVtYnM6YmVmb3JlIHtcbiAgdG9wOiAyMHB4O1xuICBsZWZ0OiAyMXB4O1xuICB3aWR0aDogM3B4O1xuICBoZWlnaHQ6IDNweDtcbiAgYm94LXNoYWRvdzogMCAtNHB4IDAsLTRweCAtNHB4IDAsNHB4IC00cHggMCxpbnNldCAwIDAgMCAzMnB4LC00cHggMCAwLDRweCAwIDAsMCA0cHggMCwtNHB4IDRweCAwLDRweCA0cHggMDsgfVxuXG4uZmFuY3lib3gtY29udGFpbmVyLS10aHVtYnMgLmZhbmN5Ym94LWNhcHRpb24td3JhcCwgLmZhbmN5Ym94LWNvbnRhaW5lci0tdGh1bWJzIC5mYW5jeWJveC1jb250cm9scywgLmZhbmN5Ym94LWNvbnRhaW5lci0tdGh1bWJzIC5mYW5jeWJveC1zbGlkZXItd3JhcCB7XG4gIHJpZ2h0OiAyMjBweDsgfVxuXG4uZmFuY3lib3gtdGh1bWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IGF1dG87XG4gIHdpZHRoOiAyMjBweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cHggNXB4IDAgMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgei1pbmRleDogOTk5OTM7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5mYW5jeWJveC10aHVtYnMgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZm9udC1zaXplOiAwOyB9XG5cbi5mYW5jeWJveC10aHVtYnMgPiB1bCA+IGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNTAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDVweDtcbiAgaGVpZ2h0OiA3NXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiA1cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmxpLmZhbmN5Ym94LXRodW1icy1sb2FkaW5nIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5mYW5jeWJveC10aHVtYnMgPiB1bCA+IGxpID4gaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmZhbmN5Ym94LXRodW1icyA+IHVsID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyOiA0cHggc29saWQgIzRlYTdmOTtcbiAgei1pbmRleDogOTk5OTE7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTsgfVxuXG4uZmFuY3lib3gtdGh1bWJzID4gdWwgPiBsaS5mYW5jeWJveC10aHVtYnMtYWN0aXZlOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5mYW5jeWJveC10aHVtYnMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZmFuY3lib3gtY29udGFpbmVyLS10aHVtYnMgLmZhbmN5Ym94LWNhcHRpb24td3JhcCwgLmZhbmN5Ym94LWNvbnRhaW5lci0tdGh1bWJzIC5mYW5jeWJveC1jb250cm9scywgLmZhbmN5Ym94LWNvbnRhaW5lci0tdGh1bWJzIC5mYW5jeWJveC1zbGlkZXItd3JhcCB7XG4gICAgcmlnaHQ6IDA7IH0gfVxuXG4uYmFyb25fX2NsaXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmJhcm9uX19zY3JvbGxlciB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC8qIHJlbW92ZSBsaW5lIHRvIGN1c3RvbWl6ZSBzY3JvbGxiYXIgaW4gaU9zICovIH1cblxuLmJhcm9uX19zY3JvbGxlcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi5iYXJvbl9fdHJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4uYmFyb24uX3Njcm9sbGJhciAuYmFyb25fX3RyYWNrIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmJhcm9uX19mcmVlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLmJhcm9uX19iYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTBweDtcbiAgYmFja2dyb3VuZDogIzk5OTsgfVxuXG4uYmFyb24uX3Njcm9sbGJhciAuYmFyb25fX2JhciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5iYXJvbl9fY29udHJvbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU0lNUExFICovXG4uYmFyb24uX3NpbXBsZSAuYmFyb25fX3RyYWNrIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzO1xuICB0b3A6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmNWY2Zjc7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5iYXJvbi5fc2ltcGxlLl9zY3JvbGxiYXIgLmJhcm9uX190cmFjayB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmJhcm9uLl9zaW1wbGUgLmJhcm9uX19iYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODM4MzhkO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgbGluZWFyO1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uYmFyb24uX3NpbXBsZSAuYmFyb25fX2Jhcjpob3Zlcixcbi5iYXJvbi5fc2ltcGxlIC5iYXJvbl9fYmFyOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MzgzOGQ7IH1cblxuLyogTWFjIE9TIFggKi9cbi5iYXJvbi5fbWFjb3N4IC5iYXJvbl9fdHJhY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDM7XG4gIHRvcDogMnB4O1xuICBib3R0b206IDJweDtcbiAgcmlnaHQ6IDJweDtcbiAgd2lkdGg6IDA7IH1cblxuLmJhcm9uLl9tYWNvc3guX3Njcm9sbGJhciAuYmFyb25fX3RyYWNrIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uYmFyb24uX21hY29zeCAuYmFyb25fX2JhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDZweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiAuMXMgb3BhY2l0eSAuNHMgbGluZWFyO1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uYmFyb24uX21hY29zeCAuYmFyb25fX2Jhcjpob3Zlcixcbi5iYXJvbi5fc2Nyb2xsaW5nIC5iYXJvbl9fYmFyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG5cbi8qIFdpbmRvd3MgWFAgKi9cbi5iYXJvbi5fd2lueHAgLmJhcm9uX19zY3JvbGxlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDE3cHg7IH1cblxuLmJhcm9uLl93aW54cCAuYmFyb25fX3RyYWNrIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxNXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmMmYxZWMsICNmZGZlZjkpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWNlZGU1OyB9XG5cbi5iYXJvbi5fd2lueHAuX3Njcm9sbGJhciAuYmFyb25fX3RyYWNrIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5iYXJvbi5fd2lueHAgLmJhcm9uX19jb250cm9sLFxuLmJhcm9uLl93aW54cCAuYmFyb25fX2JhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmM2ZmZmY7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggMXB4ICNiN2NhZjUgaW5zZXQsIDFweCAxcHggMXB4ICM3YjlmZDM7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYzlkN2ZjLCAjYmFjY2Y0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDhweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIGNvbG9yOiAjNGU2Mjg3O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fY29udHJvbDpob3Zlcixcbi5iYXJvbi5fd2lueHAgLmJhcm9uX19iYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNkOWU3ZmYsICNjYWRjZmYpOyB9XG5cbi5iYXJvbi5fd2lueHAgLmJhcm9uX191cCxcbi5iYXJvbi5fd2lueHAgLmJhcm9uX19kb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5iYXJvbi5fd2lueHAgLmJhcm9uX191cCB7XG4gIHRvcDogMDsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fZG93biB7XG4gIGJvdHRvbTogMDsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fZnJlZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxOHB4O1xuICBib3R0b206IDE4cHg7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMDsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMTVweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YzZmZmZjtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAxcHggI2I3Y2FmNSBpbnNldCwgMXB4IDFweCAxcHggIzdiOWZkMztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNjOWQ3ZmMsICNiYWNjZjQpO1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW47XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5iYXJvbi5fd2lueHAgLmJhcm9uX19iYXI6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0NSU7XG4gIGxlZnQ6IDNweDtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiA3cHg7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmMGY0ZmYgMHB4LCAjZjBmNGZmIDFweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMnB4LCAjZjBmNGZmIDJweCwgI2YwZjRmZiAzcHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgM3B4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDRweCwgI2YwZjRmZiA0cHgsICNmMGY0ZmYgNXB4LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDVweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA2cHgsICNmMGY0ZmYgNnB4LCAjZjBmNGZmIDdweCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3cHgsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgOHB4KTsgfVxuXG4uYmFyb24uX3dpbnhwIC5iYXJvbl9fYmFyOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0NyU7XG4gIGxlZnQ6IDRweDtcbiAgd2lkdGg6IDZweDtcbiAgaGVpZ2h0OiA3cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM4YWFmZjYgMHB4LCAjOGFhZmY2IDFweCwgcmdiYSgxMzgsIDE3NSwgMjQ2LCAwKSAxcHgsIHJnYmEoMTM4LCAxNzUsIDI0NiwgMCkgMnB4LCAjOGFhZmY2IDJweCwgIzhhYWZmNiAzcHgsIHJnYmEoMTM4LCAxNzUsIDI0NiwgMCkgM3B4LCByZ2JhKDEzOCwgMTc1LCAyNDYsIDApIDRweCwgIzhhYWZmNiA0cHgsICM4YWFmZjYgNXB4LCByZ2JhKDEzOCwgMTc1LCAyNDYsIDApIDVweCwgcmdiYSgxMzgsIDE3NSwgMjQ2LCAwKSA2cHgsICM4YWFmZjYgNnB4LCAjOGFhZmY2IDdweCwgcmdiYSgxMzgsIDE3NSwgMjQ2LCAwKSA3cHgsIHJnYmEoMTM4LCAxNzUsIDI0NiwgMCkgOHB4KTsgfVxuXG4uYmFyb24uX3dpbnhwLl9kcmFnZ2luZyAuYmFyb25fX2Jhcixcbi5iYXJvbi5fd2lueHAgLmJhcm9uX19iYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNkOWU3ZmYsICNjYWRjZmYpOyB9XG5cbi8qIFVidW50dSAqL1xuLmJhcm9uLl91YnVudHUxMiAuYmFyb25fX3Njcm9sbGVyIHtcbiAgcGFkZGluZy1yaWdodDogMTRweDsgfVxuXG4uYmFyb24uX3VidW50dTEyIC5iYXJvbl9fdHJhY2sge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDM7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDE0cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjNWMxYmQ7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZDNkM2QzLCAjZTVlNWU1KTsgfVxuXG4uYmFyb24uX3VidW50dTEyLl9zY3JvbGxiYXIgLmJhcm9uX190cmFjayB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmJhcm9uLl91YnVudHUxMiAuYmFyb25fX2JhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEycHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmNmYmZiLCAjZWVlY2ViKTtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggI2Q2ZDNkMDsgfVxuXG4uYmFyb24uX3VidW50dTEyIC5iYXJvbl9fYmFyOmhvdmVyLFxuLmJhcm9uLl91YnVudHUxMi5fZHJhZ2dpbmcgLmJhcm9uX19iYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNlOTZkM2EsICNmNTgwNTApO1xuICBib3JkZXItY29sb3I6ICNlMTYzMmY7IH1cblxuLmhlYWRlci0tbWFpbiB7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGVhZGVyOm5vdCguaGVhZGVyLS1tYWluKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NTQ1NTI7IH1cbiAgLmhlYWRlcjpub3QoLmhlYWRlci0tbWFpbikgLm1haW4tbG9nbyBzdmcge1xuICAgIHdpZHRoOiA3MHB4OyB9XG4gIC5oZWFkZXI6bm90KC5oZWFkZXItLW1haW4pIC50b3AtbWVudV9fY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMjBweDsgfVxuICAuaGVhZGVyOm5vdCguaGVhZGVyLS1tYWluKSAubWFpbi1sb2dvX193cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuXG4udG9wLW1lbnVfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyNDBweDsgfVxuXG4ubWFpbi1sb2dvIHtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogNDAwcHg7IH1cbiAgLm1haW4tbG9nbyBzdmcge1xuICAgIHdpZHRoOiA4OHB4O1xuICAgIGhlaWdodDogMTAwcHg7IH1cbiAgLm1haW4tbG9nbyBwYXRoIHtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLm1haW4tbG9nby0td2hpdGU6bm90KDpob3ZlcikgcGF0aCB7XG4gICAgZmlsbDogI2ZmZjsgfVxuXG4ubWFpbi1sb2dvX193cmFwIHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDsgfVxuXG4ubWFpbi1sb2dvX190ZXh0LFxuLm1haW4tbG9nb19fdGV4dC1zdWIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmMWYxZjE7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5tYWluLWxvZ29fX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLm1haW4tbG9nb19fdGV4dC1zdWIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLm1haW4tbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1iYXNpczogMTkuNWVtO1xuICBtYXJnaW46IDAgNS42M2VtIDAgMDtcbiAgcGFkZGluZzogMC42MjVlbSAwIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLm1haW4tbmF2IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMy4xM2VtOyB9XG4gIC5tYWluLW5hdiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMi41ZW07XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubWFpbi1uYXYgYTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IDAuMTVzIGVhc2Utb3V0O1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDMlKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAubWFpbi1uYXYgYTpob3ZlcjphZnRlciwgLm1haW4tbmF2IGEuYWN0aXZlOmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH1cbiAgICAubWFpbi1uYXYgYS5hY3RpdmUge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLm1haW4tYnV0dG9uc19fbWVudSB7XG4gIHotaW5kZXg6IDE7XG4gIHJpZ2h0OiAwOyB9XG4gIC5tYWluLWJ1dHRvbnNfX21lbnU6aG92ZXIge1xuICAgIHdpbGwtY2hhbmdlOiB3aWR0aCwgaGVpZ2h0LCBib3JkZXItcmFkaXVzOyB9XG5cbi5tYWluLWJ1dHRvbnNfX2xhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgY29sb3I6ICNmMWYxZjE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5tYWluLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLm1haW4tYnV0dG9ucyA+IGxpIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAubWFpbi1idXR0b25zID4gbGkgPiBhOm5vdCguaGlkZS1tZW51KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgd2lkdGg6IGluaGVyaXQ7IH1cblxuLmh1bWJ1cmdlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyMXB4O1xuICByaWdodDogMThweDtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMThweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHRyYW5zaXRpb246IC41cyBlYXNlLWluLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuaHVtYnVyZ2VyIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNpdGlvbjogLjI1cyBlYXNlLWluLW91dDsgfVxuICAgIC5odW1idXJnZXIgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7IH1cbiAgICAuaHVtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRvcDogOHB4O1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7IH1cbiAgICAuaHVtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRvcDogMTZweDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOyB9XG5cbi5tYWluLWJ1dHRvbnNfX21lbnU6aG92ZXIgLmh1bWJ1cmdlciBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNzUpOyB9XG5cbi5tYWluLWJ1dHRvbnNfX21lbnU6aG92ZXIgLmh1bWJ1cmdlciBzcGFuOm50aC1jaGlsZCgzKSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDAuNSk7IH1cblxuLnRvcC1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLmhlYWRlcl9fcGFnZS1pbmZvIHtcbiAgbWFyZ2luLXRvcDogMi4zMTI1ZW07IH1cblxuLmhlYWRlcl9fcGFnZW5hbWUge1xuICBtYXJnaW46IDAgMCAuODMzMzRlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAzLjc1cmVtO1xuICBsaW5lLWhlaWdodDogLjg7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5tYWluLXRlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IC4xNXMgZWFzZTsgfVxuICAubWFpbi10ZWwgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTdweDtcbiAgICBoZWlnaHQ6IDE3cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5tYWluLXRlbCBzcGFuIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tYWluLXRlbC0taGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGVyLFxuLmltYWdlLXNsaWRlcixcbi5zdmctbGF5ZXIsXG4udGV4dC1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc2xpZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzM2Q7IH1cblxuLmltYWdlLXNsaWRlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzZDtcbiAgb3BhY2l0eTogLjU1O1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5pbWFnZS1zbGlkZXIgZGl2IHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5pbWFnZS1zbGlkZXJfX2l0ZW0ge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuLnN2Zy1sYXllciB7XG4gIHRvcDogMTMwcHg7XG4gIGhlaWdodDogY2FsYyg5NSUgLSAxMzBweCk7IH1cbiAgLnN2Zy1sYXllciBzdmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDk5LjA2MjUlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbi50ZXh0LXNsaWRlciB7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi50ZXh0LXNsaWRlcl9fY29udCxcbi50ZXh0LXNsaWRlcl9fY29udHJvbHMge1xuICBtYXgtd2lkdGg6IDkwNXB4O1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4udGV4dC1zbGlkZXJfX2NvbnQge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICBtaW4taGVpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2Utb3V0OyB9XG4gIC50ZXh0LXNsaWRlcl9fY29udC5zbGljay1pbml0aWFsaXplZCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAudGV4dC1zbGlkZXJfX2NvbnQgKiB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnRleHQtc2xpZGVyX19jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgYm90dG9tOiAxMCU7IH1cblxuLnRleHQtc2xpZGVyX190aXRsZS1tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIGNvbG9yOiAjZjFmMWYxO1xuICBmb250LXNpemU6IDMuMTI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnRleHQtc2xpZGVyX190aXRsZS1tYWluOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGJvdHRvbTogMXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMwMDFiO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLnRleHQtc2xpZGVyX190aXRsZS1hZGQge1xuICBtYXJnaW46IDAgMCAyZW07XG4gIGNvbG9yOiAjZjFmMWYxO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAudGV4dC1zbGlkZXJfX2NvbnQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuXG5Aa2V5ZnJhbWVzIGRvdC1iYWNrZ3JvdW5kIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTsgfSB9XG5cbkBrZXlmcmFtZXMgZG90LXNob3cge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMTAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLnRleHQtc2xpZGVyX19jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAudGV4dC1zbGlkZXJfX2NvbnRyb2xzIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC50ZXh0LXNsaWRlcl9fY29udHJvbHMgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgLnRleHQtc2xpZGVyX19jb250cm9scyAuc2xpY2stZG90cyBidXR0b24ge1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzM2Q7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC50ZXh0LXNsaWRlcl9fY29udHJvbHMgLnNsaWNrLWRvdHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLnRleHQtc2xpZGVyX19jb250cm9scyAuc2xpY2stZG90cyBidXR0b246Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgLnRleHQtc2xpZGVyX19jb250cm9scyAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAudGV4dC1zbGlkZXJfX2NvbnRyb2xzIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YWZ0ZXIsIC50ZXh0LXNsaWRlcl9fY29udHJvbHMgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UzMDAxYjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgICAudGV4dC1zbGlkZXJfX2NvbnRyb2xzIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBkb3QtYmFja2dyb3VuZCAuM3MgZWFzZS1vdXQgZm9yd2FyZHM7XG4gICAgICAgIG9wYWNpdHk6IC40OyB9XG4gICAgICAudGV4dC1zbGlkZXJfX2NvbnRyb2xzIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IGRvdC1zaG93IC4ycyBlYXNlLW91dCBmb3J3YXJkczsgfVxuXG4udGV4dC1zbGlkZXJfX2Fycm93cyB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLnRleHQtc2xpZGVyX19hcnJvd3MgLnNsaWNrLWFycm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXNpemU6IDA7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwLjY1O1xuICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnRleHQtc2xpZGVyX19hcnJvd3MgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC50ZXh0LXNsaWRlcl9fYXJyb3dzIC5zbGljay1hcnJvdzpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAudGV4dC1zbGlkZXJfX2Fycm93cyAuc2xpY2stYXJyb3c6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTNweDtcbiAgICB3aWR0aDogMTNweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvc3ZnL2JhY2suc3ZnXCIpO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLnRleHQtc2xpZGVyX19hcnJvd3MgLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG5cbi5idG5fX3dyYXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB0cmFuc2l0aW9uOiAuMnM7IH1cbiAgLmJ0bl9fd3JhcDphY3RpdmUge1xuICAgIHRyYW5zaXRpb246IC4xcztcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggdHJhbnNwYXJlbnQ7IH1cblxuLmJ0biB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyxjb2xvciAuM3MsYm9yZGVyLWNvbG9yIC4zcztcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOXB4IDAgMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5idG4tLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMzAwMWI7IH1cbiAgICAuYnRuLS1wcmltYXJ5OmhvdmVyOm5vdCguYnRuLS1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ExMDAxMztcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idG4tLXJlY3Qge1xuICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgIGhlaWdodDogMy43NXJlbTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5idG4tLWZpeC13aWR0aCB7XG4gICAgd2lkdGg6IDE3MHB4OyB9XG4gIC5idG4tLWZpeC13aWR0aC1zbWFsbCB7XG4gICAgd2lkdGg6IDE0MHB4OyB9XG4gIC5idG4tLWJpZyB7XG4gICAgd2lkdGg6IDI0MHB4O1xuICAgIHBhZGRpbmc6IDIxcHggMCAyMnB4OyB9XG4gIC5idG46YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1MCUsIDAsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY29udGVudDogYXR0cihkYXRhLXRleHQpOyB9XG4gIC5idG46aG92ZXI6bm90KC5idG4tLWRpc2FibGVkKTpiZWZvcmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5idG46aG92ZXI6bm90KC5idG4tLWRpc2FibGVkKSAuYnRuX19vdmVybGF5IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgc2tldygtMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmJ0bjpob3Zlcjpub3QoLmJ0bi0tZGlzYWJsZWQpIC5idG5fX3RleHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgMCwgMCk7XG4gICAgb3BhY2l0eTogMDsgfVxuXG4uYnRuX19vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxNDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXcoMGRlZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMTAwMTM7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZSxvcGFjaXR5IC4zcyBlYXNlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5idG5fX3RleHQsIC5idG46YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UsdHJhbnNmb3JtIC4yNXMgZWFzZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5idG4tLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZhY2JjOyB9XG5cbi5idG4tLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E2YWNiYztcbiAgY29sb3I6ICNhNmFjYmM7IH1cbiAgLmJ0bi0td2hpdGU6aG92ZXI6bm90KC5idG4tLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAuYnRuLS13aGl0ZSAuYnRuX19vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZhY2JjOyB9XG5cbi5idG5fX3dyYXAtLWhpZGRlbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDsgfVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZzogNTBweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG5cbi5mb290ZXJfX3RvcCA+IC5ncmlkLWNvbC0zOmZpcnN0LWNoaWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb290ZXJfX3RvcCA+IC5ncmlkLWNvbC0zOmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYTZhY2JjO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLmZvb3Rlcl9fdG9wID4gLmdyaWQtY29sLTM6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMzBweDsgfVxuXG4uZm9vdGVyX19sb2dvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmZvb3Rlcl9fbG9nbyBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aWR0aDogNTJweDtcbiAgICBoZWlnaHQ6IDYwcHg7IH1cbiAgLmZvb3Rlcl9fbG9nbyBzcGFuIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIGNvbG9yOiAjNDU0NTUyO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmZvb3Rlcl9fY29weSxcbi5mb290ZXJfX2NvbnRhY3Qge1xuICBjb2xvcjogIzQ1NDU1MjsgfVxuXG4uZm9vdGVyX19jb3B5IHtcbiAgbWFyZ2luOiAyMHB4IDAgMzBweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42NjY2OyB9XG5cbi5mb290ZXJfX2NvbnRhY3Qgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uZm9vdGVyX19jaXR5LFxuLmZvb3Rlcl9fbnVtLFxuLmZvb3Rlcl9fc3RyZWV0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uZm9vdGVyX19jaXR5IHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uZm9vdGVyX19udW0ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDEuNXJlbTsgfVxuXG4uZm9vdGVyX19lbWFpbCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLmZvb3Rlcl9fc3RyZWV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjJweDsgfVxuXG4uZm9vdGVyX195ZWFyIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2E2YWNiYztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmZvb3Rlcl9fc2VydmljZXMtdGl0bGUge1xuICBtYXJnaW46IDAgMCAxLjY2ZW07XG4gIGNvbG9yOiAjNDU0NTUyO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uZm9vdGVyX19zZXJ2aWNlcyB7XG4gIG1hcmdpbjogMCAtNTBweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbHVtbi1jb3VudDogMjsgfVxuICAuZm9vdGVyX19zZXJ2aWNlcyBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cbiAgLmZvb3Rlcl9fc2VydmljZXMgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM0NTQ1NTI7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBlYXNlLWluLW91dDsgfVxuICAgIC5mb290ZXJfX3NlcnZpY2VzIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNlMzAwMWI7IH1cblxuLmZvb3Rlcl9fZGV2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLmZvb3Rlcl9fZGV2IHN2ZyB7XG4gICAgd2lkdGg6IDE1MHB4O1xuICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuZm9vdGVyX19kZXYgcGF0aCxcbiAgLmZvb3Rlcl9fZGV2IHNwYW4ge1xuICAgIHRyYW5zaXRpb246IC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmZvb3Rlcl9fZGV2IHBhdGgge1xuICAgIGZpbGw6ICNhNmFjYmM7IH1cbiAgLmZvb3Rlcl9fZGV2IHNwYW4ge1xuICAgIGNvbG9yOiAjYTZhY2JjO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7IH1cbiAgLmZvb3Rlcl9fZGV2OmhvdmVyIHBhdGgge1xuICAgIGZpbGw6ICM0NTQ1NTI7IH1cbiAgLmZvb3Rlcl9fZGV2OmhvdmVyIHNwYW4ge1xuICAgIGNvbG9yOiAjNDU0NTUyOyB9XG5cbi50by10b3AtY29udCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udG8tdG9wX19maXhhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSwgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnRvLXRvcF9fZml4YWJsZS0tZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDExNzBweDsgfVxuICAudG8tdG9wX19maXhhYmxlLS12aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLnRvLXRvcF9fdG9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLTcwcHg7XG4gIGJvdHRvbTogMzBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZDogIzQ1NDU1MiB1cmwoXCIuLi9pbWFnZXMvcG5nL3RvLXRvcC5wbmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcbiAgb3BhY2l0eTogLjY7XG4gIHRyYW5zaXRpb246IC4xNXMgZWFzZTsgfVxuICAudG8tdG9wX190b3A6aG92ZXIge1xuICAgIG9wYWNpdHk6IC44OyB9XG4gIC50by10b3BfX3RvcCBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgLnRvLXRvcF9fdG9wIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICNmZmY7IH1cbiAgLnRvLXRvcF9fdG9wLS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5oZWFkZXItLW1haW4gKyBmb290ZXIgLnRvLXRvcC1jb250IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZGVuLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctdG9wOiAyNjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwMHB4O1xuICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgMHMsIHZpc2liaWxpdHkgMHMgLjE1czsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgIC5oaWRkZW4tbWVudSB7XG4gICAgICBwYWRkaW5nLXRvcDogMjI1cHg7IH0gfVxuICAuaGlkZGVuLW1lbnUtLW9wZW4ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgMHMsIHZpc2liaWxpdHkgMHMgMHM7IH1cbiAgICAuaGlkZGVuLW1lbnUtLW9wZW4gKyAubWFpbi1idXR0b25zX19tZW51IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMC42MjVlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDsgfVxuXG4uaGlkZGVuLW1lbnUtLW9wZW4gKyAubWFpbi1idXR0b25zX19tZW51IC5odW1idXJnZXIgc3BhbjpudGgtY2hpbGQoMSkge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWCgycHgpIHRyYW5zbGF0ZVkoLTRweCk7IH1cblxuLmhpZGRlbi1tZW51LS1vcGVuICsgLm1haW4tYnV0dG9uc19fbWVudSAuaHVtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgd2lkdGg6IDA7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpZGRlbi1tZW51LS1vcGVuICsgLm1haW4tYnV0dG9uc19fbWVudSAuaHVtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVYKDJweCkgdHJhbnNsYXRlWSg0cHgpOyB9XG5cbi53cmFwcGVyOmFmdGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU0NTUyO1xuICB0cmFuc2l0aW9uOiAuMjVzIGVhc2UtaW4tb3V0O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGNvbnRlbnQ6IFwiXCI7IH1cblxuLndyYXBwZXItLW92ZXJsYXk6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaWRkZW4tbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDQ3MHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNXB4KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC43NXMgZWFzZS1vdXQ7IH1cbiAgLmhpZGRlbi1uYXYgbGkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZjFmMWYxOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgIC5oaWRkZW4tbmF2IGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgICAuaGlkZGVuLW5hdiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC43NWVtOyB9XG4gIC5oaWRkZW4tbmF2IGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmhpZGRlbi1uYXYtLWZvb3RlciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0b3A6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLmhpZGRlbi1uYXYtLWZvb3RlciBsaSB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgY29sb3I6ICM0NTQ1NTI7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTc1OyB9XG4gICAgICAuaGlkZGVuLW5hdi0tZm9vdGVyIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMzNlbTsgfVxuICAgIC5oaWRkZW4tbmF2LS1mb290ZXIgYSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uaGlkZGVuLW1lbnUtLW9wZW4gLmhpZGRlbi1uYXYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuQGtleWZyYW1lcyBhbmltLWluLWxheWVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW0tb3V0LWxheWVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgYW5pbS1pbi10ZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfSB9XG5cbkBrZXlmcmFtZXMgYW5pbS1vdXQtdGV4dCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9IH1cblxuLm1lbnVfX2xpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmxpbmtfX2xheWVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU0NTUyO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICBhbmltYXRpb246IGFuaW0tb3V0LWxheWVyIC4zcyBlYXNlLW91dDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5saW5rX19sYXllcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NTQ1NTI7XG4gICAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgY29sb3I6ICNlMzAwMWI7XG4gICAgYW5pbWF0aW9uOiBhbmltLW91dC10ZXh0IC4zcyBlYXNlLW91dDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLmxpbmtfX2xheWVyLS1mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7IH1cbiAgICAubGlua19fbGF5ZXItLWZvb3RlcjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTsgfVxuXG4ubWVudV9fbGluazpob3ZlciAubGlua19fbGF5ZXIge1xuICBhbmltYXRpb246IGFuaW0taW4tbGF5ZXIgLjNzIGVhc2UgZm9yd2FyZHM7IH1cbiAgLm1lbnVfX2xpbms6aG92ZXIgLmxpbmtfX2xheWVyOmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uOiBhbmltLWluLXRleHQgLjNzIGVhc2UgZm9yd2FyZHM7IH1cblxuLmhpZGRlbi10ZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMTAwcHg7XG4gIHdpZHRoOiA0NzBweDtcbiAgcGFkZGluZy10b3A6IDQ1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYTZhY2JjO1xuICBjb2xvcjogI2E2YWNiYztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNXB4KTtcbiAgdHJhbnNpdGlvbjogLjM1cyAwcyBlYXNlLW91dDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgIC5oaWRkZW4tdGVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjVweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTcyMHB4KSB7XG4gICAgLmhpZGRlbi10ZWwge1xuICAgICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cblxuLmhpZGRlbi1tZW51LS1vcGVuIC5oaWRkZW4tdGVsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAuMzVzIC4ycyBlYXNlLW91dDsgfVxuXG4uY2FsbGJhY2tfX3RpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMWVtIDEuNjY2NjdlbTtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbiAgbWluLWhlaWdodDogNC40NDQ0ZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ1NDU1MjsgfVxuICAuY2FsbGJhY2tfX3RpdGxlLS1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGNiMDUwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uY2FsbGJhY2tfX2Zvcm0tY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIHBhZGRpbmc6IDMuMTI1ZW0gMS44NzVlbTsgfVxuXG4uY2FsbGJhY2tfX2ZpZWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5jYWxsYmFja19fZmllbGQgaW5wdXQsIC5jYWxsYmFja19fZmllbGQgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYWxsYmFja19fZmllbGQgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBjb2xvcjogIzQ1NDU1MjsgfVxuICAuY2FsbGJhY2tfX2ZpZWxkIGlucHV0IHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGNvbG9yOiAjMzcyZjJkO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYTZhY2JjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4wNzVzIGxpbmVhcjsgfVxuICAgIC5jYWxsYmFja19fZmllbGQgaW5wdXQ6aG92ZXIsIC5jYWxsYmFja19fZmllbGQgaW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNDU0NTUyO1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAuY2FsbGJhY2tfX2ZpZWxkLmVycm9yOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MnB4O1xuICAgIHJpZ2h0OiAxN3B4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm0vZXJyb3IucG5nXCIpO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLmNhbGxiYWNrX19maWVsZC5lcnJvciAuY2FsbGJhY2tfX2Vycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY2FsbGJhY2tfX2ZpZWxkLmVycm9yIC5jYWxsYmFja19fb2sge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNhbGxiYWNrX19maWVsZC5zdWNjZXNzOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzOXB4O1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Zvcm0vc3VjY2Vzcy5wbmdcIik7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAuY2FsbGJhY2tfX2ZpZWxkLnN1Y2Nlc3MgLmNhbGxiYWNrX19lcnJvciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2FsbGJhY2tfX2ZpZWxkLnN1Y2Nlc3MgLmNhbGxiYWNrX19vayB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNhbGxiYWNrX19wbGFjZWhvbGRlciB7XG4gIG1hcmdpbjogNXB4IDAgMDtcbiAgY29sb3I6ICNhNmFjYmM7XG4gIGZvbnQtc2l6ZTogLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmNhbGxiYWNrX19lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiAjNDU0NTUyOyB9XG5cbi5jYWxsYmFja19fYWdyZWVtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDIyNHB4O1xuICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgLmNhbGxiYWNrX19hZ3JlZW1lbnQgaW5wdXQge1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7IH1cbiAgLmNhbGxiYWNrX19hZ3JlZW1lbnQgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICM0NTQ1NTI7IH1cbiAgLmNhbGxiYWNrX19hZ3JlZW1lbnQgbGFiZWw6YmVmb3JlLFxuICAuY2FsbGJhY2tfX2FncmVlbWVudCBsYWJlbDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5jYWxsYmFja19fYWdyZWVtZW50IGxhYmVsOmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhNmFjYmM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAuY2FsbGJhY2tfX2FncmVlbWVudCBsYWJlbDphZnRlciB7XG4gICAgbGVmdDogM3B4O1xuICAgIHRvcDogM3B4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTMwMDFiO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogLjA3NXM7IH1cbiAgLmNhbGxiYWNrX19hZ3JlZW1lbnQgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5jYWxsYmFja19fYWdyZWVtZW50IGEge1xuICAgIGNvbG9yOiAjNDI4NWY0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmNhbGxiYWNrX19hZ3JlZW1lbnQgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNhbGxiYWNrX19hZ3JlZW1lbnQtaW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZm9ybS9pbmZvLnBuZ1wiKTsgfVxuXG4udG9vbHRpcCB7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjRweDtcbiAgdG9wOiAtMjAwcHg7XG4gIGJvdHRvbTogLTIwMHB4O1xuICB3aWR0aDogMjQ1cHg7XG4gIGhlaWdodDogOTBweDtcbiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NTQ1NTI7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW47IH1cbiAgLnRvb2x0aXA6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBib3JkZXItbGVmdDogMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDYuNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDYuNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkICM0NTQ1NTI7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cblxuLmNhbGxiYWNrX19hZ3JlZW1lbnQtaW5mbzpob3ZlciAudG9vbHRpcCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IC4yNXMgZWFzZS1vdXQ7IH1cblxuLmNhbGxiYWNrX19idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5jYWxsYmFja19fc3VibWl0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jYWxsYmFja19fdG9vbHRpcCB7XG4gIGxlZnQ6IGNhbGMoMTAwJSArIDExcHgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGhlaWdodDogNTBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uY2FsbGJhY2tfX3N1Ym1pdDpob3ZlciAuY2FsbGJhY2tfX3Rvb2x0aXAtLXNob3cge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5jYWxsYmFja19fc3VjY2Vzcy10ZXh0IHtcbiAgbWFyZ2luOiAwIDAgNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzQ1NDU1MjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5jYWxsYmFja19fZm9ybS1jb250ZW50LS1zdWNjZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubWFwIHtcbiAgbWFyZ2luLXRvcDogNjBweDsgfVxuXG4uYnJlYWRjcnVtYnNfX3dyYXAge1xuICBoZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgY29sb3I6ICM0NTQ1NTI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjExMTE7IH1cbiAgLmJyZWFkY3J1bWJzIC5icmVhZGNydW1ic19fZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbjsgfVxuICAgIC5icmVhZGNydW1icyAuYnJlYWRjcnVtYnNfX2VsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgLmJyZWFkY3J1bWJzIC5icmVhZGNydW1ic19fZWwgc3ZnLFxuICAgIC5icmVhZGNydW1icyAuYnJlYWRjcnVtYnNfX2VsIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5icmVhZGNydW1icyAuYnJlYWRjcnVtYnNfX2VsIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAuYnJlYWRjcnVtYnMgLmJyZWFkY3J1bWJzX19lbCBwYXRoIHtcbiAgICAgIGZpbGw6ICM0NTQ1NTI7XG4gICAgICB0cmFuc2l0aW9uOiAuMnMgZWFzZS1pbjsgfVxuICAuYnJlYWRjcnVtYnMgYS5icmVhZGNydW1ic19fZWw6aG92ZXIgcGF0aCwgLmJyZWFkY3J1bWJzIGEuYnJlYWRjcnVtYnNfX2VsOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAuODU7XG4gICAgdHJhbnNpdGlvbjogLjI1cyBlYXNlLW91dDsgfVxuICAuYnJlYWRjcnVtYnMgc3Bhbi5icmVhZGNydW1ic19fZWwge1xuICAgIGNvbG9yOiAjYTZhY2JjOyB9XG5cbi5jb21wYW55X19iZW5lZml0cyxcbi5jb21wYW55X19lbXBsb3llZXMge1xuICBtYXJnaW4tYm90dG9tOiAtNjBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uY29tcGFueV9fYmVuZWZpdHMgbGksXG4uY29tcGFueV9fZW1wbG95ZWVzIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG4uY29tcGFueV9fYmVuZWZpdHMgZmlndXJlLFxuLmNvbXBhbnlfX2VtcGxveWVlcyBmaWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuLmNvbXBhbnlfX2JlbmVmaXRzIGZpZ3VyZSBkaXYge1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLmNvbXBhbnlfX2JlbmVmaXRzIGZpZ2NhcHRpb24ge1xuICBjb2xvcjogIzM3MmYyZDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jb21wYW55X19lbXBsb3llZXMgaDUge1xuICBtYXJnaW46IDAgMCAuNWVtO1xuICBjb2xvcjogIzQ1NDU1MjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4yNTsgfVxuXG4uY29tcGFueV9fZW1wbG95ZWVzIHAge1xuICBtYXJnaW46IDA7IH1cblxuLmNvbXBhbnlfX2VtcGxveWVlcyBmaWd1cmUgZGl2IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgaGVpZ2h0OiA0MjBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbi50YWJzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudGFicyBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogODBweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGNvbG9yOiAjMzcyZjJkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gICAgdHJhbnNpdGlvbjogLjE1cyBlYXNlLWluLW91dDsgfVxuICAgIC50YWJzIGE6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNhNmFjYmMgdXJsKFwiLi4vaW1hZ2VzL3RhYnMvdGFicy1hcnJvdy5wbmdcIikgbm8tcmVwZWF0IDU0JSBjZW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgLnRhYnMgYTpob3ZlciwgLnRhYnMgYS5hY3RpdmUge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU0NTUyOyB9XG4gICAgLnRhYnMgYS5hY3RpdmU6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U