/*custom _var*/

/* @font-face {
	font-family: "PolitieSans-BlackItalic";
	font-style: normal;
    font-weight: 300;
  	src: url("PolitieSans-BlackItalic-v12.ttf");
  	src: url("PolitieSans-BlackItalic-v12.ttf?#iefix") format("truetype");
}

@font-face {
	font-family: "PolitieSans-Black";
	font-style: normal;
    font-weight: 300;
	src: url("PolitieSans-Black-v12.ttf");
  	src: url("PolitieSans-Black-v12.ttf?#iefix") format("truetype");
} */

@font-face {
  font-family: "PolitieSans-BoldItalic";
  font-style: normal;
  font-weight: 600;
  src: url("PolitieSans-BoldItalic.woff") format("woff");
  src: url("PolitieSans-BoldItalic.woff?#iefix") format("woff");
}

/* @font-face {
	font-family: "PolitieSans-Bold";
	font-style: normal;
    font-weight: 600;
	src: url("PolitieSans-Bold-v12.ttf");
  	src: url("PolitieSans-Bold-v12.ttf?#iefix") format("truetype");
}

@font-face {
	font-family: "PolitieSans-Italic";
	font-style: normal;
	font-weight: 300;
  	src: url("PolitieSans-Italic-v12.ttf");
  	src: url("PolitieSans-Italic-v12.ttf?#iefix") format("truetype");
} */

@font-face {
  font-family: "PolitieSans-Regular";
  font-style: normal;
  font-weight: 300;
  src: url("PolitieSans-Regular.woff") format("woff");
  src: url("PolitieSans-Regular.woff?#iefix") format("woff");
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

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

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

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

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

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

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

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

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

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

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

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

/**
 * Add the correct font 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;
}

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

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

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

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

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

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

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

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

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

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

textarea {
  overflow: auto;
}

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

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

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

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

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

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

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

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

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

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

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

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

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

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

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

template {
  display: none;
}

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

[hidden] {
  display: none;
}

#develope {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0px;
}

.spinner {
  display: block;
  margin: 100px auto;
  width: 40px;
  height: 40px;
  position: absolute;
  text-align: center;
  -webkit-animation: sk-rotate 2.0s infinite linear;
  animation: sk-rotate 2.0s infinite linear;
  top: 25%;
  left: 42%;
  margin-right: -50%;
}

.dot1,
.dot2 {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 0;
  background-color: #e6f73d;
  border-radius: 100%;
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}

.dot2 {
  top: auto;
  bottom: 0;
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes sk-rotate {
  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes sk-rotate {
  100% {
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
  }
}

@-webkit-keyframes sk-bounce {
  0%, 100% {
    -webkit-transform: scale(0);
  }

  50% {
    -webkit-transform: scale(1);
  }
}

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  }

  50% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

#buttons-helper {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  right: 0px;
  /* bottom: 0px; */
  /* left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%); */
  font-family: sans-serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  /* Chrome, Safari */
  -moz-osx-font-smoothing: grayscale;
  /* Firefox */
  display: none;
  z-index: 9999;
}

#buttons-helper .fuller-button {
  opacity: 0;
  color: white;
  background: none;
  border-radius: 0;
  padding: 1.2em 5em;
  letter-spacing: 0.35em;
  font-size: 0.7em;
  -webkit-transition: background-color 0.3s, color 0.3s, -webkit-box-shadow 0.3s;
  transition: background-color 0.3s, color 0.3s, -webkit-box-shadow 0.3s;
  transition: background-color 0.3s, box-shadow 0.3s, color 0.3s;
  transition: background-color 0.3s, box-shadow 0.3s, color 0.3s, -webkit-box-shadow 0.3s;
  margin: 1em;
  right: -200px;
  position: relative;
}

#buttons-helper .fuller-button.blue {
  -webkit-box-shadow: inset 0 0 1em rgba(0, 170, 170, 0.5), 0 0 1em rgba(0, 170, 170, 0.5);
  box-shadow: inset 0 0 1em rgba(0, 170, 170, 0.5), 0 0 1em rgba(0, 170, 170, 0.5);
  border: #e6f73d solid 2px;
}

#buttons-helper .fuller-button.blue:hover {
  background-color: #e6f73d;
  -webkit-box-shadow: inset 0 0 0 rgba(0, 170, 170, 0.5), 0 0 1.5em rgba(0, 170, 170, 0.7);
  box-shadow: inset 0 0 0 rgba(0, 170, 170, 0.5), 0 0 1.5em rgba(0, 170, 170, 0.7);
}

#buttons-helper .fuller-button.red {
  -webkit-box-shadow: inset 0 0 1em rgba(251, 81, 81, 0.4), 0 0 1em rgba(251, 81, 81, 0.4);
  box-shadow: inset 0 0 1em rgba(251, 81, 81, 0.4), 0 0 1em rgba(251, 81, 81, 0.4);
  border: #fb5454 solid 2px;
}

#buttons-helper .fuller-button.red:hover {
  background-color: #fb5454;
  -webkit-box-shadow: inset 0 0 0 rgba(251, 81, 81, 0.4), 0 0 1.5em rgba(251, 81, 81, 0.6);
  box-shadow: inset 0 0 0 rgba(251, 81, 81, 0.4), 0 0 1.5em rgba(251, 81, 81, 0.6);
}

#buttons-helper .fuller-button.white {
  -webkit-box-shadow: inset 0 0 0.8em rgba(255, 255, 255, 0.3), 0 0 0.8em rgba(255, 255, 255, 0.3);
  box-shadow: inset 0 0 0.8em rgba(255, 255, 255, 0.3), 0 0 0.8em rgba(255, 255, 255, 0.3);
  border: #fff solid 2px;
}

#buttons-helper .fuller-button.white:hover {
  color: rgba(0, 0, 0, 0.8);
  background-color: #fff;
  -webkit-box-shadow: inset 0 0 0 rgba(255, 255, 255, 0.3), 0 0 1.2em rgba(255, 255, 255, 0.5);
  box-shadow: inset 0 0 0 rgba(255, 255, 255, 0.3), 0 0 1.2em rgba(255, 255, 255, 0.5);
}

