@charset "UTF-8";
/*!
	Theme Name: Productive Flourishing Theme
  Theme URI: https://thebrandid.com
	Description: Custom Genesis Theme by brandiD
	Author: The brandiD
	Author URI: https://thebrandid.com

	Version: 1.1.9

	Tags: black, red, white, one-column, two-columns, three-columns, left-sidebar, right-sidebar, responsive-layout, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready

	Template: genesis

	License: GPL-2.0+
	License URI: http://www.gnu.org/licenses/gpl-2.0.html

	Text Domain: genesis-starter-brandid
*/
html {
  box-sizing: border-box;
}

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

/* # HTML5 Reset
---------------------------------------------------------------------------------------------------- */
/* ## Baseline Normalize
--------------------------------------------- */
/* normalize.css v4.1.1 | MIT License | http://necolas.github.io/normalize.css/ */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
}

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

progress {
  vertical-align: baseline;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

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

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

b, strong {
  font-weight: inherit;
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

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

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

img {
  border-style: none;
}

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

code, kbd, pre, samp {
  font-family: monospace,monospace;
  font-size: 1em;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

button, input, optgroup, select, textarea {
  font: inherit;
  margin: 0;
}

optgroup {
  font-weight: 700;
}

button, input {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

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

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

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em;
}

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

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

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

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

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

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

html, input[type=search] {
  box-sizing: border-box;
}

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

.author-box:before, .clearfix:before, .entry-content:before, .entry:before, .footer-widgets:before, .nav-primary:before, .nav-secondary:before, .pagination:before, .site-container:before, .site-footer:before, .site-header:before, .site-inner:before, .widget:before, .wrap:before {
  content: " ";
  display: table;
}

.author-box:after, .clearfix:after, .entry-content:after, .entry:after, .footer-widgets:after, .nav-primary:after, .nav-secondary:after, .pagination:after, .site-container:after, .site-footer:after, .site-header:after, .site-inner:after, .widget:after, .wrap:after {
  clear: both;
  content: " ";
  display: table;
}

/* # Defaults
---------------------------------------------------------------------------------------------------- */
/* ## Typographical Elements
--------------------------------------------- */
html {
  font-size: 62.5%;
  /* 10px browser default */
}

/* Chrome fix */
body > div {
  font-size: 16px;
  font-size: 1.6rem;
}

body {
  background-color: #fff;
  color: #222;
  font-family: "PT Serif", "Georiga", "Times Roman", serif;
  font-size: 16px;
  font-size: 1.6rem;
  -webkit-font-smoothing: antialiased;
  font-weight: 400;
  line-height: 1.625;
  margin: 0;
}

.button,
.gallery img,
a,
button,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus {
  transition: all .2s ease-in-out;
}

a {
  color: #1abeed;
  text-decoration: none;
  border-bottom: 1px solid #1abeed;
}

a:focus,
a:hover {
  color: #222;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

p {
  margin: 0 0 28px;
  padding: 0;
}

ol,
ul {
  margin: 0;
  padding: 0;
}

li {
  list-style-type: none;
}

hr {
  border: 0;
  border-collapse: collapse;
  border-top: 1px solid #fff;
  clear: both;
  margin: 1em 0;
}

b,
strong {
  font-weight: 700;
}

blockquote,
cite,
em,
i {
  font-style: italic;
}

mark {
  background: #fff;
  color: #000;
}

blockquote {
  margin: 40px;
}

blockquote::before {
  content: "\201C";
  display: block;
  font-size: 30px;
  font-size: 3rem;
  height: 0;
  left: -20px;
  position: relative;
  top: -10px;
}

/* ## Headings
--------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.25;
  margin: 0 0 24px;
}

h1 {
  font-size: 36px;
  font-size: 3.6rem;
}

h2 {
  font-size: 30px;
  font-size: 3rem;
}

h3 {
  font-size: 24px;
  font-size: 2.4rem;
}

h4 {
  font-size: 20px;
  font-size: 2rem;
}

h5 {
  font-size: 18px;
  font-size: 1.8rem;
}

h6 {
  font-size: 16px;
  font-size: 1.6rem;
}

/* SVG Icons base styles */
.icon {
  display: inline-block;
  fill: currentColor;
  height: 1em;
  position: relative;
  /* Align more nicely with capital letters */
  top: -0.0625em;
  vertical-align: middle;
  width: 1em;
}

/* ## Objects
--------------------------------------------- */
.wp-caption,
embed,
iframe,
img,
object,
video {
  max-width: 100%;
}

img {
  height: auto;
}

figure {
  margin: 0;
}

/* ## Gallery
--------------------------------------------- */
.gallery {
  overflow: hidden;
}

.gallery-item {
  float: left;
  margin: 0 0 28px;
  text-align: center;
}

.gallery-columns-1 .gallery-item {
  width: 100%;
}

.gallery-columns-2 .gallery-item {
  width: 50%;
}

.gallery-columns-3 .gallery-item {
  width: 33%;
}

.gallery-columns-4 .gallery-item {
  width: 25%;
}

.gallery-columns-5 .gallery-item {
  width: 20%;
}

.gallery-columns-6 .gallery-item {
  width: 16.6666%;
}

.gallery-columns-7 .gallery-item {
  width: 14.2857%;
}

.gallery-columns-8 .gallery-item {
  width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  width: 11.1111%;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
  clear: left;
}

.gallery img {
  border: 1px solid #fff;
  height: auto;
  padding: 4px;
}

.gallery img:focus,
.gallery img:hover {
  border: 1px solid #999;
}

/* ## Forms
--------------------------------------------- */
input,
select,
textarea {
  background-color: #fff;
  border: 1px solid #fff;
  color: #222;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 400;
  padding: 16px;
  width: 100%;
}

input:focus,
textarea:focus {
  border: 1px solid #999;
  outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
  width: auto;
}

::-moz-placeholder {
  color: #222;
  opacity: 1;
}

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

.button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  background-color: #1abeed;
  border: 0;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 16px 24px;
  text-decoration: none;
  white-space: normal;
  width: auto;
  fill: #fff;
}

.button:focus,
.button:hover,
button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover {
  background-color: #222;
  color: #fff;
}

.entry-content .button:focus,
.entry-content .button:hover {
  color: #fff;
}

.button {
  display: inline-block;
}

a.button:focus,
a.button:hover {
  border-bottom: none;
}

a.button.small,
button.small,
input[type="button"].small,
input[type="reset"].small,
input[type="submit"].small {
  padding: 8px 16px;
}

.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover {
  background-color: #fff;
  border-width: 0;
  color: #777;
  cursor: not-allowed;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
  display: none;
}

/* ## Tables
--------------------------------------------- */
table {
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 2;
  margin-bottom: 40px;
  width: 100%;
  word-break: break-all;
}

tbody {
  border-bottom: 1px solid #fff;
}

td,
th {
  text-align: left;
}

td {
  border-top: 1px solid #fff;
  padding: 6px;
}

th {
  font-weight: 400;
  padding: 0 6px;
}

td:first-child,
th:first-child {
  padding-left: 0;
}

/*
Accessibility Support
---------------------------------------------------------------------------------------------------- */
/* ## Screen Reader Text
--------------------------------------------- */
.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.genesis-nav-menu .search input[type="submit"]:focus,
.screen-reader-shortcut:focus,
.screen-reader-text:focus,
.widget_search input[type="submit"]:focus {
  background: #fff;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #222;
  display: block;
  font-size: 1em;
  font-weight: bold;
  height: auto;
  padding: 15px 23px 14px;
  text-decoration: none;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

.more-link {
  position: relative;
}

/* # Skip Links
---------------------------------------------------------------------------------------------------- */
.genesis-skip-link {
  margin: 0;
}

.genesis-skip-link li {
  height: 0;
  list-style: none;
  width: 0;
}

:focus {
  color: #1c1c1c;
  outline: #a1a1a1 dotted thin;
}

/* # Structure and Layout
---------------------------------------------------------------------------------------------------- */
/* ## Site Containers
--------------------------------------------- */
.site-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  min-height: 100vh;
}

.admin-bar .site-container {
  min-height: calc(100vh - 46px);
}

.site-inner,
.wrap {
  margin: 0 auto;
  width: 100%;
}

.wrap {
  padding-left: 5%;
  padding-right: 5%;
}

.site-inner {
  padding-top: 4.5%;
}

.home .site-inner {
  clear: both;
  padding: 5% 0 0;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  word-wrap: break-word;
}

.home .site-inner {
  max-width: none;
}

.landing-page .site-inner {
  width: 800px;
}

/* ## Column Widths and Positions
--------------------------------------------- */
/* ### Wrapping div for .content and .sidebar-primary */
.content-sidebar-wrap {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

/* ### Content */
.content,
.sidebar-primary,
.sidebar-secondary {
  width: 100%;
  margin: 0 auto;
}

.content-sidebar .content {
  -ms-flex-order: 1;
      order: 1;
}

.content-sidebar .sidebar-primary {
  -ms-flex-order: 2;
      order: 2;
}

.sidebar-content .content {
  -ms-flex-order: 2;
      order: 2;
}

.sidebar-content .sidebar-primary {
  -ms-flex-order: 1;
      order: 1;
}

.full-width-content .content {
  width: 100%;
  max-width: 900px;
}

.home.full-width-content .content {
  max-width: 100%;
}

/* ### Primary Sidebar */
.content-sidebar-sidebar .content {
  -ms-flex-order: 1;
      order: 1;
}

.content-sidebar-sidebar .sidebar-primary {
  -ms-flex-order: 2;
      order: 2;
}

.content-sidebar-sidebar .sidebar-secondary {
  -ms-flex-order: 3;
      order: 3;
}

.sidebar-content-sidebar .content {
  -ms-flex-order: 2;
      order: 2;
}

.sidebar-content-sidebar .sidebar-primary {
  -ms-flex-order: 3;
      order: 3;
}

.sidebar-content-sidebar .sidebar-secondary {
  -ms-flex-order: 1;
      order: 1;
}

.sidebar-sidebar-content .content {
  -ms-flex-order: 3;
      order: 3;
}

.sidebar-sidebar-content .sidebar-primary {
  -ms-flex-order: 2;
      order: 2;
}

.sidebar-sidebar-content .sidebar-secondary {
  -ms-flex-order: 1;
      order: 1;
}

.content {
  padding-left: 20px;
  padding-right: 20px;
}

.home .content {
  padding-left: 0;
  padding-right: 0;
}

/* ## Column Classes
--------------------------------------------- */
/* Link: http://twitter.github.io/bootstrap/assets/css/bootstrap-responsive.css */

/* # Common Classes
---------------------------------------------------------------------------------------------------- */
/* ## Avatar
--------------------------------------------- */
.avatar {
  border-radius: 50%;
  float: left;
}

.alignleft img {
	margin-right: 24px;
}

.alignleft .avatar,
.author-box .avatar {
  margin-right: 24px;
}

.alignright .avatar {
  margin-left: 24px;
}

.comment .avatar {
  margin: 0 16px 24px 0;
}

/* ## Genesis
--------------------------------------------- */
.breadcrumb {
  background-color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1px;
  padding: 12px 30px;
}

.after-entry,
.archive-description,
.author-box {
  background-color: #fff;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 30px;
  margin-bottom: 5%;
}

.archive-description p:last-child,
.author-box p:last-child {
  margin-bottom: 0;
}

/* ## Search Form
--------------------------------------------- */
.site-header .search-form {
  float: none;
  margin: 16px auto;
}

.post-password-form input[type="submit"],
.search-form input[type="submit"] {
  margin-top: 10px;
}

.genesis-nav-menu .search input[type="submit"],
.widget_search input[type="submit"] {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  width: 1px;
}

.search-form {
  position: relative;
  border: 1px #1abeed solid;
}

.search-form .search-submit {
  bottom: 3px;
  padding: .5em 1em;
  position: absolute;
  right: 3px;
  top: 3px;
}

.search-form .search-submit .icon {
  height: 24px;
  top: -4px;
  width: 24px;
}

.search-form button {
  fill: #fff;
}

.search-form button:focus,
.search-form button:hover {
  fill: #fff;
}

/* #
/* ## Search Form
--------------------------------------------- */
.search-form {
  overflow: hidden;
}

.entry-content .search-form,
.site-header .search-form {
  margin-bottom: 40px;
  width: 50%;
}

.genesis-nav-menu .search input[type="submit"],
.widget_search input[type="submit"] {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  width: 1px;
}

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

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

/* Firefox 18- */
input:focus::-moz-placeholder {
  color: transparent;
}

/* Firefox 19+ */
input:focus:-ms-input-placeholder {
  color: transparent;
}

/* oldIE 😉 */
.widget_search .search-form {
  position: relative;
}

.widget_search .search-form input {
  padding: 10px;
  font-size: 14px;
  font-size: 1.4rem;
}

.widget_search .search-form input[type="submit"] {
  height: 20px;
  width: 20px;
  background-color: transparent;
}

.widget_search .search-form input[type="submit"]:hover {
  opacity: .5;
}

.widget_search .search-form input[type="submit"]:focus {
  padding: 0;
  width: 20px;
  height: 20px;
}

/* ## Titles
--------------------------------------------- */
.archive-description .entry-title,
.archive-title,
.author-box-title {
  font-size: 24px;
  font-size: 2.4rem;
}

.entry-title {
  font-size: 30px;
  font-size: 3rem;
}

.entry-title a,
.sidebar .widget-title a {
  color: #222;
  text-decoration: none;
}

.entry-title a:focus,
.entry-title a:hover {
  color: #1abeed;
}

.widget-title {
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 20px;
}

.sidebar .widget-title {
  font-size: 24px;
  font-size: 2.4rem;
}

/* ## WordPress
--------------------------------------------- */
a.aligncenter img {
  display: block;
  margin: 0 auto;
}

a.alignnone {
  display: inline-block;
}

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

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

a.alignleft,
a.alignnone,
a.alignright {
  max-width: 100%;
}

.aligncenter,
img.centered {
  display: block;
  margin: 0 auto 24px;
}

.alignnone,
img.alignnone {
  margin-bottom: 12px;
}

.wp-caption.alignleft,
a.alignleft,
img.alignleft {
  margin: 0 24px 24px 0;
}

.wp-caption.alignright,
a.alignright,
img.alignright {
  margin: 0 0 24px 24px;
}

.gallery-caption,
.wp-caption-text {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 600;
  margin: 0;
  text-align: center;
}

.entry-content p.wp-caption-text {
  margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
  margin: 0 0 28px;
}

/* # Widgets
---------------------------------------------------------------------------------------------------- */
.widget {
  margin-bottom: 40px;
  word-wrap: break-word;
}

.widget p:last-child,
.widget ul > li:last-of-type,
.widget-area .widget:last-of-type {
  margin-bottom: 0;
}

.widget ul > li {
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.widget ul > li:last-of-type {
  padding-bottom: 0;
}

.widget ol > li {
  list-style-position: inside;
  list-style-type: decimal;
  padding-left: 20px;
  text-indent: -20px;
}

.widget li li {
  border: 0;
  margin: 0 0 0 30px;
  padding: 0;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
}

/* ## Featured Content
--------------------------------------------- */
.featured-content .entry {
  background: none;
  padding: 0;
}

.featured-content .entry:last-of-type {
  margin-bottom: 0;
}

.featured-content .entry-title {
  font-size: 20px;
  font-size: 2rem;
}

/*
Widgets
---------------------------------------------------------------------------------------------------- */
/* # Widgets
---------------------------------------------------------------------------------------------------- */
.widget {
  margin-bottom: 40px;
  word-wrap: break-word;
}

.widget p:last-child,
.widget ul > li:last-of-type,
.widget-area .widget:last-of-type {
  margin-bottom: 0;
}

.widget ul > li {
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.widget ul > li:last-of-type {
  padding-bottom: 0;
}

.widget ol > li {
  list-style-position: inside;
  list-style-type: decimal;
  padding-left: 20px;
  text-indent: -20px;
}

.widget li li {
  border: 0;
  margin: 0 0 0 30px;
  padding: 0;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
}

/* # Footer Widgets
---------------------------------------------------------------------------------------------------- */
.footer-widgets {
  background-color: #fff;
  clear: both;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 60px 0;
}

.footer-widgets .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.footer-widgets-1,
.footer-widgets-2,
.footer-widgets-3 {
  width: 100%;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  /*padding: 20px;*/
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin: 0 auto 20px;
}

/* # Plugins
---------------------------------------------------------------------------------------------------- */
/* ## Genesis eNews Extended
--------------------------------------------- */
.sidebar .enews-widget,
.sidebar .enews-widget .widget-title {
  color: #fff;
}

.sidebar .widget.enews-widget {
  background-color: #222;
}

.sidebar .enews-widget input,
.sidebar .enews-widget input:focus {
  border: 1px solid #222;
}

.sidebar .enews-widget input[type="submit"] {
  background-color: #1abeed;
  color: #fff;
}

.sidebar .enews-widget input[type="submit"]:focus,
.sidebar .enews-widget input[type="submit"]:hover {
  background-color: #fff;
  color: #222;
}

.enews-widget input {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 16px;
}

.enews-widget input[type="submit"] {
  margin: 0;
  width: 100%;
}

.enews form + p {
  margin-top: 24px;
}

/* ## Jetpack
--------------------------------------------- */
#wpstats {
  display: none;
}

/* # Site Header
---------------------------------------------------------------------------------------------------- */
.site-header {
  background-color: #fff;
}

.site-header > .wrap {
  padding: 20px;
  width: 100%;
}

/* ## Title Area
--------------------------------------------- */
.title-area {
  float: none;
  padding: 10px 0;
  width: 100%;
}

.header-image .title-area {
  float: none;
  margin: 0 auto;
  max-width: 300px;
  padding: 0;
}

.header-full-width .title-area {
  float: none;
  width: 100%;
}

.site-title {
  font-size: 30px;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
}

.site-title a,
.site-title a:focus,
.site-title a:hover {
  color: #222;
  text-decoration: none;
  border-bottom: none;
}

.header-image .site-title > a {
  background-position: center !important;
  background-size: contain !important;
  float: left;
  min-height: 90px;
  width: 100%;
}

.site-description {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}

.site-description,
.site-title {
  margin-bottom: 0;
  text-align: center;
}

.header-image .site-description,
.header-image .site-title {
  display: block;
  text-indent: -9999px;
}

/* ## Widget Area
--------------------------------------------- */
.site-header .widget-area {
  float: right;
  text-align: center;
  width: 100%;
}

/* # Site Navigation
---------------------------------------------------------------------------------------------------- */
/* Genesis Navigation */
.genesis-responsive-menu .genesis-nav-menu {
  display: block;
}

/* fix to remove unwanted space between nav items - thanks Rob Neu -> https://gist.github.com/robneu/0ad283737d80802cb0e0 */
.genesis-nav-menu {
  clear: both;
  font-family: "Open Sans", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: .001px;
  font-size: 0.0001rem;
  line-height: 1;
  width: 100%;
  text-align: center;
  display: none;
}

.site-footer .genesis-nav-menu a {
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.nav-secondary .genesis-nav-menu {
  text-align: center;
  display: block;
}

.nav-primary .wrap {
  padding: 0;
}

.no-js .genesis-nav-menu {
  display: block;
}

.genesis-nav-menu .menu-item {
  font-family: "Open Sans", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1;
  display: inline-block;
  margin-bottom: 0;
  padding-bottom: 0;
  text-align: left;
}

.genesis-nav-menu a {
  color: #666;
  display: block;
  padding: 32px 30px;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}

.genesis-nav-menu > .menu-item-has-children > a:after {
  content: "\f347";
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  font: normal 16px/1 'dashicons';
  padding-left: 3px;
  vertical-align: top;
}

.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover,
.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover {
  color: #222;
}

.genesis-nav-menu .sub-menu {
  border-top: 1px dotted #222;
  left: -9999px;
  opacity: 0;
  position: absolute;
  transition: opacity .4s ease-in-out;
  z-index: 99;
  width: 100%;
}

.no-js .genesis-nav-menu .sub-menu {
  max-width: 300px;
}

.genesis-nav-menu .sub-menu a {
  background-color: #f5f5f5;
  border: 1px dotted #222;
  border-top: 0;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 20px;
  position: relative;
  word-wrap: break-word;
  width: 100%;
}

.no-js .genesis-nav-menu .sub-menu a {
  width: 300px;
}

.genesis-nav-menu .sub-menu .sub-menu {
  margin: -56px 0 0 199px;
}

.genesis-nav-menu .menu-item:hover {
  position: static;
}

.genesis-nav-menu .menu-item:hover > .sub-menu {
  left: auto;
  opacity: 1;
}

.genesis-nav-menu > .first > a {
  padding-left: 0;
}

.genesis-nav-menu > .last > a {
  padding-right: 0;
}

.genesis-nav-menu > .right {
  float: right;
}

.genesis-nav-menu li {
  float: none;
}

/* ## Accessible Menu
--------------------------------------------- */
.menu .menu-item:focus {
  position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
  left: auto;
  opacity: 1;
}

.menu-toggle,
.sub-menu-toggle {
  display: none;
  visibility: hidden;
}

/* ## Site Header Navigation
--------------------------------------------- */
.site-header .genesis-nav-menu li li {
  margin-left: 0;
}

/* ## Primary Header Navigation
--------------------------------------------- */
.nav-primary {
  background-color: transparent;
  font-family: "Open Sans", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 300;
  text-align: left;
  display: none;
  width: 100%;
}

.site-header .nav-header .genesis-nav-menu .menu-item {
  font-family: "Open Sans", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
}

.site-header .nav-header .genesis-nav-menu .menu-item a {
  padding: 15px;
}

/* ## Footer Navigation
--------------------------------------------- */
.site-footer .genesis-nav-menu {
  padding-bottom: 20px;
}

.site-footer .genesis-nav-menu a {
  padding: 0 20px 10px;
  text-transform: uppercase;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
}

/* Genesis Responsive Menu */
.genesis-responsive-menu .wrap {
  padding: 0;
}

.genesis-skip-link .skip-link-hidden {
  display: none;
  visibility: hidden;
}

.menu-toggle,
.sub-menu-toggle {
  background-color: #1abeed;
  border-width: 0;
  color: #222;
  display: block;
  margin: 0 auto;
  overflow: hidden;
  text-align: center;
  visibility: visible;
}

.menu-toggle:focus,
.menu-toggle:hover,
.sub-menu-toggle:focus,
.sub-menu-toggle:hover {
  background-color: #1abeed;
  border-width: 0;
}

.menu-toggle {
  line-height: 22px;
  position: relative;
  width: 100%;
  z-index: 1000;
}

.menu-toggle {
  border-top: 1px solid #1abeed;
  background-color: #1abeed;
}

.menu-toggle.activated:before {
  content: "\f335";
}

.menu-toggle:focus,
.menu-toggle:hover {
  border: 1px solid #1abeed;
  background-color: #f5f5f5;
  color: #1abeed;
}

.menu-toggle::before {
  font-size: 1.5em;
  margin-right: 10px;
  text-rendering: auto;
}

.sub-menu-toggle {
  float: right;
  padding: 13px 10px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 100;
  background: transparent;
  color: #1abeed;
}

.sub-menu-toggle:focus,
.sub-menu-toggle:hover {
  color: #1abeed;
  background: transparent;
}

.sub-menu .sub-menu-toggle {
  padding: 12px 10px;
}

.sub-menu-toggle::before {
  display: inline-block;
  text-rendering: auto;
  transform: rotate(0);
  transition: transform .25s ease-in-out;
}

.sub-menu-toggle.activated::before {
  transform: rotate(180deg);
}

.genesis-responsive-menu {
  display: none;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item {
  display: block;
  float: none;
  position: relative;
  text-align: left;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item:focus,
.genesis-responsive-menu .genesis-nav-menu .menu-item:hover {
  position: relative;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item a {
  border-bottom: 2px solid transparent;
  margin-bottom: 0;
  padding: 15px 20px;
  width: 100%;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu,
.genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu .sub-menu {
  left: 0;
  margin-left: 0;
}

.genesis-responsive-menu .genesis-nav-menu .menu-item-has-children > a::after {
  content: none;
}

.genesis-responsive-menu .genesis-nav-menu .sub-menu {
  clear: both;
  border: none;
  display: none;
  margin: 0;
  opacity: 1;
  padding-left: 15px;
  position: static;
  width: 100%;
}

.genesis-nav-menu .current-menu-item > a,
.genesis-nav-menu .current-menu-parent > a,
.genesis-nav-menu .sub-menu .current-menu-item > a:focus,
.genesis-nav-menu .sub-menu .current-menu-item > a:hover,
.genesis-nav-menu a:focus,
.genesis-nav-menu a:hover {
  border-bottom: 2px solid #ccc !important;
  color: #1abeed !important;
}

/* Social nav */
.social-navigation {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1em;
}

.social-navigation ul {
  list-style: none;
  margin-bottom: 0;
  margin-left: 0;
}

.social-navigation li {
  display: inline;
}

.social-navigation a {
  background-color: #fff;
  border-radius: 40px;
  color: #1abeed;
  fill: #1abeed;
  display: inline-block;
  height: 40px;
  margin: 0 1em .5em 0;
  text-align: center;
  width: 40px;
  padding: 10px;
}

.social-navigation a:focus,
.social-navigation a:hover {
  fill: #fff;
  background-color: #1abeed;
}

.social-navigation .icon {
  height: 20px;
  width: 20px;
  vertical-align: top;
}


.social-navigation .icon:focus,
.social-navigation .icon:hover {
  border-bottom: 1px #ccc dotted;
}

/* # Home Page Styles
---------------------------------------------------------------------------------------------------- */
.home .widget {
  margin-bottom: 0;
}

.front-page-1 {
  background: #467997;
  display: block;
}

.front-page-1 .wrap {
  max-width: none;
  padding: 0;
  width: 100%;
}

.front-page-1 .widget {
  width: 100%;
  position: relative;
  margin-bottom: 0;
}

.front-page-1 .widget-title {
  font-size: 46px;
  font-size: 4.6rem;
  font-weight: 700;
}

.front-page-1 .banner-left {
  color: #fff;
  display: block;
  padding: 36px 10%;
  float: left;
  width: 100%;
}

.front-page-1 .banner-right {
  display: block;
  float: left;
  width: 100%;
}

.front-page-1 .banner-right img {
  display: block;
  float: right;
}

.front-page-2 {
  background: #fff url("/wp-content/uploads/2016/03/orangeTri.png") center -1px no-repeat;
  padding-top: 40px;
  padding-bottom: 20px;
  border-top: 4px solid #fe6000;
  border-bottom: 4px solid #fe6000;
}

.front-page-2 .logo-container {
  text-align: center;
}

.front-page-2 .logo-container img {
  margin: 0 15px;
}

.front-page-2 h3.widgettitle.widget-title {
  text-align: center;
  margin-top: -42px;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  font-size: 2rem;
}

.front-page-3 .wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  padding: 30px 0;
}

.front-page-3a,
.front-page-3b,
.front-page-3c {
  -ms-flex: 1 0 33%;
      flex: 1 0 33%;
}

.home a.button {
  padding: 19px 30px 19px !important !important;
  background-color: transparent;
  border: 1px solid #666;
}

.home .widget_text h4 {
  color: #666;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-transform: uppercase;
  text-align: center;
}

.home .widget_text a.button {
  border-radius: 0;
  border-width: 4px;
  margin-top: 15px;
}

.home .widget_text a.button.orange {
  border-color: #fe6000;
  color: #fe6000;
  font-family: lato,arial,sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
}

.home .widget_text a.button.orange:hover {
  background: #fe6000;
  color: #fff;
}

.home .widget_text a.button.green {
  border-color: #66bb10;
  color: #66bb10;
  font-family: lato,arial,sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
}

.home .widget_text a.button.green:hover {
  background: #66bb10;
  color: #fff;
}

.home .widget_text a.button.blue {
  border-color: #1a97e3;
  color: #1a97e3;
  font-family: lato,arial,sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-transform: uppercase;
}

.home .widget_text a.button.blue:hover {
  background: #1a97e3;
  color: #fff;
}

.front-page-4 {
  background-color: #467997;
  padding: 30px 0 0;
}

.front-page-4 .widget-title {
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}

/* # Content Area
---------------------------------------------------------------------------------------------------- */
/* ## Entries
--------------------------------------------- */
.entry {
  background-color: #fff;
  padding: 30px;
  margin-bottom: 5%;
}

.archive .entry,
.blog .entry {
  padding-left: 0;
}

.entry-content ol,
.entry-content ul {
  margin-bottom: 28px;
  margin-left: 40px;
}

.entry-content ol > li {
  list-style-type: decimal;
}

.entry-content ul > li {
  list-style-type: disc;
}

.entry-content ol ol,
.entry-content ul ul {
  margin-bottom: 0;
}

.entry-content code {
  background-color: #222;
  color: #fff;
}

input[type="submit"].bpfBtnL {
  width: 100%;
  background-color: #f65b17;
  text-transform: uppercase;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
}

input[type="submit"].bpfBtnL:focus {
  width: 100%;
  background-color: #0274be;
}

input[type="submit"].bpfBtnL:hover {
  width: 100%;
  background-color: #0274be;
}

.entry,
.page.page-template-page_blog-php .entry {
  border-bottom: 4px solid #bbb;
}

h2.entry-title a {
  color: #1abeed;
  font-size: 30px;
  font-size: 3rem;
  border-bottom-color: transparent;
}

h2.entry-title a:focus,
h2.entry-title a:hover {
  color: #222;
  border-bottom-color: #222;
}

/* ## Entry Meta
--------------------------------------------- */
p.entry-meta {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 0;
}

.entry-content .entry-image {
  max-width: 200px;
}

.entry-header .entry-meta {
  margin-bottom: 24px;
}

.entry-footer .entry-meta {
  border-top: 1px solid #fff;
  padding-top: 24px;
}

.entry-categories,
.entry-tags {
  display: block;
}

.entry-comments-link::before {
  content: "\2014";
  margin: 0 6px 0 2px;
}

/* ## Pagination
--------------------------------------------- */
.pagination {
  clear: both;
  margin: 5% auto;
}

.adjacent-entry-pagination {
  margin-bottom: 0;
}

.archive-pagination li {
  display: inline;
}

.archive-pagination a {
  background-color: #222;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  text-transform: uppercase;
  color: #fff;
  border-radius: 3px;
  cursor: pointer;
  display: inline-block;
  font-weight: 400;
  padding: 8px 12px;
  text-decoration: none;
}

.archive-pagination .active a,
.archive-pagination a:focus,
.archive-pagination a:hover {
  background-color: #467997;
  color: #fff;
}

.archive-pagination li a {
  margin-bottom: 4px;
  margin-left: 2px;
  margin-right: 2px;
  border-bottom: none;
}

/* ## Comments
--------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
  background-color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 30px;
  margin-bottom: 5%;
}

.comment-respond,
.entry-pings {
  padding: 60px 60px 32px;
}

.entry-comments {
  padding: 60px;
}

.comment-list li {
  padding: 40px 0 0 30px;
}

.comment-list .depth-1 {
  padding-left: 0;
}

.comment-header {
  margin-bottom: 30px;
}

.comment-content {
  clear: both;
}

.comment-content ul > li {
  list-style-type: disc;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
  width: 50%;
}

.comment-respond label {
  display: block;
  margin-right: 12px;
}

.comment-header p {
  margin-bottom: 0;
}

.entry-pings .reply {
  display: none;
}

/* # Sidebars
---------------------------------------------------------------------------------------------------- */
.sidebar {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 5%;
}

.sidebar .widget {
  background-color: #fff;
  padding: 30px;
  margin-bottom: 5%;
}

/* # Custom
---------------------------------------------------------------------------------------------------- */
.link-has-image {
  border-bottom-color: transparent;
}

.sidebar a {
  border-bottom-color: transparent;
  color: #222;
}

.sidebar a:focus,
.sidebar a:hover {
  color: #1abeed;
  border-bottom-color: #1abeed;
}

.sidebar ul li {
  line-height: 1.25;
  list-style-type: disc;
  margin-left: 15px;
}

/* # Site Footer
---------------------------------------------------------------------------------------------------- */
.site-footer {
  background-color: #222;
  color: #fff;
  font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  padding: 30px 0;
  text-align: center;
}

.site-footer a {
  border-bottom-color: transparent;
}

.site-footer a:focus,
.site-footer a:hover {
  color: #fff;
  border-bottom-color: #ccc;
}

.site-footer p {
  margin-bottom: 15px;
}

.site-footer p:last-child {
  margin-bottom: 0;
}

.brandid-logo svg {
  vertical-align: middle;
  margin-top: 1px;
  margin-left: 2px;
  width: 50px;
  height: 14px;
  fill: #ccc;
}

.brandid-logo svg:focus,
.brandid-logo svg:hover {
  fill: #fff;
}

.site-footer .icon-heart {
  fill: transparent;
  stroke: #fff;
  width: 14px;
  height: 14px;
}

/* # Custom Classes
---------------------------------------------------------------------------------------------------- */
.center-block {
  display: block;
  text-align: center;
  width: 100%;
}

a.bpfBtn,
input.bpfBtn {
  background: #f65b17;
  border-radius: 3px;
  padding: 10px 15px;
  display: table;
  color: #fff;
  max-width: 275px;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  font-family: Montserrat,arial,sans-serif;
}

a.bpfBtn,
input.bpfBtnL {
  background: #f65b17;
  padding: 10px 15px;
  display: table;
  color: #fff;
  max-width: 1500px;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  font-family: Montserrat,arial,sans-serif;
}

a.bpfBtn,
input.bpfBtnCTA {
  background: #f65b17;
  padding: 10px 15px;
  display: table;
  color: #fff;
  max-width: 1500px;
  text-align: center;
  text-transform: none;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  font-family: Montserrat,arial,sans-serif;
  width: 100%;
}

a.bpfBtn,
input.bpfBtnSDBR {
  background: #f65b17;
  padding: 10px 15px;
  display: table;
  color: #fff;
  max-width: 1500px;
  text-align: center;
  text-transform: none;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  font-family: Montserrat,arial,sans-serif;
}

a.bpfBtn:hover,
input.bpfBtn:hover {
  background: #444;
  color: #fff;
}

.lms-list-menu li {
  list-style-type: none !important;
}

li.lms-current-menu-item a {
  color: #f65b17;
}

.lms-quick-menu a {
  width: 100%;
}

.image-circle {
  border-radius: 50%;
}

.accordion-label-bold .fl-accordion-button-label {
  font-weight: 700;
}

.mp-radial-background .fl-row-content-wrap {
  background: radial-gradient(ellipse at center, #ffffff 12%, #edf5f9 99%);
}

.widget .strong-view.modern .testimonial-content:after,
.widget .strong-view.modern .testimonial-content:before {
  display: none;
}

.widget .strong-view.modern .testimonial-name {
  display: none;
}

.widget .strong-view.default .testimonial-heading {
  display: none;
}

.strong-view.default.mp-testimonial-border .testimonial-inner {
  border-color: #333;
}

.strong-view.default.mp-testimonial-border .testimonial {
  border: none;
}

.widget.strong-testimonials-view-widget {
  margin-top: 20px;
  margin-bottom: 20px;
}

.wpmslider-controls a {
  border-bottom-color: transparent;
}

.page .strong-view.pager-style-buttons .wpmslider-pager-link:before {
  color: #000;
}

#toTop:after {
  content: "\f343";
  font-family: dashicons;
  color: #fff;
  background-color: rgba(70, 121, 151, 0.8);
  font-size: 35px;
  font-size: 3.5rem;
  border-radius: 50%;
  padding: 5px;
}

#toTop.green:after {
  background-color: rgba(135, 183, 67, 0.8);
}

.page ._dpd-button_cta {
  white-space: normal;
}

.landing-page-logo-container {
  max-width: 300px;
  margin: 0;
  padding: 0;
}

.landing-page-logo {
  text-indent: -9999px;
  display: block;
  margin: auto;
  text-align: center;
}

.landing-page-logo a {
  width: 100%;
  height: 106px;
  margin: 0 auto;
  background: url("/wp-content/uploads/2018/03/PFLogo-new.svg") no-repeat !important;
  background-size: cover;
  float: left;
  border-bottom-color: transparent;
}

/* Features */
.site-container .features ul li {
  text-align: left;
}

.site-container .features ul li {
  padding-left: 0;
  padding-right: 0;
  text-align: left;
}

.site-container .features ul li .feature-icon {
  float: left;
  font-size: 34px;
  font-size: 3.4rem;
  margin-bottom: 0;
  margin-top: -5px;
  width: 60px;
}

.features ul li {
  list-style: none;
}

.features ul li .feature-icon {
  color: #467997;
}

.features p {
  margin-left: 60px;
}

.features-section h2 {
  font-weight: 300;
}

.fl-builder-content {
  font-family: "Open Sans", "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.rp4wp-related-posts {
  margin: 30px 0;
  overflow: hidden;
}

.prev-next-navigation {
  margin: 30px 0;
  width: 100%;
  overflow: hidden;
}

.prev-next-navigation .button {
  width: 150px;
  text-align: center;
}

/* Productive Flourishing Footer Menu */

.footer-widgets { 
  background-color: #222;
  padding: 0;
}

.footer-widgets-1 {
  margin-top: 30px !important;
  margin-bottom: 0 !important;
}

.footer-widgets-1 ul {
  text-align: center;
}

.footer-widgets-1 .menu li {
  display: inline;
  padding: 0 20px;
}

.footer-widgets-1 .menu li a {
  font-weight: 700;
  border-bottom: 0;
  font-family: "Open Sans","Lato","Helvetica Neue",Helvetica,Arial,sans-serif;
  text-transform: uppercase;
  color: #fff;
}

.footer-widgets-1 .menu li a:hover,
.footer-widgets-1 .menu li a:focus {
  color: #1abeed;
}

/* # Print Styles
---------------------------------------------------------------------------------------------------- */

@media screen and (min-width: 320px){
  .home .site-inner{
    padding: 0;
  }
  .after-entry,
  .archive-description,
  .author-box{
    margin-bottom: 40px;
    padding: 60px;
  }
  .archive-description,
  .posts-page-description{
    padding: 0;
    margin: 0;
  }
  .entry{
    margin-bottom: 40px;
  }
  .pagination{
    margin: 40px 0;
  }
  .archive-pagination li a{
    margin-bottom: 0;
  }
  .comment-respond,
  .entry-comments,
  .entry-pings{
    margin-bottom: 40px;
  }
  .sidebar{
    margin-bottom: 40px;
  }
  .sidebar .widget{
    padding: 40px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 861px){
  body > div{
    font-size: 18px;
    font-size: 1.8rem;
  }
  body{
    font-size: 18px;
    font-size: 1.8rem;
  }
  .site-inner,
  .wrap{
    max-width: 960px;
  }
  .content-sidebar .content{
    width: 68%;
  }
  .content-sidebar .sidebar-primary{
    width: 25%;
  }
  .sidebar-content .content{
    width: 68%;
  }
  .sidebar-content .sidebar-primary{
    width: 25%;
  }
  .site-header .search-form{
    float: right;
    margin: 12px auto 0;
  }
  .genesis-nav-menu{
    display: block;
  }
  .genesis-nav-menu .sub-menu{
    width: 300px;
  }
  .genesis-nav-menu .sub-menu a{
    width: 300px;
  }
  .nav-primary{
    display: inline-block;
    width: 68%;
  }
  .menu-toggle,
  .sub-menu-toggle{
    display: none;
    visibility: hidden;
  }
  .genesis-responsive-menu{
    display: inline-block;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item{
    display: inline-block;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item a{
    width: auto;
    display: block;
    padding: 32px 30px;
    text-decoration: none;
    border-bottom: 2px solid transparent;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu a{
    width: 300px;
    max-width: 300px;
    border: 1px dotted #222;
    border-top: 0;
    padding: 20px;
    position: relative;
    word-wrap: break-word;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item-has-children > a::after{
    content: "\f347";
    display: inline-block;
    -webkit-font-smoothing: antialiased;
    font: normal 16px/1 'dashicons';
    padding-left: 3px;
    vertical-align: top;
    float: right;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu{
    border-top: 1px dotted #222;
    left: -9999px;
    opacity: 0;
    position: absolute;
    transition: opacity .4s ease-in-out;
    z-index: 99;
    width: 300px;
  }
  .genesis-responsive-menu .genesis-nav-menu .menu-item:hover > .sub-menu{
    left: auto;
    opacity: 1;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu{
    padding-left: 0;
  }
  .genesis-responsive-menu .genesis-nav-menu .sub-menu .sub-menu{
    margin: 0 0 0 20px;
  }
  .front-page-1 .banner-left{
    width: 78%;
  }
  .front-page-1 .banner-right{
    width: 22%;
  }
  .front-page-1 .banner-right img{
    float: none;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #toTop{
    display: none;
    position: fixed;
    bottom: 5px;
    right: 10px;
    width: 80px;
    height: 80px;
    opacity: .8;
    border-bottom-color: transparent;
    filter: alpha(opacity=40);
    z-index: 1;
  }
  .page ._dpd-button_cta{
    white-space: nowrap;
  }
}

@media screen and (min-width: 1024px){
  .admin-bar .site-container{
    min-height: calc(100vh - 32px);
  }
  .site-inner,
  .wrap{
    max-width: 1140px;
  }
  .wrap{
    padding-left: 3%;
    padding-right: 3%;
  }
  .content-sidebar-sidebar .content{
    width: 55%;
  }
  .content-sidebar-sidebar .sidebar-primary{
    width: 24%;
  }
  .content-sidebar-sidebar .sidebar-secondary{
    width: 20%;
  }
  .sidebar-content-sidebar .content{
    width: 54%;
  }
  .sidebar-content-sidebar .sidebar-primary{
    width: 24%;
  }
  .sidebar-content-sidebar .sidebar-secondary{
    width: 19%;
  }
  .sidebar-sidebar-content .content{
    width: 54%;
  }
  .sidebar-sidebar-content .sidebar-primary{
    width: 24%;
  }
  .sidebar-sidebar-content .sidebar-secondary{
    width: 19%;
  }
  .one-half,
  .three-sixths,
  .two-fourths{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%;
  }
  .one-half:last-child,
  .three-sixths:last-child,
  .two-fourths:last-child{
    margin-right: 0;
  }
  .one-third,
  .two-sixths{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 31.76157%;
  }
  .one-third:last-child,
  .two-sixths:last-child{
    margin-right: 0;
  }
  .four-sixths,
  .two-thirds{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 65.88078%;
  }
  .four-sixths:last-child,
  .two-thirds:last-child{
    margin-right: 0;
  }
  .one-fourth{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 23.23176%;
  }
  .one-fourth:last-child{
    margin-right: 0;
  }
  .three-fourths{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 74.41059%;
  }
  .three-fourths:last-child{
    margin-right: 0;
  }
  .one-sixth{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 14.70196%;
  }
  .one-sixth:last-child{
    margin-right: 0;
  }
  .five-sixths{
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 82.94039%;
  }
  .five-sixths:last-child{
    margin-right: 0;
  }
  .last{
    margin-right: 0;
  }
  .last + *{
    clear: both;
  }
}

@media screen and (min-width: 1280px){
  .site-inner,
  .wrap{
    max-width: 1400px;
  }
  .footer-widgets-1,
  .footer-widgets-2,
  .footer-widgets-3{
    -ms-flex-preferred-size: 340px;
    flex-basis: 340px;
    margin: 20px;
  }
  .footer-widgets-1,
  .footer-widgets-2,
  .footer-widgets-3{
    -ms-flex-preferred-size: 380px;
    flex-basis: 380px;
    margin: 20px;
  }
  .site-header > .wrap{
    padding: 0;
    max-width: 1400px;
  }
  .title-area{
    float: left;
    width: 300px;
  }
  .header-image .title-area{
    float: left;
  }
  .site-header .widget-area{
    width: 620px;
  }
  .site-header .widget-area{
    text-align: right;
    width: 800px;
    padding-top: 20px;
  }
  .genesis-nav-menu{
    text-align: right;
  }
  .nav-primary{
    display: inline-block;
    width: 68%;
  }
}

@media screen and (max-width: 400px){
  .page ._dpd-button_cta_text{
    margin-right: 0;
  }
}

@media print{
  *,
  *::after,
  *::before{
    background: transparent !important;
    box-shadow: none !important;
    color: #000 !important;
    text-shadow: none !important;
  }
  a,
  a:visited{
    text-decoration: underline;
  }
  a[href]::after{
    content: " (" attr(href) ")";
  }
  abbr[title]::after{
    content: " (" attr(title) ")";
  }
  .site-title > a::after,
  a[href^="#"]::after,
  a[href^="javascript:"]::after{
    content: "";
  }
  thead{
    display: table-header-group;
  }
  img,
  tr{
    page-break-inside: avoid;
  }
  img{
    max-width: 100% !important;
  }
  @page{
    margin: 2cm .5cm;
  }
  h2,
  h3,
  p{
    orphans: 3;
    widows: 3;
  }
  blockquote,
  pre{
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  .content,
  .content-sidebar{
    width: 100%;
  }
  .breadcrumb,
  .comment-edit-link,
  .comment-form,
  .comment-list .reply a,
  .comment-reply-title,
  .edit-link,
  .entry-comments-link,
  .entry-footer,
  .genesis-box,
  .header-widget-area,
  .hidden-print,
  .home-top,
  .nav-primary,
  .nav-secondary,
  .post-edit-link,
  .sidebar,
  button,
  input,
  select,
  textarea{
    display: none !important;
  }
  .title-area{
    text-align: center;
    width: 100%;
  }
  .site-title > a{
    margin: 0;
    text-decoration: none;
    text-indent: 0;
  }
  .site-inner{
    padding-top: 0;
    position: relative;
    top: -100px;
  }
  .author-box{
    margin-bottom: 0;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6{
    orphans: 3;
    page-break-after: avoid;
    page-break-inside: avoid;
    widows: 3;
  }
  img{
    page-break-after: avoid;
    page-break-inside: avoid;
  }
  blockquote,
  pre,
  table{
    page-break-inside: avoid;
  }
  dl,
  ol,
  ul{
    page-break-before: avoid;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fYm94LXNpemluZy5zY3NzIiwicGFydGlhbHMvX3Jlc2V0LnNjc3MiLCJwYXJ0aWFscy9fZGVmYXVsdHMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJwYXJ0aWFscy9fbGF5b3V0LnNjc3MiLCJwYXJ0aWFscy9fY29tbW9uLWNsYXNzZXMuc2NzcyIsInBhcnRpYWxzL193aWRnZXRzLnNjc3MiLCJwYXJ0aWFscy9fcGx1Z2lucy5zY3NzIiwicGFydGlhbHMvX2hlYWRlci5zY3NzIiwicGFydGlhbHMvX25hdmlnYXRpb24uc2NzcyIsInBhcnRpYWxzL19ob21lLXBhZ2Uuc2NzcyIsInBhcnRpYWxzL19jb250ZW50LWFyZWEuc2NzcyIsInBhcnRpYWxzL19zaXRlLWZvb3Rlci5zY3NzIiwicGFydGlhbHMvX2N1c3RvbS1jbGFzc2VzLnNjc3MiLCJwYXJ0aWFscy9fcHJpbnQtbWVkaWEtcXVlcmllcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24tbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX21lZGlhLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fc3Bhbi1jb2x1bW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fcHJpdmF0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24tbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX29tZWdhLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7Ozs7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QUN4Qix5QkFBeUI7R0FDekI7RUFFRDs7O0lBR0MseUJBQXlCO0dBQ3pCO0VBRUQ7OztJQUdDLHlCQUF5QjtHQUN6QjtDakJrMEZEIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuXHRUaGVtZSBOYW1lOiBQcm9kdWN0aXZlIEZsb3VyaXNoaW5nIFRoZW1lXG4gIFRoZW1lIFVSSTogaHR0cHM6Ly90aGVicmFuZGlkLmNvbVxuXHREZXNjcmlwdGlvbjogQ3VzdG9tIEdlbmVzaXMgVGhlbWUgYnkgYnJhbmRpRFxuXHRBdXRob3I6IFRoZSBicmFuZGlEXG5cdEF1dGhvciBVUkk6IGh0dHBzOi8vdGhlYnJhbmRpZC5jb21cblxuXHRWZXJzaW9uOiAxLjEuOVxuXG5cdFRhZ3M6IGJsYWNrLCByZWQsIHdoaXRlLCBvbmUtY29sdW1uLCB0d28tY29sdW1ucywgdGhyZWUtY29sdW1ucywgbGVmdC1zaWRlYmFyLCByaWdodC1zaWRlYmFyLCByZXNwb25zaXZlLWxheW91dCwgYWNjZXNzaWJpbGl0eS1yZWFkeSwgY3VzdG9tLWJhY2tncm91bmQsIGN1c3RvbS1jb2xvcnMsIGN1c3RvbS1oZWFkZXIsIGN1c3RvbS1tZW51LCBmZWF0dXJlZC1pbWFnZXMsIGZ1bGwtd2lkdGgtdGVtcGxhdGUsIHJ0bC1sYW5ndWFnZS1zdXBwb3J0LCBzdGlja3ktcG9zdCwgdGhlbWUtb3B0aW9ucywgdGhyZWFkZWQtY29tbWVudHMsIHRyYW5zbGF0aW9uLXJlYWR5XG5cblx0VGVtcGxhdGU6IGdlbmVzaXNcblxuXHRMaWNlbnNlOiBHUEwtMi4wK1xuXHRMaWNlbnNlIFVSSTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbFxuXG5cdFRleHQgRG9tYWluOiBnZW5lc2lzLXN0YXJ0ZXItYnJhbmRpZFxuKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLCAqOjphZnRlciwgKjo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLyogIyBIVE1MNSBSZXNldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogIyMgQmFzZWxpbmUgTm9ybWFsaXplXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIG5vcm1hbGl6ZS5jc3MgdjQuMS4xIHwgTUlUIExpY2Vuc2UgfCBodHRwOi8vbmVjb2xhcy5naXRodWIuaW8vbm9ybWFsaXplLmNzcy8gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIG1haW4sIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5hdWRpbywgY2FudmFzLCBwcm9ncmVzcywgdmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbltoaWRkZW5dLCB0ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbn1cblxuYTphY3RpdmUsIGE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG59XG5cbmIsIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogLjY3ZW0gMDtcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsIHN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLS4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0uNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuY29kZSwga2JkLCBwcmUsIHNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbiwgaW5wdXQsIG9wdGdyb3VwLCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xufVxuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbmJ1dHRvbiwgaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLCBzZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuW3R5cGU9cmVzZXRdLCBbdHlwZT1zdWJtaXRdLCBidXR0b24sIGh0bWwgW3R5cGU9YnV0dG9uXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsIFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZywgW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLCBbdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nLCBidXR0b246LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgc2lsdmVyO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAuMzVlbSAuNjI1ZW0gLjc1ZW07XG59XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5bdHlwZT1jaGVja2JveF0sIFt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAuNTQ7XG59XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuaHRtbCwgaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgOmFmdGVyLCA6YmVmb3JlIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLmF1dGhvci1ib3g6YmVmb3JlLCAuY2xlYXJmaXg6YmVmb3JlLCAuZW50cnktY29udGVudDpiZWZvcmUsIC5lbnRyeTpiZWZvcmUsIC5mb290ZXItd2lkZ2V0czpiZWZvcmUsIC5uYXYtcHJpbWFyeTpiZWZvcmUsIC5uYXYtc2Vjb25kYXJ5OmJlZm9yZSwgLnBhZ2luYXRpb246YmVmb3JlLCAuc2l0ZS1jb250YWluZXI6YmVmb3JlLCAuc2l0ZS1mb290ZXI6YmVmb3JlLCAuc2l0ZS1oZWFkZXI6YmVmb3JlLCAuc2l0ZS1pbm5lcjpiZWZvcmUsIC53aWRnZXQ6YmVmb3JlLCAud3JhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5hdXRob3ItYm94OmFmdGVyLCAuY2xlYXJmaXg6YWZ0ZXIsIC5lbnRyeS1jb250ZW50OmFmdGVyLCAuZW50cnk6YWZ0ZXIsIC5mb290ZXItd2lkZ2V0czphZnRlciwgLm5hdi1wcmltYXJ5OmFmdGVyLCAubmF2LXNlY29uZGFyeTphZnRlciwgLnBhZ2luYXRpb246YWZ0ZXIsIC5zaXRlLWNvbnRhaW5lcjphZnRlciwgLnNpdGUtZm9vdGVyOmFmdGVyLCAuc2l0ZS1oZWFkZXI6YWZ0ZXIsIC5zaXRlLWlubmVyOmFmdGVyLCAud2lkZ2V0OmFmdGVyLCAud3JhcDphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi8qICMgRGVmYXVsdHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICMjIFR5cG9ncmFwaGljYWwgRWxlbWVudHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7XG4gIC8qIDEwcHggYnJvd3NlciBkZWZhdWx0ICovXG59XG5cbi8qIENocm9tZSBmaXggKi9cbmJvZHkgPiBkaXYge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIGJvZHkgPiBkaXYge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMyMjI7XG4gIGZvbnQtZmFtaWx5OiBcIlBUIFNlcmlmXCIsIFwiR2VvcmlnYVwiLCBcIlRpbWVzIFJvbWFuXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42MjU7XG4gIG1hcmdpbjogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgYm9keSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG59XG5cbi5idXR0b24sXG4uZ2FsbGVyeSBpbWcsXG5hLFxuYnV0dG9uLFxuaW5wdXQ6Zm9jdXMsXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbnRleHRhcmVhOmZvY3VzIHtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbn1cblxuYSB7XG4gIGNvbG9yOiAjMWFiZWVkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMWFiZWVkO1xufVxuXG5hOmZvY3VzLFxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMjIyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxucCB7XG4gIG1hcmdpbjogMCAwIDI4cHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbm9sLFxudWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5ociB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDFlbSAwO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuYmxvY2txdW90ZSxcbmNpdGUsXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogNDBweDtcbn1cblxuYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMUNcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiAtMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xMHB4O1xufVxuXG4vKiAjIyBIZWFkaW5nc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbjogMCAwIDI0cHg7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAzNnB4O1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi8qIFNWRyBJY29ucyBiYXNlIHN0eWxlcyAqL1xuLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgaGVpZ2h0OiAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogQWxpZ24gbW9yZSBuaWNlbHkgd2l0aCBjYXBpdGFsIGxldHRlcnMgKi9cbiAgdG9wOiAtMC4wNjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxZW07XG59XG5cbi8qICMjIE9iamVjdHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwLWNhcHRpb24sXG5lbWJlZCxcbmlmcmFtZSxcbmltZyxcbm9iamVjdCxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogIyMgR2FsbGVyeVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZ2FsbGVyeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDAgMjhweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTEgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDMzJTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMjUlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDE2LjY2NjYlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAxNC4yODU3JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDExLjExMTElO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoMm4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoM24rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNG4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNW4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNm4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoN24rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoOG4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoOW4rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cblxuLmdhbGxlcnkgaW1nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiA0cHg7XG59XG5cbi5nYWxsZXJ5IGltZzpmb2N1cyxcbi5nYWxsZXJ5IGltZzpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG59XG5cbi8qICMjIEZvcm1zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBjb2xvcjogIzIyMjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAxNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuaW5wdXQ6Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJpbWFnZVwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzIyMjtcbiAgb3BhY2l0eTogMTtcbn1cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5idXR0b24sXG5idXR0b24sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYWJlZWQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd2lkdGg6IGF1dG87XG4gIGZpbGw6ICNmZmY7XG59XG5cbi5idXR0b246Zm9jdXMsXG4uYnV0dG9uOmhvdmVyLFxuYnV0dG9uOmZvY3VzLFxuYnV0dG9uOmhvdmVyLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZW50cnktY29udGVudCAuYnV0dG9uOmZvY3VzLFxuLmVudHJ5LWNvbnRlbnQgLmJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5hLmJ1dHRvbjpmb2N1cyxcbmEuYnV0dG9uOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuYS5idXR0b24uc21hbGwsXG5idXR0b24uc21hbGwsXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLnNtYWxsLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLnNtYWxsLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5zbWFsbCB7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xufVxuXG4uc2l0ZS1jb250YWluZXIgYnV0dG9uOmRpc2FibGVkLFxuLnNpdGUtY29udGFpbmVyIGJ1dHRvbjpkaXNhYmxlZDpob3Zlcixcbi5zaXRlLWNvbnRhaW5lciBpbnB1dDpkaXNhYmxlZCxcbi5zaXRlLWNvbnRhaW5lciBpbnB1dDpkaXNhYmxlZDpob3Zlcixcbi5zaXRlLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmRpc2FibGVkLFxuLnNpdGUtY29udGFpbmVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06ZGlzYWJsZWQ6aG92ZXIsXG4uc2l0ZS1jb250YWluZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmRpc2FibGVkLFxuLnNpdGUtY29udGFpbmVyIGlucHV0W3R5cGU9XCJyZXNldFwiXTpkaXNhYmxlZDpob3Zlcixcbi5zaXRlLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmRpc2FibGVkLFxuLnNpdGUtY29udGFpbmVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06ZGlzYWJsZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGNvbG9yOiAjNzc3O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAjIyBUYWJsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG5cbnRib2R5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG59XG5cbnRkLFxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50ZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICBwYWRkaW5nOiA2cHg7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogMCA2cHg7XG59XG5cbnRkOmZpcnN0LWNoaWxkLFxudGg6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi8qXG5BY2Nlc3NpYmlsaXR5IFN1cHBvcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICMjIFNjcmVlbiBSZWFkZXIgVGV4dFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2NyZWVuLXJlYWRlci1zaG9ydGN1dCxcbi5zY3JlZW4tcmVhZGVyLXRleHQsXG4uc2NyZWVuLXJlYWRlci10ZXh0IHNwYW4ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLnNlYXJjaCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLnNjcmVlbi1yZWFkZXItc2hvcnRjdXQ6Zm9jdXMsXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzLFxuLndpZGdldF9zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIyMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwO1xuICAvKiBBYm92ZSBXUCB0b29sYmFyLiAqL1xufVxuXG4ubW9yZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiAjIFNraXAgTGlua3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nZW5lc2lzLXNraXAtbGluayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmdlbmVzaXMtc2tpcC1saW5rIGxpIHtcbiAgaGVpZ2h0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB3aWR0aDogMDtcbn1cblxuOmZvY3VzIHtcbiAgY29sb3I6ICMxYzFjMWM7XG4gIG91dGxpbmU6ICNhMWExYTEgZG90dGVkIHRoaW47XG59XG5cbi8qICMgU3RydWN0dXJlIGFuZCBMYXlvdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICMjIFNpdGUgQ29udGFpbmVyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2l0ZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLmFkbWluLWJhciAuc2l0ZS1jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDZweCk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYWRtaW4tYmFyIC5zaXRlLWNvbnRhaW5lciB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDMycHgpO1xuICB9XG59XG5cbi5zaXRlLWlubmVyLFxuLndyYXAge1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5zaXRlLWlubmVyLFxuICAud3JhcCB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNpdGUtaW5uZXIsXG4gIC53cmFwIHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLnNpdGUtaW5uZXIsXG4gIC53cmFwIHtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgfVxufVxuXG4ud3JhcCB7XG4gIHBhZGRpbmctbGVmdDogNSU7XG4gIHBhZGRpbmctcmlnaHQ6IDUlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLndyYXAge1xuICAgIHBhZGRpbmctbGVmdDogMyU7XG4gICAgcGFkZGluZy1yaWdodDogMyU7XG4gIH1cbn1cblxuLnNpdGUtaW5uZXIge1xuICBwYWRkaW5nLXRvcDogNC41JTtcbn1cblxuLmhvbWUgLnNpdGUtaW5uZXIge1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogNSUgMCAwO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkge1xuICAuaG9tZSAuc2l0ZS1pbm5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uaG9tZSAuc2l0ZS1pbm5lciB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLmxhbmRpbmctcGFnZSAuc2l0ZS1pbm5lciB7XG4gIHdpZHRoOiA4MDBweDtcbn1cblxuLyogIyMgQ29sdW1uIFdpZHRocyBhbmQgUG9zaXRpb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICMjIyBXcmFwcGluZyBkaXYgZm9yIC5jb250ZW50IGFuZCAuc2lkZWJhci1wcmltYXJ5ICovXG4uY29udGVudC1zaWRlYmFyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4vKiAjIyMgQ29udGVudCAqL1xuLmNvbnRlbnQsXG4uc2lkZWJhci1wcmltYXJ5LFxuLnNpZGViYXItc2Vjb25kYXJ5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY29udGVudC1zaWRlYmFyIC5jb250ZW50IHtcbiAgb3JkZXI6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5jb250ZW50LXNpZGViYXIgLmNvbnRlbnQge1xuICAgIHdpZHRoOiA2OCU7XG4gIH1cbn1cblxuLmNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1wcmltYXJ5IHtcbiAgb3JkZXI6IDI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5jb250ZW50LXNpZGViYXIgLnNpZGViYXItcHJpbWFyeSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxufVxuXG4uc2lkZWJhci1jb250ZW50IC5jb250ZW50IHtcbiAgb3JkZXI6IDI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5zaWRlYmFyLWNvbnRlbnQgLmNvbnRlbnQge1xuICAgIHdpZHRoOiA2OCU7XG4gIH1cbn1cblxuLnNpZGViYXItY29udGVudCAuc2lkZWJhci1wcmltYXJ5IHtcbiAgb3JkZXI6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5zaWRlYmFyLWNvbnRlbnQgLnNpZGViYXItcHJpbWFyeSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxufVxuXG4uZnVsbC13aWR0aC1jb250ZW50IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG59XG5cbi5ob21lLmZ1bGwtd2lkdGgtY29udGVudCAuY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogIyMjIFByaW1hcnkgU2lkZWJhciAqL1xuLmNvbnRlbnQtc2lkZWJhci1zaWRlYmFyIC5jb250ZW50IHtcbiAgb3JkZXI6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY29udGVudC1zaWRlYmFyLXNpZGViYXIgLmNvbnRlbnQge1xuICAgIHdpZHRoOiA1NSU7XG4gIH1cbn1cblxuLmNvbnRlbnQtc2lkZWJhci1zaWRlYmFyIC5zaWRlYmFyLXByaW1hcnkge1xuICBvcmRlcjogMjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jb250ZW50LXNpZGViYXItc2lkZWJhciAuc2lkZWJhci1wcmltYXJ5IHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5jb250ZW50LXNpZGViYXItc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5jb250ZW50LXNpZGViYXItc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbn1cblxuLnNpZGViYXItY29udGVudC1zaWRlYmFyIC5jb250ZW50IHtcbiAgb3JkZXI6IDI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2lkZWJhci1jb250ZW50LXNpZGViYXIgLmNvbnRlbnQge1xuICAgIHdpZHRoOiA1NCU7XG4gIH1cbn1cblxuLnNpZGViYXItY29udGVudC1zaWRlYmFyIC5zaWRlYmFyLXByaW1hcnkge1xuICBvcmRlcjogMztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaWRlYmFyLWNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1wcmltYXJ5IHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5zaWRlYmFyLWNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaWRlYmFyLWNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICAgIHdpZHRoOiAxOSU7XG4gIH1cbn1cblxuLnNpZGViYXItc2lkZWJhci1jb250ZW50IC5jb250ZW50IHtcbiAgb3JkZXI6IDM7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2lkZWJhci1zaWRlYmFyLWNvbnRlbnQgLmNvbnRlbnQge1xuICAgIHdpZHRoOiA1NCU7XG4gIH1cbn1cblxuLnNpZGViYXItc2lkZWJhci1jb250ZW50IC5zaWRlYmFyLXByaW1hcnkge1xuICBvcmRlcjogMjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaWRlYmFyLXNpZGViYXItY29udGVudCAuc2lkZWJhci1wcmltYXJ5IHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5zaWRlYmFyLXNpZGViYXItY29udGVudCAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaWRlYmFyLXNpZGViYXItY29udGVudCAuc2lkZWJhci1zZWNvbmRhcnkge1xuICAgIHdpZHRoOiAxOSU7XG4gIH1cbn1cblxuLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5ob21lIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vKiAjIyBDb2x1bW4gQ2xhc3Nlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBMaW5rOiBodHRwOi8vdHdpdHRlci5naXRodWIuaW8vYm9vdHN0cmFwL2Fzc2V0cy9jc3MvYm9vdHN0cmFwLXJlc3BvbnNpdmUuY3NzICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm9uZS1oYWxmLFxuICAudGhyZWUtc2l4dGhzLFxuICAudHdvLWZvdXJ0aHMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgd2lkdGg6IDQ4LjgyMTE3JTtcbiAgfVxuICAub25lLWhhbGY6bGFzdC1jaGlsZCxcbiAgLnRocmVlLXNpeHRoczpsYXN0LWNoaWxkLFxuICAudHdvLWZvdXJ0aHM6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5vbmUtdGhpcmQsXG4gIC50d28tc2l4dGhzIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgIHdpZHRoOiAzMS43NjE1NyU7XG4gIH1cbiAgLm9uZS10aGlyZDpsYXN0LWNoaWxkLFxuICAudHdvLXNpeHRoczpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZvdXItc2l4dGhzLFxuICAudHdvLXRoaXJkcyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogNjUuODgwNzglO1xuICB9XG4gIC5mb3VyLXNpeHRoczpsYXN0LWNoaWxkLFxuICAudHdvLXRoaXJkczpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLm9uZS1mb3VydGgge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgd2lkdGg6IDIzLjIzMTc2JTtcbiAgfVxuICAub25lLWZvdXJ0aDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLnRocmVlLWZvdXJ0aHMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgd2lkdGg6IDc0LjQxMDU5JTtcbiAgfVxuICAudGhyZWUtZm91cnRoczpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLm9uZS1zaXh0aCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogMTQuNzAxOTYlO1xuICB9XG4gIC5vbmUtc2l4dGg6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5maXZlLXNpeHRocyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogODIuOTQwMzklO1xuICB9XG4gIC5maXZlLXNpeHRoczpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmxhc3Qge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAubGFzdCArICoge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8qICMgQ29tbW9uIENsYXNzZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qICMjIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYXZhdGFyIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmFsaWdubGVmdCAuYXZhdGFyLFxuLmF1dGhvci1ib3ggLmF2YXRhciB7XG4gIG1hcmdpbi1yaWdodDogMjRweDtcbn1cblxuLmFsaWducmlnaHQgLmF2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAyNHB4O1xufVxuXG4uY29tbWVudCAuYXZhdGFyIHtcbiAgbWFyZ2luOiAwIDE2cHggMjRweCAwO1xufVxuXG4vKiAjIyBHZW5lc2lzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5icmVhZGNydW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIHBhZGRpbmc6IDEycHggMzBweDtcbn1cblxuLmFmdGVyLWVudHJ5LFxuLmFyY2hpdmUtZGVzY3JpcHRpb24sXG4uYXV0aG9yLWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5hZnRlci1lbnRyeSxcbiAgLmFyY2hpdmUtZGVzY3JpcHRpb24sXG4gIC5hdXRob3ItYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmc6IDYwcHg7XG4gIH1cbn1cblxuLmFyY2hpdmUtZGVzY3JpcHRpb24gcDpsYXN0LWNoaWxkLFxuLmF1dGhvci1ib3ggcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogIyMgU2VhcmNoIEZvcm1cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDE2cHggYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMTJweCBhdXRvIDA7XG4gIH1cbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuc2VhcmNoIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4ud2lkZ2V0X3NlYXJjaCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi5zZWFyY2gtZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggIzFhYmVlZCBzb2xpZDtcbn1cblxuLnNlYXJjaC1mb3JtIC5zZWFyY2gtc3VibWl0IHtcbiAgYm90dG9tOiAzcHg7XG4gIHBhZGRpbmc6IC41ZW0gMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogM3B4O1xufVxuXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQgLmljb24ge1xuICBoZWlnaHQ6IDI0cHg7XG4gIHRvcDogLTRweDtcbiAgd2lkdGg6IDI0cHg7XG59XG5cbi5zZWFyY2gtZm9ybSBidXR0b24ge1xuICBmaWxsOiAjZmZmO1xufVxuXG4uc2VhcmNoLWZvcm0gYnV0dG9uOmZvY3VzLFxuLnNlYXJjaC1mb3JtIGJ1dHRvbjpob3ZlciB7XG4gIGZpbGw6ICNmZmY7XG59XG5cbi8qICNcbi8qICMjIFNlYXJjaCBGb3JtXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWFyY2gtZm9ybSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lbnRyeS1jb250ZW50IC5zZWFyY2gtZm9ybSxcbi5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB3aWR0aDogNTAlO1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuc2VhcmNoIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4ud2lkZ2V0X3NlYXJjaCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbmlucHV0OmZvY3VzOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5pbnB1dDpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKiBGaXJlZm94IDE4LSAqL1xuaW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIEZpcmVmb3ggMTkrICovXG5pbnB1dDpmb2N1czotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIG9sZElFIPCfmIkgKi9cbi53aWRnZXRfc2VhcmNoIC5zZWFyY2gtZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0IHtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICBvcGFjaXR5OiAuNTtcbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG4vKiAjIyBUaXRsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFyY2hpdmUtZGVzY3JpcHRpb24gLmVudHJ5LXRpdGxlLFxuLmFyY2hpdmUtdGl0bGUsXG4uYXV0aG9yLWJveC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuXG4uZW50cnktdGl0bGUgYSxcbi5zaWRlYmFyIC53aWRnZXQtdGl0bGUgYSB7XG4gIGNvbG9yOiAjMjIyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS10aXRsZSBhOmZvY3VzLFxuLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogIzFhYmVlZDtcbn1cblxuLndpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnNpZGViYXIgLndpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLmFyY2hpdmUtZGVzY3JpcHRpb24sXG4gIC5wb3N0cy1wYWdlLWRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4vKiAjIyBXb3JkUHJlc3Ncbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuYS5hbGlnbmNlbnRlciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbmEuYWxpZ25ub25lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuYS5hbGlnbmxlZnQsXG5hLmFsaWdubm9uZSxcbmEuYWxpZ25yaWdodCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmFsaWduY2VudGVyLFxuaW1nLmNlbnRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDI0cHg7XG59XG5cbi5hbGlnbm5vbmUsXG5pbWcuYWxpZ25ub25lIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0LFxuYS5hbGlnbmxlZnQsXG5pbWcuYWxpZ25sZWZ0IHtcbiAgbWFyZ2luOiAwIDI0cHggMjRweCAwO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0LFxuYS5hbGlnbnJpZ2h0LFxuaW1nLmFsaWducmlnaHQge1xuICBtYXJnaW46IDAgMCAyNHB4IDI0cHg7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24sXG4ud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmVudHJ5LWNvbnRlbnQgcC53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZW50cnktY29udGVudCAud3AtYXVkaW8tc2hvcnRjb2RlLFxuLmVudHJ5LWNvbnRlbnQgLndwLXBsYXlsaXN0LFxuLmVudHJ5LWNvbnRlbnQgLndwLXZpZGVvIHtcbiAgbWFyZ2luOiAwIDAgMjhweDtcbn1cblxuLyogIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ud2lkZ2V0IHA6bGFzdC1jaGlsZCxcbi53aWRnZXQgdWwgPiBsaTpsYXN0LW9mLXR5cGUsXG4ud2lkZ2V0LWFyZWEgLndpZGdldDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IHVsID4gbGkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLndpZGdldCB1bCA+IGxpOmxhc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IG9sID4gbGkge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0ZXh0LWluZGVudDogLTIwcHg7XG59XG5cbi53aWRnZXQgbGkgbGkge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndpZGdldF9jYWxlbmRhciB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRkLFxuLndpZGdldF9jYWxlbmRhciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogIyMgRmVhdHVyZWQgQ29udGVudFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZmVhdHVyZWQtY29udGVudCAuZW50cnkge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZmVhdHVyZWQtY29udGVudCAuZW50cnk6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZlYXR1cmVkLWNvbnRlbnQgLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4vKlxuV2lkZ2V0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ud2lkZ2V0IHA6bGFzdC1jaGlsZCxcbi53aWRnZXQgdWwgPiBsaTpsYXN0LW9mLXR5cGUsXG4ud2lkZ2V0LWFyZWEgLndpZGdldDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IHVsID4gbGkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLndpZGdldCB1bCA+IGxpOmxhc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4ud2lkZ2V0IG9sID4gbGkge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0ZXh0LWluZGVudDogLTIwcHg7XG59XG5cbi53aWRnZXQgbGkgbGkge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLndpZGdldF9jYWxlbmRhciB0YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRkLFxuLndpZGdldF9jYWxlbmRhciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogIyBGb290ZXIgV2lkZ2V0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci13aWRnZXRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogNjBweCAwO1xufVxuXG4uZm9vdGVyLXdpZGdldHMgLndyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5mb290ZXItd2lkZ2V0cy0xLFxuLmZvb3Rlci13aWRnZXRzLTIsXG4uZm9vdGVyLXdpZGdldHMtMyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgcGFkZGluZzogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmZvb3Rlci13aWRnZXRzLTEsXG4gIC5mb290ZXItd2lkZ2V0cy0yLFxuICAuZm9vdGVyLXdpZGdldHMtMyB7XG4gICAgZmxleC1iYXNpczogMzQwcHg7XG4gICAgbWFyZ2luOiAyMHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuZm9vdGVyLXdpZGdldHMtMSxcbiAgLmZvb3Rlci13aWRnZXRzLTIsXG4gIC5mb290ZXItd2lkZ2V0cy0zIHtcbiAgICBmbGV4LWJhc2lzOiAzODBweDtcbiAgICBtYXJnaW46IDIwcHg7XG4gIH1cbn1cblxuLyogIyBQbHVnaW5zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAjIyBHZW5lc2lzIGVOZXdzIEV4dGVuZGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaWRlYmFyIC5lbmV3cy13aWRnZXQsXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnNpZGViYXIgLndpZGdldC5lbmV3cy13aWRnZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IGlucHV0LFxuLnNpZGViYXIgLmVuZXdzLXdpZGdldCBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyMjI7XG59XG5cbi5zaWRlYmFyIC5lbmV3cy13aWRnZXQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYWJlZWQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzIyMjtcbn1cblxuLmVuZXdzLXdpZGdldCBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLmVuZXdzLXdpZGdldCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmVuZXdzIGZvcm0gKyBwIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLyogIyMgSmV0cGFja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jd3BzdGF0cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qICMgU2l0ZSBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5zaXRlLWhlYWRlciA+IC53cmFwIHtcbiAgcGFkZGluZzogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuc2l0ZS1oZWFkZXIgPiAud3JhcCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgfVxufVxuXG4vKiAjIyBUaXRsZSBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aXRsZS1hcmVhIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAudGl0bGUtYXJlYSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMwMHB4O1xuICB9XG59XG5cbi5oZWFkZXItaW1hZ2UgLnRpdGxlLWFyZWEge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuaGVhZGVyLWltYWdlIC50aXRsZS1hcmVhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4uaGVhZGVyLWZ1bGwtd2lkdGggLnRpdGxlLWFyZWEge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zaXRlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uc2l0ZS10aXRsZSBhLFxuLnNpdGUtdGl0bGUgYTpmb2N1cyxcbi5zaXRlLXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogIzIyMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uaGVhZGVyLWltYWdlIC5zaXRlLXRpdGxlID4gYSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi1oZWlnaHQ6IDkwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnNpdGUtZGVzY3JpcHRpb24sXG4uc2l0ZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhlYWRlci1pbWFnZSAuc2l0ZS1kZXNjcmlwdGlvbixcbi5oZWFkZXItaW1hZ2UgLnNpdGUtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG5cbi8qICMjIFdpZGdldCBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWhlYWRlciAud2lkZ2V0LWFyZWEge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuc2l0ZS1oZWFkZXIgLndpZGdldC1hcmVhIHtcbiAgICB3aWR0aDogNjIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5zaXRlLWhlYWRlciAud2lkZ2V0LWFyZWEge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiA4MDBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxufVxuXG4vKiAjIFNpdGUgTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogR2VuZXNpcyBOYXZpZ2F0aW9uICovXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogZml4IHRvIHJlbW92ZSB1bndhbnRlZCBzcGFjZSBiZXR3ZWVuIG5hdiBpdGVtcyAtIHRoYW5rcyBSb2IgTmV1IC0+IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL3JvYm5ldS8wYWQyODM3MzdkODA4MDJjYjBlMCAqL1xuLmdlbmVzaXMtbmF2LW1lbnUge1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogLjAwMXB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLmdlbmVzaXMtbmF2LW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAuZ2VuZXNpcy1uYXYtbWVudSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyIC5nZW5lc2lzLW5hdi1tZW51IGEge1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLm5hdi1zZWNvbmRhcnkgLmdlbmVzaXMtbmF2LW1lbnUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmF2LXByaW1hcnkgLndyYXAge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubm8tanMgLmdlbmVzaXMtbmF2LW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSBhIHtcbiAgY29sb3I6ICM2NjY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzMnB4IDMwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMzQ3XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQ6IG5vcm1hbCAxNnB4LzEgJ2Rhc2hpY29ucyc7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6Zm9jdXMsXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgLmN1cnJlbnQtbWVudS1pdGVtID4gYTpob3Zlcixcbi5nZW5lc2lzLW5hdi1tZW51IGE6Zm9jdXMsXG4uZ2VuZXNpcy1uYXYtbWVudSBhOmhvdmVyIHtcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSB7XG4gIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgIzIyMjtcbiAgbGVmdDogLTk5OTlweDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogOTk7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxufVxuXG4ubm8tanMgLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXI6IDFweCBkb3R0ZWQgIzIyMjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSBhIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbn1cblxuLm5vLWpzIC5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSBhIHtcbiAgd2lkdGg6IDMwMHB4O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgbWFyZ2luOiAtNTZweCAwIDAgMTk5cHg7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW06aG92ZXIge1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgbGVmdDogYXV0bztcbiAgb3BhY2l0eTogMTtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgPiAuZmlyc3QgPiBhIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSA+IC5sYXN0ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51ID4gLnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSBsaSB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiAjIyBBY2Nlc3NpYmxlIE1lbnVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm1lbnUgLm1lbnUtaXRlbTpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5tZW51IC5tZW51LWl0ZW0gPiBhOmZvY3VzICsgdWwuc3ViLW1lbnUsXG4ubWVudSAubWVudS1pdGVtLnNmSG92ZXIgPiB1bC5zdWItbWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tZW51LXRvZ2dsZSxcbi5zdWItbWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qICMjIFNpdGUgSGVhZGVyIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtaGVhZGVyIC5nZW5lc2lzLW5hdi1tZW51IGxpIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8qICMjIFByaW1hcnkgSGVhZGVyIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5hdi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDY4JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDY4JTtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIgLm5hdi1oZWFkZXIgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2l0ZS1oZWFkZXIgLm5hdi1oZWFkZXIgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSBhIHtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuLyogIyMgRm9vdGVyIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtZm9vdGVyIC5nZW5lc2lzLW5hdi1tZW51IHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi5zaXRlLWZvb3RlciAuZ2VuZXNpcy1uYXYtbWVudSBhIHtcbiAgcGFkZGluZzogMCAyMHB4IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi8qIEdlbmVzaXMgUmVzcG9uc2l2ZSBNZW51ICovXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLndyYXAge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZ2VuZXNpcy1za2lwLWxpbmsgLnNraXAtbGluay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZW51LXRvZ2dsZSxcbi5zdWItbWVudS10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiZWVkO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGNvbG9yOiAjMjIyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLm1lbnUtdG9nZ2xlLFxuICAuc3ViLW1lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4ubWVudS10b2dnbGU6Zm9jdXMsXG4ubWVudS10b2dnbGU6aG92ZXIsXG4uc3ViLW1lbnUtdG9nZ2xlOmZvY3VzLFxuLnN1Yi1tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYWJlZWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuLm1lbnUtdG9nZ2xlIHtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDA7XG59XG5cbi5tZW51LXRvZ2dsZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMWFiZWVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiZWVkO1xufVxuXG4ubWVudS10b2dnbGUuYWN0aXZhdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM1XCI7XG59XG5cbi5tZW51LXRvZ2dsZTpmb2N1cyxcbi5tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxYWJlZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjMWFiZWVkO1xufVxuXG4ubWVudS10b2dnbGU6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG59XG5cbi5zdWItbWVudS10b2dnbGUge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDEzcHggMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzFhYmVlZDtcbn1cblxuLnN1Yi1tZW51LXRvZ2dsZTpmb2N1cyxcbi5zdWItbWVudS10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogIzFhYmVlZDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5zdWItbWVudSAuc3ViLW1lbnUtdG9nZ2xlIHtcbiAgcGFkZGluZzogMTJweCAxMHB4O1xufVxuXG4uc3ViLW1lbnUtdG9nZ2xlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi5zdWItbWVudS10b2dnbGUuYWN0aXZhdGVkOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtOmZvY3VzLFxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW06aG92ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtIGEge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtIGEge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDMycHggMzBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgYSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgYm9yZGVyOiAxcHggZG90dGVkICMyMjI7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gPiBhOmZvY3VzIHVsLnN1Yi1tZW51LFxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gPiBhOmZvY3VzIHVsLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjM0N1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250OiBub3JtYWwgMTZweC8xICdkYXNoaWNvbnMnO1xuICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgIzIyMjtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbTpob3ZlciA+IC5zdWItbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MXB4KSB7XG4gIC5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICB9XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4uZ2VuZXNpcy1uYXYtbWVudSAuY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgLmN1cnJlbnQtbWVudS1pdGVtID4gYTpmb2N1cyxcbi5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmhvdmVyLFxuLmdlbmVzaXMtbmF2LW1lbnUgYTpmb2N1cyxcbi5nZW5lc2lzLW5hdi1tZW51IGE6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2NjYyAhaW1wb3J0YW50O1xuICBjb2xvcjogIzFhYmVlZCAhaW1wb3J0YW50O1xufVxuXG4vKiBTb2NpYWwgbmF2ICovXG4uc29jaWFsLW5hdmlnYXRpb24ge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLnNvY2lhbC1uYXZpZ2F0aW9uIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5zb2NpYWwtbmF2aWdhdGlvbiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLnNvY2lhbC1uYXZpZ2F0aW9uIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIGNvbG9yOiAjMWFiZWVkO1xuICBmaWxsOiAjMWFiZWVkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAwIDFlbSAuNWVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5zb2NpYWwtbmF2aWdhdGlvbiBhOmZvY3VzLFxuLnNvY2lhbC1uYXZpZ2F0aW9uIGE6aG92ZXIge1xuICBmaWxsOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiZWVkO1xufVxuXG4uc29jaWFsLW5hdmlnYXRpb24gLmljb24ge1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5cbi5zb2NpYWwtbmF2aWdhdGlvbiAuaWNvbjpmb2N1cyxcbi5zb2NpYWwtbmF2aWdhdGlvbiAuaWNvbjpob3ZlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCAjY2NjIGRvdHRlZDtcbn1cblxuLyogIyBIb21lIFBhZ2UgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaG9tZSAud2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZyb250LXBhZ2UtMSB7XG4gIGJhY2tncm91bmQ6ICM0Njc5OTc7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZnJvbnQtcGFnZS0xIC53cmFwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZyb250LXBhZ2UtMSAud2lkZ2V0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZyb250LXBhZ2UtMSAud2lkZ2V0LXRpdGxlIHtcbiAgZm9udC1zaXplOiA0NnB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZnJvbnQtcGFnZS0xIC5iYW5uZXItbGVmdCB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMzZweCAxMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLmZyb250LXBhZ2UtMSAuYmFubmVyLWxlZnQge1xuICAgIHdpZHRoOiA3OCU7XG4gIH1cbn1cblxuLmZyb250LXBhZ2UtMSAuYmFubmVyLXJpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgLmZyb250LXBhZ2UtMSAuYmFubmVyLXJpZ2h0IHtcbiAgICB3aWR0aDogMjIlO1xuICB9XG59XG5cbi5mcm9udC1wYWdlLTEgLmJhbm5lci1yaWdodCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAuZnJvbnQtcGFnZS0xIC5iYW5uZXItcmlnaHQgaW1nIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbi5mcm9udC1wYWdlLTIge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi93cC1jb250ZW50L3VwbG9hZHMvMjAxNi8wMy9vcmFuZ2VUcmkucG5nXCIpIGNlbnRlciAtMXB4IG5vLXJlcGVhdDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBib3JkZXItdG9wOiA0cHggc29saWQgI2ZlNjAwMDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNmZTYwMDA7XG59XG5cbi5mcm9udC1wYWdlLTIgLmxvZ28tY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZnJvbnQtcGFnZS0yIC5sb2dvLWNvbnRhaW5lciBpbWcge1xuICBtYXJnaW46IDAgMTVweDtcbn1cblxuLmZyb250LXBhZ2UtMiBoMy53aWRnZXR0aXRsZS53aWRnZXQtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC00MnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmZyb250LXBhZ2UtMyAud3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDA7XG59XG5cbi5mcm9udC1wYWdlLTNhLFxuLmZyb250LXBhZ2UtM2IsXG4uZnJvbnQtcGFnZS0zYyB7XG4gIGZsZXg6IDEgMCAzMyU7XG59XG5cbi5ob21lIGEuYnV0dG9uIHtcbiAgcGFkZGluZzogMTlweCAzMHB4IDE5cHggIWltcG9ydGFudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY2Njtcbn1cblxuLmhvbWUgLndpZGdldF90ZXh0IGg0IHtcbiAgY29sb3I6ICM2NjY7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhvbWUgLndpZGdldF90ZXh0IGEuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBhLmJ1dHRvbi5vcmFuZ2Uge1xuICBib3JkZXItY29sb3I6ICNmZTYwMDA7XG4gIGNvbG9yOiAjZmU2MDAwO1xuICBmb250LWZhbWlseTogbGF0byxhcmlhbCxzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24ub3JhbmdlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZlNjAwMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBhLmJ1dHRvbi5ncmVlbiB7XG4gIGJvcmRlci1jb2xvcjogIzY2YmIxMDtcbiAgY29sb3I6ICM2NmJiMTA7XG4gIGZvbnQtZmFtaWx5OiBsYXRvLGFyaWFsLHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBhLmJ1dHRvbi5ncmVlbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM2NmJiMTA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24uYmx1ZSB7XG4gIGJvcmRlci1jb2xvcjogIzFhOTdlMztcbiAgY29sb3I6ICMxYTk3ZTM7XG4gIGZvbnQtZmFtaWx5OiBsYXRvLGFyaWFsLHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBhLmJ1dHRvbi5ibHVlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzFhOTdlMztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mcm9udC1wYWdlLTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDY3OTk3O1xuICBwYWRkaW5nOiAzMHB4IDAgMDtcbn1cblxuLmZyb250LXBhZ2UtNCAud2lkZ2V0LXRpdGxlIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiAjIENvbnRlbnQgQXJlYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogIyMgRW50cmllc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZW50cnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1JTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLmVudHJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi5hcmNoaXZlIC5lbnRyeSxcbi5ibG9nIC5lbnRyeSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgb2wsXG4uZW50cnktY29udGVudCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDI4cHg7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xufVxuXG4uZW50cnktY29udGVudCBvbCA+IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xufVxuXG4uZW50cnktY29udGVudCB1bCA+IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG4uZW50cnktY29udGVudCBvbCBvbCxcbi5lbnRyeS1jb250ZW50IHVsIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLmJwZkJ0bkwge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2NWIxNztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5icGZCdG5MOmZvY3VzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMjc0YmU7XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnBmQnRuTDpob3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDI3NGJlO1xufVxuXG4uZW50cnksXG4ucGFnZS5wYWdlLXRlbXBsYXRlLXBhZ2VfYmxvZy1waHAgLmVudHJ5IHtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNiYmI7XG59XG5cbmgyLmVudHJ5LXRpdGxlIGEge1xuICBjb2xvcjogIzFhYmVlZDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaDIuZW50cnktdGl0bGUgYTpmb2N1cyxcbmgyLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogIzIyMjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzIyMjtcbn1cblxuLyogIyMgRW50cnkgTWV0YVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5wLmVudHJ5LW1ldGEge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1jb250ZW50IC5lbnRyeS1pbWFnZSB7XG4gIG1heC13aWR0aDogMjAwcHg7XG59XG5cbi5lbnRyeS1oZWFkZXIgLmVudHJ5LW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG4uZW50cnktZm9vdGVyIC5lbnRyeS1tZXRhIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xufVxuXG4uZW50cnktY2F0ZWdvcmllcyxcbi5lbnRyeS10YWdzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5lbnRyeS1jb21tZW50cy1saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjAxNFwiO1xuICBtYXJnaW46IDAgNnB4IDAgMnB4O1xufVxuXG4vKiAjIyBQYWdpbmF0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYWdpbmF0aW9uIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogNSUgYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbjogNDBweCAwO1xuICB9XG59XG5cbi5hZGphY2VudC1lbnRyeS1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmFyY2hpdmUtcGFnaW5hdGlvbiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5hcmNoaXZlLXBhZ2luYXRpb24gLmFjdGl2ZSBhLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBhOmZvY3VzLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ2Nzk5NztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hcmNoaXZlLXBhZ2luYXRpb24gbGkgYSB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5hcmNoaXZlLXBhZ2luYXRpb24gbGkgYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiAjIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29tbWVudC1yZXNwb25kLFxuLmVudHJ5LWNvbW1lbnRzLFxuLmVudHJ5LXBpbmdzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1JTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLmNvbW1lbnQtcmVzcG9uZCxcbiAgLmVudHJ5LWNvbW1lbnRzLFxuICAuZW50cnktcGluZ3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLmNvbW1lbnQtcmVzcG9uZCxcbi5lbnRyeS1waW5ncyB7XG4gIHBhZGRpbmc6IDYwcHggNjBweCAzMnB4O1xufVxuXG4uZW50cnktY29tbWVudHMge1xuICBwYWRkaW5nOiA2MHB4O1xufVxuXG4uY29tbWVudC1saXN0IGxpIHtcbiAgcGFkZGluZzogNDBweCAwIDAgMzBweDtcbn1cblxuLmNvbW1lbnQtbGlzdCAuZGVwdGgtMSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmNvbW1lbnQtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLmNvbW1lbnQtY29udGVudCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uY29tbWVudC1jb250ZW50IHVsID4gbGkge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmNvbW1lbnQtcmVzcG9uZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jb21tZW50LXJlc3BvbmQgaW5wdXRbdHlwZT1cInVybFwiXSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG4uY29tbWVudC1oZWFkZXIgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1waW5ncyAucmVwbHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAjIFNpZGViYXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2lkZWJhciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5zaWRlYmFyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi5zaWRlYmFyIC53aWRnZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1JTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLnNpZGViYXIgLndpZGdldCB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8qICMgQ3VzdG9tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGluay1oYXMtaW1hZ2Uge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNpZGViYXIgYSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzIyMjtcbn1cblxuLnNpZGViYXIgYTpmb2N1cyxcbi5zaWRlYmFyIGE6aG92ZXIge1xuICBjb2xvcjogIzFhYmVlZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzFhYmVlZDtcbn1cblxuLnNpZGViYXIgdWwgbGkge1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cblxuLyogIyBTaXRlIEZvb3RlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnNpdGUtZm9vdGVyIGEge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNpdGUtZm9vdGVyIGE6Zm9jdXMsXG4uc2l0ZS1mb290ZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjY2NjO1xufVxuXG4uc2l0ZS1mb290ZXIgcCB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5zaXRlLWZvb3RlciBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYnJhbmRpZC1sb2dvIHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IDFweDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMTRweDtcbiAgZmlsbDogI2NjYztcbn1cblxuLmJyYW5kaWQtbG9nbyBzdmc6Zm9jdXMsXG4uYnJhbmRpZC1sb2dvIHN2Zzpob3ZlciB7XG4gIGZpbGw6ICNmZmY7XG59XG5cbi5zaXRlLWZvb3RlciAuaWNvbi1oZWFydCB7XG4gIGZpbGw6IHRyYW5zcGFyZW50O1xuICBzdHJva2U6ICNmZmY7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG59XG5cbi8qICMgQ3VzdG9tIENsYXNzZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jZW50ZXItYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuYS5icGZCdG4sXG5pbnB1dC5icGZCdG4ge1xuICBiYWNrZ3JvdW5kOiAjZjY1YjE3O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXgtd2lkdGg6IDI3NXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsYXJpYWwsc2Fucy1zZXJpZjtcbn1cblxuYS5icGZCdG4sXG5pbnB1dC5icGZCdG5MIHtcbiAgYmFja2dyb3VuZDogI2Y2NWIxNztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29sb3I6ICNmZmY7XG4gIG1heC13aWR0aDogMTUwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsYXJpYWwsc2Fucy1zZXJpZjtcbn1cblxuYS5icGZCdG4sXG5pbnB1dC5icGZCdG5DVEEge1xuICBiYWNrZ3JvdW5kOiAjZjY1YjE3O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb2xvcjogI2ZmZjtcbiAgbWF4LXdpZHRoOiAxNTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQsYXJpYWwsc2Fucy1zZXJpZjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmEuYnBmQnRuLFxuaW5wdXQuYnBmQnRuU0RCUiB7XG4gIGJhY2tncm91bmQ6ICNmNjViMTc7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXgtd2lkdGg6IDE1MDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCxhcmlhbCxzYW5zLXNlcmlmO1xufVxuXG5hLmJwZkJ0bjpob3ZlcixcbmlucHV0LmJwZkJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM0NDQ7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubG1zLWxpc3QtbWVudSBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5saS5sbXMtY3VycmVudC1tZW51LWl0ZW0gYSB7XG4gIGNvbG9yOiAjZjY1YjE3O1xufVxuXG4ubG1zLXF1aWNrLW1lbnUgYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW1hZ2UtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uYWNjb3JkaW9uLWxhYmVsLWJvbGQgLmZsLWFjY29yZGlvbi1idXR0b24tbGFiZWwge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ubXAtcmFkaWFsLWJhY2tncm91bmQgLmZsLXJvdy1jb250ZW50LXdyYXAge1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsICNmZmZmZmYgMTIlLCAjZWRmNWY5IDk5JSk7XG59XG5cbi53aWRnZXQgLnN0cm9uZy12aWV3Lm1vZGVybiAudGVzdGltb25pYWwtY29udGVudDphZnRlcixcbi53aWRnZXQgLnN0cm9uZy12aWV3Lm1vZGVybiAudGVzdGltb25pYWwtY29udGVudDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5tb2Rlcm4gLnRlc3RpbW9uaWFsLW5hbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5kZWZhdWx0IC50ZXN0aW1vbmlhbC1oZWFkaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN0cm9uZy12aWV3LmRlZmF1bHQubXAtdGVzdGltb25pYWwtYm9yZGVyIC50ZXN0aW1vbmlhbC1pbm5lciB7XG4gIGJvcmRlci1jb2xvcjogIzMzMztcbn1cblxuLnN0cm9uZy12aWV3LmRlZmF1bHQubXAtdGVzdGltb25pYWwtYm9yZGVyIC50ZXN0aW1vbmlhbCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLndpZGdldC5zdHJvbmctdGVzdGltb25pYWxzLXZpZXctd2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLndwbXNsaWRlci1jb250cm9scyBhIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYWdlIC5zdHJvbmctdmlldy5wYWdlci1zdHlsZS1idXR0b25zIC53cG1zbGlkZXItcGFnZXItbGluazpiZWZvcmUge1xuICBjb2xvcjogIzAwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYxcHgpIHtcbiAgI3RvVG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDVweDtcbiAgICByaWdodDogMTBweDtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbiN0b1RvcDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMzQzXCI7XG4gIGZvbnQtZmFtaWx5OiBkYXNoaWNvbnM7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDcwLCAxMjEsIDE1MSwgMC44KTtcbiAgZm9udC1zaXplOiAzNXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuI3RvVG9wLmdyZWVuOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMzUsIDE4MywgNjcsIDAuOCk7XG59XG5cbi5wYWdlIC5fZHBkLWJ1dHRvbl9jdGEge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjFweCkge1xuICAucGFnZSAuX2RwZC1idXR0b25fY3RhIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gIC5wYWdlIC5fZHBkLWJ1dHRvbl9jdGFfdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nby1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nbyB7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nbyBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTA2cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvd3AtY29udGVudC91cGxvYWRzLzIwMTgvMDMvUEZMb2dvLW5ldy5zdmdcIikgbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogRmVhdHVyZXMgKi9cbi5zaXRlLWNvbnRhaW5lciAuZmVhdHVyZXMgdWwgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2l0ZS1jb250YWluZXIgLmZlYXR1cmVzIHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2l0ZS1jb250YWluZXIgLmZlYXR1cmVzIHVsIGxpIC5mZWF0dXJlLWljb24ge1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICB3aWR0aDogNjBweDtcbn1cblxuLmZlYXR1cmVzIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmZlYXR1cmVzIHVsIGxpIC5mZWF0dXJlLWljb24ge1xuICBjb2xvcjogIzQ2Nzk5Nztcbn1cblxuLmZlYXR1cmVzIHAge1xuICBtYXJnaW4tbGVmdDogNjBweDtcbn1cblxuLmZlYXR1cmVzLXNlY3Rpb24gaDIge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZmwtYnVpbGRlci1jb250ZW50IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIFwiTGF0b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG59XG5cbi5ycDR3cC1yZWxhdGVkLXBvc3RzIHtcbiAgbWFyZ2luOiAzMHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wcmV2LW5leHQtbmF2aWdhdGlvbiB7XG4gIG1hcmdpbjogMzBweCAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByZXYtbmV4dC1uYXZpZ2F0aW9uIC5idXR0b24ge1xuICB3aWR0aDogMTUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogIyBQcmludCBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSBwcmludCB7XG4gICosXG4gICo6OmFmdGVyLFxuICAqOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICBhYmJyW3RpdGxlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgfVxuICAuc2l0ZS10aXRsZSA+IGE6OmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICBpbWcsXG4gIHRyIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAyY20gLjVjbTtcbiAgfVxuICBoMixcbiAgaDMsXG4gIHAge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGJsb2NrcXVvdGUsXG4gIHByZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgLmNvbnRlbnQsXG4gIC5jb250ZW50LXNpZGViYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5icmVhZGNydW1iLFxuICAuY29tbWVudC1lZGl0LWxpbmssXG4gIC5jb21tZW50LWZvcm0sXG4gIC5jb21tZW50LWxpc3QgLnJlcGx5IGEsXG4gIC5jb21tZW50LXJlcGx5LXRpdGxlLFxuICAuZWRpdC1saW5rLFxuICAuZW50cnktY29tbWVudHMtbGluayxcbiAgLmVudHJ5LWZvb3RlcixcbiAgLmdlbmVzaXMtYm94LFxuICAuaGVhZGVyLXdpZGdldC1hcmVhLFxuICAuaGlkZGVuLXByaW50LFxuICAuaG9tZS10b3AsXG4gIC5uYXYtcHJpbWFyeSxcbiAgLm5hdi1zZWNvbmRhcnksXG4gIC5wb3N0LWVkaXQtbGluayxcbiAgLnNpZGViYXIsXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudGl0bGUtYXJlYSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zaXRlLXRpdGxlID4gYSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgfVxuICAuc2l0ZS1pbm5lciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEwMHB4O1xuICB9XG4gIC5hdXRob3ItYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIHdpZG93czogMztcbiAgfVxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBibG9ja3F1b3RlLFxuICBwcmUsXG4gIHRhYmxlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgZGwsXG4gIG9sLFxuICB1bCB7XG4gICAgcGFnZS1icmVhay1iZWZvcmU6IGF2b2lkO1xuICB9XG59XG4iLCIvKiFcblx0VGhlbWUgTmFtZTogUHJvZHVjdGl2ZSBGbG91cmlzaGluZyBUaGVtZVxuICBUaGVtZSBVUkk6IGh0dHBzOi8vdGhlYnJhbmRpZC5jb21cblx0RGVzY3JpcHRpb246IEN1c3RvbSBHZW5lc2lzIFRoZW1lIGJ5IGJyYW5kaURcblx0QXV0aG9yOiBUaGUgYnJhbmRpRFxuXHRBdXRob3IgVVJJOiBodHRwczovL3RoZWJyYW5kaWQuY29tXG5cblx0VmVyc2lvbjogMS4xLjlcblxuXHRUYWdzOiBibGFjaywgcmVkLCB3aGl0ZSwgb25lLWNvbHVtbiwgdHdvLWNvbHVtbnMsIHRocmVlLWNvbHVtbnMsIGxlZnQtc2lkZWJhciwgcmlnaHQtc2lkZWJhciwgcmVzcG9uc2l2ZS1sYXlvdXQsIGFjY2Vzc2liaWxpdHktcmVhZHksIGN1c3RvbS1iYWNrZ3JvdW5kLCBjdXN0b20tY29sb3JzLCBjdXN0b20taGVhZGVyLCBjdXN0b20tbWVudSwgZmVhdHVyZWQtaW1hZ2VzLCBmdWxsLXdpZHRoLXRlbXBsYXRlLCBydGwtbGFuZ3VhZ2Utc3VwcG9ydCwgc3RpY2t5LXBvc3QsIHRoZW1lLW9wdGlvbnMsIHRocmVhZGVkLWNvbW1lbnRzLCB0cmFuc2xhdGlvbi1yZWFkeVxuXG5cdFRlbXBsYXRlOiBnZW5lc2lzXG5cblx0TGljZW5zZTogR1BMLTIuMCtcblx0TGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcblxuXHRUZXh0IERvbWFpbjogZ2VuZXNpcy1zdGFydGVyLWJyYW5kaWRcbiovXG5cbi8vIEltcG9ydCBCb3VyYm9uLCBOZWF0LCBzYXNzLXJlbVxuQGltcG9ydCAnYm91cmJvbic7XG5AaW1wb3J0ICduZWF0Jztcbi8vQGltcG9ydCAnLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtcmVtL3JlbSc7XG4vLyBJbXBvcnQgc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9yZXNldCc7XG5AaW1wb3J0ICdwYXJ0aWFscy92YXJpYWJsZXMnO1xuQGltcG9ydCAncGFydGlhbHMvZGVmYXVsdHMnO1xuQGltcG9ydCAncGFydGlhbHMvYWNjZXNzaWJpbGl0eSc7XG5AaW1wb3J0ICdwYXJ0aWFscy9sYXlvdXQnO1xuQGltcG9ydCAncGFydGlhbHMvY29tbW9uLWNsYXNzZXMnO1xuQGltcG9ydCAncGFydGlhbHMvd2lkZ2V0cyc7XG5AaW1wb3J0ICdwYXJ0aWFscy9wbHVnaW5zJztcbkBpbXBvcnQgJ3BhcnRpYWxzL2hlYWRlcic7XG5AaW1wb3J0ICdwYXJ0aWFscy9uYXZpZ2F0aW9uJztcbkBpbXBvcnQgJ3BhcnRpYWxzL2hvbWUtcGFnZSc7XG5AaW1wb3J0ICdwYXJ0aWFscy9jb250ZW50LWFyZWEnO1xuQGltcG9ydCAncGFydGlhbHMvc2l0ZS1mb290ZXInO1xuQGltcG9ydCAncGFydGlhbHMvY3VzdG9tLWNsYXNzZXMnO1xuQGltcG9ydCAncGFydGlhbHMvcHJpbnQtbWVkaWEtcXVlcmllcyc7XG4vLyBlbmQgb2YgZmlsZVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaWYgJGJvcmRlci1ib3gtc2l6aW5nID09IHRydWUge1xuICBodG1sIHsgLy8gaHR0cDovL2JpdC5seS8xcWsydFZSXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gICoge1xuICAgICYsXG4gICAgJjo6YWZ0ZXIsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG4iLCIvKiAjIEhUTUw1IFJlc2V0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qICMjIEJhc2VsaW5lIE5vcm1hbGl6ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBub3JtYWxpemUuY3NzIHY0LjEuMSB8IE1JVCBMaWNlbnNlIHwgaHR0cDovL25lY29sYXMuZ2l0aHViLmlvL25vcm1hbGl6ZS5jc3MvICovXG5cbmh0bWwge1xuXHRmb250LWZhbWlseTogc2Fucy1zZXJpZjtcblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keXttYXJnaW46MH1hcnRpY2xlLGFzaWRlLGRldGFpbHMsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixtYWluLG1lbnUsbmF2LHNlY3Rpb24sc3VtbWFyeXtkaXNwbGF5OmJsb2NrfWF1ZGlvLGNhbnZhcyxwcm9ncmVzcyx2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9ja31hdWRpbzpub3QoW2NvbnRyb2xzXSl7ZGlzcGxheTpub25lO2hlaWdodDowfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfVtoaWRkZW5dLHRlbXBsYXRle2Rpc3BsYXk6bm9uZX1he2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDpvYmplY3RzfWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZS13aWR0aDowfWFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206bm9uZTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkfWIsc3Ryb25ne2ZvbnQtd2VpZ2h0OmluaGVyaXQ7Zm9udC13ZWlnaHQ6Ym9sZGVyfWRmbntmb250LXN0eWxlOml0YWxpY31oMXtmb250LXNpemU6MmVtO21hcmdpbjouNjdlbSAwfW1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmYwO2NvbG9yOiMwMDB9c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfWltZ3tib3JkZXItc3R5bGU6bm9uZX1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWZpZ3VyZXttYXJnaW46MWVtIDQwcHh9aHJ7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MDtvdmVyZmxvdzp2aXNpYmxlfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udDppbmhlcml0O21hcmdpbjowfW9wdGdyb3Vwe2ZvbnQtd2VpZ2h0OjcwMH1idXR0b24saW5wdXR7b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9W3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF0sYnV0dG9uLGh0bWwgW3R5cGU9YnV0dG9uXXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9ufVt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIsYnV0dG9uOjotbW96LWZvY3VzLWlubmVye2JvcmRlci1zdHlsZTpub25lO3BhZGRpbmc6MH1bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxbdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nLGJ1dHRvbjotbW96LWZvY3VzcmluZ3tvdXRsaW5lOjFweCBkb3R0ZWQgQnV0dG9uVGV4dH1maWVsZHNldHtib3JkZXI6MXB4IHNvbGlkIHNpbHZlcjttYXJnaW46MCAycHg7cGFkZGluZzouMzVlbSAuNjI1ZW0gLjc1ZW19bGVnZW5ke2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6dGFibGU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzowO3doaXRlLXNwYWNlOm5vcm1hbH10ZXh0YXJlYXtvdmVyZmxvdzphdXRvfVt0eXBlPWNoZWNrYm94XSxbdHlwZT1yYWRpb117Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MH1bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcntjb2xvcjppbmhlcml0O29wYWNpdHk6LjU0fTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtmb250OmluaGVyaXR9aHRtbCxpbnB1dFt0eXBlPXNlYXJjaF17Ym94LXNpemluZzpib3JkZXItYm94fSosOmFmdGVyLDpiZWZvcmV7Ym94LXNpemluZzppbmhlcml0fS5hdXRob3ItYm94OmJlZm9yZSwuY2xlYXJmaXg6YmVmb3JlLC5lbnRyeS1jb250ZW50OmJlZm9yZSwuZW50cnk6YmVmb3JlLC5mb290ZXItd2lkZ2V0czpiZWZvcmUsLm5hdi1wcmltYXJ5OmJlZm9yZSwubmF2LXNlY29uZGFyeTpiZWZvcmUsLnBhZ2luYXRpb246YmVmb3JlLC5zaXRlLWNvbnRhaW5lcjpiZWZvcmUsLnNpdGUtZm9vdGVyOmJlZm9yZSwuc2l0ZS1oZWFkZXI6YmVmb3JlLC5zaXRlLWlubmVyOmJlZm9yZSwud2lkZ2V0OmJlZm9yZSwud3JhcDpiZWZvcmV7Y29udGVudDpcIiBcIjtkaXNwbGF5OnRhYmxlfS5hdXRob3ItYm94OmFmdGVyLC5jbGVhcmZpeDphZnRlciwuZW50cnktY29udGVudDphZnRlciwuZW50cnk6YWZ0ZXIsLmZvb3Rlci13aWRnZXRzOmFmdGVyLC5uYXYtcHJpbWFyeTphZnRlciwubmF2LXNlY29uZGFyeTphZnRlciwucGFnaW5hdGlvbjphZnRlciwuc2l0ZS1jb250YWluZXI6YWZ0ZXIsLnNpdGUtZm9vdGVyOmFmdGVyLC5zaXRlLWhlYWRlcjphZnRlciwuc2l0ZS1pbm5lcjphZnRlciwud2lkZ2V0OmFmdGVyLC53cmFwOmFmdGVye2NsZWFyOmJvdGg7Y29udGVudDpcIiBcIjtkaXNwbGF5OnRhYmxlfVxuIiwiLyogIyBEZWZhdWx0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAjIyBUeXBvZ3JhcGhpY2FsIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogJGh0bWwtZm9udC1zaXplO1xuICAvKiAxMHB4IGJyb3dzZXIgZGVmYXVsdCAqL1xufVxuXG4vKiBDaHJvbWUgZml4ICovXG5ib2R5ID4gZGl2IHtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKyAyO1xuICB9XG5cbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJGJhc2UtdGV4dC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRzZXJpZjtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42MjU7XG4gIG1hcmdpbjogMDtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSArIDI7XG4gIH1cbn1cblxuLmJ1dHRvbixcbi5nYWxsZXJ5IGltZyxcbmEsXG5idXR0b24sXG5pbnB1dDpmb2N1cyxcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxudGV4dGFyZWE6Zm9jdXMge1xuXG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbmEge1xuICBjb2xvcjogJGJhc2UtbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJhc2UtbGluay1jb2xvcjtcbn1cblxuYTpmb2N1cyxcbmE6aG92ZXIge1xuICBjb2xvcjogJGJhc2UtbGluay1jb2xvci1ob3ZlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbnAge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG5vbCxcbnVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5saSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuaHIge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMWVtIDA7XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5ibG9ja3F1b3RlLFxuY2l0ZSxcbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiA0MHB4O1xufVxuXG5ibG9ja3F1b3RlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMjAxQ1wiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAzMHB4O1xuICBoZWlnaHQ6IDA7XG4gIGxlZnQ6IC0yMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTEwcHg7XG59XG5cbi8qICMjIEhlYWRpbmdzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogJGhlYWRpbmctZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1saW5lLWhlaWdodDtcbiAgbWFyZ2luOiAwIDAgMjRweDtcbn1cblxuaDEge1xuICBmb250LXNpemU6ICRoMS1mb250LXNpemU7XG5cbn1cblxuaDIge1xuICBmb250LXNpemU6ICRoMi1mb250LXNpemU7XG5cbn1cblxuaDMge1xuICBmb250LXNpemU6ICRoMy1mb250LXNpemU7XG5cbn1cblxuaDQge1xuICBmb250LXNpemU6ICRoNC1mb250LXNpemU7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAkaDUtZm9udC1zaXplO1xuXG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiAkaDYtZm9udC1zaXplO1xuXG59XG5cbi8qIFNWRyBJY29ucyBiYXNlIHN0eWxlcyAqL1xuXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmlsbDogY3VycmVudENvbG9yO1xuICBoZWlnaHQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBBbGlnbiBtb3JlIG5pY2VseSB3aXRoIGNhcGl0YWwgbGV0dGVycyAqL1xuICB0b3A6IC0wLjA2MjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDFlbTtcbn1cblxuLyogIyMgT2JqZWN0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi53cC1jYXB0aW9uLFxuZW1iZWQsXG5pZnJhbWUsXG5pbWcsXG5vYmplY3QsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8qICMjIEdhbGxlcnlcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZ2FsbGVyeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDAgMjhweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTEgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDMzJTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMjUlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDE2LjY2NjYlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAxNC4yODU3JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOSAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDExLjExMTElO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoMm4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoM24rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNG4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNW4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTYgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoNm4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTcgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoN24rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoOG4rMSksXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbTpudGgtY2hpbGQoOW4rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cblxuLmdhbGxlcnkgaW1nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogNHB4O1xufVxuXG4uZ2FsbGVyeSBpbWc6Zm9jdXMsXG4uZ2FsbGVyeSBpbWc6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xufVxuXG4vKiAjIyBGb3Jtc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJGJhc2UtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAxNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuaW5wdXQ6Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJpbWFnZVwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGJhc2UtdGV4dC1jb2xvcjtcbiAgb3BhY2l0eTogMTtcbn1cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRiYXNlLXRleHQtY29sb3I7XG59XG5cbi5idXR0b24sXG5idXR0b24sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhY2NlbnQtY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjb2xvcjogJHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd2lkdGg6IGF1dG87XG4gIGZpbGw6ICR3aGl0ZTtcbn1cblxuLmJ1dHRvbjpmb2N1cyxcbi5idXR0b246aG92ZXIsXG5idXR0b246Zm9jdXMsXG5idXR0b246aG92ZXIsXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbmlucHV0W3R5cGU9XCJyZXNldFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlcixcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5lbnRyeS1jb250ZW50IC5idXR0b246Zm9jdXMsXG4uZW50cnktY29udGVudCAuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuYS5idXR0b246Zm9jdXMsXG5hLmJ1dHRvbjpob3ZlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbmEuYnV0dG9uLnNtYWxsLFxuYnV0dG9uLnNtYWxsLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5zbWFsbCxcbmlucHV0W3R5cGU9XCJyZXNldFwiXS5zbWFsbCxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0uc21hbGwge1xuICBwYWRkaW5nOiA4cHggMTZweDtcbn1cblxuLnNpdGUtY29udGFpbmVyIGJ1dHRvbjpkaXNhYmxlZCxcbi5zaXRlLWNvbnRhaW5lciBidXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4uc2l0ZS1jb250YWluZXIgaW5wdXQ6ZGlzYWJsZWQsXG4uc2l0ZS1jb250YWluZXIgaW5wdXQ6ZGlzYWJsZWQ6aG92ZXIsXG4uc2l0ZS1jb250YWluZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpkaXNhYmxlZCxcbi5zaXRlLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmRpc2FibGVkOmhvdmVyLFxuLnNpdGUtY29udGFpbmVyIGlucHV0W3R5cGU9XCJyZXNldFwiXTpkaXNhYmxlZCxcbi5zaXRlLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwicmVzZXRcIl06ZGlzYWJsZWQ6aG92ZXIsXG4uc2l0ZS1jb250YWluZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpkaXNhYmxlZCxcbi5zaXRlLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgY29sb3I6ICM3Nzc7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qICMjIFRhYmxlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuXG50Ym9keSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbn1cblxudGQsXG50aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBwYWRkaW5nOiA2cHg7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogMCA2cHg7XG59XG5cbnRkOmZpcnN0LWNoaWxkLFxudGg6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4iLCIvLyBDb2xvcnNcbiRibGFjazogIzAwMDtcbiRzb2Z0LWJsYWNrOiAjMjIyO1xuJHdoaXRlOiAjZmZmO1xuJHNvZnQtd2hpdGU6ICNmNWY1ZjU7XG4kZ3JleTogI2NjYztcbiRibHVlOiAjNDY3OTk3O1xuJG9yYW5nZTogI2Y2NWIxNztcbiRtZWQtYmx1ZTogIzAyNzRiZTtcblxuJGJhc2UtY29sb3I6ICRzb2Z0LWJsYWNrO1xuJGFjY2VudC1jb2xvcjogIzFhYmVlZDtcbiRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4kYmFzZS10ZXh0LWNvbG9yOiAkc29mdC1ibGFjaztcblxuJGhlYWRlci1iYWNrZ3JvdW5kOiAjNjY2O1xuJHNpdGUtZm9vdGVyLWJhY2tncm91bmQ6ICM0NzQ3NDc7XG5cbiRiYXNlLWxpbmstY29sb3I6ICRhY2NlbnQtY29sb3I7XG4kYmFzZS1saW5rLWNvbG9yLWhvdmVyOiAkYmFzZS1jb2xvcjtcblxuJHdpZGdldC10aXRsZTogJHdoaXRlO1xuJHdpZGdldC10aXRsZS1iYWNrZ3JvdW5kOiAkc29mdC1ibGFjaztcblxuJG1heC13aWR0aDogMTQwMHB4OyAvLyBHbG9iYWwgU2NyZWVuIFNpemVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNtYWxsMS1zY3JlZW46IDMyMHB4O1xuJHNtYWxsMi1zY3JlZW46IDg2MXB4O1xuJG1lZGl1bS1zY3JlZW46IDEwMjRweDtcbiRsYXJnZS1zY3JlZW46IDEyODBweDtcbiR4bC1zY3JlZW46IDEyODBweDtcblxuLy8gR2xvYmFsIEJyZWFrcG9pbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNjcmVlbi0tczE6IG5ldy1icmVha3BvaW50KG1pbi13aWR0aCAkc21hbGwxLXNjcmVlbiA0KTtcbiRzY3JlZW4tLXMyOiBuZXctYnJlYWtwb2ludChtaW4td2lkdGggJHNtYWxsMi1zY3JlZW4gNik7XG4kc2NyZWVuLS1tOiBuZXctYnJlYWtwb2ludChtaW4td2lkdGggJG1lZGl1bS1zY3JlZW4gMTIpO1xuJHNjcmVlbi0tbDogbmV3LWJyZWFrcG9pbnQobWluLXdpZHRoICRsYXJnZS1zY3JlZW4gMTIpO1xuJHNjcmVlbi0teGw6IG5ldy1icmVha3BvaW50KG1pbi13aWR0aCAkeGwtc2NyZWVuIDEyKTtcbi8vXG4vLyAvLyAvLyBHbG9iYWwgTWF4IFdpZHRoIFNldHRpbmdzXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJhc2Utd3JhcC1tYXgtd2lkdGg6ICRtYXgtd2lkdGggLSAzNzJweDsgLy8gNzY4cHg7XG4kd3JhcC1tYXgtd2lkdGgtbWVkaXVtOiAkbWF4LXdpZHRoIC0gMTgwcHg7IC8vIDk2MHB4XG4kd3JhcC1tYXgtd2lkdGgtbGFyZ2U6ICRtYXgtd2lkdGg7XG5cbi8vIEdsb2JhbCBGb250IEZhbWlsaWVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHNhbnMtc2VyaWY6ICdMYXRvJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRzYW5zLXNlcmlmLWFsdDogJ09wZW4gU2FucycsJ0xhdG8nLCdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kc2VyaWY6ICdQVCBTZXJpZicsICdHZW9yaWdhJywnVGltZXMgUm9tYW4nLCBzZXJpZjtcbiRtb25vOiAnQ291cmllciAxMCBQaXRjaCcsIENvdXJpZXIsIG1vbm9zcGFjZTsgLy8gQmFzZSBGb250IEZhbWlsaWVzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gJGJhc2UtZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuLy8gJGhlYWRpbmctZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmLWFsdDtcbi8vICRibG9ja3F1b3RlLWZvbnQtZmFtaWx5OiAkc2VyaWY7IC8vIEJhc2UgRm9udCBTaXplc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJhc2UgVHlwb2dyYXBoeVxuJGh0bWwtZm9udC1zaXplOiA2Mi41JTtcbiRiYXNlLWZvbnQtc2l6ZTogMTZweDtcblxuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNjI1O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6IDEuMjU7XG4kaGVhZGluZy1mb250LXdlaWdodDogNzAwO1xuXG4vLyBIZWFkaW5nIEZvbnQgUHJvcGVydGllc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRoMS1mb250LXNpemU6IDM2cHg7XG4kaDItZm9udC1zaXplOiAzMHB4O1xuJGgzLWZvbnQtc2l6ZTogMjRweDtcbiRoNC1mb250LXNpemU6IDIwcHg7XG4kaDUtZm9udC1zaXplOiAxOHB4O1xuJGg2LWZvbnQtc2l6ZTogMTZweDtcbi8vIEhlYWRlciBGb250IFByb3BlcnRpZXNcbiIsIi8qXG5BY2Nlc3NpYmlsaXR5IFN1cHBvcnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogIyMgU2NyZWVuIFJlYWRlciBUZXh0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNjcmVlbi1yZWFkZXItc2hvcnRjdXQsXG4uc2NyZWVuLXJlYWRlci10ZXh0LFxuLnNjcmVlbi1yZWFkZXItdGV4dCBzcGFuIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyxcbi5zY3JlZW4tcmVhZGVyLXNob3J0Y3V0OmZvY3VzLFxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyxcbi53aWRnZXRfc2VhcmNoIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwwLDAsLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG4gIC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG59XG5cbi5tb3JlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qICMgU2tpcCBMaW5rc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZ2VuZXNpcy1za2lwLWxpbmsge1xuICBtYXJnaW46IDA7XG59XG5cbi5nZW5lc2lzLXNraXAtbGluayBsaSB7XG4gIGhlaWdodDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgd2lkdGg6IDA7XG59XG5cbi8vIERpc3BsYXkgb3V0bGluZSBvbiBmb2N1c1xuOmZvY3VzIHtcbiAgY29sb3I6IGxpZ2h0ZW4oIzAwMCwgMTEpO1xuICBvdXRsaW5lOiBsaWdodGVuKCMwMDAsIDYzKSBkb3R0ZWQgdGhpbjtcbn1cbiIsIi8qICMgU3RydWN0dXJlIGFuZCBMYXlvdXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogIyMgU2l0ZSBDb250YWluZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuXG59XG5cbi5hZG1pbi1iYXIgLnNpdGUtY29udGFpbmVyIHtcblxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDZweCk7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzJweCk7XG4gIH1cbn1cblxuLnNpdGUtaW5uZXIsXG4ud3JhcCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS14bCkge1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxuXG59XG5cbi53cmFwIHtcbiAgcGFkZGluZy1sZWZ0OiA1JTtcbiAgcGFkZGluZy1yaWdodDogNSU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMlO1xuICB9XG59XG5cbi5zaXRlLWlubmVyIHtcbiAgcGFkZGluZy10b3A6IDQuNSU7XG59XG4uaG9tZSAuc2l0ZS1pbm5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA1JSAwIDA7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICAvLyAxIDAgYXV0byBuZWVkZWQgaGVyZSBmb3IgSUUxMVxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczEpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5ob21lIC5zaXRlLWlubmVyIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ubGFuZGluZy1wYWdlIC5zaXRlLWlubmVyIHtcbiAgd2lkdGg6IDgwMHB4O1xufVxuXG4vKiAjIyBDb2x1bW4gV2lkdGhzIGFuZCBQb3NpdGlvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAjIyMgV3JhcHBpbmcgZGl2IGZvciAuY29udGVudCBhbmQgLnNpZGViYXItcHJpbWFyeSAqL1xuXG4vLyAuY29udGVudC1zaWRlYmFyLXNpZGViYXIgLmNvbnRlbnQtc2lkZWJhci13cmFwLFxuLy8gLnNpZGViYXItY29udGVudC1zaWRlYmFyIC5jb250ZW50LXNpZGViYXItd3JhcCxcbi8vIC5zaWRlYmFyLXNpZGViYXItY29udGVudCAuY29udGVudC1zaWRlYmFyLXdyYXAsXG4vLyAuY29udGVudC1zaWRlYmFyLXNpZGViYXIgLmNvbnRlbnQtc2lkZWJhci13cmFwLFxuLy8gLnNpZGViYXItY29udGVudC1zaWRlYmFyIC5jb250ZW50LXNpZGViYXItd3JhcCxcbi8vIC5zaWRlYmFyLXNpZGViYXItY29udGVudCAuY29udGVudC1zaWRlYmFyLXdyYXAge1xuLy8gICBmbG9hdDogcmlnaHQ7XG4vLyB9XG4vL1xuLmNvbnRlbnQtc2lkZWJhci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4vKiAjIyMgQ29udGVudCAqL1xuXG4uY29udGVudCxcbi5zaWRlYmFyLXByaW1hcnksXG4uc2lkZWJhci1zZWNvbmRhcnkge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbn1cblxuLmNvbnRlbnQtc2lkZWJhciAuY29udGVudCB7XG4gIG9yZGVyOiAxO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIC8vd2lkdGg6IDY4JTtcbiAgICB3aWR0aDogNjglO1xuICB9XG59XG5cbi5jb250ZW50LXNpZGViYXIgLnNpZGViYXItcHJpbWFyeSB7XG4gIG9yZGVyOiAyO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIC8vICB3aWR0aDogMjglO1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cblxuLnNpZGViYXItY29udGVudCAuY29udGVudCB7XG4gIG9yZGVyOiAyO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIHdpZHRoOiA2OCU7XG5cbiAgfVxufVxuXG4uc2lkZWJhci1jb250ZW50IC5zaWRlYmFyLXByaW1hcnkge1xuICBvcmRlcjogMTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICAgIHdpZHRoOiAyNSU7XG5cbiAgfVxufVxuXG4uZnVsbC13aWR0aC1jb250ZW50IC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG59XG5cbi5ob21lLmZ1bGwtd2lkdGgtY29udGVudCAuY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi8qICMjIyBQcmltYXJ5IFNpZGViYXIgKi9cblxuLmNvbnRlbnQtc2lkZWJhci1zaWRlYmFyIC5jb250ZW50IHtcbiAgb3JkZXI6IDE7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogNTUlO1xuICB9XG59XG5cbi5jb250ZW50LXNpZGViYXItc2lkZWJhciAuc2lkZWJhci1wcmltYXJ5IHtcbiAgb3JkZXI6IDI7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5jb250ZW50LXNpZGViYXItc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMztcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbSkge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbn1cblxuLnNpZGViYXItY29udGVudC1zaWRlYmFyIC5jb250ZW50IHtcbiAgb3JkZXI6IDI7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogNTQlO1xuICB9XG59XG5cbi5zaWRlYmFyLWNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1wcmltYXJ5IHtcbiAgb3JkZXI6IDM7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5zaWRlYmFyLWNvbnRlbnQtc2lkZWJhciAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbSkge1xuICAgIHdpZHRoOiAxOSU7XG4gIH1cbn1cblxuLnNpZGViYXItc2lkZWJhci1jb250ZW50IC5jb250ZW50IHtcbiAgb3JkZXI6IDM7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogNTQlO1xuICB9XG59XG5cbi5zaWRlYmFyLXNpZGViYXItY29udGVudCAuc2lkZWJhci1wcmltYXJ5IHtcbiAgb3JkZXI6IDI7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgICB3aWR0aDogMjQlO1xuICB9XG59XG5cbi5zaWRlYmFyLXNpZGViYXItY29udGVudCAuc2lkZWJhci1zZWNvbmRhcnkge1xuICBvcmRlcjogMTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbSkge1xuICAgIHdpZHRoOiAxOSU7XG4gIH1cbn1cblxuLmNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5ob21lIC5jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG5cbi8qICMjIENvbHVtbiBDbGFzc2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIExpbms6IGh0dHA6Ly90d2l0dGVyLmdpdGh1Yi5pby9ib290c3RyYXAvYXNzZXRzL2Nzcy9ib290c3RyYXAtcmVzcG9uc2l2ZS5jc3MgKi9cbkBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLW0pIHtcbiAgLm9uZS1oYWxmLFxuICAudGhyZWUtc2l4dGhzLFxuICAudHdvLWZvdXJ0aHMge1xuICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbiAgfVxuXG4gIC5vbmUtdGhpcmQsXG4gIC50d28tc2l4dGhzIHtcbiAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNCk7XG4gIH1cblxuICAuZm91ci1zaXh0aHMsXG4gIC50d28tdGhpcmRzIHtcbiAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoOCk7XG4gIH1cblxuICAub25lLWZvdXJ0aCB7XG4gICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMpO1xuICB9XG5cbiAgLnRocmVlLWZvdXJ0aHMge1xuICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg5KTtcbiAgfVxuXG4gIC5vbmUtc2l4dGgge1xuICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucygyKTtcbiAgfVxuXG4gIC5maXZlLXNpeHRocyB7XG4gICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEwKTtcbiAgfVxuXG4gIC5sYXN0IHtcbiAgICBAaW5jbHVkZSBvbWVnYSgpO1xuICB9XG5cbiAgLmxhc3QgKyAqIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG59XG4iLCIvKiAjIENvbW1vbiBDbGFzc2VzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qICMjIEF2YXRhclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uYWxpZ25sZWZ0IC5hdmF0YXIsXG4uYXV0aG9yLWJveCAuYXZhdGFyIHtcbiAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xufVxuXG4uYWxpZ25yaWdodCAuYXZhdGFyIHtcbiAgbWFyZ2luLWxlZnQ6IDI0cHg7XG59XG5cbi5jb21tZW50IC5hdmF0YXIge1xuICBtYXJnaW46IDAgMTZweCAyNHB4IDA7XG59XG5cbi8qICMjIEdlbmVzaXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIHBhZGRpbmc6IDEycHggMzBweDtcbn1cblxuLmFmdGVyLWVudHJ5LFxuLmFyY2hpdmUtZGVzY3JpcHRpb24sXG4uYXV0aG9yLWJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1JTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczEpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmc6IDYwcHg7XG4gIH1cblxufVxuXG4uYXJjaGl2ZS1kZXNjcmlwdGlvbiBwOmxhc3QtY2hpbGQsXG4uYXV0aG9yLWJveCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiAjIyBTZWFyY2ggRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAxNnB4IGF1dG87XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMTJweCBhdXRvIDA7XG4gIH1cblxufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi53aWRnZXRfc2VhcmNoIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCAkYWNjZW50LWNvbG9yIHNvbGlkO1xufVxuXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1zdWJtaXQge1xuICBib3R0b206IDNweDtcbiAgcGFkZGluZzogLjVlbSAxZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAzcHg7XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLXN1Ym1pdCAuaWNvbiB7XG4gIGhlaWdodDogMjRweDtcbiAgdG9wOiAtNHB4O1xuICB3aWR0aDogMjRweDtcbn1cblxuLnNlYXJjaC1mb3JtIGJ1dHRvbiB7XG5cbiAgZmlsbDogJHdoaXRlO1xuXG59XG5cbi5zZWFyY2gtZm9ybSBidXR0b246Zm9jdXMsXG4uc2VhcmNoLWZvcm0gYnV0dG9uOmhvdmVyIHtcblxuICBmaWxsOiAkd2hpdGU7XG59XG4vKiAjXG4vKiAjIyBTZWFyY2ggRm9ybVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zZWFyY2gtZm9ybSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lbnRyeS1jb250ZW50IC5zZWFyY2gtZm9ybSxcbi5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB3aWR0aDogNTAlO1xufVxuXG4vLyAuc2l0ZS1oZWFkZXIgLnNlYXJjaC1mb3JtIHtcbi8vIFx0ZmxvYXQ6IHJpZ2h0O1xuLy8gXHRtYXJnaW46IDEycHggYXV0byAwO1xuLy8gfVxuXG4vLyAucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4vLyAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4vLyBcdG1hcmdpbi10b3A6IDEwcHg7XG4vLyB9XG5cbi5nZW5lc2lzLW5hdi1tZW51IC5zZWFyY2ggaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi53aWRnZXRfc2VhcmNoIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuaW5wdXQ6Zm9jdXM6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmlucHV0OmZvY3VzOi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKiBGaXJlZm94IDE4LSAqL1xuaW5wdXQ6Zm9jdXM6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKiBGaXJlZm94IDE5KyAqL1xuaW5wdXQ6Zm9jdXM6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLyogb2xkSUUg8J+YiSAqL1xuXG4ud2lkZ2V0X3NlYXJjaCAuc2VhcmNoLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXRfc2VhcmNoIC5zZWFyY2gtZm9ybSBpbnB1dCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG5cbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy8gUmVtb3ZlZCB0aGlzIGFuZCBkaXNhYmxlZCB0aGUgR2VuZXNpcyBTZWFyY2ggRm9ybSBpbiBmYXZvciBvZiBuYXRpdmUgV29yZFByZXNzIGFuZCBUd2VudHlzZXZlbnRlZW4gbWV0aG9kXG4vLyAud2lkZ2V0X3NlYXJjaCAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4vLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8gICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuLy8gICBjbGlwOiBpbmhlcml0O1xuLy9cbi8vICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKFwic3ZnLWljb25zLnN2ZyNpY29uLXNlYXJjaFwiLCBcIltmaWxsXTogI3skYWNjZW50LWNvbG9yfVwiKTtcbi8vICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbi8vICAgcmlnaHQ6IDEwcHg7XG4vLyAgIHRvcDogMTJweDtcbi8vICAgY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gICBzdHJva2U6IG5vbmU7XG4vL1xuLy8gfVxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICBvcGFjaXR5OiAuNTtcbn1cblxuLndpZGdldF9zZWFyY2ggLnNlYXJjaC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG4ud2lkZ2V0X3NlYXJjaCAuc2VhcmNoLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyB7XG4gIC8vICBiYWNrZ3JvdW5kOiB1cmwoXCJpbWFnZXMvaWNvbi1zZWFyY2guc3ZnXCIpIG5vLXJlcGVhdDtcbn1cblxuLyogIyMgVGl0bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmFyY2hpdmUtZGVzY3JpcHRpb24gLmVudHJ5LXRpdGxlLFxuLmFyY2hpdmUtdGl0bGUsXG4uYXV0aG9yLWJveC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuXG4uZW50cnktdGl0bGUgYSxcbi5zaWRlYmFyIC53aWRnZXQtdGl0bGUgYSB7XG4gIGNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS10aXRsZSBhOmZvY3VzLFxuLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogJGFjY2VudC1jb2xvcjtcbn1cblxuLndpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5zaWRlYmFyIC53aWRnZXQtdGl0bGUge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbi5hcmNoaXZlLWRlc2NyaXB0aW9uLFxuLnBvc3RzLXBhZ2UtZGVzY3JpcHRpb24ge1xuXG5cbiAgIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMxKSB7XG4gICAgIHBhZGRpbmc6IDA7XG4gICAgIG1hcmdpbjogMDtcbiAgIH1cbn1cblxuLyogIyMgV29yZFByZXNzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuYS5hbGlnbmNlbnRlciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbmEuYWxpZ25ub25lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuYS5hbGlnbmxlZnQsXG5hLmFsaWdubm9uZSxcbmEuYWxpZ25yaWdodCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmFsaWduY2VudGVyLFxuaW1nLmNlbnRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDI0cHg7XG59XG5cbi5hbGlnbm5vbmUsXG5pbWcuYWxpZ25ub25lIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0LFxuYS5hbGlnbmxlZnQsXG5pbWcuYWxpZ25sZWZ0IHtcbiAgbWFyZ2luOiAwIDI0cHggMjRweCAwO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbnJpZ2h0LFxuYS5hbGlnbnJpZ2h0LFxuaW1nLmFsaWducmlnaHQge1xuICBtYXJnaW46IDAgMCAyNHB4IDI0cHg7XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24sXG4ud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZW50cnktY29udGVudCBwLndwLWNhcHRpb24tdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1jb250ZW50IC53cC1hdWRpby1zaG9ydGNvZGUsXG4uZW50cnktY29udGVudCAud3AtcGxheWxpc3QsXG4uZW50cnktY29udGVudCAud3AtdmlkZW8ge1xuICBtYXJnaW46IDAgMCAyOHB4O1xufVxuXG4vKiAjIFdpZGdldHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLndpZGdldCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLndpZGdldCBwOmxhc3QtY2hpbGQsXG4ud2lkZ2V0IHVsID4gbGk6bGFzdC1vZi10eXBlLFxuLndpZGdldC1hcmVhIC53aWRnZXQ6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLndpZGdldCB1bCA+IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi53aWRnZXQgdWwgPiBsaTpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLndpZGdldCBvbCA+IGxpIHtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdGV4dC1pbmRlbnQ6IC0yMHB4O1xufVxuXG4ud2lkZ2V0IGxpIGxpIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDAgMCAwIDMwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLndpZGdldF9jYWxlbmRhciB0ZCxcbi53aWRnZXRfY2FsZW5kYXIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qICMjIEZlYXR1cmVkIENvbnRlbnRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZmVhdHVyZWQtY29udGVudCAuZW50cnkge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZmVhdHVyZWQtY29udGVudCAuZW50cnk6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZlYXR1cmVkLWNvbnRlbnQgLmVudHJ5LXRpdGxlIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuIiwiLypcbldpZGdldHNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogIyBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi53aWRnZXQgcDpsYXN0LWNoaWxkLFxuLndpZGdldCB1bCA+IGxpOmxhc3Qtb2YtdHlwZSxcbi53aWRnZXQtYXJlYSAud2lkZ2V0Omxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53aWRnZXQgdWwgPiBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4ud2lkZ2V0IHVsID4gbGk6bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi53aWRnZXQgb2wgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRleHQtaW5kZW50OiAtMjBweDtcbn1cblxuLndpZGdldCBsaSBsaSB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwIDAgMCAzMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud2lkZ2V0X2NhbGVuZGFyIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53aWRnZXRfY2FsZW5kYXIgdGQsXG4ud2lkZ2V0X2NhbGVuZGFyIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiAjIEZvb3RlciBXaWRnZXRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mb290ZXItd2lkZ2V0cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogNjBweCAwO1xufVxuXG4uZm9vdGVyLXdpZGdldHMgLndyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5mb290ZXItd2lkZ2V0cy0xLFxuLmZvb3Rlci13aWRnZXRzLTIsXG4uZm9vdGVyLXdpZGdldHMtMyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgcGFkZGluZzogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAvLyBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAvLyAgIG1pbi13aWR0aDogMzAwcHg7XG4gIC8vIH1cbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbCkge1xuICAgIGZsZXgtYmFzaXM6IDM0MHB4O1xuICAgIG1hcmdpbjogMjBweDtcblxuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXhsKSB7XG4gICAgZmxleC1iYXNpczogMzgwcHg7XG4gICAgbWFyZ2luOiAyMHB4O1xuICB9XG4gIC8vIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLWwpIHtcbiAgLy8gICBtaW4td2lkdGg6IDM4MHB4O1xuICAvLyB9XG59XG4iLCIvKiAjIFBsdWdpbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogIyMgR2VuZXNpcyBlTmV3cyBFeHRlbmRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaWRlYmFyIC5lbmV3cy13aWRnZXQsXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4uc2lkZWJhciAud2lkZ2V0LmVuZXdzLXdpZGdldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLXRleHQtY29sb3I7XG59XG5cbi5zaWRlYmFyIC5lbmV3cy13aWRnZXQgaW5wdXQsXG4uc2lkZWJhciAuZW5ld3Mtd2lkZ2V0IGlucHV0OmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJhc2UtdGV4dC1jb2xvcjtcbn1cblxuLnNpZGViYXIgLmVuZXdzLXdpZGdldCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudC1jb2xvcjtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLnNpZGViYXIgLmVuZXdzLXdpZGdldCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuLnNpZGViYXIgLmVuZXdzLXdpZGdldCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGJhc2UtdGV4dC1jb2xvcjtcbn1cblxuLmVuZXdzLXdpZGdldCBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLmVuZXdzLXdpZGdldCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmVuZXdzIGZvcm0gKyBwIHtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLyogIyMgSmV0cGFja1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiN3cHN0YXRzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qICMgU2l0ZSBIZWFkZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpdGUtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4uc2l0ZS1oZWFkZXIgPiAud3JhcCB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1sKSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIH1cblxufVxuXG4vKiAjIyBUaXRsZSBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnRpdGxlLWFyZWEge1xuICBmbG9hdDogbm9uZTtcbiAgcGFkZGluZzogMTBweCAwO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxuXG59XG5cbi5oZWFkZXItaW1hZ2UgLnRpdGxlLWFyZWEge1xuXG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMDtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5oZWFkZXItZnVsbC13aWR0aCAudGl0bGUtYXJlYSB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtdGl0bGUge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5zaXRlLXRpdGxlIGEsXG4uc2l0ZS10aXRsZSBhOmZvY3VzLFxuLnNpdGUtdGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5oZWFkZXItaW1hZ2UgLnNpdGUtdGl0bGUgPiBhIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xuICBmbG9hdDogbGVmdDtcbiAgbWluLWhlaWdodDogOTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zaXRlLWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuXG59XG5cbi5zaXRlLWRlc2NyaXB0aW9uLFxuLnNpdGUtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oZWFkZXItaW1hZ2UgLnNpdGUtZGVzY3JpcHRpb24sXG4uaGVhZGVyLWltYWdlIC5zaXRlLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xufVxuXG4vKiAjIyBXaWRnZXQgQXJlYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaXRlLWhlYWRlciAud2lkZ2V0LWFyZWEge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLWwpIHtcbiAgICB3aWR0aDogNjIwcHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbCkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiA4MDBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgfVxuXG59XG4iLCIvKiAjIFNpdGUgTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBHZW5lc2lzIE5hdmlnYXRpb24gKi9cblxuLy8gdHVybiBkaXNwbGF5IG9uIG5vdyB0aGF0IGpzIGhhcyBsb2FkZWRcbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBmaXggdG8gcmVtb3ZlIHVud2FudGVkIHNwYWNlIGJldHdlZW4gbmF2IGl0ZW1zIC0gdGhhbmtzIFJvYiBOZXUgLT4gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vcm9ibmV1LzBhZDI4MzczN2Q4MDgwMmNiMGUwICovXG4uZ2VuZXNpcy1uYXYtbWVudSB7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LWZhbWlseTogJHNhbnMtc2VyaWYtYWx0O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IC4wMDFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vIGFkZGVkIHRvIHJlZHVjZSBmbGFzaCBvZiBzdGFuZGFyZCBtZW51IHdoaWxlIGpzIGxvYWRzXG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tbCkge1xuXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbi5zaXRlLWZvb3RlciAuZ2VuZXNpcy1uYXYtbWVudSAgYSB7XG4gICAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xufVxuLm5hdi1zZWNvbmRhcnkgIC5nZW5lc2lzLW5hdi1tZW51IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ubmF2LXByaW1hcnkgLndyYXAge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubm8tanMgLmdlbmVzaXMtbmF2LW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbSB7XG5cbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmLWFsdDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSBhIHtcbiAgY29sb3I6ICRoZWFkZXItYmFja2dyb3VuZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDMycHggMzBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZjM0N1wiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250OiBub3JtYWwgMTZweC8xICdkYXNoaWNvbnMnO1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLmN1cnJlbnQtbWVudS1pdGVtID4gYSxcbi5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmZvY3VzLFxuLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGE6aG92ZXIsXG4uZ2VuZXNpcy1uYXYtbWVudSBhOmZvY3VzLFxuLmdlbmVzaXMtbmF2LW1lbnUgYTpob3ZlciB7XG4gIGNvbG9yOiAkYmFzZS1jb2xvcjtcblxufVxuXG5cblxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkICRiYXNlLWNvbG9yO1xuICBsZWZ0OiAtOTk5OXB4O1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiA5OTtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICB9XG59XG5cbi5uby1qcyAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzb2Z0LXdoaXRlO1xuICBib3JkZXI6IDFweCBkb3R0ZWQgJGJhc2UtY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxuXG59XG5cbi5uby1qcyAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgYSB7XG4gIHdpZHRoOiAzMDBweDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gIG1hcmdpbjogLTU2cHggMCAwIDE5OXB4O1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtOmhvdmVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbTpob3ZlciA+IC5zdWItbWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5nZW5lc2lzLW5hdi1tZW51ID4gLmZpcnN0ID4gYSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgPiAubGFzdCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uZ2VuZXNpcy1uYXYtbWVudSA+IC5yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmdlbmVzaXMtbmF2LW1lbnUgbGkge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLyogIyMgQWNjZXNzaWJsZSBNZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5tZW51IC5tZW51LWl0ZW06Zm9jdXMge1xuICAvLyAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgLy8gIH1cbn1cblxuLm1lbnUgLm1lbnUtaXRlbSA+IGE6Zm9jdXMgKyB1bC5zdWItbWVudSxcbi5tZW51IC5tZW51LWl0ZW0uc2ZIb3ZlciA+IHVsLnN1Yi1tZW51IHtcbiAgLy9AaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICAvLyAgfVxufVxuXG4ubWVudS10b2dnbGUsXG4uc3ViLW1lbnUtdG9nZ2xlIHtcbiAgLy8gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLy8gIH1cbn1cbi8qICMjIFNpdGUgSGVhZGVyIE5hdmlnYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2l0ZS1oZWFkZXIgLmdlbmVzaXMtbmF2LW1lbnUgbGkgbGkge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogIyMgUHJpbWFyeSBIZWFkZXIgTmF2aWdhdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5uYXYtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogJHNhbnMtc2VyaWYtYWx0O1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDY4JTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS14bCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNjglO1xuICB9XG59XG5cbi8vIC5uby1qcyAubmF2LXByaW1hcnkge1xuLy8gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyB9XG5cbi5zaXRlLWhlYWRlciAubmF2LWhlYWRlciAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtIHtcbiAgICBmb250LWZhbWlseTogJHNhbnMtc2VyaWYtYWx0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnNpdGUtaGVhZGVyIC5uYXYtaGVhZGVyIC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gYSB7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbi8qICMjIEZvb3RlciBOYXZpZ2F0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNpdGUtZm9vdGVyIC5nZW5lc2lzLW5hdi1tZW51IHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi5zaXRlLWZvb3RlciAuZ2VuZXNpcy1uYXYtbWVudSBhIHtcbiAgcGFkZGluZzogMCAyMHB4IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogR2VuZXNpcyBSZXNwb25zaXZlIE1lbnUgKi9cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC53cmFwIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmdlbmVzaXMtc2tpcC1saW5rIC5za2lwLWxpbmstaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubWVudS10b2dnbGUsXG4uc3ViLW1lbnUtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudC1jb2xvcjtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjb2xvcjogJGJhc2UtY29sb3I7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi5tZW51LXRvZ2dsZTpmb2N1cyxcbi5tZW51LXRvZ2dsZTpob3Zlcixcbi5zdWItbWVudS10b2dnbGU6Zm9jdXMsXG4uc3ViLW1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudC1jb2xvcjtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuXG59XG5cbi5tZW51LXRvZ2dsZSB7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xufVxuXG4ubWVudS10b2dnbGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGFjY2VudC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudC1jb2xvcjtcblxufVxuXG4ubWVudS10b2dnbGUuYWN0aXZhdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM1XCI7XG59XG5cbi5tZW51LXRvZ2dsZTpmb2N1cyxcbi5tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzb2Z0LXdoaXRlO1xuICBjb2xvcjogJGFjY2VudC1jb2xvcjtcblxufVxuXG4ubWVudS10b2dnbGU6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG59XG5cbi5zdWItbWVudS10b2dnbGUge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmc6IDEzcHggMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGFjY2VudC1jb2xvcjtcblxufVxuXG4uc3ViLW1lbnUtdG9nZ2xlOmZvY3VzLFxuLnN1Yi1tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAkYWNjZW50LWNvbG9yO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnN1Yi1tZW51IC5zdWItbWVudS10b2dnbGUge1xuICBwYWRkaW5nOiAxMnB4IDEwcHg7XG59XG5cbi5zdWItbWVudS10b2dnbGU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIHRyYW5zZm9ybTogcm90YXRlKCAwICk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG4uc3ViLW1lbnUtdG9nZ2xlLmFjdGl2YXRlZDo6YmVmb3JlIHtcblxuICB0cmFuc2Zvcm06IHJvdGF0ZSggMTgwZGVnICk7XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW06Zm9jdXMsXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbTpob3ZlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMzJweCAzMHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSBhIHtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICBib3JkZXI6IDFweCBkb3R0ZWQgJGJhc2UtY29sb3I7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbn1cblxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gPiBhOmZvY3VzIHVsLnN1Yi1tZW51LFxuLmdlbmVzaXMtcmVzcG9uc2l2ZS1tZW51IC5nZW5lc2lzLW5hdi1tZW51IC5tZW51LWl0ZW0gPiBhOmZvY3VzIHVsLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICBjb250ZW50OiBcIlxcZjM0N1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250OiBub3JtYWwgMTZweC8xICdkYXNoaWNvbnMnO1xuICAgIHBhZGRpbmctbGVmdDogM3B4O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAkYmFzZS1jb2xvcjtcbiAgICBsZWZ0OiAtOTk5OXB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxufVxuXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLm1lbnUtaXRlbTpob3ZlciA+IC5zdWItbWVudSB7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgbGVmdDogYXV0bztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5nZW5lc2lzLXJlc3BvbnNpdmUtbWVudSAuZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUge1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ2VuZXNpcy1yZXNwb25zaXZlLW1lbnUgLmdlbmVzaXMtbmF2LW1lbnUgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG5cbiAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG4gIH1cblxufVxuXG5cbi5nZW5lc2lzLW5hdi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4uZ2VuZXNpcy1uYXYtbWVudSAuY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4uZ2VuZXNpcy1uYXYtbWVudSAuc3ViLW1lbnUgLmN1cnJlbnQtbWVudS1pdGVtID4gYTpmb2N1cyxcbi5nZW5lc2lzLW5hdi1tZW51IC5zdWItbWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmhvdmVyLFxuLmdlbmVzaXMtbmF2LW1lbnUgYTpmb2N1cyxcbi5nZW5lc2lzLW5hdi1tZW51IGE6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGdyZXkhaW1wb3J0YW50O1xuICBjb2xvcjogJGJhc2UtbGluay1jb2xvciFpbXBvcnRhbnQ7XG5cbn1cblxuXG5cbi8qIFNvY2lhbCBuYXYgKi9cblxuLnNvY2lhbC1uYXZpZ2F0aW9uIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbi5zb2NpYWwtbmF2aWdhdGlvbiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uc29jaWFsLW5hdmlnYXRpb24gbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5zb2NpYWwtbmF2aWdhdGlvbiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIGNvbG9yOiAkYWNjZW50LWNvbG9yO1xuICBmaWxsOiAkYWNjZW50LWNvbG9yO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAwIDFlbSAuNWVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG5cbn1cblxuLnNvY2lhbC1uYXZpZ2F0aW9uIGE6Zm9jdXMsXG4uc29jaWFsLW5hdmlnYXRpb24gYTpob3ZlciB7XG5cbiAgZmlsbDogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50LWNvbG9yO1xuXG59XG5cbi5zb2NpYWwtbmF2aWdhdGlvbiAuaWNvbiB7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG5cbiAgdmVydGljYWwtYWxpZ246IHRvcDtcblxufVxuXG4sXG4uc29jaWFsLW5hdmlnYXRpb24gLmljb246Zm9jdXMsXG4uc29jaWFsLW5hdmlnYXRpb24gLmljb246aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggI2NjYyBkb3R0ZWQ7XG59XG4iLCIvKiAjIEhvbWUgUGFnZSBTdHlsZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5ob21lIC53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZnJvbnQtcGFnZS0xIHtcbiAgYmFja2dyb3VuZDogIzQ2Nzk5NztcbiAgZGlzcGxheTogYmxvY2s7XG5cbn1cblxuLmZyb250LXBhZ2UtMSAud3JhcCB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mcm9udC1wYWdlLTEgLndpZGdldCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mcm9udC1wYWdlLTEgLndpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogNDZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmZyb250LXBhZ2UtMSAuYmFubmVyLWxlZnQge1xuICBjb2xvcjogI2ZmZjtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMzZweCAxMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICB3aWR0aDogNzglO1xuICB9XG59XG5cbi5mcm9udC1wYWdlLTEgLmJhbm5lci1yaWdodCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG4gICAgd2lkdGg6IDIyJTtcbiAgfVxufVxuXG4uZnJvbnQtcGFnZS0xIC5iYW5uZXItcmlnaHQgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgQGluY2x1ZGUgbWVkaWEoJHNjcmVlbi0tczIpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbi5mcm9udC1wYWdlLTIge1xuXG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE2LzAzL29yYW5nZVRyaS5wbmdcIikgY2VudGVyIC0xcHggbm8tcmVwZWF0O1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjZmU2MDAwO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2ZlNjAwMDtcbn1cblxuLmZyb250LXBhZ2UtMiAubG9nby1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mcm9udC1wYWdlLTIgLmxvZ28tY29udGFpbmVyIGltZyB7XG4gIG1hcmdpbjogMCAxNXB4O1xufVxuXG4uZnJvbnQtcGFnZS0yIGgzLndpZGdldHRpdGxlLndpZGdldC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLTQycHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uZnJvbnQtcGFnZS0zIC53cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLmZyb250LXBhZ2UtM2EsXG4uZnJvbnQtcGFnZS0zYixcbi5mcm9udC1wYWdlLTNjIHtcbiAgZmxleDogMSAwIDMzJTtcbn1cblxuLmhvbWUgYS5idXR0b24ge1xuICBwYWRkaW5nOiAxOXB4IDMwcHggMTlweCFpbXBvcnRhbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBoNCB7XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ob21lIC53aWRnZXRfdGV4dCBhLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci13aWR0aDogNHB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24ub3JhbmdlIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmU2MDAwO1xuICBjb2xvcjogI2ZlNjAwMDtcbiAgZm9udC1mYW1pbHk6IGxhdG8sYXJpYWwsc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmhvbWUgLndpZGdldF90ZXh0IGEuYnV0dG9uLm9yYW5nZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZTYwMDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24uZ3JlZW4ge1xuICBib3JkZXItY29sb3I6ICM2NmJiMTA7XG4gIGNvbG9yOiAjNjZiYjEwO1xuICBmb250LWZhbWlseTogbGF0byxhcmlhbCxzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24uZ3JlZW46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNjZiYjEwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhvbWUgLndpZGdldF90ZXh0IGEuYnV0dG9uLmJsdWUge1xuICBib3JkZXItY29sb3I6ICMxYTk3ZTM7XG4gIGNvbG9yOiAjMWE5N2UzO1xuICBmb250LWZhbWlseTogbGF0byxhcmlhbCxzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaG9tZSAud2lkZ2V0X3RleHQgYS5idXR0b24uYmx1ZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxYTk3ZTM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZnJvbnQtcGFnZS00IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gIHBhZGRpbmc6IDMwcHggMCAwO1xufVxuXG4uZnJvbnQtcGFnZS00IC53aWRnZXQtdGl0bGUge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiIsIi8qICMgQ29udGVudCBBcmVhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qICMjIEVudHJpZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZW50cnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUlO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMSkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLmFyY2hpdmUgLmVudHJ5LFxuLmJsb2cgLmVudHJ5IHtcblxuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5lbnRyeS1jb250ZW50IG9sLFxuLmVudHJ5LWNvbnRlbnQgdWwge1xuICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICBtYXJnaW4tbGVmdDogNDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgb2wgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgdWwgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxuLmVudHJ5LWNvbnRlbnQgb2wgb2wsXG4uZW50cnktY29udGVudCB1bCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lbnRyeS1jb250ZW50IGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS10ZXh0LWNvbG9yO1xuICBjb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnBmQnRuTCB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICsgMjtcblxufVxuXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLmJwZkJ0bkw6Zm9jdXMge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1lZC1ibHVlO1xufVxuXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLmJwZkJ0bkw6aG92ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1lZC1ibHVlO1xufVxuXG4uZW50cnksXG4ucGFnZS5wYWdlLXRlbXBsYXRlLXBhZ2VfYmxvZy1waHAgLmVudHJ5IHtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNiYmI7XG59XG5cbmgyLmVudHJ5LXRpdGxlIGEge1xuICBjb2xvcjogJGFjY2VudC1jb2xvcjtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaDIuZW50cnktdGl0bGUgYTpmb2N1cyxcbmgyLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogJHNvZnQtYmxhY2s7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRzb2Z0LWJsYWNrO1xufVxuXG4vKiAjIyBFbnRyeSBNZXRhXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxucC5lbnRyeS1tZXRhIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZW50cnktY29udGVudCAuZW50cnktaW1hZ2Uge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xufVxuXG4uZW50cnktaGVhZGVyIC5lbnRyeS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLmVudHJ5LWZvb3RlciAuZW50cnktbWV0YSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG59XG5cbi5lbnRyeS1jYXRlZ29yaWVzLFxuLmVudHJ5LXRhZ3Mge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmVudHJ5LWNvbW1lbnRzLWxpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwyMDE0XCI7XG4gIG1hcmdpbjogMCA2cHggMCAycHg7XG59XG5cbi8qICMjIFBhZ2luYXRpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFnaW5hdGlvbiB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDUlIGF1dG87XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMxKSB7XG4gICAgbWFyZ2luOiA0MHB4IDA7XG4gIH1cbn1cblxuLmFkamFjZW50LWVudHJ5LXBhZ2luYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGxpIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uYXJjaGl2ZS1wYWdpbmF0aW9uIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc29mdC1ibGFjaztcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5hcmNoaXZlLXBhZ2luYXRpb24gLmFjdGl2ZSBhLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBhOmZvY3VzLFxuLmFyY2hpdmUtcGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5hcmNoaXZlLXBhZ2luYXRpb24gbGkgYSB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMxKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyAuYXJjaGl2ZS1wYWdpbmF0aW9uIHtcbi8vIFx0Y2xlYXI6IGJvdGg7XG4vLyBcdG1hcmdpbjogNjBweCAwIDkwcHg7XG4vLyB9XG4vL1xuLy8gLmFkamFjZW50LWVudHJ5LXBhZ2luYXRpb24ge1xuLy8gXHRtYXJnaW4tYm90dG9tOiAwO1xuLy8gfVxuLy9cbi8vIC5hcmNoaXZlLXBhZ2luYXRpb24gbGkge1xuLy8gXHRkaXNwbGF5OiBpbmxpbmU7XG4vLyB9XG4vL1xuLy8gLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSBhIHtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbi8vIFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuLy8gXHRjb2xvcjogI2ZmZjtcbi8vIFx0Y3Vyc29yOiBwb2ludGVyO1xuLy8gXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyBcdGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4vLyBcdGZvbnQtc2l6ZTogMTRweDtcbi8vIFx0cGFkZGluZzogOHB4IDEycHg7XG4vLyBcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyB9XG4vL1xuLy8gLmFyY2hpdmUtcGFnaW5hdGlvbiBsaSBhOmhvdmVyLFxuLy8gLmFyY2hpdmUtcGFnaW5hdGlvbiAuYWN0aXZlIGEge1xuLy8gXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDI3NGJlO1xuLy8gfVxuXG4vKiAjIyBDb21tZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb21tZW50LXJlc3BvbmQsXG4uZW50cnktY29tbWVudHMsXG4uZW50cnktcGluZ3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMxKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG59XG5cbi5jb21tZW50LXJlc3BvbmQsXG4uZW50cnktcGluZ3Mge1xuICBwYWRkaW5nOiA2MHB4IDYwcHggMzJweDtcbn1cblxuLmVudHJ5LWNvbW1lbnRzIHtcbiAgcGFkZGluZzogNjBweDtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaSB7XG4gIHBhZGRpbmc6IDQwcHggMCAwIDMwcHg7XG59XG5cbi5jb21tZW50LWxpc3QgLmRlcHRoLTEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jb21tZW50LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5jb21tZW50LWNvbnRlbnQge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNvbW1lbnQtY29udGVudCB1bCA+IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG4uY29tbWVudC1yZXNwb25kIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi5jb21tZW50LXJlc3BvbmQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uY29tbWVudC1yZXNwb25kIGlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICB3aWR0aDogNTAlO1xufVxuXG4uY29tbWVudC1yZXNwb25kIGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLmNvbW1lbnQtaGVhZGVyIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZW50cnktcGluZ3MgLnJlcGx5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogIyBTaWRlYmFyc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc2lkZWJhciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMxKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG59XG5cbi5zaWRlYmFyIC53aWRnZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUlO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMSkge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG59XG5cbi8qICMgQ3VzdG9tXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGluay1oYXMtaW1hZ2Uge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNpZGViYXIgYSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJHNvZnQtYmxhY2s7XG59XG5cbi5zaWRlYmFyIGE6Zm9jdXMsXG4uc2lkZWJhciBhOmhvdmVyIHtcbiAgY29sb3I6ICRhY2NlbnQtY29sb3I7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRhY2NlbnQtY29sb3I7XG59XG5cbi5zaWRlYmFyIHVsIGxpIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG59XG4iLCIvKiAjIFNpdGUgRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zaXRlLWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzb2Z0LWJsYWNrO1xuICBjb2xvcjogJHdoaXRlO1xuICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMzBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zaXRlLWZvb3RlciBhIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2l0ZS1mb290ZXIgYTpmb2N1cyxcbi5zaXRlLWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdyZXk7XG59XG5cblxuLnNpdGUtZm9vdGVyIHAge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uc2l0ZS1mb290ZXIgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJyYW5kaWQtbG9nbyBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tdG9wOiAxcHg7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGZpbGw6ICRncmV5O1xuXG59XG5cbi5icmFuZGlkLWxvZ28gc3ZnOmZvY3VzLFxuLmJyYW5kaWQtbG9nbyBzdmc6aG92ZXIge1xuICBmaWxsOiAkd2hpdGU7XG59XG5cbi5zaXRlLWZvb3RlciAuaWNvbi1oZWFydCB7XG4gIGZpbGw6IHRyYW5zcGFyZW50O1xuICBzdHJva2U6ICR3aGl0ZTtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbn1cbiIsIi8qICMgQ3VzdG9tIENsYXNzZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNlbnRlci1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5hLmJwZkJ0bixcbmlucHV0LmJwZkJ0biB7XG4gIGJhY2tncm91bmQ6ICNmNjViMTc7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29sb3I6ICNmZmY7XG4gIG1heC13aWR0aDogMjc1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCxhcmlhbCxzYW5zLXNlcmlmO1xufVxuXG5hLmJwZkJ0bixcbmlucHV0LmJwZkJ0bkwge1xuICBiYWNrZ3JvdW5kOiAjZjY1YjE3O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb2xvcjogI2ZmZjtcbiAgbWF4LXdpZHRoOiAxNTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCxhcmlhbCxzYW5zLXNlcmlmO1xufVxuXG5hLmJwZkJ0bixcbmlucHV0LmJwZkJ0bkNUQSB7XG4gIGJhY2tncm91bmQ6ICNmNjViMTc7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXgtd2lkdGg6IDE1MDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdCxhcmlhbCxzYW5zLXNlcmlmO1xuICB3aWR0aDogMTAwJTtcbn1cblxuYS5icGZCdG4sXG5pbnB1dC5icGZCdG5TREJSIHtcbiAgYmFja2dyb3VuZDogI2Y2NWIxNztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29sb3I6ICNmZmY7XG4gIG1heC13aWR0aDogMTUwMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0LGFyaWFsLHNhbnMtc2VyaWY7XG59XG5cbmEuYnBmQnRuOmhvdmVyLFxuaW5wdXQuYnBmQnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzQ0NDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5sbXMtbGlzdC1tZW51IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lIWltcG9ydGFudDtcbn1cblxubGkubG1zLWN1cnJlbnQtbWVudS1pdGVtIGEge1xuXG4gIGNvbG9yOiAjZjY1YjE3O1xuXG59XG5cbi5sbXMtcXVpY2stbWVudSBhIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbWFnZS1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5hY2NvcmRpb24tbGFiZWwtYm9sZCB7XG4gIC5mbC1hY2NvcmRpb24tYnV0dG9uLWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbi5tcC1yYWRpYWwtYmFja2dyb3VuZCB7XG4gIC5mbC1yb3ctY29udGVudC13cmFwIHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsICNmZmZmZmYgMTIlLCNlZGY1ZjkgOTklKTtcbiAgfVxufVxuXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5tb2Rlcm4gLnRlc3RpbW9uaWFsLWNvbnRlbnQ6YWZ0ZXIsXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5tb2Rlcm4gLnRlc3RpbW9uaWFsLWNvbnRlbnQ6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcblxufVxuXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5tb2Rlcm4gLnRlc3RpbW9uaWFsLW5hbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2lkZ2V0IC5zdHJvbmctdmlldy5kZWZhdWx0IC50ZXN0aW1vbmlhbC1oZWFkaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN0cm9uZy12aWV3LmRlZmF1bHQubXAtdGVzdGltb25pYWwtYm9yZGVyIC50ZXN0aW1vbmlhbC1pbm5lciB7XG5cbiAgYm9yZGVyLWNvbG9yOiAjMzMzO1xuXG59XG5cbi5zdHJvbmctdmlldy5kZWZhdWx0Lm1wLXRlc3RpbW9uaWFsLWJvcmRlciAudGVzdGltb25pYWwge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi53aWRnZXQuc3Ryb25nLXRlc3RpbW9uaWFscy12aWV3LXdpZGdldCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbn1cblxuLndwbXNsaWRlci1jb250cm9scyBhIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbn1cblxuLnBhZ2UgLnN0cm9uZy12aWV3LnBhZ2VyLXN0eWxlLWJ1dHRvbnMgLndwbXNsaWRlci1wYWdlci1saW5rOmJlZm9yZSB7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG4vLyBBZGQgU2Nyb2xsIHRvIFRvcFxuXG4jdG9Ub3Age1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzY3JlZW4tLXMyKSB7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDVweDtcbiAgICByaWdodDogMTBweDtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbiAgICB6LWluZGV4OiAxO1xuXG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjM0M1wiO1xuICAgIGZvbnQtZmFtaWx5OiBkYXNoaWNvbnM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3MCwxMjEsMTUxLCAuOCk7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cblxuICAmLmdyZWVuOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEzNSwxODMsNjcsLjgpO1xuICB9XG59XG5cbi5wYWdlIC5fZHBkLWJ1dHRvbl9jdGEge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBAaW5jbHVkZSBtZWRpYSgkc2NyZWVuLS1zMikge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjQwMHB4KSB7XG4gIC5wYWdlIC5fZHBkLWJ1dHRvbl9jdGFfdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nby1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nbyB7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sYW5kaW5nLXBhZ2UtbG9nbyBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTA2cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvd3AtY29udGVudC91cGxvYWRzLzIwMTgvMDMvUEZMb2dvLW5ldy5zdmdcIikgbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyogRmVhdHVyZXMgKi9cbi5zaXRlLWNvbnRhaW5lciAuZmVhdHVyZXMgdWwgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2l0ZS1jb250YWluZXIgLmZlYXR1cmVzIHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uc2l0ZS1jb250YWluZXIgLmZlYXR1cmVzIHVsIGxpIC5mZWF0dXJlLWljb24ge1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICB3aWR0aDogNjBweDtcbn1cblxuLmZlYXR1cmVzIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmZlYXR1cmVzIHVsIGxpIC5mZWF0dXJlLWljb24ge1xuICBjb2xvcjogIzQ2Nzk5Nztcbn1cblxuLmZlYXR1cmVzIHAge1xuICBtYXJnaW4tbGVmdDogNjBweDtcbn1cblxuLmZlYXR1cmVzLXNlY3Rpb24gaDIge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZmwtYnVpbGRlci1jb250ZW50IHtcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmLWFsdDtcbn1cblxuLnJwNHdwLXJlbGF0ZWQtcG9zdHMge1xuICBtYXJnaW46IDMwcHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByZXYtbmV4dC1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luOiAzMHB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5idXR0b24ge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiIsIi8qICMgUHJpbnQgU3R5bGVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AbWVkaWEgcHJpbnQge1xuXHQqLFxuXHQqOjphZnRlcixcblx0Kjo6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblx0XHRjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cblxuXHRhLFxuXHRhOnZpc2l0ZWQge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XG5cblx0YVtocmVmXTo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuXHR9XG5cblx0YWJiclt0aXRsZV06OmFmdGVyIHtcblx0XHRjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG5cdH1cblxuXHQuc2l0ZS10aXRsZSA+IGE6OmFmdGVyLFxuXHRhW2hyZWZePVwiI1wiXTo6YWZ0ZXIsXG5cdGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdH1cblxuXHR0aGVhZCB7XG5cdFx0ZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuXHR9XG5cblx0aW1nLFxuXHR0ciB7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuXHR9XG5cblx0aW1nIHtcblx0XHRtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0fVxuXHRAcGFnZSB7XG5cdFx0bWFyZ2luOiAyY20gLjVjbTtcblx0fVxuXG5cdGgyLFxuXHRoMyxcblx0cCB7XG5cdFx0b3JwaGFuczogMztcblx0XHR3aWRvd3M6IDM7XG5cdH1cblxuXHRibG9ja3F1b3RlLFxuXHRwcmUge1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuXHR9XG5cblx0LmNvbnRlbnQsXG5cdC5jb250ZW50LXNpZGViYXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LmJyZWFkY3J1bWIsXG5cdC5jb21tZW50LWVkaXQtbGluayxcblx0LmNvbW1lbnQtZm9ybSxcblx0LmNvbW1lbnQtbGlzdCAucmVwbHkgYSxcblx0LmNvbW1lbnQtcmVwbHktdGl0bGUsXG5cdC5lZGl0LWxpbmssXG5cdC5lbnRyeS1jb21tZW50cy1saW5rLFxuXHQuZW50cnktZm9vdGVyLFxuXHQuZ2VuZXNpcy1ib3gsXG5cdC5oZWFkZXItd2lkZ2V0LWFyZWEsXG5cdC5oaWRkZW4tcHJpbnQsXG5cdC5ob21lLXRvcCxcblx0Lm5hdi1wcmltYXJ5LFxuXHQubmF2LXNlY29uZGFyeSxcblx0LnBvc3QtZWRpdC1saW5rLFxuXHQuc2lkZWJhcixcblx0YnV0dG9uLFxuXHRpbnB1dCxcblx0c2VsZWN0LFxuXHR0ZXh0YXJlYSB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRpdGxlLWFyZWEge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5zaXRlLXRpdGxlID4gYSB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR0ZXh0LWluZGVudDogMDtcblx0fVxuXG5cdC5zaXRlLWlubmVyIHtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dG9wOiAtMTAwcHg7XG5cdH1cblxuXHQuYXV0aG9yLWJveCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdGgxLFxuXHRoMixcblx0aDMsXG5cdGg0LFxuXHRoNSxcblx0aDYge1xuXHRcdG9ycGhhbnM6IDM7XG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuXHRcdHdpZG93czogMztcblx0fVxuXG5cdGltZyB7XG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuXHR9XG5cblx0YmxvY2txdW90ZSxcblx0cHJlLFxuXHR0YWJsZSB7XG5cdFx0cGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuXHR9XG5cblx0ZGwsXG5cdG9sLFxuXHR1bCB7XG5cdFx0cGFnZS1icmVhay1iZWZvcmU6IGF2b2lkO1xuXHR9XG5cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE91dHB1dHMgYSBtZWRpYS1xdWVyeSBibG9jayB3aXRoIGFuIG9wdGlvbmFsIGdyaWQgY29udGV4dCAodGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIHVzZWQgaW4gdGhlIGdyaWQpLlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnlcbi8vLyAgIEEgbGlzdCBvZiBtZWRpYSBxdWVyeSBmZWF0dXJlcyBhbmQgdmFsdWVzLCB3aGVyZSBlYWNoIGAkZmVhdHVyZWAgc2hvdWxkIGhhdmUgYSBjb3JyZXNwb25kaW5nIGAkdmFsdWVgLlxuLy8vICAgRm9yIGEgbGlzdCBvZiB2YWxpZCB2YWx1ZXMgZm9yIGAkZmVhdHVyZWAsIGNsaWNrIFtoZXJlXShodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLW1lZGlhcXVlcmllcy8jbWVkaWExKS5cbi8vL1xuLy8vICAgSWYgdGhlcmUgaXMgb25seSBhIHNpbmdsZSBgJHZhbHVlYCBpbiBgJHF1ZXJ5YCwgYCRkZWZhdWx0LWZlYXR1cmVgIGlzIGdvaW5nIHRvIGJlIHVzZWQuXG4vLy9cbi8vLyAgIFRoZSBudW1iZXIgb2YgdG90YWwgY29sdW1ucyBpbiB0aGUgZ3JpZCBjYW4gYmUgc2V0IGJ5IHBhc3NpbmcgYCRjb2x1bW5zYCBhdCB0aGUgZW5kIG9mIHRoZSBsaXN0IChvdmVycmlkZXMgYCR0b3RhbC1jb2x1bW5zYCkuXG4vLy9cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyICh1bml0bGVzcyl9ICR0b3RhbC1jb2x1bW5zIFskZ3JpZC1jb2x1bW5zXVxuLy8vICAgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UgaW4gdGhlIG5ldyBncmlkIGNvbnRleHQuIENhbiBiZSBzZXQgYXMgYSBzaG9ydGhhbmQgaW4gdGhlIGZpcnN0IHBhcmFtZXRlci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLnJlc3BvbnNpdmUtZWxlbWVudCB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSg3NjlweCkge1xuLy8vICAgICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy8gICAgICB9XG4vLy8gICB9XG4vLy9cbi8vLyAgLm5ldy1jb250ZXh0LWVsZW1lbnQge1xuLy8vICAgIEBpbmNsdWRlIG1lZGlhKG1pbi13aWR0aCAzMjBweCBtYXgtd2lkdGggNDgwcHgsIDYpIHtcbi8vLyAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbi8vLyAgICAucmVzcG9uc2l2ZS1lbGVtZW50IHtcbi8vLyAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICAgZmxvYXQ6IGxlZnQ7XG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuLy8vICAgICAgd2lkdGg6IDQ4LjgyMTE3JTtcbi8vLyAgICB9XG4vLy9cbi8vLyAgICAucmVzcG9uc2l2ZS1lbGVtZW50Omxhc3QtY2hpbGQge1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbi8vLyAgICAubmV3LWNvbnRleHQtZWxlbWVudCB7XG4vLy8gICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiA0LjgyOTE2JTtcbi8vLyAgICAgIHdpZHRoOiAxMDAlO1xuLy8vICAgIH1cbi8vL1xuLy8vICAgIC5uZXctY29udGV4dC1lbGVtZW50Omxhc3QtY2hpbGQge1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgIH1cbi8vLyAgfVxuXG5AbWl4aW4gbWVkaWEoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAxIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJGRlZmF1bHQtZmVhdHVyZTogbnRoKCRxdWVyeSwgMSkpIHtcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zICFnbG9iYWw7XG4gICAgICBAY29udGVudDtcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucyAhZ2xvYmFsO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgJGxvb3AtdG86IGxlbmd0aCgkcXVlcnkpO1xuICAgICRtZWRpYS1xdWVyeTogXCJzY3JlZW4gYW5kIFwiO1xuICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucyAhZ2xvYmFsO1xuXG4gICAgQGlmIGlzLW5vdChpcy1ldmVuKGxlbmd0aCgkcXVlcnkpKSkge1xuICAgICAgJGdyaWQtY29sdW1uczogbnRoKCRxdWVyeSwgJGxvb3AtdG8pICFnbG9iYWw7XG4gICAgICAkbG9vcC10bzogJGxvb3AtdG8gLSAxO1xuICAgIH1cblxuICAgICRpOiAxO1xuICAgIEB3aGlsZSAkaSA8PSAkbG9vcC10byB7XG4gICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiKFwiICsgbnRoKCRxdWVyeSwgJGkpICsgXCI6IFwiICsgbnRoKCRxdWVyeSwgJGkgKyAxKSArIFwiKSBcIjtcblxuICAgICAgQGlmICgkaSArIDEpICE9ICRsb29wLXRvIHtcbiAgICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcImFuZCBcIjtcbiAgICAgIH1cblxuICAgICAgJGk6ICRpICsgMjtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaWEtcXVlcnl9IHtcbiAgICAgIEBjb250ZW50O1xuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuIGVsZW1lbnQgc2hvdWxkIHNwYW4uIElmIHRoZSBzZWxlY3RvciBpcyBuZXN0ZWQgdGhlIG51bWJlciBvZiBjb2x1bW5zIG9mIGl0cyBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IGFzIHdlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzcGFuXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyBgJGNvbHVtbnNgLCB0aGUgdW5pdGxlc3MgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIGVsZW1lbnQgc3BhbnMgKHJlcXVpcmVkKSwgYW5kIGAkY29udGFpbmVyLWNvbHVtbnNgLCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIHBhcmVudCBlbGVtZW50IHNwYW5zIChvcHRpb25hbCkuXG4vLy9cbi8vLyAgIElmIG9ubHkgb25lIHZhbHVlIGlzIHBhc3NlZCwgaXQgaXMgYXNzdW1lZCB0aGF0IGl0J3MgYCRjb2x1bW5zYCBhbmQgdGhhdCB0aGF0IGAkY29udGFpbmVyLWNvbHVtbnNgIGlzIGVxdWFsIHRvIGAkZ3JpZC1jb2x1bW5zYCwgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuLy8vXG4vLy8gICBUaGUgdmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgd2l0aCBhbnkgc3RyaW5nIHN1Y2ggYXMgYG9mYCwgYC9gLCBldGMuXG4vLy9cbi8vLyAgIGAkY29sdW1uc2AgYWxzbyBhY2NlcHRzIGRlY2ltYWxzIGZvciB3aGVuIGl0J3MgbmVjZXNzYXJ5IHRvIGJyZWFrIG91dCBvZiB0aGUgc3RhbmRhcmQgZ3JpZC4gRS5nLiBQYXNzaW5nIGAyLjRgIGluIGEgc3RhbmRhcmQgMTIgY29sdW1uIGdyaWQgd2lsbCBkaXZpZGUgdGhlIHJvdyBpbnRvIDUgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LiBCeSBkZWZhdWx0IGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgdG8gYGJsb2NrYC5cbi8vL1xuLy8vICAgSWYgcGFzc2VkIGBibG9jay1jb2xsYXBzZWAsIGl0IGFsc28gcmVtb3ZlcyB0aGUgbWFyZ2luIGd1dHRlciBieSBhZGRpbmcgaXQgdG8gdGhlIGVsZW1lbnQgd2lkdGguXG4vLy9cbi8vLyAgIElmIHBhc3NlZCBgdGFibGVgLCBpdCBzZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IHRvIGB0YWJsZS1jZWxsYCBhbmQgY2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgd2l0aG91dCB0YWtpbmcgZ3V0dGVycyBpbnRvIGNvbnNpZGVyYXRpb24uIFRoZSByZXN1bHQgZG9lcyBub3QgYWxpZ24gd2l0aCB0aGUgYmxvY2stYmFzZWQgZ3JpZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy9cbi8vLyAgICAubmVzdGVkLWVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDIgb2YgNik7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbi8vLyAgICAgd2lkdGg6IDQ4LjgyMTE3JTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQgLm5lc3RlZC1lbGVtZW50IHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xuLy8vICAgICB3aWR0aDogMzAuMTEzODklO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudCAubmVzdGVkLWVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cblxuQG1peGluIHNwYW4tY29sdW1ucygkc3BhbjogJGNvbHVtbnMgb2YgJGNvbnRhaW5lci1jb2x1bW5zLCAkZGlzcGxheTogYmxvY2spIHtcbiAgJGNvbHVtbnM6IG50aCgkc3BhbiwgMSk7XG4gICRjb250YWluZXItY29sdW1uczogY29udGFpbmVyLXNwYW4oJHNwYW4pO1xuXG4gICRwYXJlbnQtY29sdW1uczogZ2V0LXBhcmVudC1jb2x1bW5zKCRjb250YWluZXItY29sdW1ucykgIWdsb2JhbDtcblxuICAkZGlyZWN0aW9uOiBnZXQtZGlyZWN0aW9uKCRsYXlvdXQtZGlyZWN0aW9uLCAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uKTtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcblxuICAkZGlzcGxheS10YWJsZTogaXMtZGlzcGxheS10YWJsZSgkY29udGFpbmVyLWRpc3BsYXktdGFibGUsICRkaXNwbGF5KTtcblxuICBAaWYgJGRpc3BsYXktdGFibGUgIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgfSBAZWxzZSB7XG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG5cbiAgICBAaWYgJGRpc3BsYXkgIT0gbm8tZGlzcGxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJGRpc3BsYXkgPT0gY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAnY29sbGFwc2UnIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZC4gVXNlICdibG9jay1jb2xsYXBzZScgaW5zdGVhZC5cIik7XG4gICAgfVxuXG4gICAgQGlmICRkaXNwbGF5ID09IGNvbGxhcHNlIG9yICRkaXNwbGF5ID09IGJsb2NrLWNvbGxhcHNlIHtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucykgKyBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnMpO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnMpO1xuICAgICAgfVxuXG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFkZWZhdWx0O1xuJGZnLWNvbHVtbjogJGNvbHVtbjtcbiRmZy1ndXR0ZXI6ICRndXR0ZXI7XG4kZmctbWF4LWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4kY29udGFpbmVyLWRpc3BsYXktdGFibGU6IGZhbHNlICFkZWZhdWx0O1xuJGxheW91dC1kaXJlY3Rpb246IExUUiAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMpIHtcbiAgJHdpZHRoOiBmbGV4LXdpZHRoKCRjb2x1bW5zKTtcbiAgJGNvbnRhaW5lci13aWR0aDogZmxleC13aWR0aCgkY29udGFpbmVyLWNvbHVtbnMpO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHdpZHRoIC8gJGNvbnRhaW5lci13aWR0aCk7XG59XG5cbkBmdW5jdGlvbiBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucywgJGd1dHRlcjogJGZnLWd1dHRlcikge1xuICAkY29udGFpbmVyLXdpZHRoOiBmbGV4LXdpZHRoKCRjb250YWluZXItY29sdW1ucyk7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkZ3V0dGVyIC8gJGNvbnRhaW5lci13aWR0aCk7XG59XG5cbkBmdW5jdGlvbiBmbGV4LXdpZHRoKCRuLCAkY29sdW1uLXdpZHRoOiAkZmctY29sdW1uLCAkZ3V0dGVyLXdpZHRoOiAkZmctZ3V0dGVyKSB7XG4gIEByZXR1cm4gJG4gKiAkY29sdW1uLXdpZHRoICsgKCRuIC0gMSkgKiAkZ3V0dGVyLXdpZHRoO1xufVxuXG5AZnVuY3Rpb24gZ2V0LXBhcmVudC1jb2x1bW5zKCRjb2x1bW5zKSB7XG4gIEBpZiAkY29sdW1ucyAhPSAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkcGFyZW50LWNvbHVtbnM6ICRjb2x1bW5zICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwYXJlbnQtY29sdW1uczogJGdyaWQtY29sdW1ucyAhZ2xvYmFsO1xuICB9XG5cbiAgQHJldHVybiAkcGFyZW50LWNvbHVtbnM7XG59XG5cbkBmdW5jdGlvbiBpcy1kaXNwbGF5LXRhYmxlKCRjb250YWluZXItaXMtZGlzcGxheS10YWJsZSwgJGRpc3BsYXkpIHtcbiAgQHJldHVybiAkY29udGFpbmVyLWlzLWRpc3BsYXktdGFibGUgPT0gdHJ1ZSBvciAkZGlzcGxheSA9PSB0YWJsZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFJlbW92ZXMgdGhlIGVsZW1lbnQncyBndXR0ZXIgbWFyZ2luLCByZWdhcmRsZXNzIG9mIGl0cyBwb3NpdGlvbiBpbiB0aGUgZ3JpZCBoaWVyYXJjaHkgb3IgZGlzcGxheSBwcm9wZXJ0eS4gSXQgY2FuIHRhcmdldCBhIHNwZWNpZmljIGVsZW1lbnQsIG9yIGV2ZXJ5IGBudGgtY2hpbGRgIG9jY3VycmVuY2UuIFdvcmtzIG9ubHkgd2l0aCBgYmxvY2tgIGxheW91dHMuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRxdWVyeSBbYmxvY2tdXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50cy4gU3VwcG9ydGVkIGFyZ3VtZW50cyBhcmUgYG50aC1jaGlsZGAgc2VsZWN0b3JzICh0YXJnZXRzIGEgc3BlY2lmaWMgcHNldWRvIGVsZW1lbnQpIGFuZCBgYXV0b2AgKHRhcmdldHMgYGxhc3QtY2hpbGRgKS5cbi8vL1xuLy8vICAgV2hlbiBwYXNzZWQgYW4gYG50aC1jaGlsZGAgYXJndW1lbnQgb2YgdHlwZSBgKm5gIHdpdGggYGJsb2NrYCBkaXNwbGF5LCB0aGUgb21lZ2EgbWl4aW4gYXV0b21hdGljYWxseSBhZGRzIGEgY2xlYXIgdG8gdGhlIGAqbisxYCB0aCBlbGVtZW50LiBOb3RlIHRoYXQgY29tcG9zaXRlIGFyZ3VtZW50cyBzdWNoIGFzIGAybisxYCBkbyBub3Qgc3VwcG9ydCB0aGlzIGZlYXR1cmUuXG4vLy9cbi8vLyAgICoqRGVwcmVjYXRpb24gd2FybmluZyoqOiBUaGUgb21lZ2EgbWl4aW4gd2lsbCBubyBsb25nZXIgdGFrZSBhIGAkZGlyZWN0aW9uYCBhcmd1bWVudC4gVG8gY2hhbmdlIHRoZSBsYXlvdXQgZGlyZWN0aW9uLCB1c2UgYHJvdygkZGlyZWN0aW9uKWAgb3Igc2V0IGAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uYCBpbnN0ZWFkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG9tZWdhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAubnRoLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBvbWVnYSg0bik7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLm50aC1lbGVtZW50Om50aC1jaGlsZCg0bikge1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5udGgtZWxlbWVudDpudGgtY2hpbGQoNG4rMSkge1xuLy8vICAgICBjbGVhcjogbGVmdDtcbi8vLyAgIH1cblxuQG1peGluIG9tZWdhKCRxdWVyeTogYmxvY2ssICRkaXJlY3Rpb246IGRlZmF1bHQpIHtcbiAgJHRhYmxlOiBiZWxvbmdzLXRvKHRhYmxlLCAkcXVlcnkpO1xuICAkYXV0bzogYmVsb25ncy10byhhdXRvLCAkcXVlcnkpO1xuXG4gIEBpZiAkZGlyZWN0aW9uICE9IGRlZmF1bHQge1xuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJUaGUgb21lZ2EgbWl4aW4gd2lsbCBubyBsb25nZXIgdGFrZSBhICRkaXJlY3Rpb24gYXJndW1lbnQuIFRvIGNoYW5nZSB0aGUgbGF5b3V0IGRpcmVjdGlvbiwgdXNlIHRoZSBkaXJlY3Rpb24oKXsuLi59IG1peGluLlwiKTtcbiAgfSBAZWxzZSB7XG4gICAgJGRpcmVjdGlvbjogZ2V0LWRpcmVjdGlvbigkbGF5b3V0LWRpcmVjdGlvbiwgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbik7XG4gIH1cblxuICBAaWYgJHRhYmxlIHtcbiAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlIG9tZWdhIG1peGluIG5vIGxvbmdlciByZW1vdmVzIHBhZGRpbmcgaW4gdGFibGUgbGF5b3V0cy5cIik7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgQGlmICRhdXRvIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmIGNvbnRhaW5zLWRpc3BsYXktdmFsdWUoJHF1ZXJ5KSBhbmQgJHRhYmxlID09IGZhbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIG50aC1jaGlsZCgkcXVlcnksICRkaXJlY3Rpb24pO1xuICAgIH1cbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAyIHtcbiAgICBAaWYgJGF1dG8ge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBudGgtY2hpbGQobnRoKCRxdWVyeSwgMSksICRkaXJlY3Rpb24pO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRvbyBtYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIG9tZWdhKCkgbWl4aW4uXCIpO1xuICB9XG59XG5cbkBtaXhpbiBudGgtY2hpbGQoJHF1ZXJ5LCAkZGlyZWN0aW9uKSB7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbik7XG5cbiAgJjpudGgtY2hpbGQoI3skcXVlcnl9KSB7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkcXVlcnkpID09IHN0cmluZyB7XG4gICAgJHF1ZXJ5OiBzdHItcmVwbGFjZSgkcXVlcnksIFwiIFwiLCBcIlwiKTtcbiAgICAkb3BlcmF0b3I6IGZhbHNlO1xuXG4gICAgQGlmIHN0cl9pbmRleCgkcXVlcnksIFwiK1wiKSB7XG4gICAgICAkb3BlcmF0b3I6IFwiK1wiO1xuICAgIH0gQGVsc2UgaWYgc3RyX2luZGV4KCRxdWVyeSwgXCItXCIpIHtcbiAgICAgICRvcGVyYXRvcjogXCItXCI7XG4gICAgfVxuXG4gICAgQGlmICRvcGVyYXRvciB7XG4gICAgICAkb3BlcmF0b3ItaW5kZXg6IHN0cl9pbmRleCgkcXVlcnksICRvcGVyYXRvcik7XG4gICAgICAkZmlyc3Q6IHN0ci1zbGljZSgkcXVlcnksIDAsICgkb3BlcmF0b3ItaW5kZXggLSAxKSk7XG4gICAgICAkbGFzdDogdG8tbnVtYmVyKHN0ci1zbGljZSgkcXVlcnksICgkb3BlcmF0b3ItaW5kZXggKyAxKSwgLTEpKTtcbiAgICAgIEBpZiAkb3BlcmF0b3IgPT0gXCIrXCIge1xuICAgICAgICAkbGFzdDogJGxhc3QgKyAxO1xuICAgICAgfSBAZWxzZSBpZiAkb3BlcmF0b3IgPT0gXCItXCIge1xuICAgICAgICAkbGFzdDogJGxhc3QgLSAxO1xuICAgICAgfVxuICAgICAgJG50aDogXCIjeyRmaXJzdH0jeyRvcGVyYXRvcn0jeyRsYXN0fVwiO1xuXG4gICAgICAmOm50aC1jaGlsZCgjeyRudGh9KSB7XG4gICAgICAgIGNsZWFyOiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbnVtYmVyICYmIHVuaXQoJHF1ZXJ5KSA9PSBcIm5cIiB7XG4gICAgJjpudGgtY2hpbGQoI3skcXVlcnl9KzEpIHtcbiAgICAgIGNsZWFyOiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuICAgIH1cbiAgfVxufVxuIl19 */