#buttons-helper .pure-form .pure-control-group label {
  text-align: left;
  position: absolute;
  left: 0;
  top: 15%;
  z-index: 0;
  letter-spacing: 0;
  margin: 0 1em;
}

#buttons-helper .pure-form .pure-control-group input {
  background: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding-left: 0;
  border-radius: 0;
  border: none;
  border-bottom: 2px solid rgba(255, 255, 255, 0.4);
  position: relative;
  z-index: 1;
  color: #fff;
}

#buttons-helper .pure-form .pure-control-group input:focus {
  border-bottom: 2px solid white;
}

#buttons-helper .pure-form .pure-control-group textarea {
  background: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0;
  border: none;
  border-left: 2px solid rgba(255, 255, 255, 0.4);
  resize: none;
  height: 8em;
  color: #fff;
}

#buttons-helper .pure-form .pure-control-group textarea:focus {
  border-left: 2px solid white;
}

#buttons-helper .pure-form .pure-control-group input[type=email]:focus:invalid {
  color: #fff;
}

#buttons-helper .pure-form .pure-control-group input[type=email]:invalid {
  color: #fb5454;
}

#buttons-helper .pure-form button {
  margin: 0.5em 1em;
}

body #banner {
  overflow: hidden;
  position: relative;
  width: 300px;
  height: 600px;
  cursor: pointer;
}

body #banner #content {
  position: relative;
  display: none;
  height: 100%;
  width: 100%;
  color: white;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  /* CUSTOM CSS */
}

body #banner #content .bottom-container {
  display: block;
  -ms-flex-preferred-size: 40%;
  flex-basis: 40%;
  background: -webkit-gradient(linear, left top, left bottom, from(#0e0e0e), to(#001426));
  background: -webkit-linear-gradient(#0e0e0e, #001426);
  background: linear-gradient(#0e0e0e, #001426);
  overflow-x: hidden;
  position: relative;
  z-index: 1;
}

body #banner #content .top-container {
  display: block;
  -ms-flex-preferred-size: 60%;
  flex-basis: 60%;
}

body #banner #content .top-container .gradient {
  position: absolute;
  width: 100%;
  height: 70px;
  bottom: 0px;
  background: rgba(255, 255, 255, 0);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, black));
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, black 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(black));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, black 100%);
}

body #banner #content #background-img {
  background-image: url("Default.png");
  background-size: cover;
  background-attachment: inherit;
  background-position: left center;
}

body #banner #content .content-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}

body #banner #content .content-wrapper .head {
  position: absolute;
  z-index: 1;
  top: 0%;
  width: 100%;
}

body #banner #content .content-wrapper .head .logo {
  height: 100%;
  width: 145px;
  display: block;
  margin: 0 auto;
}

body #banner #content .content-wrapper .head .logo svg {
  height: 60px;
  width: 145px;
}

body #banner #content .content-wrapper .body {
  position: relative;
  color: white;
  height: 100%;
}

body #banner #content .content-wrapper .body .person {
  position: relative;
  bottom: 35px;
  /* width: 100%; */
  /* display: flex; */
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /* display: block; */
  right: -305px;
  /*   opacity: 0; */
}

body #banner #content .content-wrapper .body .person img {
  width: 385px;
  height: auto;
  position: relative;
  top: 95px;
  right: 38px;
  /* margin: 0 auto; */
}

body #banner #content .content-wrapper .body .text-wrapper {
  z-index: 10;
  position: absolute;
  display: block;
  top: 10%;
  width: 100%;
  text-align: center;
  text-transform: uppercase;
  font-size: 31px;
  font-family: 'PolitieSans-BoldItalic', Sans-Serif;
  white-space: nowrap;
  -webkit-font-smoothing: antialiased;
  /* Chrome, Safari */
  -moz-osx-font-smoothing: grayscale;
  /* Firefox */
  /* opacity: 0; */
}

body #banner #content .content-wrapper .body .text-wrapper .yellow {
  color: #e6f73d;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-one {
  position: relative;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-one .text-one {
  /* display: block; */
  margin: 0 auto;
  display: table;
  position: relative;
  top: 5px;
  left: -550px;
  text-shadow: 2px 2px 5px #000000;
  font-family: 'PolitieSans-BoldItalic', Sans-Serif;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-one .text-two {
  margin: 0 auto;
  position: relative;
  display: table;
  top: 0px;
  right: -550px;
  text-shadow: 2px 2px 5px #000000;
  font-family: 'PolitieSans-BoldItalic', Sans-Serif;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-two {
  position: absolute;
  width: 100%;
  top: 0%;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-two .text-one {
  margin: 0 auto;
  display: table;
  position: relative;
  top: 5px;
  /* display: block; */
  left: 550px;
  text-shadow: 2px 2px 5px #000000;
  font-family: 'PolitieSans-BoldItalic', Sans-Serif;
}

body #banner #content .content-wrapper .body .text-wrapper .slide-two .text-two {
  margin: 0 auto;
  display: table;
  position: relative;
  top: 0px;
  right: 550px;
  text-shadow: 2px 2px 5px #000000;
  font-family: 'PolitieSans-BoldItalic', Sans-Serif;
}

body #banner #content .content-wrapper .body .button {
  position: absolute;
  left: 50%;
  margin-right: -50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  top: 60%;
  z-index: 11;
  border: 1.3px solid #e6f73d;
  border-radius: 2px;
  padding: 7px 10px 5px 10px;
  color: #e6f73d;
  margin: 0 auto;
  display: block;
}

body #banner #content .content-wrapper .body .button .cta {
  text-transform: uppercase;
  font-family: "PolitieSans-Regular", Sans-Serif;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  /* Chrome, Safari */
  -moz-osx-font-smoothing: grayscale;
  /* Firefox */
  display: block;
  position: relative;
  left: 0px;
  top: 0px;
}

body #banner #content .content-wrapper .footer {
  position: absolute;
  bottom: 0px;
  width: 100%;
  height: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: white;
}

body #banner #content .content-wrapper .footer .text-wrapper {
  position: absolute;
  left: 0px;
  width: 100%;
  bottom: 30px;
}

body #banner #content .content-wrapper .footer .text-wrapper .text {
  text-align: center;
  text-transform: uppercase;
  font-family: "PolitieSans-Regular";
  font-size: 10px;
  display: block;
  -webkit-font-smoothing: antialiased;
  /* Chrome, Safari */
  -moz-osx-font-smoothing: grayscale;
  /* Firefox */
}

body #banner #content .content-wrapper:before {
  content: " ";
  left: 0px;
  top: 0px;
  display: inline-block;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl92YXIuc2NzcyIsIl9ub3JtYWxpemUuc2NzcyIsInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJfMzAweDYwMC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLGVBQWU7QUFHZjs7Ozs7Ozs7Ozs7Ozs7SUFjSTtBQUVKO0VBQ0Msc0NBQXFDO0VBQ3JDLG1CQUFrQjtFQUNmLGlCQUFnQjtFQUNuQix1REFBc0Q7RUFDcEQsOERBQTZELEVBQUE7O0FBR2hFOzs7Ozs7Ozs7Ozs7OztJQWNJO0FBRUo7RUFDQyxtQ0FBa0M7RUFDbEMsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixvREFBbUQ7RUFDakQsMkRBQTBELEVBQUE7O0FDakQ3RCw0RUFBNEU7QUFFNUU7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIO0VBQ0Usa0JBQWlCO0VBQUUsT0FBTztFQUMxQiwrQkFBOEI7RUFBRSxPQUFPLEVBQ3hDOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0UsVUFBUyxFQUNWOztBQUVEOztHQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxlQUFjO0VBQ2QsaUJBQWdCLEVBQ2pCOztBQUVEO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSDtFQUNFLGdDQUF1QjtVQUF2Qix3QkFBdUI7RUFBRSxPQUFPO0VBQ2hDLFVBQVM7RUFBRSxPQUFPO0VBQ2xCLGtCQUFpQjtFQUFFLE9BQU8sRUFDM0I7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxrQ0FBaUM7RUFBRSxPQUFPO0VBQzFDLGVBQWM7RUFBRSxPQUFPLEVBQ3hCOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0UsOEJBQTZCLEVBQzlCOztBQUVEOzs7R0FHRztBQUVIO0VBQ0Usb0JBQW1CO0VBQUUsT0FBTztFQUM1QiwyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLDBDQUFpQztVQUFqQyxrQ0FBaUM7RUFBRSxPQUFPLEVBQzNDOztBQUVEOztHQUVHO0FBRUg7O0VB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QiwwQkFBeUI7WUFDekIsbUNBQWtDO1lBQ2xDLGdCQ3ZZK0I7WUR3WS9CLGVBQWM7WUFDZCxvQ0FBbUM7WUFBRSxvQkFBb0I7WUFDdkQsbUNBQWtDO1lBQUUsYUFBYSxFQUNuRDtJQTlNUDtNQW1OSSxhQUFZO01BQ1osVUFBUztNQUNULFNBQVE7TUFDUixzQkFBcUI7TUFDckIsYUFBWTtNQUNaLFlBQVc7TUFDWCxxQ0FBb0M7TUFDcEMsbUJBQWtCLEVBQ2xCIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxuLypjdXN0b20gX3ZhciovXG4kcHJpbWFpcmVfY29sb3I6ICNlNmY3M2Q7XG5cbi8qIEBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogXCJQb2xpdGllU2Fucy1CbGFja0l0YWxpY1wiO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJsYWNrSXRhbGljLXYxMi50dGZcIik7XG4gIFx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1CbGFja0l0YWxpYy12MTIudHRmPyNpZWZpeFwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBcIlBvbGl0aWVTYW5zLUJsYWNrXCI7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJsYWNrLXYxMi50dGZcIik7XG4gIFx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1CbGFjay12MTIudHRmPyNpZWZpeFwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn0gKi9cblxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBcIlBvbGl0aWVTYW5zLUJvbGRJdGFsaWNcIjtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7O1xuICBcdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtQm9sZEl0YWxpYy53b2ZmPyNpZWZpeFwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG4vKiBAZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtQm9sZFwiO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1Cb2xkLXYxMi50dGZcIik7XG4gIFx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1Cb2xkLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtSXRhbGljXCI7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcbiAgXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUl0YWxpYy12MTIudHRmXCIpO1xuICBcdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtSXRhbGljLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufSAqL1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtUmVndWxhclwiO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIFx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1SZWd1bGFyLndvZmY/I2llZml4XCIpIGZvcm1hdChcIndvZmZcIik7XG59IiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qY3VzdG9tIF92YXIqL1xuLyogQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBcIlBvbGl0aWVTYW5zLUJsYWNrSXRhbGljXCI7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICBcdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtQmxhY2tJdGFsaWMtdjEyLnR0ZlwiKTtcbiAgXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJsYWNrSXRhbGljLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtQmxhY2tcIjtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtQmxhY2stdjEyLnR0ZlwiKTtcbiAgXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJsYWNrLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvbGl0aWVTYW5zLUJvbGRJdGFsaWNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBzcmM6IHVybChcIlBvbGl0aWVTYW5zLUJvbGRJdGFsaWMud29mZj8jaWVmaXhcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG4vKiBAZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtQm9sZFwiO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1Cb2xkLXYxMi50dGZcIik7XG4gIFx0c3JjOiB1cmwoXCJQb2xpdGllU2Fucy1Cb2xkLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtSXRhbGljXCI7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcbiAgXHRzcmM6IHVybChcIlBvbGl0aWVTYW5zLUl0YWxpYy12MTIudHRmXCIpO1xuICBcdHNyYzogdXJsKFwiUG9saXRpZVNhbnMtSXRhbGljLXYxMi50dGY/I2llZml4XCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBvbGl0aWVTYW5zLVJlZ3VsYXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IHVybChcIlBvbGl0aWVTYW5zLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBzcmM6IHVybChcIlBvbGl0aWVTYW5zLVJlZ3VsYXIud29mZj8jaWVmaXhcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuI2RldmVsb3BlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDBweDsgfVxuXG4uc3Bpbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDEwMHB4IGF1dG87XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stcm90YXRlIDIuMHMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNrLXJvdGF0ZSAyLjBzIGluZmluaXRlIGxpbmVhcjtcbiAgdG9wOiAyNSU7XG4gIGxlZnQ6IDQyJTtcbiAgbWFyZ2luLXJpZ2h0OiAtNTAlOyB9XG5cbi5kb3QxLCAuZG90MiB7XG4gIHdpZHRoOiA2MCU7XG4gIGhlaWdodDogNjAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZmNzNkO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc2stYm91bmNlIDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogc2stYm91bmNlIDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7IH1cblxuLmRvdDIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjBzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1yb3RhdGUge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLXJvdGF0ZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWJvdW5jZSB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNrLWJvdW5jZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuI2J1dHRvbnMtaGVscGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByaWdodDogMHB4O1xuICAvKiBib3R0b206IDBweDsgKi9cbiAgLyogbGVmdDogNTAlO1xuICAgIG1hcmdpbi1yaWdodDogLTUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgKi9cbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC8qIENocm9tZSwgU2FmYXJpICovXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIEZpcmVmb3ggKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogOTk5OTsgfVxuICAjYnV0dG9ucy1oZWxwZXIgLmZ1bGxlci1idXR0b24ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAxLjJlbSA1ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMzVlbTtcbiAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcywgYm94LXNoYWRvdyAwLjNzLCBjb2xvciAwLjNzO1xuICAgIG1hcmdpbjogMWVtO1xuICAgIHJpZ2h0OiAtMjAwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgI2J1dHRvbnMtaGVscGVyIC5mdWxsZXItYnV0dG9uLmJsdWUge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFlbSByZ2JhKDAsIDE3MCwgMTcwLCAwLjUpLCAwIDAgMWVtIHJnYmEoMCwgMTcwLCAxNzAsIDAuNSk7XG4gICAgICBib3JkZXI6ICNlNmY3M2Qgc29saWQgMnB4OyB9XG4gICAgI2J1dHRvbnMtaGVscGVyIC5mdWxsZXItYnV0dG9uLmJsdWU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZjczZDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIHJnYmEoMCwgMTcwLCAxNzAsIDAuNSksIDAgMCAxLjVlbSByZ2JhKDAsIDE3MCwgMTcwLCAwLjcpOyB9XG4gICAgI2J1dHRvbnMtaGVscGVyIC5mdWxsZXItYnV0dG9uLnJlZCB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMWVtIHJnYmEoMjUxLCA4MSwgODEsIDAuNCksIDAgMCAxZW0gcmdiYSgyNTEsIDgxLCA4MSwgMC40KTtcbiAgICAgIGJvcmRlcjogI2ZiNTQ1NCBzb2xpZCAycHg7IH1cbiAgICAjYnV0dG9ucy1oZWxwZXIgLmZ1bGxlci1idXR0b24ucmVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYjU0NTQ7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDI1MSwgODEsIDgxLCAwLjQpLCAwIDAgMS41ZW0gcmdiYSgyNTEsIDgxLCA4MSwgMC42KTsgfVxuICAgICNidXR0b25zLWhlbHBlciAuZnVsbGVyLWJ1dHRvbi53aGl0ZSB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMC44ZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpLCAwIDAgMC44ZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgYm9yZGVyOiAjZmZmIHNvbGlkIDJweDsgfVxuICAgICNidXR0b25zLWhlbHBlciAuZnVsbGVyLWJ1dHRvbi53aGl0ZTpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSwgMCAwIDEuMmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAjYnV0dG9ucy1oZWxwZXIgLnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIGxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTUlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgbWFyZ2luOiAwIDFlbTsgfVxuICAjYnV0dG9ucy1oZWxwZXIgLnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgI2J1dHRvbnMtaGVscGVyIC5wdXJlLWZvcm0gLnB1cmUtY29udHJvbC1ncm91cCBpbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlOyB9XG4gICNidXR0b25zLWhlbHBlciAucHVyZS1mb3JtIC5wdXJlLWNvbnRyb2wtZ3JvdXAgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgaGVpZ2h0OiA4ZW07XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgI2J1dHRvbnMtaGVscGVyIC5wdXJlLWZvcm0gLnB1cmUtY29udHJvbC1ncm91cCB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB3aGl0ZTsgfVxuICAjYnV0dG9ucy1oZWxwZXIgLnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdOmZvY3VzOmludmFsaWQge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICNidXR0b25zLWhlbHBlciAucHVyZS1mb3JtIC5wdXJlLWNvbnRyb2wtZ3JvdXAgaW5wdXRbdHlwZT1lbWFpbF06aW52YWxpZCB7XG4gICAgY29sb3I6ICNmYjU0NTQ7IH1cbiAgI2J1dHRvbnMtaGVscGVyIC5wdXJlLWZvcm0gYnV0dG9uIHtcbiAgICBtYXJnaW46IDAuNWVtIDFlbTsgfVxuXG5ib2R5ICNiYW5uZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiA2MDBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGJvZHkgI2Jhbm5lciAjY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8qIENVU1RPTSBDU1MgKi8gfVxuICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuYm90dG9tLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjMGUwZTBlLCAjMDAxNDI2KTtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICBib2R5ICNiYW5uZXIgI2NvbnRlbnQgLnRvcC1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbGV4LWJhc2lzOiA2MCU7IH1cbiAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAudG9wLWNvbnRhaW5lciAuZ3JhZGllbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIGJsYWNrIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSksIGNvbG9yLXN0b3AoMTAwJSwgYmxhY2spKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCBibGFjayAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgYmxhY2sgMTAwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCBibGFjayAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgYmxhY2sgMTAwJSk7IH1cbiAgICBib2R5ICNiYW5uZXIgI2NvbnRlbnQgI2JhY2tncm91bmQtaW1nIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIkRlZmF1bHQucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyOyB9XG4gICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5oZWFkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0b3A6IDAlO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBib2R5ICNiYW5uZXIgI2NvbnRlbnQgLmNvbnRlbnQtd3JhcHBlciAuaGVhZCAubG9nbyB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxNDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5oZWFkIC5sb2dvIHN2ZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTQ1cHg7IH1cbiAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5ib2R5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICBib2R5ICNiYW5uZXIgI2NvbnRlbnQgLmNvbnRlbnQtd3JhcHBlciAuYm9keSAucGVyc29uIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYm90dG9tOiAzNXB4O1xuICAgICAgICAgIC8qIHdpZHRoOiAxMDAlOyAqL1xuICAgICAgICAgIC8qIGRpc3BsYXk6IGZsZXg7ICovXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAvKiBkaXNwbGF5OiBibG9jazsgKi9cbiAgICAgICAgICByaWdodDogLTMwNXB4O1xuICAgICAgICAgIC8qICAgb3BhY2l0eTogMDsgKi8gfVxuICAgICAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5ib2R5IC5wZXJzb24gaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAzODVweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogOTVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgLyogbWFyZ2luOiAwIGF1dG87ICovIH1cbiAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciB7XG4gICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRvcDogMTAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzFweDtcbiAgICAgICAgICBmb250LWZhbWlseTogJ1BvbGl0aWVTYW5zLUJvbGRJdGFsaWMnLCBTYW5zLVNlcmlmO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgLyogQ2hyb21lLCBTYWZhcmkgKi9cbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgIC8qIEZpcmVmb3ggKi9cbiAgICAgICAgICAvKiBvcGFjaXR5OiAwOyAqLyB9XG4gICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAueWVsbG93IHtcbiAgICAgICAgICAgIGNvbG9yOiAjZTZmNzNkOyB9XG4gICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAuc2xpZGUtb25lIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAuc2xpZGUtb25lIC50ZXh0LW9uZSB7XG4gICAgICAgICAgICAgIC8qIGRpc3BsYXk6IGJsb2NrOyAqL1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgIGxlZnQ6IC01NTBweDtcbiAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggNXB4ICMwMDAwMDA7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUG9saXRpZVNhbnMtQm9sZEl0YWxpYycsIFNhbnMtU2VyaWY7IH1cbiAgICAgICAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5ib2R5IC50ZXh0LXdyYXBwZXIgLnNsaWRlLW9uZSAudGV4dC10d28ge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgIHJpZ2h0OiAtNTUwcHg7XG4gICAgICAgICAgICAgIHRleHQtc2hhZG93OiAycHggMnB4IDVweCAjMDAwMDAwO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BvbGl0aWVTYW5zLUJvbGRJdGFsaWMnLCBTYW5zLVNlcmlmOyB9XG4gICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAuc2xpZGUtdHdvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdG9wOiAwJTsgfVxuICAgICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAuc2xpZGUtdHdvIC50ZXh0LW9uZSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgLyogZGlzcGxheTogYmxvY2s7ICovXG4gICAgICAgICAgICAgIGxlZnQ6IDU1MHB4O1xuICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCA1cHggIzAwMDAwMDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQb2xpdGllU2Fucy1Cb2xkSXRhbGljJywgU2Fucy1TZXJpZjsgfVxuICAgICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLnRleHQtd3JhcHBlciAuc2xpZGUtdHdvIC50ZXh0LXR3byB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDU1MHB4O1xuICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCA1cHggIzAwMDAwMDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQb2xpdGllU2Fucy1Cb2xkSXRhbGljJywgU2Fucy1TZXJpZjsgfVxuICAgICAgICBib2R5ICNiYW5uZXIgI2NvbnRlbnQgLmNvbnRlbnQtd3JhcHBlciAuYm9keSAuYnV0dG9uIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICB0b3A6IDYwJTtcbiAgICAgICAgICB6LWluZGV4OiAxMTtcbiAgICAgICAgICBib3JkZXI6IDEuM3B4IHNvbGlkICNlNmY3M2Q7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDdweCAxMHB4IDVweCAxMHB4O1xuICAgICAgICAgIGNvbG9yOiAjZTZmNzNkO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmJvZHkgLmJ1dHRvbiAuY3RhIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJQb2xpdGllU2Fucy1SZWd1bGFyXCIsIFNhbnMtU2VyaWY7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgIC8qIENocm9tZSwgU2FmYXJpICovXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICB0b3A6IDBweDsgfVxuICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmZvb3RlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXIgLmZvb3RlciAudGV4dC13cmFwcGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGJvdHRvbTogMzBweDsgfVxuICAgICAgICAgIGJvZHkgI2Jhbm5lciAjY29udGVudCAuY29udGVudC13cmFwcGVyIC5mb290ZXIgLnRleHQtd3JhcHBlciAudGV4dCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtUmVndWxhclwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgIC8qIENocm9tZSwgU2FmYXJpICovXG4gICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgLyogRmlyZWZveCAqLyB9XG4gICAgYm9keSAjYmFubmVyICNjb250ZW50IC5jb250ZW50LXdyYXBwZXI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgdG9wOiAwcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuIiwiXG4vLyBBZGQgSW1wb3J0c1xuQGltcG9ydCAnMzAweDYwMCc7XG5AaW1wb3J0ICd2YXInO1xuQGltcG9ydCAnbm9ybWFsaXplJztcblxuI2RldmVsb3BlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDBweDtcbn1cblxuLnNwaW5uZXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAxMDBweCBhdXRvO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQtd2Via2l0LWFuaW1hdGlvbjogc2stcm90YXRlIDIuMHMgaW5maW5pdGUgbGluZWFyO1xuXHRhbmltYXRpb246IHNrLXJvdGF0ZSAyLjBzIGluZmluaXRlIGxpbmVhcjtcblx0dG9wOiAkc3Bpbm5lcnRvcDtcbiAgICBsZWZ0OiAkc3Bpbm5lcmxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTAlO1xufVxuXG4uZG90MSwgLmRvdDIge1xuXHR3aWR0aDogNjAlO1xuXHRoZWlnaHQ6IDYwJTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1haXJlX2NvbG9yO1xuXG5cdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cblx0LXdlYmtpdC1hbmltYXRpb246IHNrLWJvdW5jZSAyLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXHRhbmltYXRpb246IHNrLWJvdW5jZSAyLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xufVxuXG4uZG90MiB7XG5cdHRvcDogYXV0bztcblx0Ym90dG9tOiAwO1xuXHQtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG5cdGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1yb3RhdGUgeyBcblx0MTAwJSB7IFxuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXJvdGF0ZSB7IFxuXHQxMDAlIHsgXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgXG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIFxuXHR9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1ib3VuY2Uge1xuXHQwJSwgMTAwJSB7IFxuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjApIFxuXHR9XG5cdDUwJSB7IFxuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjApIFxuXHR9XG59XG5cbkBrZXlmcmFtZXMgc2stYm91bmNlIHtcblx0MCUsIDEwMCUgeyBcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuMCk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMCk7XG5cdH0gXG5cdDUwJSB7IFxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4wKTsgXG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMCk7XG5cdH1cbn1cblxuI2J1dHRvbnMtaGVscGVyIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcmlnaHQ6IDBweDtcbiAgICAvKiBib3R0b206IDBweDsgKi9cbiAgICAvKiBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyAqL1xuXHRmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8qIENocm9tZSwgU2FmYXJpICovXG4gIFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogRmlyZWZveCAqL1xuICAgXHRkaXNwbGF5OiBub25lO1xuICAgXHRcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIFxuXHQuZnVsbGVyLWJ1dHRvbiB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwxKTtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0cGFkZGluZzogMS4yZW0gNWVtO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjM1ZW07XG5cdFx0Zm9udC1zaXplOiAwLjdlbTtcblx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGJveC1zaGFkb3cgMC4zcywgY29sb3IgMC4zcztcblx0XHRtYXJnaW46IDFlbTtcblx0XHRcblx0XHRyaWdodDogLTIwMHB4O1xuICAgIFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCYuYmx1ZSB7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMWVtIHJnYmEoMCwxNzAsMTcwLDAuNSksIDAgMCAxZW0gcmdiYSgwLDE3MCwxNzAsMC41KTtcblx0XHRcdGJvcmRlcjogJHByaW1haXJlX2NvbG9yIHNvbGlkIDJweDtcblx0XHR9XG5cdFx0XG5cdFx0Ji5ibHVlOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYWlyZV9jb2xvcjtcblx0XHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIHJnYmEoMCwxNzAsMTcwLDAuNSksIDAgMCAxLjVlbSByZ2JhKDAsMTcwLDE3MCwwLjcpO1xuXHRcdH1cblx0XHRcblx0XHQmLnJlZCB7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMWVtIHJnYmEoMjUxLDgxLDgxLDAuNCksIDAgMCAxZW0gcmdiYSgyNTEsODEsODEsMC40KTtcblx0XHRcdGJvcmRlcjogI2ZiNTQ1NCBzb2xpZCAycHg7XG5cdFx0fVxuXHRcdFxuXHRcdCYucmVkOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmYjU0NTQ7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDI1MSw4MSw4MSwwLjQpLCAwIDAgMS41ZW0gcmdiYSgyNTEsODEsODEsMC42KTtcblx0XHR9XG5cdFx0XG5cdFx0Ji53aGl0ZSB7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIDAgMC44ZW0gcmdiYSgyNTUsMjU1LDI1NSwwLjMpLCAwIDAgMC44ZW0gcmdiYSgyNTUsMjU1LDI1NSwwLjMpO1xuXHRcdFx0Ym9yZGVyOiAjZmZmIHNvbGlkIDJweDtcblx0XHR9XG5cdFx0XG5cdFx0Ji53aGl0ZTpob3ZlciB7XG5cdFx0XHRjb2xvcjogcmdiYSgwLDAsMCwwLjgpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSwgMCAwIDEuMmVtIHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcblx0XHR9XG5cdH1cblxuXHQucHVyZS1mb3JtIC5wdXJlLWNvbnRyb2wtZ3JvdXAgbGFiZWwge1xuXHQgIHRleHQtYWxpZ246IGxlZnQ7XG5cdCAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgIGxlZnQ6IDA7XG5cdCAgdG9wOiAxNSU7XG5cdCAgei1pbmRleDogMDtcblx0ICBsZXR0ZXItc3BhY2luZzogMDtcblx0ICBtYXJnaW46IDAgMWVtOyB9XG5cblx0LnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIGlucHV0IHtcblx0ICBiYWNrZ3JvdW5kOiBub25lO1xuXHQgIGJveC1zaGFkb3c6IG5vbmU7XG5cdCAgcGFkZGluZy1sZWZ0OiAwO1xuXHQgIGJvcmRlci1yYWRpdXM6IDA7XG5cdCAgYm9yZGVyOiBub25lO1xuXHQgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIHotaW5kZXg6IDE7XG5cdCAgY29sb3I6ICNmZmY7IFxuXHR9XG5cdC5wdXJlLWZvcm0gLnB1cmUtY29udHJvbC1ncm91cCBpbnB1dDpmb2N1cyB7XG5cdCAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7IFxuXHR9XG5cblx0LnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIHRleHRhcmVhIHtcblx0ICBiYWNrZ3JvdW5kOiBub25lO1xuXHQgIGJveC1zaGFkb3c6IG5vbmU7XG5cdCAgYm9yZGVyLXJhZGl1czogMDtcblx0ICBib3JkZXI6IG5vbmU7XG5cdCAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG5cdCAgcmVzaXplOiBub25lO1xuXHQgIGhlaWdodDogOGVtO1xuXHQgIGNvbG9yOiAjZmZmOyBcblx0fVxuXHQucHVyZS1mb3JtIC5wdXJlLWNvbnRyb2wtZ3JvdXAgdGV4dGFyZWE6Zm9jdXMge1xuXHQgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB3aGl0ZTsgXG5cdH1cblxuXHQucHVyZS1mb3JtIC5wdXJlLWNvbnRyb2wtZ3JvdXAgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6aW52YWxpZCB7XG5cdCAgY29sb3I6ICNmZmY7IFxuXHR9XG5cblx0LnB1cmUtZm9ybSAucHVyZS1jb250cm9sLWdyb3VwIGlucHV0W3R5cGU9ZW1haWxdOmludmFsaWQge1xuXHQgIGNvbG9yOiAjZmI1NDU0OyBcblx0fVxuXG5cdC5wdXJlLWZvcm0gYnV0dG9uIHtcblx0ICBtYXJnaW46IDAuNWVtIDFlbTsgXG5cdH1cbn1cblxuYm9keSB7XG5cdCNiYW5uZXIge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiAkZm9ybVc7XG5cdFx0aGVpZ2h0OiAkZm9ybUg7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdFx0I2NvbnRlbnQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHQvKiBDVVNUT00gQ1NTICovXG5cdFx0XHQuYm90dG9tLWNvbnRhaW5lciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0ICAgIGZsZXgtYmFzaXM6IDQwJTtcblx0XHRcdCAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzBlMGUwZSwgIzAwMTQyNik7XG5cdFx0XHQgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdCAgICB6LWluZGV4OiAxO1xuXHRcdFx0fVxuXHRcdFx0LnRvcC1jb250YWluZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICBmbGV4LWJhc2lzOiA2MCU7XG5cdFx0XHQgICAgLmdyYWRpZW50IHtcblx0XHRcdCAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdCAgICBcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ICAgIFx0aGVpZ2h0OiA3MHB4O1xuICAgIFx0XHRcdFx0Ym90dG9tOiAwcHg7XG5cdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDApO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLDAsMCwxKSkpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwKSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDApIDAlLCByZ2JhKDAsMCwwLDEpIDEwMCUpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDApIDAlLCByZ2JhKDAsMCwwLDEpIDEwMCUpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LDI1NSwyNTUsMCkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7XG5cdFx0XHQgICAgfVxuXHRcdFx0fVxuXHRcdFx0I2JhY2tncm91bmQtaW1nIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiRGVmYXVsdC5wbmdcIik7XG5cdFx0XHQgICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdCAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGluaGVyaXQ7XG5cdFx0XHQgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHQuY29udGVudC13cmFwcGVyIHtcblx0XHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHRcdCAgICBoZWlnaHQ6IDEwMCU7XG5cdFx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdC5oZWFkIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdCAgICB6LWluZGV4OiAxO1xuXHRcdFx0XHQgICAgdG9wOiAwJTtcblx0XHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdC5sb2dvIHtcblx0XHRcdFx0XHQgICAgaGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdCAgICB3aWR0aDogJGhlYWRsb2dvd2lkdGg7XG5cdFx0XHRcdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdCAgICBtYXJnaW46IDAgYXV0bztcblxuXHRcdFx0XHRcdCAgICBzdmcge1xuXHRcdFx0XHRcdCAgICBcdGhlaWdodDogJGhlYWRsb2dvc3ZnaGVpZ2h0O1xuXHRcdFx0XHRcdCAgICBcdHdpZHRoOiAkaGVhZGxvZ29zdmd3aWR0aDtcblx0XHRcdFx0XHQgICAgfVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuYm9keSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0LnBlcnNvbiB7XG5cdFx0XHRcdCAgICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHQgICAgYm90dG9tOiAzNXB4O1xuXHRcdFx0XHRcdCAgICAvKiB3aWR0aDogMTAwJTsgKi9cblx0XHRcdFx0XHQgICAgLyogZGlzcGxheTogZmxleDsgKi9cblx0XHRcdFx0XHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRcdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0XHQvKiBkaXNwbGF5OiBibG9jazsgKi9cblx0XHRcdFx0XHQgICAgcmlnaHQ6IC0zMDVweDtcblxuXHRcdFx0XHRcdCAgLyogICBvcGFjaXR5OiAwOyAqL1xuXHRcdFx0XHRcdCAgICBpbWcge1xuXHRcdFx0XHRcdCAgICBcdHdpZHRoOiAkYm9keXBlcnNvbmltZztcblx0XHRcdFx0XHRcdCAgICBoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdFx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFx0XHRcdFx0XHRcdHRvcDogOTVweDtcbiAgICBcdFx0XHRcdFx0XHRyaWdodDogMzhweDtcblx0XHRcdFx0XHRcdCAgICAvKiBtYXJnaW46IDAgYXV0bzsgKi9cblx0XHRcdFx0XHQgICAgfVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQudGV4dC13cmFwcGVyIHtcblx0XHRcdFx0XHRcdHotaW5kZXg6IDEwO1xuXHRcdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdCAgICB0b3A6ICRib2R5dGV4dC13cmFwcGVydG9wO1xuXHRcdFx0XHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHRcdFx0XHQgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdCAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdCAgICBmb250LXNpemU6ICRib2R5dGV4dC13cmFwcGVyZm9udC1zaXplO1xuXHRcdFx0XHRcdCAgICBmb250LWZhbWlseTogJ1BvbGl0aWVTYW5zLUJvbGRJdGFsaWMnLCBTYW5zLVNlcmlmO1xuXHRcdFx0XHRcdCAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0XHRcdCAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLyogQ2hyb21lLCBTYWZhcmkgKi9cbiAgXHRcdFx0XHRcdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogRmlyZWZveCAqL1xuXHRcdFx0XHRcdFx0Lyogb3BhY2l0eTogMDsgKi9cblx0XHRcdFx0XHQgICAgLnllbGxvdyB7XG5cdFx0XHRcdFx0ICAgIFx0Y29sb3I6ICNlNmY3M2Q7XG5cdFx0XHRcdFx0ICAgIH1cblx0XHRcdFx0XHRcdC5zbGlkZS1vbmUge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdC50ZXh0LW9uZSB7XG5cdFx0XHRcdFx0XHRcdFx0LyogZGlzcGxheTogYmxvY2s7ICovXG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgXHRcdFx0XHRcdFx0dG9wOiA1cHg7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDogLTU1MHB4O1xuXHRcdFx0XHRcdFx0XHRcdHRleHQtc2hhZG93OiAycHggMnB4IDVweCAjMDAwMDAwO1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnUG9saXRpZVNhbnMtQm9sZEl0YWxpYycsIFNhbnMtU2VyaWY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0LnRleHQtdHdvIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGU7XG5cdCAgICBcdFx0XHRcdFx0XHR0b3A6IDBweDtcblx0ICAgIFx0XHRcdFx0XHRcdHJpZ2h0OiAtNTUwcHg7XG5cdCAgICBcdFx0XHRcdFx0XHR0ZXh0LXNoYWRvdzogMnB4IDJweCA1cHggIzAwMDAwMDtcblx0ICAgIFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnUG9saXRpZVNhbnMtQm9sZEl0YWxpYycsIFNhbnMtU2VyaWY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5zbGlkZS10d28ge1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHQgICAgdG9wOiAwJTtcblx0XHRcdFx0XHRcdFx0LnRleHQtb25lIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCAgICBcdFx0XHRcdFx0XHR0b3A6IDVweDtcblx0XHRcdFx0XHRcdFx0XHQvKiBkaXNwbGF5OiBibG9jazsgKi9cblx0XHRcdFx0XHRcdFx0XHRsZWZ0OiA1NTBweDtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXNoYWRvdzogMnB4IDJweCA1cHggIzAwMDAwMDtcblx0XHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJ1BvbGl0aWVTYW5zLUJvbGRJdGFsaWMnLCBTYW5zLVNlcmlmO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdC50ZXh0LXR3byB7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0XHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQgICAgXHRcdFx0XHRcdFx0dG9wOiAwcHg7XG5cdCAgICBcdFx0XHRcdFx0XHRyaWdodDogNTUwcHg7XG5cdCAgICBcdFx0XHRcdFx0XHR0ZXh0LXNoYWRvdzogMnB4IDJweCA1cHggIzAwMDAwMDtcblx0ICAgIFx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnUG9saXRpZVNhbnMtQm9sZEl0YWxpYycsIFNhbnMtU2VyaWY7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmJ1dHRvbiB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHRcdFx0ICAgIG1hcmdpbi1yaWdodDogLTUwJTtcblx0XHRcdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHRcdFx0ICAgIHRvcDogJGJ1dHRvbmN0YXRvcDtcblx0XHRcdFx0XHQgICAgei1pbmRleDogMTE7XG5cdFx0XHRcdFx0ICAgIGJvcmRlcjogMS4zcHggc29saWQgI2U2ZjczZDtcblx0XHRcdFx0ICAgIFx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRcdFx0XHQgICAgXHRwYWRkaW5nOiA3cHggMTBweCA1cHggMTBweDtcblx0XHRcdFx0ICAgIFx0Y29sb3I6ICNlNmY3M2Q7XG5cdFx0XHRcdCAgIFx0XHRtYXJnaW46IDAgYXV0bztcblx0ICAgIFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0ICAgIC5jdGEge1xuXHRcdFx0XHRcdCAgICBcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0ICAgIFx0Zm9udC1mYW1pbHk6IFwiUG9saXRpZVNhbnMtUmVndWxhclwiLCBTYW5zLVNlcmlmO1xuXHRcdFx0XHRcdCAgICBcdGZvbnQtc2l6ZTogJGJ1dHRvbmN0YWZvbnQtc2l6ZTtcblx0XHRcdFx0XHQgICAgXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLyogQ2hyb21lLCBTYWZhcmkgKi9cbiAgXHRcdFx0XHRcdFx0XHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvKiBGaXJlZm94ICovXG4gIFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0XHRcdFx0XHR0b3A6IDBweDtcblx0XHRcdFx0XHQgICAgfVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuZm9vdGVyIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdCAgICBib3R0b206IDBweDtcblx0XHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdFx0XHQgICAgaGVpZ2h0OiAkZm9vdGVyaGVpZ2h0O1xuXHRcdFx0XHQgICAgZGlzcGxheTogZmxleDtcblx0XHRcdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdFx0XHQgICAgY29sb3I6IHdoaXRlO1xuXHRcdFxuXHRcdFx0XHRcdC50ZXh0LXdyYXBwZXIge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdCAgICBcdFx0XHRcdGJvdHRvbTogJGZvb3RlcnRleHQtd3JhcHBlcmJvdHRvbTtcblx0XHRcdFx0XHRcdC50ZXh0IHtcblx0XHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogXCJQb2xpdGllU2Fucy1SZWd1bGFyXCI7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogJGZvb3RlcnRleHQtd3JhcHBlcnRleHRmb250LXNpemU7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLyogQ2hyb21lLCBTYWZhcmkgKi9cbiAgXHRcdFx0XHRcdFx0XHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvKiBGaXJlZm94ICovXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuY29udGVudC13cmFwcGVyOmJlZm9yZXtcblx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdGxlZnQ6IDBweDtcblx0XHRcdFx0dG9wOiAwcHg7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XHRcbn1cbiIsIlxuJGZvcm1XOiAzMDBweDtcbiRmb3JtSDogNjAwcHg7XG5cbiRmb290ZXJoZWlnaHQ6IDU1cHg7XG4kZm9vdGVydGV4dC13cmFwcGVyYm90dG9tOiAzMHB4O1xuJGZvb3RlcnRleHQtd3JhcHBlcnRleHRmb250LXNpemU6IDEwcHg7XG5cbiRidXR0b25jdGFmb250LXNpemU6IDE2cHg7XG4kYnV0dG9uY3RhdG9wOiA2MCU7XG5cbiRib2R5dGV4dC13cmFwcGVyZm9udC1zaXplOiAzMXB4O1xuJGJvZHl0ZXh0LXdyYXBwZXJ0b3A6IDEwJTtcblxuJGhlYWRsb2dvd2lkdGg6IDE0NXB4O1xuJGhlYWRsb2dvc3ZnaGVpZ2h0OiA2MHB4O1xuJGhlYWRsb2dvc3Znd2lkdGg6IDE0NXB4O1xuXG4kYm9keXBlcnNvbmltZzogMzg1cHg7XG5cbiRzcGlubmVydG9wOiAyNSU7XG4kc3Bpbm5lcmxlZnQ6IDQyJTsiXX0= */