/**
  Normal reset
*/
/* stylelint-disable */
img, legend {
  border: 0;
}

legend, td, th {
  padding: 0;
}

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, hgroup, main, menu, nav, section, summary {
  display: block;
}

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

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

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

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

abbr[title] {
  border-bottom: 1px dotted;
}

b, optgroup, strong {
  font-weight: 700;
}

dfn {
  font-style: italic;
}

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

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

small {
  font-size: 80%;
}

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

sup {
  top: -.5em;
}

sub {
  bottom: -.25em;
}

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

figure {
  margin: 1em 40px;
}

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

pre, textarea {
  overflow: auto;
}

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

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

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

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

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

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

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

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
  Config file that contains centralized variables
*/
/*
body {
  background: green !important;
  @include breakpoint($small)  { background: orange !important; }
  @include breakpoint($medium) { background: teal !important; }
  @include breakpoint($large)  { background: orchid !important; }
  @include breakpoint($up-sm)  { background: aliceblue !important; }
}
*/
.no-ul-list, body ul.links.inline li, .region-branding .block-system-menublock ul.menu, nav.breadcrumb ol, .region-footer .block-menu ul.menu, .drupal-messages ol {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.no-ul-list > li, body ul.links.inline li > li, .region-branding .block-system-menublock ul.menu > li, nav.breadcrumb ol > li, .region-footer .block-menu ul.menu > li, .drupal-messages ol > li {
  display: inline-block;
  list-style-type: none;
  margin: 2px;
}

.tmp-shadow, .blocked-style, .layout-node-form .layout-region-node-secondary > .form-wrapper, aside .block, nav.breadcrumb, button,
html input[type="button"],
input[type="reset"],
input[type="submit"], .drupal-messages {
  box-shadow: 0 0 2px 0 #666666;
}

.tmp-shadow-none {
  box-shadow: none;
}

.blocked-style, .layout-node-form .layout-region-node-secondary > .form-wrapper, aside .block, nav.breadcrumb {
  border: 1px solid #fff;
  padding: 12px;
  border-radius: 5px;
  background: #f7f7f7;
}

html,
body {
  min-height: 100%;
  padding: 0;
  margin: 0;
}

body {
  font-family: "Poppins";
  font-size: 1em;
  line-height: 165%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #333333;
  font-weight: 500;
  font-family: "Open Sans";
  padding: 0 0 0.3em;
  margin: 0;
}

h1 {
  font-size: 250%;
  line-height: 165%;
}

h2 {
  font-size: 210%;
  line-height: 145%;
}

h3 {
  font-size: 180%;
  line-height: 145%;
}

h4 {
  font-size: 170%;
  line-height: 145%;
}

h5,
h6 {
  font-size: 140%;
  line-height: 145%;
}

body .menu-item {
  padding-top: 0;
  margin: 0;
}

a,
a:link,
a:visited {
  text-decoration: none;
  color: #666666;
  cursor: inherit;
}

a:hover,
a:link:hover,
a:visited:hover {
  color: #333333;
  text-decoration: underline;
}

body p {
  margin: 3px 0 10px;
}

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

blockquote {
  padding: 0 15px;
  color: #333333;
  border-left: 4px solid #f7f7f7;
}

blockquote:last-child {
  margin-bottom: 0;
}

pre {
  white-space: pre-wrap;
  overflow-x: auto;
}

pre code {
  border: 1px dotted #333333;
  background: #f7f7f7;
  padding: 2px 9px;
  display: block;
  font-size: 85%;
}

ol {
  padding: 0 0 0 10px;
  margin: 0 0 10px;
}

ol li {
  margin: 4px 0;
  padding: 0;
}

ol ol {
  padding: 0 0 0 22.5px;
}

ol ol ol {
  padding: 0 0 0 22.5px;
}

ul {
  padding: 0 0 0 10px;
  margin: 0 0 10px;
}

ul li {
  margin: 4px 0;
  padding: 0;
}

ul ul {
  padding: 0 0 0 22.5px;
}

ul ul ul {
  padding: 0 0 0 22.5px;
}

table {
  width: 100%;
}

table th {
  font-weight: 600;
  text-align: left;
  background-color: #f7f7f7;
  padding: 4px 5px;
}

table td {
  border: 0;
  outline: none;
  padding: 4px 5px;
}

table thead {
  border: 1px solid #f7f7f7;
  border-bottom: 0;
}

table tbody {
  border: 1px solid #f7f7f7;
}

table tbody tr:nth-child(even) {
  background-color: #f7f7f7;
  border-top: 1px solid #f7f7f7;
  border-bottom: 1px solid #f7f7f7;
}

body button.tabledrag-toggle-weight {
  margin: 5px;
}

body td.field-multiple-drag {
  max-width: 30px;
}

body .inline {
  display: inline-block;
}

body ul.links.inline {
  padding: 0;
  margin: 0;
}

body ul.links.inline li {
  padding: 0 9px 3px 0;
  display: inline-block;
}

form .form-item {
  padding: 0 0 7px;
}

form .form-item.form-type-textarea {
  padding-bottom: 0;
}

form .description {
  font-style: italic;
  font-size: 90%;
  margin-bottom: 3px;
}

.layout-node-form .layout-region-node-secondary > .form-wrapper h3,
.layout-node-form .layout-region-node-secondary > .form-wrapper h4 {
  font-size: inherit;
}

.layout-node-form .layout-region-node-footer {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #f7f7f7;
}

form details.js-form-wrapper {
  cursor: pointer;
}

.js input.form-autocomplete,
.js input.form-autocomplete.ui-autocomplete-loading {
  background-position: 100% center;
  background-repeat: no-repeat;
}

.js[dir="rtl"] input.form-autocomplete,
.js[dir="rtl"] input.form-autocomplete.ui-autocomplete-loading {
  background-position: 0% center;
  background-repeat: no-repeat;
}

form {
  margin: 0 0 1em;
}

label {
  display: inline-block;
  color: #333333;
  cursor: pointer;
  font-weight: 500;
  margin: 0 0 0.1875em;
  padding-right: 4px;
  vertical-align: top;
}

input[type="text"],
input[type="password"],
input[type="date"],
textarea {
  background-color: white;
  font-family: inherit;
  border: 1px solid #e6e6e6;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-size: 0.875em;
  margin: 0 0 1em;
  padding: 0.5em;
  width: auto;
  box-sizing: border-box;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
textarea:focus {
  box-shadow: 0 0 5px #b3b3b3;
  border-color: #b3b3b3;
  background: white;
  outline: none;
}

input[type="file"],
input[type="checkbox"],
input[type="radio"],
select {
  margin: 0 0 1em;
}

input[type="file"] {
  width: 100%;
}

fieldset {
  border: solid 1px #b3b3b3;
  padding: 1.25em;
  margin: 1.125em 0;
}

fieldset legend {
  font-weight: bold;
  background: #fff;
  padding: 0 0.1875em;
  margin: 0;
  margin-left: -0.1875em;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  border-radius: 5px;
  border: 1px solid #fff;
  padding: 5px 11px;
  background: #f7f7f7;
  color: #666666;
}

button:hover, button:focus,
html input[type="button"]:hover,
html input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
  background: #e6e6e6;
}

.error,
.error textarea,
.error select {
  border-color: #ee696c;
  background-color: rgba(198, 15, 19, 0.1);
  margin-bottom: 0;
}

.error input:focus,
.error textarea:focus,
.error select:focus {
  background: #f7f7f7;
  border-color: #b3b3b3;
}

.error label,
.error label.error {
  color: #ee696c;
}

.error > small,
.error small.error {
  display: block;
  padding: 0.375em 0.25em;
  margin-top: 0;
  margin-bottom: 1em;
  font-size: 0.75em;
  font-weight: bold;
  background: #ee696c;
  color: #fff;
}

.error span.error-message {
  display: block;
}

input.error,
textarea.error {
  border-color: #ee696c;
  background-color: rgba(198, 15, 19, 0.1);
  margin-bottom: 0;
}

input.error:focus,
textarea.error:focus {
  background: #f7f7f7;
  border-color: #b3b3b3;
}

.error select {
  border-color: #ee696c;
  background-color: rgba(198, 15, 19, 0.1);
}

.error select:focus {
  background: #f7f7f7;
  border-color: #b3b3b3;
}

label.error {
  color: #ee696c;
}

input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"] {
  background-color: white;
  font-family: inherit;
  border: 1px solid #e6e6e6;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-size: 0.875em;
  margin: 0 0 1em;
  padding: 0.5em;
  height: 2.3125em;
  width: auto;
  box-sizing: border-box;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
}

input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus {
  box-shadow: 0 0 5px #b3b3b3;
  border-color: #b3b3b3;
  outline: none;
}

form input[disabled],
form button[disabled] {
  background-color: #b3b3b3;
  box-shadow: none;
}

form input[disabled]:hover,
form button[disabled]:hover {
  background-color: #b3b3b3;
}

form button,
form input {
  transition: all 0.3s ease;
}

form button[disabled],
form input[disabled] {
  transition: auto;
}

.cog--mq {
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
  margin: 10px auto;
}

.cog--mq:after {
  content: " ";
  display: block;
  clear: both;
}

#pg__c.page-panel .mq-main {
  max-width: 100%;
}

body #pg__c.page-panel section#content > #content-area {
  padding-left: 0;
  padding-right: 0;
}

.cog-pl .cog-panel--fullrow {
  width: 100%;
}

.cog-pl .cog-panel--mq {
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
}

.cog-pl .cog-panel--mq:after {
  content: " ";
  display: block;
  clear: both;
}

.panel-cog-layout-one-col .cog-layout--main {
  width: 100%;
  float: right;
  margin-right: 0;
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-two-one .cog-layout--middle-left {
    width: 49.15254%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-one .cog-layout--middle-right {
    width: 49.15254%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-two-one-cl .cog-layout--middle-left {
    width: 74.57627%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-one-cl .cog-layout--middle-right {
    width: 23.72881%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-two-one-cr .cog-layout--middle-left {
    width: 23.72881%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-one-cr .cog-layout--middle-right {
    width: 74.57627%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-three-one .cog-layout--middle-left {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-one .cog-layout--middle-center {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-one .cog-layout--middle-right {
    width: 32.20339%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-three-one-cm .cog-layout--middle-left {
    width: 23.72881%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-one-cm .cog-layout--middle-center {
    width: 49.15254%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-one-cm .cog-layout--middle-right {
    width: 23.72881%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-two-three-one .cog-layout--first-middle-left {
    width: 49.15254%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-three-one .cog-layout--first-middle-right {
    width: 49.15254%;
    float: right;
    margin-right: 0;
  }
  .panel-cog-layout-one-two-three-one .cog-layout--second-middle-left {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-three-one .cog-layout--second-middle-center {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-two-three-one .cog-layout--second-middle-right {
    width: 32.20339%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .panel-cog-layout-one-three-two-one .cog-layout--first-middle-left {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-two-one .cog-layout--first-middle-center {
    width: 32.20339%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-two-one .cog-layout--first-middle-right {
    width: 32.20339%;
    float: right;
    margin-right: 0;
  }
  .panel-cog-layout-one-three-two-one .cog-layout--second-middle-left {
    width: 49.15254%;
    float: left;
    margin-right: 1.69492%;
  }
  .panel-cog-layout-one-three-two-one .cog-layout--second-middle-right {
    width: 49.15254%;
    float: right;
    margin-right: 0;
  }
}

@media only screen and (min-width: 768px) {
  .body-sidebars-first aside.sidebar-first {
    width: 23.72881%;
    float: left;
    margin-right: 1.69492%;
  }
  .body-sidebars-first aside.sidebar-first > * {
    padding-left: 15px;
  }
  .body-sidebars-first section#content {
    width: 74.57627%;
    float: right;
    margin-right: 0;
  }
  .body-sidebars-first section#content > * {
    padding-right: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .body-sidebars-second aside.sidebar-second {
    width: 23.72881%;
    float: right;
    margin-right: 0;
  }
  .body-sidebars-second aside.sidebar-second > * {
    padding-right: 15px;
  }
  .body-sidebars-second section#content {
    width: 74.57627%;
    float: left;
    margin-right: 1.69492%;
  }
  .body-sidebars-second section#content > * {
    padding-left: 25px;
  }
}

@media only screen and (min-width: 768px) {
  .body-sidebars-both aside.sidebar-first {
    width: 15.25424%;
    float: left;
    margin-right: 1.69492%;
  }
  .body-sidebars-both aside.sidebar-first > * {
    padding-left: 15px;
  }
  .body-sidebars-both section#content {
    width: 66.10169%;
    float: left;
    margin-right: 1.69492%;
  }
  .body-sidebars-both section#content > * {
    padding-right: 25px;
  }
  .body-sidebars-both aside.sidebar-second {
    width: 15.25424%;
    float: right;
    margin-right: 0;
  }
  .body-sidebars-both aside.sidebar-second > * {
    padding-right: 15px;
  }
}

.body-sidebars-none section#content {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.body-sidebars-none section#content > * {
  padding-left: 15px;
  padding-right: 15px;
}

aside.sidebar {
  overflow: hidden;
}

aside .block {
  margin-bottom: 25px;
}

aside .block h2 {
  font-size: 175%;
  color: #333333;
}

#block-lightup-branding {
  vertical-align: bottom;
}

.site-branding-text {
  padding: 30px 10px 20px 0px;
  font-size: 220%;
  vertical-align: bottom;
  display: inline-block;
}

.site-branding-text a {
  color: #519c00;
}

.site-branding-text a:hover {
  color: #faca06;
  text-decoration: none;
}

div.site-branding a.logo {
  width: 80px;
  display: inline-block;
  padding: 0px 0px 0 10px;
  margin-bottom: 0px;
}

nav.breadcrumb {
  margin-bottom: 5px;
  color: #333333;
}

nav.breadcrumb ol li::before {
  content: '/';
  padding: 0 3px 0 0.5px;
  color: #333333;
}

nav.breadcrumb ol li:first-child::before {
  content: normal;
}

.region-footer {
  border-top: 1px dotted #b3b3b3;
  padding-top: 25px;
  margin-top: 25px;
}

.region-header {
  border-top: 1px dotted #b3b3b3;
  padding-bottom: 25px;
  margin-bottom: 25px;
}

.drupal-messages {
  padding: 15px;
  margin: 15px 0;
  border: 1px solid white;
  border-radius: 5px;
}

.drupal-messages.messages--status {
  background: #f7f7f7;
  color: #333333;
}

.drupal-messages.messages--warning {
  background: rgba(250, 202, 6, 0.3);
  color: #333333;
}

.drupal-messages.messages--error {
  background: rgba(238, 105, 108, 0.3);
  color: #ee696c;
}

.block-tabs {
  margin: 1.5em 0;
}

.block-tabs ul {
  display: block;
  padding-left: 0;
  border-bottom: 1px solid #b3b3b3;
}

.block-tabs ul li {
  display: inline-block;
}

.block-tabs ul li a {
  margin: 0;
  padding: 0.4em;
  text-decoration: none;
}

.button {
  color: blue;
}

.rounded {
  border-radius: 15px;
}

button:hover {
  color: red;
}

/* stylelint-disable */
/* stylelint-enable */
html {
  background-color: #000000;
}

html h1, html h2, html h3, html h4 {
  color: #faca06;
  font-family: 'Open Sans';
  font-weight: 600;
}

h2 {
  font-size: 150%;
  line-height: 120%;
}

.cog--mq {
  max-width: 100%;
  margin: 0;
}

.mq-branding, .region-footer {
  max-width: 1280px;
  margin: 0px auto;
}

.mq-footer {
  background-color: #000;
}

#branding {
  background: white;
  /* Fall-back for browsers that don't support rgba */
  background: white;
  width: 100%;
  clear: both;
  z-index: 9999;
  padding: 1px;
}

div.site-branding a.logo {
  height: 60px;
  width: auto;
}

div.site-branding a.logo img {
  width: 40px;
  margin: 10px;
}

.site-branding-text {
  padding: 10px 0;
  vertical-align: top;
  line-height: 50px;
  font-family: 'Open Sans';
  font-weight: 600;
  font-size: 30px;
}

.site-branding-name a, .site-branding-name a:hover {
  color: #000;
}

#block-lightup-branding {
  display: inline-block;
}

#block-lightup-main-menu, #block-lightup-account-menu {
  display: inline-block;
  font-size: 15px;
  text-transform: uppercase;
  float: right;
  margin-top: 25px;
  font-family: 'Open Sans';
  font-weight: 600;
}

#block-lightup-main-menu ul.menu li, #block-lightup-account-menu ul.menu li {
  margin: 2px 5px;
  border-right: 1px solid #333;
  padding-right: 18px;
}

#block-lightup-main-menu a, #block-lightup-main-menu a:link, #block-lightup-main-menu a:visited, #block-lightup-account-menu a, #block-lightup-account-menu a:link, #block-lightup-account-menu a:visited {
  text-decoration: none;
  color: #000000;
  cursor: inherit;
}

#block-lightup-main-menu a:hover, #block-lightup-account-menu a:hover {
  color: #000;
}

#block-lightup-account-menu ul.menu li:last-child {
  border-right: 0;
}

.map-container {
  height: 800px;
}

.map--front {
  height: 800px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .map--front {
    height: 60vh;
  }
}

#wsite-title {
  font-family: "Saginaw" !important;
  font-weight: 700 !important;
  color: #76b3b8 !important;
  text-transform: none !important;
  letter-spacing: 3px !important;
}

#content .field--name-body a, #content .field--name-body a:link, #content .field--name-body a:visited {
  color: #faca06;
  text-decoration: underline;
}

#content .field--name-body a:hover {
  color: #519c00;
}

.region-content {
  background: black;
  /* Fall-back for browsers that don't support rgba */
  background: rgba(0, 0, 0, 0.85);
  color: #ffffff;
}

.region-content a, .region-content a:link, .region-content a:visited {
  color: #faca06;
  text-decoration: underline;
}

.region-content label {
  color: #faca06;
}

.nodetype--page .region-content, .path--contact .region-content, .path--user .region-content {
  max-width: 960px;
  padding: 20px;
  margin: 0 auto;
}

body.nodetype--light #block-lightup-page-title h1 {
  color: green;
}

#block-views-block-actions-browse-block-1,
#block-views-block-actions-block-2,
#block-views-block-actions-browse-block-1-2 {
  margin-top: 30px;
  border-top: solid 1px #faca06;
  padding-top: 10px;
}

#block-views-block-actions-browse-block-1 .view-header,
#block-views-block-actions-block-2 .view-header,
#block-views-block-actions-browse-block-1-2 .view-header {
  font-style: italic;
  font-size: 85%;
}

#block-views-block-actions-browse-block-1 .views-field-title,
#block-views-block-actions-block-2 .views-field-title,
#block-views-block-actions-browse-block-1-2 .views-field-title {
  text-transform: uppercase;
  background: url("/themes/custom/lightup/images/bullet_bulb.png") no-repeat;
  padding: 5px 10px 10px 30px;
}

.action-title {
  color: #faca06;
  font-family: 'Open Sans';
  font-weight: 600;
  font-size: 32px;
  cursor: pointer;
  margin-top: 20px;
  text-transform: uppercase;
  background: url("/themes/custom/lightup/images/bullet_bulb.png") no-repeat;
  padding: 5px 10px 10px 30px;
}

.action-title:hover {
  color: #ffffff;
}

.action-info {
  padding: 10px;
  border: #faca06 solid 1px;
}

.action-info .action-description {
  font-weight: 87.5%;
  line-height: normal;
  padding-bottom: 10px;
}

.action-link {
  margin-bottom: 10px;
}

.action-link a, .action-link a:link, .action-link a:visited {
  background-color: #000000;
  border: #ffffff solid 1px;
  color: #ffffff;
  padding: 5px;
  text-decoration: none;
  text-transform: uppercase;
}

.action-link a:hover, .action-link a:link:hover, .action-link a:visited:hover {
  background-color: #ffffff;
  color: #000000;
}

strong {
  font-weight: bold;
  font-family: 'Poppins Bold';
}

blockquote {
  padding: 0 15px;
  color: #faca06;
  border-left: 4px solid #faca06;
}

fieldset legend {
  font-weight: bold;
  background: none;
  padding: 0 0.1875em;
  margin: 0;
  margin-left: -0.1875em;
}

#edit-field-action--wrapper legend {
  padding: 0 0 20px 0;
}

#edit-field-action--wrapper .form-item-field-action {
  border-top: 1px solid #faca06;
  padding-top: 5px;
  margin-bottom: 5px;
}

#edit-field-action--wrapper input.field_action,
#edit-field-action--wrapper label {
  display: inline-block;
  margin: 0;
  padding: 0;
}

#edit-field-action--wrapper input.field_action {
  width: 10%;
}

#edit-field-action--wrapper label {
  width: 90%;
}

.layout-region-node-secondary .edit-advanced {
  background-color: none;
  color: #ffffff;
}

.layout-region-node-secondary .edit-advanced a, .layout-region-node-secondary .edit-advanced a:link, .layout-region-node-secondary .edit-advanced a:visited {
  color: #ffffff;
  text-decoration: underline;
}

.blocked-style, .layout-node-form .layout-region-node-secondary > .form-wrapper, aside .block, nav.breadcrumb, .layout-node-form .layout-region-node-secondary > .form-wrapper,
aside .block, nav.breadcrumb {
  border: 1px solid #fff;
  padding: 12px;
  border-radius: 5px;
  background: none;
}

.field--name-field-representative,
.field--name-field-senator {
  margin-top: 10px;
}

.body-sidebars-none section#content > * {
  padding-left: 0px;
  padding-right: 0px;
}

.region-footer {
  margin-top: 0px;
  background: black;
  /* Fall-back for browsers that don't support rgba */
  color: #ffffff;
  padding: 10px;
  border-top: none;
}

.region-footer a, .region-footer a:link, .region-footer a:visited {
  color: #faca06;
  text-decoration: none;
}

.region-footer a:hover {
  color: #519c00;
}

.region-footer #block-lightup-footer ul.menu li:nth-child(1) {
  margin-top: 15px;
}

.region-footer #block-lightup-footer ul.menu li:nth-child(2) {
  float: right;
  margin-bottom: 10px;
}

.region-footer #block-lightup-footer ul.menu li:nth-child(2) a {
  display: inline-block;
  color: transparent;
  width: 101px;
  height: 50px;
  background: url("../images/H4WM.png") no-repeat;
}

#block-userregister {
  margin-top: 30px;
  background-color: #faca06;
  color: #000000;
  padding: 20px;
  border: none;
}

#block-userregister a, #block-userregister a:link, #block-userregister a:visited {
  color: #faca06;
  text-decoration: none;
}

#block-userregister a:hover {
  color: #519c00;
}

.page-standard {
  position: relative;
}

.back-to-top {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 10px;
  z-index: 999999;
  background-color: #faca06;
}

.back-to-top a {
  display: block;
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  background: url("/themes/custom/lightup/images/top.png") no-repeat;
  background-position: center center;
  width: 50px;
  height: 50px;
}

.view-map {
  position: fixed;
  bottom: 80px;
  right: 10px;
  z-index: 999999;
  background-color: #faca06;
}

.view-map a {
  display: block;
  border: 0;
  font: 0/0 a;
  text-shadow: none;
  background: url("/themes/custom/lightup/images/view-map.png") no-repeat;
  background-position: center center;
  width: 50px;
  height: 50px;
}

.map-overlay {
  text-align: center;
  background: #000;
  color: #fff;
  padding: 2px 20px 18px 20px;
}

.map-overlay h1 {
  margin-top: 9px;
  margin-bottom: 0;
  color: #faca06;
  font-size: 32px;
}

.map-overlay h3 {
  color: #faca06;
}

.map-overlay h4 {
  margin-top: 0;
  font-size: 25px;
  color: #fff;
}

.map-overlay button {
  display: block;
  width: 250px;
  height: 35px;
  margin: auto;
  padding: 0;
  font-family: 'Open Sans Condensed';
  font-weight: 700;
  font-size: 15px;
}

.map-overlay button:hover {
  background-color: #ffe049;
  color: #000;
  font-size: 16px;
}

.map-overlay .close {
  position: absolute;
  right: 10px;
  margin: 0;
  color: #fff;
}

.map-overlay .steps {
  margin-top: 15px;
}

#join-and-share {
  display: none;
}

form[name="address"] {
  width: 310px;
  margin: 0 auto;
}

form[name="address"] .form-group.street {
  width: 310px;
}

form[name="address"] .city-state {
  display: -ms-flexbox;
  display: flex;
}

form[name="address"] .form-group.city {
  width: 240px;
}

form[name="address"] .form-group.state {
  width: 48px;
  margin-left: 20px;
}

form[name="address"] .form-group input[type="text"] {
  width: 100%;
}

.action-script {
  padding: 0 10px;
  border-right: #faca06 solid 1px;
}

.action-reps {
  position: fixed;
  right: 0;
}

.rep {
  display: -ms-flexbox;
  display: flex;
  padding: 20px;
}

.rep > div {
  padding: 0 20px;
}

.rep h3 {
  margin: 5px 0;
  color: #000;
}

.rep .photo {
  width: 120px;
  min-width: 120px;
  max-height: 200px;
  background-size: cover;
  background-position: center;
  border-radius: 8px;
}

.rep .phone {
  vertical-align: middle;
  line-height: 32px;
}

.rep .office-name {
  width: 95px;
  display: inline-block;
  text-transform: capitalize;
}

.rep .fa:before {
  margin-right: 5px;
}

.rep .btn {
  padding: 0;
  height: 26px;
  width: 68px;
  text-transform: capitalize;
}

.rep .btn:hover {
  font-size: 16px;
}

.rep .phone-number {
  display: none;
}

.modal-title {
  color: #000;
}

.modal-title img {
  width: 25px;
  margin-right: 8px;
}

.modal label {
  color: #000;
}

.modal a:link, .modal a:visited, #content .modal .field--name-body a, #content .modal .field--name-body a:link, #content .modal .field--name-body a:visited {
  color: #519c00;
  text-decoration: none;
}

.modal a:hover, #content .modal .field--name-body a:hover {
  text-decoration: underline;
}

.modal .modal-footer {
  text-align: center;
  color: #777;
}

.modal .modal-footer a, .modal .modal-footer a:link, .modal .modal-footer a:visited {
  text-decoration: none;
  color: #000;
}

.modal-footer a:hover {
  text-decoration: underline;
}

.modal-footer b {
  color: #333;
}

.modal-footer i {
  color: #ccc;
}

.modal.in {
  display: -ms-flexbox !important;
  display: flex !important;
  height: 100%;
  color: #333;
}

.modal.in .modal-dialog {
  margin: auto;
}

.modal-dialog {
  overflow-y: initial !important;
}

.modal-body {
  max-height: calc(100vh - 200px);
  overflow-y: auto;
}

.viewmap {
  text-align: center;
}

.close {
  box-shadow: unset;
}

.nodetype--action .block-page-title-block, .nodetype--action .block-tabs {
  display: none;
}

.leaflet-control a, .leaflet-control a:link {
  text-decoration: none;
}

body .modal-backdrop.in {
  opacity: 1;
}

body .btn, body .btn-lg {
  border-radius: 0;
  border: 0;
  box-shadow: none;
  font-family: 'Open Sans Condensed';
  font-weight: 700;
  font-size: 15px;
}

body .btn-primary {
  background-color: #faca06;
  color: #000;
  text-transform: uppercase;
}

body .btn-primary:hover {
  background-color: #ffe049;
  color: #000;
}

@media only screen and (max-width: 767px) {
  .user-login-form input {
    width: 99% !important;
  }
}

#makeACallModal a {
  color: #777;
  text-decoration: none;
}

#makeACallModal a:hover {
  text-decoration: underline;
}

.take-action {
  display: inline-block;
  width: 100%;
}

@media (min-width: 1023px) {
  .take-action {
    width: 20%;
  }
}

.steps {
  display: inline-block;
}

.active-step {
  color: #519c00;
  font-weight: bold;
  display: inline-block;
  margin-right: 5px;
}

.map-overlay .steps-last {
  margin-top: 0;
}

.map-overlay .active-step {
  color: #faca06;
}

img.active-icon {
  margin-left: 5px;
  margin-right: 5px;
}

.scroll-for-script h3 {
  margin: auto;
}

@media screen and (min-width: 991px) {
  .scroll-for-script {
    display: none;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5zY3NzIiwiX3Jlc2V0LnNjc3MiLCJzdHlsZXMuY3NzIiwiX2NvbmZpZy5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiYmFzZS9fZHJ1cGFsLnNjc3MiLCJiYXNlL19mb3JtLnNjc3MiLCJsYXlvdXQvX2NvbnRhaW5lcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fcmVtLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fY29udGFpbmVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX2NsZWFyZml4LnNjc3MiLCJsYXlvdXQvX3BhbmVscy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX3NwYW4uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19kaXJlY3Rpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ndXR0ZXJzLnNjc3MiLCJsYXlvdXQvX3NpZGViYXJzLnNjc3MiLCJjb21wb25lbnRzL19hc2lkZV9ibG9ja3Muc2NzcyIsImNvbXBvbmVudHMvX2JyYW5kaW5nLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fbWVzc2FnZXMuc2NzcyIsImNvbXBvbmVudHMvX3RhYnMuc2NzcyIsImNvbXBvbmVudHMvZXhhbXBsZS9leGFtcGxlX2J1dHRvbi5zY3NzIiwic3RhdGUvX3N0YXRlcy5zY3NzIiwiX2xpZ2h0dXAuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7RUFFRTtBQ0xGLHVCQUF1QjtBQUN2QjtFQUFXLFVBQVM7Q0FBRTs7QUFBRDtFQUFhLFdBQVU7Q0FBRTs7QUFBRDtFQUFLLHdCQUF1QjtFQUFDLDJCQUEwQjtFQUFDLCtCQUE4QjtDQUFFOztBQUFEO0VBQUssVUFBUztDQUFFOztBQUFEO0VBQTJGLGVBQWM7Q0FBRTs7QUFBRDtFQUE0QixzQkFBcUI7RUFBQyx5QkFBd0I7Q0FBRTs7QUFBRDtFQUFzQixjQUFhO0VBQUMsVUFBUztDQUFFOztBQ21Ddlg7RURuQ3dZLGNBQWE7Q0FBRTs7QUFBRDtFQUFFLDhCQUE2QjtDQUFFOztBQUFEO0VBQWlCLFdBQVU7Q0FBRTs7QUFBRDtFQUFZLDBCQUF5QjtDQUFFOztBQUFEO0VBQWtCLGlCQUFnQjtDQUFFOztBQUFEO0VBQUksbUJBQWtCO0NBQUU7O0FBQUQ7RUFBRyxlQUFjO0VBQUMsZ0JBQWU7Q0FBRTs7QUFBRDtFQUFLLGlCQUFnQjtFQUFDLFlBQVc7Q0FBRTs7QUFBRDtFQUFNLGVBQWM7Q0FBRTs7QUFBRDtFQUFRLGVBQWM7RUFBQyxlQUFjO0VBQUMsbUJBQWtCO0VBQUMseUJBQXdCO0NBQUU7O0FBQUQ7RUFBSSxXQUFVO0NBQUU7O0FBQUQ7RUFBSSxlQUFjO0NBQUU7O0FBQUQ7RUFBZSxpQkFBZ0I7Q0FBRTs7QUFBRDtFQUFPLGlCQUFnQjtDQUFFOztBQUFEO0VBQWdDLHdCQUF1QjtFQUFDLFVBQVM7Q0FBRTs7QUFBRDtFQUFhLGVBQWM7Q0FBRTs7QUFBRDtFQUFrQixpQ0FBZ0M7RUFBQyxlQUFjO0NBQUU7O0FBQUQ7RUFBc0MsZUFBYztFQUFDLGNBQWE7RUFBQyxVQUFTO0NBQUU7O0FBQUQ7RUFBTyxrQkFBaUI7Q0FBRTs7QUFBRDtFQUFjLHFCQUFvQjtDQUFFOztBQUFEO0VBQW9FLDJCQUEwQjtFQUFDLGdCQUFlO0NBQUU7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b0M7RURyRHBDLG1CQ3FEbUU7RUZqRXJFLGtCQUFrQjtDQUNuQjs7QUFKRDtFR1FNLGFBQWE7RUFDYixlQUFlO0VBQ2YsWUFBWTtDQUNiOztBQ2JMO0VBQ0UsZ0JBQWdCO0NBQ2pCOztBQUVEO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtDQUNsQjs7QUFFRDtFQUVJLFlBQVk7Q0FDYjs7QUFISDtFSFFJLGdCR0Z1QjtFSEV2QixrQkNxRG9DO0VEckRwQyxtQkNxRG1FO0NFdERwRTs7QUFQSDtFRENNLGFBQWE7RUFDYixlQUFlO0VBQ2YsWUFBWTtDQUNiOztBQ1dMO0VIUEksWUl3SW9CO0VKeElwQixhS0F1RTtFTEF2RSxnQklrRm9CO0NEeEVyQjs7QUdtQ0M7RUhoQ0o7SUhiSSxpQkl3SW9CO0lKeElwQixZS0E0RDtJTEE1RCx1Qk80RHdCO0dKM0N2QjtFQUpMO0lIYkksaUJJd0lvQjtJSnhJcEIsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRDdEbkI7Q1R3cUJKOztBWWhwQkc7RUhwQko7SUh6QkksaUJJd0lvQjtJSnhJcEIsWUtBNEQ7SUxBNUQsdUJPNER3QjtHSi9CdkI7RUFKTDtJSHpCSSxpQkl3SW9CO0lKeElwQixhS0F1RTtJTEF2RSxnQklrRm9CO0dEakRuQjtDVHlxQko7O0FZN3BCRztFSFJKO0lIckNJLGlCSXdJb0I7SUp4SXBCLFlLQTREO0lMQTVELHVCTzREd0I7R0puQnZCO0VBSkw7SUhyQ0ksaUJJd0lvQjtJSnhJcEIsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRHJDbkI7Q1QwcUJKOztBWTFxQkc7RUhJSjtJSGpESSxpQkl3SW9CO0lKeElwQixZS0E0RDtJTEE1RCx1Qk80RHdCO0dKUHZCO0VBSkw7SUhqREksaUJJd0lvQjtJSnhJcEIsWUtBNEQ7SUxBNUQsdUJPNER3QjtHSkh2QjtFQVJMO0lIakRJLGlCSXdJb0I7SUp4SXBCLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RyQm5CO0NUNHFCSjs7QVk1ckJHO0VIb0JKO0lIakVJLGlCSXdJb0I7SUp4SXBCLFlLQTREO0lMQTVELHVCTzREd0I7R0pTdkI7RUFKTDtJSGpFSSxpQkl3SW9CO0lKeElwQixZS0E0RDtJTEE1RCx1Qk80RHdCO0dKYXZCO0VBUkw7SUhqRUksaUJJd0lvQjtJSnhJcEIsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRExuQjtDVDhxQko7O0FZOXNCRztFSG9DSjtJSGpGSSxpQkl3SW9CO0lKeElwQixZS0E0RDtJTEE1RCx1Qk80RHdCO0dKeUJ2QjtFQUpMO0lIakZJLGlCSXdJb0I7SUp4SXBCLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RPbkI7RUFSTDtJSGpGSSxpQkl3SW9CO0lKeElwQixZS0E0RDtJTEE1RCx1Qk80RHdCO0dKaUN2QjtFQVpMO0lIakZJLGlCSXdJb0I7SUp4SXBCLFlLQTREO0lMQTVELHVCTzREd0I7R0pxQ3ZCO0VBaEJMO0lIakZJLGlCSXdJb0I7SUp4SXBCLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RtQm5CO0NUa3JCSjs7QVkxdUJHO0VINERKO0lIekdJLGlCSXdJb0I7SUp4SXBCLFlLQTREO0lMQTVELHVCTzREd0I7R0ppRHZCO0VBSkw7SUh6R0ksaUJJd0lvQjtJSnhJcEIsWUtBNEQ7SUxBNUQsdUJPNER3QjtHSnFEdkI7RUFSTDtJSHpHSSxpQkl3SW9CO0lKeElwQixhS0F1RTtJTEF2RSxnQklrRm9CO0dEbUNuQjtFQVpMO0lIekdJLGlCSXdJb0I7SUp4SXBCLFlLQTREO0lMQTVELHVCTzREd0I7R0o2RHZCO0VBaEJMO0lIekdJLGlCSXdJb0I7SUp4SXBCLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0QyQ25CO0NUc3JCSjs7QVl0d0JHO0VFckRKO0lSUUksaUJJd0lvQjtJSnhJcEIsWUtBNEQ7SUxBNUQsdUJPNER3QjtHQzVEdkI7RUFSTDtJQU1RLG1CQUFtQjtHQUNwQjtFQVBQO0lSUUksaUJJd0lvQjtJSnhJcEIsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHSTFFbkI7RUFoQkw7SUFjUSxvQkFBb0I7R0FDckI7Q2QrekJOOztBWXp4Qkc7RUUvQko7SVJkSSxpQkl3SW9CO0lKeElwQixhS0F1RTtJTEF2RSxnQklrRm9CO0dJ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Z0JKO0lBSUksV0FBVztHQUVkO0N4Qm9sQ0E7O0F3Qm5sQ0Q7RUFDRSxzQkFBc0I7Q0FDdkI7O0FBQ0Q7RUFDRSxldkIxa0JhO0V1QjJrQmIsa0JBQWtCO0VBQ2xCLHNCQUFzQjtFQUN0QixrQkFBa0I7Q0FDbkI7O0FBQ0Q7RUFFSSxjQUFjO0NBQ2Y7O0FBSEg7RUFLSSxldkI1bEJZO0N1QjZsQmI7O0FBRUg7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0NBQ25COztBQUNEO0VBRUksYUFBYTtDQUNkOztBQUNEO0VBSkY7SUFLRSxjQUFjO0dBRWY7Q3hCeWxDQSIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5JztcbkBpbXBvcnQgJ25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludCc7XG5cbi8qKlxuICBOb3JtYWwgcmVzZXRcbiovXG5AaW1wb3J0IFwicmVzZXRcIjtcblxuLyoqXG4gIENvbmZpZyBmaWxlIHRoYXQgY29udGFpbnMgY2VudHJhbGl6ZWQgdmFyaWFibGVzXG4qL1xuQGltcG9ydCBcImNvbmZpZ1wiO1xuXG4vLyBCYXNlXG4vL1xuLy8gVGhlc2UgYXJlIHRoZSBkZWZhdWx0IGJhc2Ugc3R5bGVzIGFwcGxpZWQgdG8gSFRNTCBlbGVtZW50cy5cbi8vXG4vLyBDb21wb25lbnQgY2xhc3NlcyBjYW4gb3ZlcnJpZGUgdGhlc2Ugc3R5bGVzLCBidXQgaWYgbm8gY2xhc3MgYXBwbGllcyBhIHN0eWxlXG4vLyB0byBhbiBIVE1MIGVsZW1lbnQsIHRoZXNlIHN0eWxlcyB3aWxsIGJlIHRoZSBvbmVzIGRpc3BsYXllZC5cbi8vXG4vLyBTdHlsZSBndWlkZTogYmFzZVxuXG4vLyBGb3JtXG4vL1xuLy8gVGhlc2UgYXJlIHRoZSBkZWZhdWx0IGZvcm0gc3R5bGVzIGFwcGxpZWQgdG8gSFRNTCBlbGVtZW50cy5cbi8vXG4vLyBTdHlsZSBndWlkZTogZm9ybVxuQGltcG9ydCBcImJhc2UvX2Jhc2Uuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2RydXBhbC5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fZm9ybS5zY3NzXCI7XG5cbi8vIExheW91dFxuLy9cbi8vIFRoZXNlIGFyZSB0aGUgbGF5b3V0IHJ1bGVzLlxuLy9cbi8vIFN0eWxlIGd1aWRlOiBsYXlvdXRcbkBpbXBvcnQgXCJsYXlvdXQvX2NvbnRhaW5lcnMuc2Nzc1wiO1xuQGltcG9ydCBcImxheW91dC9fcGFuZWxzLnNjc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvX3NpZGViYXJzLnNjc3NcIjtcblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlc2lnbiBjb21wb25lbnRzIGFyZSByZXVzYWJsZSBzdHlsaW5nIHRoYXQgY2FuIGJlIGFwcGxpZWQgdXNpbmcganVzdCB0aGUgQ1NTXG4vLyBjbGFzcyBuYW1lcyBzcGVjaWZpZWQgaW4gdGhlIGNvbXBvbmVudC4gQWxzbyBrbm93biBhcyBkZXNpZ24gJ21vZHVsZXMnLlxuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYXNpZGVfYmxvY2tzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19icmFuZGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX21lc3NhZ2VzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL190YWJzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2V4YW1wbGUvZXhhbXBsZV9idXR0b24uc2Nzc1wiO1xuXG4vLyBTdGF0ZXNcbi8vXG4vLyBTdGF0ZXMgYXJlIHZhcmlhdGlvbnMgdGhhdCBhcmUgdXN1YWxseSBhcHBsaWVkIHZpYSBqcywgc3VjaCBhcyBgLmlzLWFjdGl2ZWAuXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IHN0YXRlc1xuQGltcG9ydCBcInN0YXRlL19zdGF0ZXMuc2Nzc1wiO1xuXG5AaW1wb3J0IFwibGlnaHR1cFwiO1xuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbmltZyxsZWdlbmR7Ym9yZGVyOjB9bGVnZW5kLHRkLHRoe3BhZGRpbmc6MH1odG1se2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e21hcmdpbjowfWFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLGhncm91cCxtYWluLG1lbnUsbmF2LHNlY3Rpb24sc3VtbWFyeXtkaXNwbGF5OmJsb2NrfWF1ZGlvLGNhbnZhcyxwcm9ncmVzcyx2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1hdWRpbzpub3QoW2NvbnRyb2xzXSl7ZGlzcGxheTpub25lO2hlaWdodDowfVtoaWRkZW5dLHRlbXBsYXRle2Rpc3BsYXk6bm9uZX1he2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9YTphY3RpdmUsYTpob3ZlcntvdXRsaW5lOjB9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkfWIsb3B0Z3JvdXAsc3Ryb25ne2ZvbnQtd2VpZ2h0OjcwMH1kZm57Zm9udC1zdHlsZTppdGFsaWN9aDF7Zm9udC1zaXplOjJlbTttYXJnaW46LjY3ZW0gMH1tYXJre2JhY2tncm91bmQ6I2ZmMDtjb2xvcjojMDAwfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c3Vwe3RvcDotLjVlbX1zdWJ7Ym90dG9tOi0uMjVlbX1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59ZmlndXJle21hcmdpbjoxZW0gNDBweH1ocnstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MH1wcmUsdGV4dGFyZWF7b3ZlcmZsb3c6YXV0b31jb2RlLGtiZCxwcmUsc2FtcHtmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXtjb2xvcjppbmhlcml0O2ZvbnQ6aW5oZXJpdDttYXJnaW46MH1idXR0b257b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLGh0bWwgaW5wdXRbdHlwZT1idXR0b25dLGlucHV0W3R5cGU9cmVzZXRdLGlucHV0W3R5cGU9c3VibWl0XXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2N1cnNvcjpwb2ludGVyfWJ1dHRvbltkaXNhYmxlZF0saHRtbCBpbnB1dFtkaXNhYmxlZF17Y3Vyc29yOmRlZmF1bHR9YnV0dG9uOjotbW96LWZvY3VzLWlubmVyLGlucHV0OjotbW96LWZvY3VzLWlubmVye2JvcmRlcjowO3BhZGRpbmc6MH1pbnB1dHtsaW5lLWhlaWdodDpub3JtYWx9aW5wdXRbdHlwZT1jaGVja2JveF0saW5wdXRbdHlwZT1yYWRpb117Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MH1pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24saW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfWlucHV0W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkOy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDstd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH1pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24saW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfWZpZWxkc2V0e2JvcmRlcjoxcHggc29saWQgc2lsdmVyO21hcmdpbjowIDJweDtwYWRkaW5nOi4zNWVtIC42MjVlbSAuNzVlbX10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7Ym9yZGVyLXNwYWNpbmc6MH0iLCIvKipcbiAgTm9ybWFsIHJlc2V0XG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbmltZywgbGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQsIHRkLCB0aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmF1ZGlvLCBjYW52YXMsIHByb2dyZXNzLCB2aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbltoaWRkZW5dLCB0ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYTphY3RpdmUsIGE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbmIsIG9wdGdyb3VwLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogLjY3ZW0gMDtcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsIHN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLS41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLS4yNWVtO1xufVxuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxucHJlLCB0ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5jb2RlLCBrYmQsIHByZSwgc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuYnV0dG9uLCBpbnB1dCwgb3B0Z3JvdXAsIHNlbGVjdCwgdGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udDogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xufVxuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLCBzZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuYnV0dG9uLCBodG1sIGlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1yZXNldF0sIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbltkaXNhYmxlZF0sIGh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsIGlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdLCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHNpbHZlcjtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogLjM1ZW0gLjYyNWVtIC43NWVtO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG4vKipcbiAgQ29uZmlnIGZpbGUgdGhhdCBjb250YWlucyBjZW50cmFsaXplZCB2YXJpYWJsZXNcbiovXG4vKlxuYm9keSB7XG4gIGJhY2tncm91bmQ6IGdyZWVuICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSAgeyBiYWNrZ3JvdW5kOiBvcmFuZ2UgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHsgYmFja2dyb3VuZDogdGVhbCAhaW1wb3J0YW50OyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSAgeyBiYWNrZ3JvdW5kOiBvcmNoaWQgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkgIHsgYmFja2dyb3VuZDogYWxpY2VibHVlICFpbXBvcnRhbnQ7IH1cbn1cbiovXG4ubm8tdWwtbGlzdCwgYm9keSB1bC5saW5rcy5pbmxpbmUgbGksIC5yZWdpb24tYnJhbmRpbmcgLmJsb2NrLXN5c3RlbS1tZW51YmxvY2sgdWwubWVudSwgbmF2LmJyZWFkY3J1bWIgb2wsIC5yZWdpb24tZm9vdGVyIC5ibG9jay1tZW51IHVsLm1lbnUsIC5kcnVwYWwtbWVzc2FnZXMgb2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLm5vLXVsLWxpc3QgPiBsaSwgYm9keSB1bC5saW5rcy5pbmxpbmUgbGkgPiBsaSwgLnJlZ2lvbi1icmFuZGluZyAuYmxvY2stc3lzdGVtLW1lbnVibG9jayB1bC5tZW51ID4gbGksIG5hdi5icmVhZGNydW1iIG9sID4gbGksIC5yZWdpb24tZm9vdGVyIC5ibG9jay1tZW51IHVsLm1lbnUgPiBsaSwgLmRydXBhbC1tZXNzYWdlcyBvbCA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMnB4O1xufVxuXG4udG1wLXNoYWRvdywgLmJsb2NrZWQtc3R5bGUsIC5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtc2Vjb25kYXJ5ID4gLmZvcm0td3JhcHBlciwgYXNpZGUgLmJsb2NrLCBuYXYuYnJlYWRjcnVtYiwgYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgLmRydXBhbC1tZXNzYWdlcyB7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMCAjNjY2NjY2O1xufVxuXG4udG1wLXNoYWRvdy1ub25lIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmJsb2NrZWQtc3R5bGUsIC5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtc2Vjb25kYXJ5ID4gLmZvcm0td3JhcHBlciwgYXNpZGUgLmJsb2NrLCBuYXYuYnJlYWRjcnVtYiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuaHRtbCxcbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMTY1JTtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBwYWRkaW5nOiAwIDAgMC4zZW07XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDI1MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNjUlO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMjEwJTtcbiAgbGluZS1oZWlnaHQ6IDE0NSU7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxODAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDE3MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNDUlO1xufVxuXG5oNSxcbmg2IHtcbiAgZm9udC1zaXplOiAxNDAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbn1cblxuYm9keSAubWVudS1pdGVtIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYSxcbmE6bGluayxcbmE6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuYTpob3ZlcixcbmE6bGluazpob3ZlcixcbmE6dmlzaXRlZDpob3ZlciB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYm9keSBwIHtcbiAgbWFyZ2luOiAzcHggMCAxMHB4O1xufVxuXG5pbWcsXG5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2Y3ZjdmNztcbn1cblxuYmxvY2txdW90ZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5wcmUgY29kZSB7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCAjMzMzMzMzO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAycHggOXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4NSU7XG59XG5cbm9sIHtcbiAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbn1cblxub2wgbGkge1xuICBtYXJnaW46IDRweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5vbCBvbCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIyLjVweDtcbn1cblxub2wgb2wgb2wge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbnVsIHtcbiAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgbWFyZ2luOiAwIDAgMTBweDtcbn1cblxudWwgbGkge1xuICBtYXJnaW46IDRweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG51bCB1bCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIyLjVweDtcbn1cblxudWwgdWwgdWwge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRhYmxlIHRoIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogNHB4IDVweDtcbn1cblxudGFibGUgdGQge1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDRweCA1cHg7XG59XG5cbnRhYmxlIHRoZWFkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxudGFibGUgdGJvZHkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjdmN2Y3O1xufVxuXG50YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2Y3ZjdmNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2Y3Zjc7XG59XG5cbmJvZHkgYnV0dG9uLnRhYmxlZHJhZy10b2dnbGUtd2VpZ2h0IHtcbiAgbWFyZ2luOiA1cHg7XG59XG5cbmJvZHkgdGQuZmllbGQtbXVsdGlwbGUtZHJhZyB7XG4gIG1heC13aWR0aDogMzBweDtcbn1cblxuYm9keSAuaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5ib2R5IHVsLmxpbmtzLmlubGluZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYm9keSB1bC5saW5rcy5pbmxpbmUgbGkge1xuICBwYWRkaW5nOiAwIDlweCAzcHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5mb3JtIC5mb3JtLWl0ZW0ge1xuICBwYWRkaW5nOiAwIDAgN3B4O1xufVxuXG5mb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXRleHRhcmVhIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbmZvcm0gLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDkwJTtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIgaDMsXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIgaDQge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbi5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjdmN2Y3O1xufVxuXG5mb3JtIGRldGFpbHMuanMtZm9ybS13cmFwcGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUsXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmpzW2Rpcj1cInJ0bFwiXSBpbnB1dC5mb3JtLWF1dG9jb21wbGV0ZSxcbi5qc1tkaXI9XCJydGxcIl0gaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbmZvcm0ge1xuICBtYXJnaW46IDAgMCAxZW07XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzMzMzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW46IDAgMCAwLjE4NzVlbTtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICB3aWR0aDogYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjQ1cywgYm9yZGVyLWNvbG9yIDAuNDVzIGVhc2UtaW4tb3V0O1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNiM2IzYjM7XG4gIGJvcmRlci1jb2xvcjogI2IzYjNiMztcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuc2VsZWN0IHtcbiAgbWFyZ2luOiAwIDAgMWVtO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNiM2IzYjM7XG4gIHBhZGRpbmc6IDEuMjVlbTtcbiAgbWFyZ2luOiAxLjEyNWVtIDA7XG59XG5cbmZpZWxkc2V0IGxlZ2VuZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAwIDAuMTg3NWVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1ZW07XG59XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmc6IDVweCAxMXB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuYnV0dG9uOmhvdmVyLCBidXR0b246Zm9jdXMsXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG59XG5cbi5lcnJvcixcbi5lcnJvciB0ZXh0YXJlYSxcbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lcnJvciBpbnB1dDpmb2N1cyxcbi5lcnJvciB0ZXh0YXJlYTpmb2N1cyxcbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbi5lcnJvciBsYWJlbCxcbi5lcnJvciBsYWJlbC5lcnJvciB7XG4gIGNvbG9yOiAjZWU2OTZjO1xufVxuXG4uZXJyb3IgPiBzbWFsbCxcbi5lcnJvciBzbWFsbC5lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjM3NWVtIDAuMjVlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICNlZTY5NmM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXJyb3Igc3Bhbi5lcnJvci1tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmlucHV0LmVycm9yLFxudGV4dGFyZWEuZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmlucHV0LmVycm9yOmZvY3VzLFxudGV4dGFyZWEuZXJyb3I6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG59XG5cbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICNlZTY5NmM7XG59XG5cbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbWFyZ2luOiAwIDAgMWVtO1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgaGVpZ2h0OiAyLjMxMjVlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC40NXMsIGJvcmRlci1jb2xvciAwLjQ1cyBlYXNlLWluLW91dDtcbn1cblxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNiM2IzYjM7XG4gIGJvcmRlci1jb2xvcjogI2IzYjNiMztcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuZm9ybSBpbnB1dFtkaXNhYmxlZF0sXG5mb3JtIGJ1dHRvbltkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNiM2IzO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5mb3JtIGlucHV0W2Rpc2FibGVkXTpob3ZlcixcbmZvcm0gYnV0dG9uW2Rpc2FibGVkXTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2IzYjM7XG59XG5cbmZvcm0gYnV0dG9uLFxuZm9ybSBpbnB1dCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbmZvcm0gYnV0dG9uW2Rpc2FibGVkXSxcbmZvcm0gaW5wdXRbZGlzYWJsZWRdIHtcbiAgdHJhbnNpdGlvbjogYXV0bztcbn1cblxuLmNvZy0tbXEge1xuICBtYXgtd2lkdGg6IDgwZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMTBweCBhdXRvO1xufVxuXG4uY29nLS1tcTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5cbiNwZ19fYy5wYWdlLXBhbmVsIC5tcS1tYWluIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5ib2R5ICNwZ19fYy5wYWdlLXBhbmVsIHNlY3Rpb24jY29udGVudCA+ICNjb250ZW50LWFyZWEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jb2ctcGwgLmNvZy1wYW5lbC0tZnVsbHJvdyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29nLXBsIC5jb2ctcGFuZWwtLW1xIHtcbiAgbWF4LXdpZHRoOiA4MGVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29nLXBsIC5jb2ctcGFuZWwtLW1xOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnBhbmVsLWNvZy1sYXlvdXQtb25lLWNvbCAuY29nLWxheW91dC0tbWFpbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZSAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZSAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jbCAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiA3NC41NzYyNyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jbCAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jciAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiAyMy43Mjg4MSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jciAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNzQuNTc2MjclO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUtY20gLmNvZy1sYXlvdXQtLW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLW9uZS1jbSAuY29nLWxheW91dC0tbWlkZGxlLWNlbnRlciB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUtY20gLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDIzLjcyODgxJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10d28tdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLXRocmVlLW9uZSAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLXRocmVlLW9uZSAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtdHdvLW9uZSAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLXNlY29uZC1taWRkbGUtbGVmdCB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS10d28tb25lIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYm9keS1zaWRlYmFycy1maXJzdCBhc2lkZS5zaWRlYmFyLWZpcnN0IHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtZmlyc3QgYXNpZGUuc2lkZWJhci1maXJzdCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1maXJzdCBzZWN0aW9uI2NvbnRlbnQge1xuICAgIHdpZHRoOiA3NC41NzYyNyU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1maXJzdCBzZWN0aW9uI2NvbnRlbnQgPiAqIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJvZHktc2lkZWJhcnMtc2Vjb25kIGFzaWRlLnNpZGViYXItc2Vjb25kIHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtc2Vjb25kIGFzaWRlLnNpZGViYXItc2Vjb25kID4gKiB7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1zZWNvbmQgc2VjdGlvbiNjb250ZW50IHtcbiAgICB3aWR0aDogNzQuNTc2MjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtc2Vjb25kIHNlY3Rpb24jY29udGVudCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ib2R5LXNpZGViYXJzLWJvdGggYXNpZGUuc2lkZWJhci1maXJzdCB7XG4gICAgd2lkdGg6IDE1LjI1NDI0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5ib2R5LXNpZGViYXJzLWJvdGggYXNpZGUuc2lkZWJhci1maXJzdCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1ib3RoIHNlY3Rpb24jY29udGVudCB7XG4gICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5ib2R5LXNpZGViYXJzLWJvdGggc2VjdGlvbiNjb250ZW50ID4gKiB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1ib3RoIGFzaWRlLnNpZGViYXItc2Vjb25kIHtcbiAgICB3aWR0aDogMTUuMjU0MjQlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtYm90aCBhc2lkZS5zaWRlYmFyLXNlY29uZCA+ICoge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuLmJvZHktc2lkZWJhcnMtbm9uZSBzZWN0aW9uI2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5ib2R5LXNpZGViYXJzLW5vbmUgc2VjdGlvbiNjb250ZW50ID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbn1cblxuYXNpZGUuc2lkZWJhciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmFzaWRlIC5ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbmFzaWRlIC5ibG9jayBoMiB7XG4gIGZvbnQtc2l6ZTogMTc1JTtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbiNibG9jay1saWdodHVwLWJyYW5kaW5nIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLnNpdGUtYnJhbmRpbmctdGV4dCB7XG4gIHBhZGRpbmc6IDMwcHggMTBweCAyMHB4IDBweDtcbiAgZm9udC1zaXplOiAyMjAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zaXRlLWJyYW5kaW5nLXRleHQgYSB7XG4gIGNvbG9yOiAjNTE5YzAwO1xufVxuXG4uc2l0ZS1icmFuZGluZy10ZXh0IGE6aG92ZXIge1xuICBjb2xvcjogI2ZhY2EwNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28ge1xuICB3aWR0aDogODBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwcHggMHB4IDAgMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG5uYXYuYnJlYWRjcnVtYiB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbm5hdi5icmVhZGNydW1iIG9sIGxpOjpiZWZvcmUge1xuICBjb250ZW50OiAnLyc7XG4gIHBhZGRpbmc6IDAgM3B4IDAgMC41cHg7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG5uYXYuYnJlYWRjcnVtYiBvbCBsaTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgY29udGVudDogbm9ybWFsO1xufVxuXG4ucmVnaW9uLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgI2IzYjNiMztcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbi5yZWdpb24taGVhZGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCAjYjNiM2IzO1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLmRydXBhbC1tZXNzYWdlcyB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMTVweCAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uZHJ1cGFsLW1lc3NhZ2VzLm1lc3NhZ2VzLS1zdGF0dXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzMzMzMzMztcbn1cblxuLmRydXBhbC1tZXNzYWdlcy5tZXNzYWdlcy0td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjUwLCAyMDIsIDYsIDAuMyk7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG4uZHJ1cGFsLW1lc3NhZ2VzLm1lc3NhZ2VzLS1lcnJvciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjM4LCAxMDUsIDEwOCwgMC4zKTtcbiAgY29sb3I6ICNlZTY5NmM7XG59XG5cbi5ibG9jay10YWJzIHtcbiAgbWFyZ2luOiAxLjVlbSAwO1xufVxuXG4uYmxvY2stdGFicyB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjNiM2IzO1xufVxuXG4uYmxvY2stdGFicyB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJsb2NrLXRhYnMgdWwgbGkgYSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC40ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ1dHRvbiB7XG4gIGNvbG9yOiBibHVlO1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbmJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5odG1sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuaHRtbCBoMSwgaHRtbCBoMiwgaHRtbCBoMywgaHRtbCBoNCB7XG4gIGNvbG9yOiAjZmFjYTA2O1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxNTAlO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbn1cblxuLmNvZy0tbXEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1xLWJyYW5kaW5nLCAucmVnaW9uLWZvb3RlciB7XG4gIG1heC13aWR0aDogMTI4MHB4O1xuICBtYXJnaW46IDBweCBhdXRvO1xufVxuXG4ubXEtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuI2JyYW5kaW5nIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC8qIEZhbGwtYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IHJnYmEgKi9cbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHdpZHRoOiAxMDAlO1xuICBjbGVhcjogYm90aDtcbiAgei1pbmRleDogOTk5OTtcbiAgcGFkZGluZzogMXB4O1xufVxuXG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28ge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28gaW1nIHtcbiAgd2lkdGg6IDQwcHg7XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLnNpdGUtYnJhbmRpbmctdGV4dCB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuXG4uc2l0ZS1icmFuZGluZy1uYW1lIGEsIC5zaXRlLWJyYW5kaW5nLW5hbWUgYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4jYmxvY2stbGlnaHR1cC1icmFuZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI2Jsb2NrLWxpZ2h0dXAtbWFpbi1tZW51LCAjYmxvY2stbGlnaHR1cC1hY2NvdW50LW1lbnUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbiNibG9jay1saWdodHVwLW1haW4tbWVudSB1bC5tZW51IGxpLCAjYmxvY2stbGlnaHR1cC1hY2NvdW50LW1lbnUgdWwubWVudSBsaSB7XG4gIG1hcmdpbjogMnB4IDVweDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzMzMztcbiAgcGFkZGluZy1yaWdodDogMThweDtcbn1cblxuI2Jsb2NrLWxpZ2h0dXAtbWFpbi1tZW51IGEsICNibG9jay1saWdodHVwLW1haW4tbWVudSBhOmxpbmssICNibG9jay1saWdodHVwLW1haW4tbWVudSBhOnZpc2l0ZWQsICNibG9jay1saWdodHVwLWFjY291bnQtbWVudSBhLCAjYmxvY2stbGlnaHR1cC1hY2NvdW50LW1lbnUgYTpsaW5rLCAjYmxvY2stbGlnaHR1cC1hY2NvdW50LW1lbnUgYTp2aXNpdGVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgY3Vyc29yOiBpbmhlcml0O1xufVxuXG4jYmxvY2stbGlnaHR1cC1tYWluLW1lbnUgYTpob3ZlciwgI2Jsb2NrLWxpZ2h0dXAtYWNjb3VudC1tZW51IGE6aG92ZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuI2Jsb2NrLWxpZ2h0dXAtYWNjb3VudC1tZW51IHVsLm1lbnUgbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cblxuLm1hcC1jb250YWluZXIge1xuICBoZWlnaHQ6IDgwMHB4O1xufVxuXG4ubWFwLS1mcm9udCB7XG4gIGhlaWdodDogODAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tYXAtLWZyb250IHtcbiAgICBoZWlnaHQ6IDYwdmg7XG4gIH1cbn1cblxuI3dzaXRlLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2FnaW5hd1wiICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICM3NmIzYjggIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDNweCAhaW1wb3J0YW50O1xufVxuXG4jY29udGVudCAuZmllbGQtLW5hbWUtYm9keSBhLCAjY29udGVudCAuZmllbGQtLW5hbWUtYm9keSBhOmxpbmssICNjb250ZW50IC5maWVsZC0tbmFtZS1ib2R5IGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmFjYTA2O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI2NvbnRlbnQgLmZpZWxkLS1uYW1lLWJvZHkgYTpob3ZlciB7XG4gIGNvbG9yOiAjNTE5YzAwO1xufVxuXG4ucmVnaW9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgLyogRmFsbC1iYWNrIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgcmdiYSAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnJlZ2lvbi1jb250ZW50IGEsIC5yZWdpb24tY29udGVudCBhOmxpbmssIC5yZWdpb24tY29udGVudCBhOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZhY2EwNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5yZWdpb24tY29udGVudCBsYWJlbCB7XG4gIGNvbG9yOiAjZmFjYTA2O1xufVxuXG4ubm9kZXR5cGUtLXBhZ2UgLnJlZ2lvbi1jb250ZW50LCAucGF0aC0tY29udGFjdCAucmVnaW9uLWNvbnRlbnQsIC5wYXRoLS11c2VyIC5yZWdpb24tY29udGVudCB7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5ib2R5Lm5vZGV0eXBlLS1saWdodCAjYmxvY2stbGlnaHR1cC1wYWdlLXRpdGxlIGgxIHtcbiAgY29sb3I6IGdyZWVuO1xufVxuXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1icm93c2UtYmxvY2stMSxcbiNibG9jay12aWV3cy1ibG9jay1hY3Rpb25zLWJsb2NrLTIsXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1icm93c2UtYmxvY2stMS0yIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNmYWNhMDY7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1icm93c2UtYmxvY2stMSAudmlldy1oZWFkZXIsXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1ibG9jay0yIC52aWV3LWhlYWRlcixcbiNibG9jay12aWV3cy1ibG9jay1hY3Rpb25zLWJyb3dzZS1ibG9jay0xLTIgLnZpZXctaGVhZGVyIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDg1JTtcbn1cblxuI2Jsb2NrLXZpZXdzLWJsb2NrLWFjdGlvbnMtYnJvd3NlLWJsb2NrLTEgLnZpZXdzLWZpZWxkLXRpdGxlLFxuI2Jsb2NrLXZpZXdzLWJsb2NrLWFjdGlvbnMtYmxvY2stMiAudmlld3MtZmllbGQtdGl0bGUsXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1icm93c2UtYmxvY2stMS0yIC52aWV3cy1maWVsZC10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQ6IHVybChcIi90aGVtZXMvY3VzdG9tL2xpZ2h0dXAvaW1hZ2VzL2J1bGxldF9idWxiLnBuZ1wiKSBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDVweCAxMHB4IDEwcHggMzBweDtcbn1cblxuLmFjdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjZmFjYTA2O1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvdGhlbWVzL2N1c3RvbS9saWdodHVwL2ltYWdlcy9idWxsZXRfYnVsYi5wbmdcIikgbm8tcmVwZWF0O1xuICBwYWRkaW5nOiA1cHggMTBweCAxMHB4IDMwcHg7XG59XG5cbi5hY3Rpb24tdGl0bGU6aG92ZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmFjdGlvbi1pbmZvIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAjZmFjYTA2IHNvbGlkIDFweDtcbn1cblxuLmFjdGlvbi1pbmZvIC5hY3Rpb24tZGVzY3JpcHRpb24ge1xuICBmb250LXdlaWdodDogODcuNSU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uYWN0aW9uLWxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uYWN0aW9uLWxpbmsgYSwgLmFjdGlvbi1saW5rIGE6bGluaywgLmFjdGlvbi1saW5rIGE6dmlzaXRlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlcjogI2ZmZmZmZiBzb2xpZCAxcHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmFjdGlvbi1saW5rIGE6aG92ZXIsIC5hY3Rpb24tbGluayBhOmxpbms6aG92ZXIsIC5hY3Rpb24tbGluayBhOnZpc2l0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtZmFtaWx5OiAnUG9wcGlucyBCb2xkJztcbn1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICNmYWNhMDY7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ZhY2EwNjtcbn1cblxuZmllbGRzZXQgbGVnZW5kIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMC4xODc1ZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVlbTtcbn1cblxuI2VkaXQtZmllbGQtYWN0aW9uLS13cmFwcGVyIGxlZ2VuZCB7XG4gIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG59XG5cbiNlZGl0LWZpZWxkLWFjdGlvbi0td3JhcHBlciAuZm9ybS1pdGVtLWZpZWxkLWFjdGlvbiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmFjYTA2O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbiNlZGl0LWZpZWxkLWFjdGlvbi0td3JhcHBlciBpbnB1dC5maWVsZF9hY3Rpb24sXG4jZWRpdC1maWVsZC1hY3Rpb24tLXdyYXBwZXIgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuI2VkaXQtZmllbGQtYWN0aW9uLS13cmFwcGVyIGlucHV0LmZpZWxkX2FjdGlvbiB7XG4gIHdpZHRoOiAxMCU7XG59XG5cbiNlZGl0LWZpZWxkLWFjdGlvbi0td3JhcHBlciBsYWJlbCB7XG4gIHdpZHRoOiA5MCU7XG59XG5cbi5sYXlvdXQtcmVnaW9uLW5vZGUtc2Vjb25kYXJ5IC5lZGl0LWFkdmFuY2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5sYXlvdXQtcmVnaW9uLW5vZGUtc2Vjb25kYXJ5IC5lZGl0LWFkdmFuY2VkIGEsIC5sYXlvdXQtcmVnaW9uLW5vZGUtc2Vjb25kYXJ5IC5lZGl0LWFkdmFuY2VkIGE6bGluaywgLmxheW91dC1yZWdpb24tbm9kZS1zZWNvbmRhcnkgLmVkaXQtYWR2YW5jZWQgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYmxvY2tlZC1zdHlsZSwgLmxheW91dC1ub2RlLWZvcm0gLmxheW91dC1yZWdpb24tbm9kZS1zZWNvbmRhcnkgPiAuZm9ybS13cmFwcGVyLCBhc2lkZSAuYmxvY2ssIG5hdi5icmVhZGNydW1iLCAubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIsXG5hc2lkZSAuYmxvY2ssIG5hdi5icmVhZGNydW1iIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgcGFkZGluZzogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtcmVwcmVzZW50YXRpdmUsXG4uZmllbGQtLW5hbWUtZmllbGQtc2VuYXRvciB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5ib2R5LXNpZGViYXJzLW5vbmUgc2VjdGlvbiNjb250ZW50ID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG5cbi5yZWdpb24tZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgLyogRmFsbC1iYWNrIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgcmdiYSAqL1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnJlZ2lvbi1mb290ZXIgYSwgLnJlZ2lvbi1mb290ZXIgYTpsaW5rLCAucmVnaW9uLWZvb3RlciBhOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZhY2EwNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucmVnaW9uLWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICM1MTljMDA7XG59XG5cbi5yZWdpb24tZm9vdGVyICNibG9jay1saWdodHVwLWZvb3RlciB1bC5tZW51IGxpOm50aC1jaGlsZCgxKSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5yZWdpb24tZm9vdGVyICNibG9jay1saWdodHVwLWZvb3RlciB1bC5tZW51IGxpOm50aC1jaGlsZCgyKSB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnJlZ2lvbi1mb290ZXIgI2Jsb2NrLWxpZ2h0dXAtZm9vdGVyIHVsLm1lbnUgbGk6bnRoLWNoaWxkKDIpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDEwMXB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltYWdlcy9INFdNLnBuZ1wiKSBuby1yZXBlYXQ7XG59XG5cbiNibG9jay11c2VycmVnaXN0ZXIge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFjYTA2O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgcGFkZGluZzogMjBweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4jYmxvY2stdXNlcnJlZ2lzdGVyIGEsICNibG9jay11c2VycmVnaXN0ZXIgYTpsaW5rLCAjYmxvY2stdXNlcnJlZ2lzdGVyIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmFjYTA2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNibG9jay11c2VycmVnaXN0ZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjNTE5YzAwO1xufVxuXG4ucGFnZS1zdGFuZGFyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJhY2stdG8tdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB6LWluZGV4OiA5OTk5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWNhMDY7XG59XG5cbi5iYWNrLXRvLXRvcCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgZm9udDogMC8wIGE7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvdGhlbWVzL2N1c3RvbS9saWdodHVwL2ltYWdlcy90b3AucG5nXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbn1cblxuLnZpZXctbWFwIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDgwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB6LWluZGV4OiA5OTk5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWNhMDY7XG59XG5cbi52aWV3LW1hcCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgZm9udDogMC8wIGE7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvdGhlbWVzL2N1c3RvbS9saWdodHVwL2ltYWdlcy92aWV3LW1hcC5wbmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4ubWFwLW92ZXJsYXkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAycHggMjBweCAxOHB4IDIwcHg7XG59XG5cbi5tYXAtb3ZlcmxheSBoMSB7XG4gIG1hcmdpbi10b3A6IDlweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICNmYWNhMDY7XG4gIGZvbnQtc2l6ZTogMzJweDtcbn1cblxuLm1hcC1vdmVybGF5IGgzIHtcbiAgY29sb3I6ICNmYWNhMDY7XG59XG5cbi5tYXAtb3ZlcmxheSBoNCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5tYXAtb3ZlcmxheSBidXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDM1cHg7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMDtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMgQ29uZGVuc2VkJztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG4ubWFwLW92ZXJsYXkgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTA0OTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLm1hcC1vdmVybGF5IC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5tYXAtb3ZlcmxheSAuc3RlcHMge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4jam9pbi1hbmQtc2hhcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5mb3JtW25hbWU9XCJhZGRyZXNzXCJdIHtcbiAgd2lkdGg6IDMxMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuZm9ybVtuYW1lPVwiYWRkcmVzc1wiXSAuZm9ybS1ncm91cC5zdHJlZXQge1xuICB3aWR0aDogMzEwcHg7XG59XG5cbmZvcm1bbmFtZT1cImFkZHJlc3NcIl0gLmNpdHktc3RhdGUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG5mb3JtW25hbWU9XCJhZGRyZXNzXCJdIC5mb3JtLWdyb3VwLmNpdHkge1xuICB3aWR0aDogMjQwcHg7XG59XG5cbmZvcm1bbmFtZT1cImFkZHJlc3NcIl0gLmZvcm0tZ3JvdXAuc3RhdGUge1xuICB3aWR0aDogNDhweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5cbmZvcm1bbmFtZT1cImFkZHJlc3NcIl0gLmZvcm0tZ3JvdXAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFjdGlvbi1zY3JpcHQge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJvcmRlci1yaWdodDogI2ZhY2EwNiBzb2xpZCAxcHg7XG59XG5cbi5hY3Rpb24tcmVwcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5yZXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4ucmVwID4gZGl2IHtcbiAgcGFkZGluZzogMCAyMHB4O1xufVxuXG4ucmVwIGgzIHtcbiAgbWFyZ2luOiA1cHggMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5yZXAgLnBob3RvIHtcbiAgd2lkdGg6IDEyMHB4O1xuICBtaW4td2lkdGg6IDEyMHB4O1xuICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5yZXAgLnBob25lIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG59XG5cbi5yZXAgLm9mZmljZS1uYW1lIHtcbiAgd2lkdGg6IDk1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5yZXAgLmZhOmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4ucmVwIC5idG4ge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDI2cHg7XG4gIHdpZHRoOiA2OHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLnJlcCAuYnRuOmhvdmVyIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ucmVwIC5waG9uZS1udW1iZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubW9kYWwtdGl0bGUge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLm1vZGFsLXRpdGxlIGltZyB7XG4gIHdpZHRoOiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLm1vZGFsIGxhYmVsIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5tb2RhbCBhOmxpbmssIC5tb2RhbCBhOnZpc2l0ZWQsICNjb250ZW50IC5tb2RhbCAuZmllbGQtLW5hbWUtYm9keSBhLCAjY29udGVudCAubW9kYWwgLmZpZWxkLS1uYW1lLWJvZHkgYTpsaW5rLCAjY29udGVudCAubW9kYWwgLmZpZWxkLS1uYW1lLWJvZHkgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICM1MTljMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm1vZGFsIGE6aG92ZXIsICNjb250ZW50IC5tb2RhbCAuZmllbGQtLW5hbWUtYm9keSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5tb2RhbCAubW9kYWwtZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzc3Nztcbn1cblxuLm1vZGFsIC5tb2RhbC1mb290ZXIgYSwgLm1vZGFsIC5tb2RhbC1mb290ZXIgYTpsaW5rLCAubW9kYWwgLm1vZGFsLWZvb3RlciBhOnZpc2l0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4ubW9kYWwtZm9vdGVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLm1vZGFsLWZvb3RlciBiIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5tb2RhbC1mb290ZXIgaSB7XG4gIGNvbG9yOiAjY2NjO1xufVxuXG4ubW9kYWwuaW4ge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5tb2RhbC5pbiAubW9kYWwtZGlhbG9nIHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgb3ZlcmZsb3cteTogaW5pdGlhbCAhaW1wb3J0YW50O1xufVxuXG4ubW9kYWwtYm9keSB7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyMDBweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi52aWV3bWFwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2xvc2Uge1xuICBib3gtc2hhZG93OiB1bnNldDtcbn1cblxuLm5vZGV0eXBlLS1hY3Rpb24gLmJsb2NrLXBhZ2UtdGl0bGUtYmxvY2ssIC5ub2RldHlwZS0tYWN0aW9uIC5ibG9jay10YWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxlYWZsZXQtY29udHJvbCBhLCAubGVhZmxldC1jb250cm9sIGE6bGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYm9keSAubW9kYWwtYmFja2Ryb3AuaW4ge1xuICBvcGFjaXR5OiAxO1xufVxuXG5ib2R5IC5idG4sIGJvZHkgLmJ0bi1sZyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMgQ29uZGVuc2VkJztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxNXB4O1xufVxuXG5ib2R5IC5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWNhMDY7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5ib2R5IC5idG4tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmUwNDk7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC51c2VyLWxvZ2luLWZvcm0gaW5wdXQge1xuICAgIHdpZHRoOiA5OSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4jbWFrZUFDYWxsTW9kYWwgYSB7XG4gIGNvbG9yOiAjNzc3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNtYWtlQUNhbGxNb2RhbCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi50YWtlLWFjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDIzcHgpIHtcbiAgLnRha2UtYWN0aW9uIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG59XG5cbi5zdGVwcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFjdGl2ZS1zdGVwIHtcbiAgY29sb3I6ICM1MTljMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4ubWFwLW92ZXJsYXkgLnN0ZXBzLWxhc3Qge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubWFwLW92ZXJsYXkgLmFjdGl2ZS1zdGVwIHtcbiAgY29sb3I6ICNmYWNhMDY7XG59XG5cbmltZy5hY3RpdmUtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uc2Nyb2xsLWZvci1zY3JpcHQgaDMge1xuICBtYXJnaW46IGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MXB4KSB7XG4gIC5zY3JvbGwtZm9yLXNjcmlwdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gQ29sb3JzIC8vLy8vLy8vLy8vLy8vL1xuLy8gY29tbW9uIGNvbG9yc1xuJHdoaXRlOiAjZmZmO1xuJHJlZDogI2VlNjk2YztcbiR5ZWxsb3c6ICNmYWNhMDY7IC8vI2U4ZWQ1Nztcbi8vIGImdyBjb2xvcnMgYXMgcGxhY2Vob2xkZXJzXG4kYmxrOiAjMDAwO1xuJGRhcmstZ3JheTogbGlnaHRlbigkYmxrLCAyMCUpO1xuJG1lZC1ncmF5OiBsaWdodGVuKCRibGssIDQwJSk7XG4kbGlnaHQtZ3JheTogbGlnaHRlbigkYmxrLCA3MCUpO1xuJGxpZ2h0ZXItZ3JheTogbGlnaHRlbigkYmxrLCA5MCUpO1xuJG9mZi13aGl0ZTogbGlnaHRlbigkYmxrLCA5NyUpO1xuJGdyZWVuOiAjNTE5YzAwO1xuXG4vLyBVdGlsaXR5IGNvbG9yIHZhcmlhYmxlcyAvLy8vLy8vLy8vLy8vLy9cbiRoZWFkaW5nOiAkZGFyay1ncmF5O1xuJGxpbms6ICRtZWQtZ3JheTtcblxuLy8gRm9udHMgLy8vLy8vLy8vLy8vLy8vXG4kb3BlbnNhbnM6ICdPcGVuIFNhbnMnO1xuJHBvcHBpbnM6ICdQb3BwaW5zJztcbiRoZWFkaW5nX2ZvbnQ6ICRvcGVuc2FucztcbiRib2R5X2ZvbnQ6ICRwb3BwaW5zO1xuXG4vLyBTdXN5IGNvbmZpZyAvLy8vLy8vLy8vLy8vLy9cbiRzdXN5OiAoXG4gIGNvbHVtbnM6IDEyLCAvLyBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4geW91ciBncmlkXG4gIGd1dHRlcnM6IDEvNCwgLy8gVGhlIHNpemUgb2YgYSBndXR0ZXIgaW4gcmVsYXRpb24gdG8gYSBzaW5nbGUgY29sdW1uXG4pO1xuXG4vLyBCcmVha3BvaW50cyAmIE1RJ3MgLy8vLy8vLy8vLy8vLy8vXG4kc2NyZWVuOiBcIm9ubHkgc2NyZWVuXCIgIWRlZmF1bHQ7XG4kc21hbGwtbWF4OiA3NjdweCAhZGVmYXVsdDtcbiRtZWRpdW0tbWF4OiAxMDIzcHggIWRlZmF1bHQ7XG4kc21hbGw6ICRzY3JlZW4gbWF4LXdpZHRoICRzbWFsbC1tYXg7XG4kdXAtc206ICRzY3JlZW4gJHNtYWxsLW1heCArIDE7XG4kbWVkaXVtOiAkc2NyZWVuICRzbWFsbC1tYXggKyAxICRtZWRpdW0tbWF4O1xuJGxhcmdlOiAkc2NyZWVuICRtZWRpdW0tbWF4ICsgMTtcblxuLy8gRVhBTVBMRSBGT1IgTVEgUkVGRVJFTkNFUyA9PlxuXG4vKlxuYm9keSB7XG4gIGJhY2tncm91bmQ6IGdyZWVuICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSAgeyBiYWNrZ3JvdW5kOiBvcmFuZ2UgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHsgYmFja2dyb3VuZDogdGVhbCAhaW1wb3J0YW50OyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSAgeyBiYWNrZ3JvdW5kOiBvcmNoaWQgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkgIHsgYmFja2dyb3VuZDogYWxpY2VibHVlICFpbXBvcnRhbnQ7IH1cbn1cbiovXG5cbi8vIEV4YW1wbGUgTWl4aW5zIC8vLy8vLy8vLy8vLy8vL1xuQG1peGluIG9wYWMtY29sb3IoJHIsICRnLCAkYiwgJHBlcnRjKSB7XG4gIGJhY2tncm91bmQ6IHJnYigkciwgJGcsICRiKTtcbiAgYmFja2dyb3VuZDogcmdiYSgkciwgJGcsICRiLCAkcGVydGMpO1xufVxuXG5AbWl4aW4gcmVnaW9uLXNwYWNlcigkY29sb3IsICRkaXJlY3Rpb246IGJvdHRvbSkge1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkICRjb2xvcjtcblxuICBAaWYgJGRpcmVjdGlvbiA9PSB0b3Age1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVycmFkaXVzKCRweDogNXB4KSB7XG4gIGJvcmRlci1yYWRpdXM6ICRweDtcbiAgLy8gYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbi8vIEV4YW1wbGUgUGxhY2Vob2xkZXJzIC8vLy8vLy8vLy8vLy8vL1xuLm5vLXVsLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMnB4O1xuICB9XG59XG5cbi50bXAtc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAwIHJnYmEoJG1lZC1ncmF5LCAxKTtcbn1cblxuLnRtcC1zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ibG9ja2VkLXN0eWxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICBwYWRkaW5nOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG5cbiAgQGV4dGVuZCAudG1wLXNoYWRvdztcbn1cbiIsIi8vIEJhc2UgSFRNTCBFbGVtZW50cy5cbmh0bWwsXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRib2R5X2ZvbnQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMTY1JTtcbn1cbi8vIEJhc2UgSGVhZGluZ3Ncbi8vXG4vLyBNYXJrdXA6IGhlYWRsaW5lcy50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGJhc2UuaGVhZGxpbmVzXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogJGhlYWRpbmc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ19mb250O1xuICBwYWRkaW5nOiAwIDAgMC4zZW07XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDI1MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNjUlO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMjEwJTtcbiAgbGluZS1oZWlnaHQ6IDE0NSU7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxODAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDE3MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNDUlO1xufVxuXG5oNSxcbmg2IHtcbiAgZm9udC1zaXplOiAxNDAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbn1cblxuYm9keSAubWVudS1pdGVtIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi8vIEJhc2UgVGV4dFxuLy9cbi8vIE1hcmt1cDogdGV4dC50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGJhc2UudGV4dFxuYSxcbmE6bGluayxcbmE6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRsaW5rO1xuICBjdXJzb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuYm9keSBwIHtcbiAgbWFyZ2luOiAzcHggMCAxMHB4O1xufVxuXG4vLyBSZXNwb25zaXZlIEltYWdlc1xuaW1nLFxuc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEJsb2NrcXVvdGUgJiBQcmVcbi8vXG4vLyBNYXJrdXA6IGJsb2NrcXVvdGUudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBiYXNlLmJsb2NrcXVvdGVcbmJsb2NrcXVvdGUge1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGNvbG9yOiAkZGFyay1ncmF5O1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRvZmYtd2hpdGU7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbnByZSB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgb3ZlcmZsb3cteDogYXV0bztcblxuICBjb2RlIHtcbiAgICBib3JkZXI6IDFweCBkb3R0ZWQgJGRhcmstZ3JheTtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO1xuICAgIHBhZGRpbmc6IDJweCA5cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4NSU7XG4gIH1cbn1cbi8vIExpc3QgVHlwZXNcbi8vXG4vLyBNYXJrdXA6IGxpc3RzLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogYmFzZS5saXN0c1xuXG4vLyBPTCBpdGVtc1xub2wge1xuICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDRweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxub2wgb2wge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbm9sIG9sIG9sIHtcbiAgcGFkZGluZzogMCAwIDAgMjIuNXB4O1xufVxuXG4vLyBVTCBpdGVtc1xudWwge1xuICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDRweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxudWwgdWwge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbnVsIHVsIHVsIHtcbiAgcGFkZGluZzogMCAwIDAgMjIuNXB4O1xufVxuLy8gVGFibGVzXG4vL1xuLy8gTWFya3VwOiB0YWJsZS50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGJhc2UudGFibGVcbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLXdoaXRlO1xuICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogNHB4IDVweDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkb2ZmLXdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cblxuICB0Ym9keSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG9mZi13aGl0ZTtcbiAgfVxuXG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9mZi13aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG9mZi13aGl0ZTtcbiAgfVxufVxuIiwiYm9keSB7XG4gIGJ1dHRvbi50YWJsZWRyYWctdG9nZ2xlLXdlaWdodCB7XG4gICAgbWFyZ2luOiA1cHg7XG4gIH1cblxuICB0ZC5maWVsZC1tdWx0aXBsZS1kcmFnIHtcbiAgICBtYXgtd2lkdGg6IDMwcHg7XG4gIH1cblxuICAuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICB1bC5saW5rcy5pbmxpbmUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgbGkge1xuICAgICAgQGV4dGVuZCAubm8tdWwtbGlzdDtcblxuICAgICAgcGFkZGluZzogMCA5cHggM3B4IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbmZvcm0gLmZvcm0taXRlbSB7XG4gIHBhZGRpbmc6IDAgMCA3cHg7XG5cbiAgJi5mb3JtLXR5cGUtdGV4dGFyZWEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbmZvcm0gLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDkwJTtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIge1xuICBAZXh0ZW5kIC5ibG9ja2VkLXN0eWxlO1xuXG4gIGgzLFxuICBoNCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG59XG5cbi5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmLXdoaXRlO1xufVxuXG5mb3JtIGRldGFpbHMuanMtZm9ybS13cmFwcGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUsXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmpzW2Rpcj1cInJ0bFwiXSBpbnB1dC5mb3JtLWF1dG9jb21wbGV0ZSxcbi5qc1tkaXI9XCJydGxcIl0gaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4iLCIvLyBGb3Jtc1xuLy8gXG4vLyBCYXNlIGZvcm0gZWxlbWVudHMuXG4vL1xuLy8gTWFya3VwOiBmb3JtX2h0bWwudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBmb3JtLmNvbW1vblxuZm9ybSB7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkZGFyay1ncmF5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbjogMCAwIDAuMTg3NWVtO1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG50ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0ZXItZ3JheTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIG1hcmdpbjogMCAwIDFlbTtcbiAgcGFkZGluZzogMC41ZW07XG4gIHdpZHRoOiBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNDVzLCBib3JkZXItY29sb3IgMC40NXMgZWFzZS1pbi1vdXQ7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbnNlbGVjdCB7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuZmllbGRzZXQge1xuICBib3JkZXI6IHNvbGlkIDFweCAkbGlnaHQtZ3JheTtcbiAgcGFkZGluZzogMS4yNWVtO1xuICBtYXJnaW46IDEuMTI1ZW0gMDtcbn1cblxuZmllbGRzZXQgbGVnZW5kIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDAgMC4xODc1ZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVlbTtcbn1cbi8vIGJ1dHRvbnMgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIEBpbmNsdWRlIGJvcmRlcnJhZGl1cygpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgcGFkZGluZzogNXB4IDExcHg7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gIGNvbG9yOiAkbWVkLWdyYXk7XG5cbiAgQGV4dGVuZCAudG1wLXNoYWRvdztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuICB9XG59XG4vLyBFcnJvciBjb25kaXRpb25zIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5lcnJvcixcbi5lcnJvciB0ZXh0YXJlYSxcbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICRyZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lcnJvciBpbnB1dDpmb2N1cyxcbi5lcnJvciB0ZXh0YXJlYTpmb2N1cyxcbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO1xuICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xufVxuXG4uZXJyb3IgbGFiZWwsXG4uZXJyb3IgbGFiZWwuZXJyb3Ige1xuICBjb2xvcjogJHJlZDtcbn1cblxuLmVycm9yID4gc21hbGwsXG4uZXJyb3Igc21hbGwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4zNzVlbSAwLjI1ZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kOiAkcmVkO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmVycm9yIHNwYW4uZXJyb3ItbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5pbnB1dC5lcnJvcixcbnRleHRhcmVhLmVycm9yIHtcbiAgYm9yZGVyLWNvbG9yOiAkcmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5OCwgMTUsIDE5LCAwLjEpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5pbnB1dC5lcnJvcjpmb2N1cyxcbnRleHRhcmVhLmVycm9yOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JheTtcbn1cblxuLmVycm9yIHNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTgsIDE1LCAxOSwgMC4xKTtcbn1cblxuLmVycm9yIHNlbGVjdDpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG59XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICRyZWQ7XG59XG4vLyBGb3JtIEhUTUw1XG4vL1xuLy8gTWFya3VwOiBmb3JtX2h0bWw1LnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogZm9ybS5odG1sNVxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBoZWlnaHQ6IDIuMzEyNWVtO1xuICB3aWR0aDogYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjQ1cywgYm9yZGVyLWNvbG9yIDAuNDVzIGVhc2UtaW4tb3V0O1xufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmZvcm0gaW5wdXRbZGlzYWJsZWRdLFxuZm9ybSBidXR0b25bZGlzYWJsZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIH1cbn1cbi8vIHNpbXBsZSB0cmFuc2l0aW9ucyAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuZm9ybSBidXR0b24sXG5mb3JtIGlucHV0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgdHJhbnNpdGlvbjogYXV0bztcbiAgfVxufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpbWFyeSBDb250YWluZXIgUnVsZXMgLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uY29nLS1tcSB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcig4MGVtKTtcblxuICBtYXJnaW46IDEwcHggYXV0bztcbn1cbiIsIi8vIHJlbSBTdXBwb3J0XG4vLyA9PT09PT09PT09PVxuXG4vLyByZW1cbi8vIC0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIG91dHB1dCBkaXJlY3RseS5cbi8vIC0gJHByb3AgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgIDogPGNzcyB2YWx1ZT5cbkBtaXhpbiBzdXN5LXJlbShcbiAgJHByb3AsXG4gICR2YWxcbikge1xuICAkX3JlcXM6IChcbiAgICB2YXJpYWJsZTogcmh5dGhtLXVuaXQgcmVtLXdpdGgtcHgtZmFsbGJhY2ssXG4gICAgbWl4aW46IHJlbSxcbiAgKTtcbiAgQGlmIHN1c3ktc3VwcG9ydChyZW0sICRfcmVxcywgJHdhcm46IGZhbHNlKSBhbmQgJHJoeXRobS11bml0ID09IHJlbSB7XG4gICAgQGluY2x1ZGUgcmVtKCRwcm9wLCAkdmFsKTtcbiAgfSBAZWxzZSB7XG4gICAgI3skcHJvcH06ICR2YWw7XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTdXN5IEZhbGxiYWNrIENsZWFyZml4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ2xlYXJmaXhcbi8vIC0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbkBtaXhpbiBzdXN5LWNsZWFyZml4IHtcbiAgQGlmIHN1c3ktc3VwcG9ydChjbGVhcmZpeCwgKG1peGluOiBjbGVhcmZpeCkpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfSBAZWxzZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBiYXNpYyBvdXRzaWRlIGFuZCBpbnNpZGUgY29udGFpbmVycyAvLy8vLy8vLy8vLy8vXG4vLyBAc2VlOiAqX3ByZXByb2Nlc3NfcGFnZVxuI3BnX19jLnBhZ2UtcGFuZWwgLm1xLW1haW4ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmJvZHkgI3BnX19jLnBhZ2UtcGFuZWwgc2VjdGlvbiNjb250ZW50ID4gI2NvbnRlbnQtYXJlYSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLmNvZy1wbCB7XG4gIC5jb2ctcGFuZWwtLWZ1bGxyb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmNvZy1wYW5lbC0tbXEge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcig4MGVtKTtcbiAgfVxufVxuXG4vLyB2aXN1YWwgbWFya2VyczogZW5hYmxlIGZvciByZWZlcmVuY2UgLy8vLy8vLy8vLy8vXG4vLy5jb2ctcGFuZWwtLWZ1bGxyb3cgeyBib3JkZXItdG9wOiAycHggZG90dGVkICNkM2UwZTU7IGJvcmRlci1ib3R0b206IDJweCBkb3R0ZWQgI2QzZTBlNSB9XG4vLy5jb2ctcGFuZWwtLW1xIHsgYm9yZGVyLXJpZ2h0OiAycHggZG90dGVkICNkM2UwZTU7IGJvcmRlci1sZWZ0OiAycHggZG90dGVkICNkM2UwZTU7IH1cblxuLy8vIENvZyBQYW5lbCBMYXlvdXRzIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4ucGFuZWwtY29nLWxheW91dC1vbmUtY29sIHsgLy8gb25lLWNvbHVtblxuICAuY29nLWxheW91dC0tbWFpbiB7XG4gICAgQGluY2x1ZGUgc3BhbigxMiBvZiAxMiBsYXN0KTtcbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZSB7IC8vIG9uZS10d28tb25lXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG5cbi5wYW5lbC1jb2ctbGF5b3V0LW9uZS10d28tb25lLWNsIHsgLy8gb25lLXR3by1vbmUgY29udGVudCBsZWZ0XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oOSBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDMgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG5cbi5wYW5lbC1jb2ctbGF5b3V0LW9uZS10d28tb25lLWNyIHsgLy8gb25lLXR3by1vbmUgY29udGVudCByaWdodFxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDMgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig5IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lIHsgLy8gb25lLXRocmVlLW9uZVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG5cbi5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUtY20geyAvLyBvbmUtdGhyZWUtb25lIGNvbnRlbnQgbWlkZGxlXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMyBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMyBvZiAxMiBsYXN0KTtcbiAgICB9XG4gIH1cbn1cblxuLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by10aHJlZS1vbmUgeyAvLyBvbmUtdHdvLXRocmVlLW9uZVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1maXJzdC1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1maXJzdC1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyIGxhc3QpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG5cbi5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS10d28tb25lIHsgLy8gb25lLXRocmVlLXR3by1vbmVcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pIHtcbiAgICAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1maXJzdC1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyIGxhc3QpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTcGFuIFN5bnRheFxuLy8gPT09PT09PT09PT1cblxuLy8gU3BhbiBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFNldCBhIHNwYW5uaW5nIGVsZW1lbnQgdXNpbmcgc2hvcnRoYW5kIHN5bnRheC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gc3BhbihcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJG91dHB1dDogc3Bhbi1tYXRoKCRzcGFuKTtcbiAgJG5lc3Rpbmc6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNsZWFyOiBzdXN5LWdldChjbGVhciwgJHNwYW4pO1xuXG4gICRib3g6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGNvbnRlbnQtYm94OiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgIT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG4gICRib3g6ICRib3ggb3IgaWYoaXMtaW5zaWRlKCRzcGFuKSBhbmQgJGNvbnRlbnQtYm94LCBib3JkZXItYm94LCBudWxsKTtcblxuICBAaWYgJGNsZWFyID09IGJyZWFrIHtcbiAgICBAaW5jbHVkZSBicmVhaztcbiAgfSBAZWxzZSBpZiAkY2xlYXIgPT0gbm9icmVhayB7XG4gICAgQGluY2x1ZGUgbm9icmVhaztcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcGFuLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpO1xuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICBAaWYgdmFsaWQtY29sdW1ucygkbmVzdGluZywgc2lsZW50KSB7XG4gICAgQGluY2x1ZGUgbmVzdGVkKCRzcGFuKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIFNwYW4gW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgc3Bhbi5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AZnVuY3Rpb24gc3BhbihcbiAgJHNwYW5cbikge1xuICBAcmV0dXJuIGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbn1cblxuLy8gU3BhbiBNYXRoXG4vLyAtLS0tLS0tLS1cbi8vIEdldCBhbGwgdGhlIHNwYW4gcmVzdWx0cy5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gc3Bhbi1tYXRoKFxuICAkc3BhblxuKSB7XG4gICRuZXN0ICAgICAgICAgICAgIDogaWYoc3VzeS1nZXQocm9sZSwgJHNwYW4pID09IG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJHNwbGl0LW5lc3QgICAgICAgOiBpZihpcy1zcGxpdCgkc3BhbikgYW5kICRuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRlZGdlICAgICAgICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbG9jYXRpb24gICAgICAgICA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG5cbiAgJGZsb2F0ICAgICAgICAgICAgOiBmcm9tO1xuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGw7XG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbDtcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsO1xuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGw7XG5cbiAgLy8gY2FsY3VsYXRlIHdpZHRoc1xuICAkc3ByZWFkOiBpbmRleChtYXAtdmFsdWVzKCRzcGFuKSwgc3ByZWFkKTtcbiAgJHNwYW46IGlmKCRzcGxpdC1uZXN0IGFuZCBub3QoJHNwcmVhZCksIG1hcC1tZXJnZSgkc3BhbiwgKHNwcmVhZDogd2lkZSkpLCAkc3Bhbik7XG4gICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xuICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gIC8vIGFwcGx5IGd1dHRlcnNcbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpZiBub3Qoc3VzeS1nZXQocm9sZSwgJHNwYW4pKSB7XG4gICAgICAkcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmIG5vdCgkc3BsaXQtbmVzdCkge1xuICAgICAgJG1hcmdpbi1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkbWFyZ2luLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gc3BlY2lhbCBtYXJnaW4gaGFuZGxpbmdcbiAgQGlmIHN1c3ktZ2V0KG91dHB1dCwgJHNwYW4pID09IGlzb2xhdGUgYW5kICRsb2NhdGlvbiB7XG4gICAgJG1hcmdpbi1iZWZvcmU6IGdldC1pc29sYXRpb24oJHNwYW4pO1xuICAgICRtYXJnaW4tYWZ0ZXI6IC0xMDAlO1xuICB9IEBlbHNlIGlmICRlZGdlIHtcbiAgICAkaXMtc3BsaXQ6IGlzLXNwbGl0KCRzcGFuKTtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcblxuICAgIEBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRmbG9hdDogc3VzeS1nZXQobGFzdC1mbG93LCAkc3Bhbik7XG4gICAgfVxuXG4gICAgQGlmIG5vdCgkaXMtc3BsaXQpIHtcbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBmaXJzdCBhbmQgJHBvcyA9PSBiZWZvcmUpIHtcbiAgICAgICAgJG1hcmdpbi1iZWZvcmU6IDA7XG4gICAgICB9XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gbGFzdCBhbmQgJHBvcyA9PSBhZnRlcikge1xuICAgICAgICAkbWFyZ2luLWFmdGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAoXG4gICAgd2lkdGggICAgICAgICAgIDogJHdpZHRoLFxuICAgIGZsb2F0ICAgICAgICAgICA6ICRmbG9hdCxcbiAgICBtYXJnaW4tYmVmb3JlICAgOiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgOiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctYmVmb3JlICA6ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLWFmdGVyICAgOiAkcGFkZGluZy1hZnRlcixcbiAgICBmbG93ICAgICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG59XG5cbi8vIEdldCBTcGFuIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHNwYW4gd2lkdGguXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1zcGFuLXdpZHRoKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuXG4gICRuICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGxvY2F0aW9uIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkZ3V0dGVycyAgOiBzdXN5LWdldChndXR0ZXJzLCAkc3Bhbik7XG4gICRzcHJlYWQgICA6IHN1c3ktZ2V0KHNwcmVhZCwgJHNwYW4pO1xuXG4gICRjb250ZXh0ICA6IG51bGw7XG4gICRzcGFuLXN1bSA6IG51bGw7XG4gICR3aWR0aCAgICA6IG51bGw7XG5cbiAgQGlmICRuID09ICdmdWxsJyB7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG4gICAgJHJvbGU6IHN1c3ktZ2V0KHJvbGUsICRzcGFuKTtcbiAgICAkbjogaWYoJHBvcyA9PSBzcGxpdCBhbmQgJHJvbGUgIT0gbmVzdCwgc3VzeS1jb3VudCgkY29sdW1ucyksIDEwMCUpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG4pICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCIoI3t0eXBlLW9mKCRuKX0pICN7JG59IGlzIG5vdCBhIHZhbGlkIHNwYW4uXCI7XG4gIH0gQGVsc2UgaWYgdW5pdGxlc3MoJG4pIHtcbiAgICAkY29udGV4dDogc3VzeS1zdW0oJGNvbHVtbnMsICRndXR0ZXJzLCBpZihpcy1zcGxpdCgkc3BhbiksIHdpZGUsIG5hcnJvdykpO1xuICAgICRzcHJlYWQ6IGlmKGlzLWluc2lkZSgkc3BhbiksICRzcHJlYWQgb3Igd2lkZSwgJHNwcmVhZCk7XG4gICAgJHNwYW4tc3VtOiBzdXN5KCRuLCAkbG9jYXRpb24sICRjb2x1bW5zLCAkZ3V0dGVycywgJHNwcmVhZCk7XG5cbiAgICAkX21hdGg6IHN1c3ktZ2V0KG1hdGgsICRzcGFuKTtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkc3Bhbik7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJHdpZHRoOiAkc3Bhbi1zdW0gKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkc3Bhbi1zdW0gLyAkY29udGV4dCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkd2lkdGg6ICRuO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG4iLCIvLyBEaXJlY3Rpb24gSGVscGVyc1xuLy8gPT09PT09PT09PT09PT09PT1cblxuLy8gU3VzeSBGbG93IERlZmF1bHRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gUFJJVkFURVxuQGluY2x1ZGUgc3VzeS1kZWZhdWx0cygoXG4gIGZsb3c6IGx0cixcbikpO1xuXG4vLyBHZXQgRGlyZWN0aW9uXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBvciAndG8nIGRpcmVjdGlvbiBvZiBhIGx0ciBvciBydGwgZmxvdy5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbi8vIC0gWyRrZXldICAgOiBmcm9tIHwgdG9cbkBmdW5jdGlvbiBnZXQtZGlyZWN0aW9uKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdyksXG4gICRrZXk6IGZyb21cbikge1xuICAkcmV0dXJuOiBpZigkZmxvdyA9PSBydGwsIChmcm9tOiByaWdodCwgdG86IGxlZnQpLCAoZnJvbTogbGVmdCwgdG86IHJpZ2h0KSk7XG4gIEByZXR1cm4gbWFwLWdldCgkcmV0dXJuLCAka2V5KTtcbn1cblxuLy8gVG9cbi8vIC0tXG4vLyBSZXR1cm4gdGhlICd0bycgZGlyZWN0aW9uIG9mIGEgZmxvd1xuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQGZ1bmN0aW9uIHRvKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIHRvKTtcbn1cblxuLy8gRnJvbVxuLy8gLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgZGlyZWN0aW9uIG9mIGEgZmxvd1xuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQGZ1bmN0aW9uIGZyb20oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgZnJvbSk7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gR3V0dGVyIFN5bnRheFxuLy8gPT09PT09PT09PT09PVxuXG5cbi8vIEd1dHRlcnNcbi8vIC0tLS0tLS1cbi8vIFNldCBndXR0ZXJzIG9uIGFuIGVsZW1lbnQuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgOiAkc3BhbjtcbiAgJHNwYW4gICAgIDogcGFyc2UtZ3V0dGVycygkc3Bhbik7XG4gICRfZ3V0dGVycyA6IGdldC1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX291dHB1dDogKFxuICAgIGJlZm9yZTogbWFwLWdldCgkX2d1dHRlcnMsIGJlZm9yZSksXG4gICAgYWZ0ZXI6IG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlciksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJHNwYW4pLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChndXR0ZXJzLCAkaW5zcGVjdCk7XG5cbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dCgkX291dHB1dC4uLik7XG4gIH1cbn1cblxuQG1peGluIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZ3V0dGVycygkc3Bhbik7XG59XG5cblxuLy8gR3V0dGVyXG4vLyAtLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBndXR0ZXIuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBndXR0ZXIoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRzcGFuOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX2d1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSBvciBtYXAtZ2V0KCRfZ3V0dGVycywgYWZ0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXJzO1xufVxuXG5AZnVuY3Rpb24gZ3V0dGVycyhcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQHJldHVybiBndXR0ZXIoJHNwYW4pO1xufVxuXG5cbi8vIEdldCBHdXR0ZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBndXR0ZXIgd2lkdGguXG4vLyAtIFskY29udGV4dF06IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGdldC1ndXR0ZXItd2lkdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVycyA6IHN1c3ktZ2V0KGd1dHRlcnMsICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgIDogc3VzeS1nZXQoZ3V0dGVyLW92ZXJyaWRlLCAkY29udGV4dCk7XG5cbiAgQGlmICRfZ3V0dGVycyBhbmQgKCRfZ3V0dGVycyA+IDApIGFuZCBub3QoJF9ndXR0ZXIpIHtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkY29udGV4dCk7XG4gICAgJF9tYXRoOiBndXR0ZXItbWF0aCgkY29udGV4dCk7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJF9ndXR0ZXI6ICRfZ3V0dGVycyAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF9jb2x1bW5zIDogc3VzeS1nZXQoY29sdW1ucywgJGNvbnRleHQpO1xuICAgICAgJF9zcHJlYWQgIDogaWYoaXMtc3BsaXQoJGNvbnRleHQpLCB3aWRlLCBzdXN5LWdldChzcHJlYWQsICRjb250ZXh0KSk7XG4gICAgICAkX2d1dHRlciAgOiBwZXJjZW50YWdlKCRfZ3V0dGVycyAvIHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkpO1xuICAgIH1cbiAgfVxuXG4gICRfZ3V0dGVyOiBpZigkX2d1dHRlciA9PSAnbm8tZ3V0dGVycycgb3IgJF9ndXR0ZXIgPT0gJ25vLWd1dHRlcicsIG51bGwsICRfZ3V0dGVyKTtcblxuICBAcmV0dXJuICRfZ3V0dGVyO1xufVxuXG5cbi8vIEdldCBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGJlZm9yZSBhbmQgYWZ0ZXIgZ3V0dGVyIHZhbHVlcy5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlcnMoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICAgICAgICAgICAgOiBwYXJzZS1ndXR0ZXJzKCRjb250ZXh0KTtcblxuICAkX2d1dHRlci1wb3NpdGlvbiAgIDogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG4gICRfZ3V0dGVyICAgICAgICAgICAgOiBnZXQtZ3V0dGVyLXdpZHRoKCRjb250ZXh0KTtcblxuICAkX3JldHVybiAgICAgICAgICAgIDogKGJlZm9yZTogbnVsbCwgYWZ0ZXI6IG51bGwpO1xuXG4gIEBpZiBpcy1zcGxpdCgkY29udGV4dCkgYW5kICRfZ3V0dGVyIHtcbiAgICAkX2d1dHRlcjogJF9ndXR0ZXIgLyAyO1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChiZWZvcmU6ICRfZ3V0dGVyLCBhZnRlcjogJF9ndXR0ZXIpKTtcbiAgfSBAZWxzZSB7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKCRfZ3V0dGVyLXBvc2l0aW9uOiAkX2d1dHRlcikpO1xuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBJcyBJbnNpZGVcbi8vIC0tLS0tLS0tLVxuLy8gUmV0dXJucyB0cnVlIGlmIGd1dHRlcnMgYXJlIGluc2lkZS5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1pbnNpZGUoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9pbnNpZGU6IGluc2lkZSBpbnNpZGUtc3RhdGljO1xuICAkX2d1dHRlci1wb3NpdGlvbjogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG5cbiAgQHJldHVybiBpZihpbmRleCgkX2luc2lkZSwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gSXMgU3BsaXRcbi8vIC0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgc3BsaXQuXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gaXMtc3BsaXQoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9zcGxpdDogc3BsaXQgaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfc3BsaXQsICRfZ3V0dGVyLXBvc2l0aW9uKSwgdHJ1ZSwgZmFsc2UpO1xufVxuXG5cbi8vIEd1dHRlciBNYXRoXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBtYXRoIHRvIHVzZSBmb3IgZ3V0dGVyIGNhbGN1bGF0aW9uc1xuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGd1dHRlci1tYXRoKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkX3JldHVybiAgOiBzdXN5LWdldChtYXRoLCAkY29udGV4dCk7XG4gICRfcmV0dXJuICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpID09IGluc2lkZS1zdGF0aWMsIHN0YXRpYywgJF9yZXR1cm4pO1xuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBMYXlvdXRcbi8vXG4vLyBTaWRlYmFycyBSZWdpb24gU3R5bGluZ1xuLy9cbi8vIE1hcmt1cDogc2lkZWJhcnMudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBsYXlvdXQuc2lkZWJhcnNcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBGaXJzdCAvLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtZmlyc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIGFzaWRlLnNpZGViYXItZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgc3BhbigzIG9mIDEyKTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24jY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDkgb2YgMTIgbGFzdCk7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTaWRlYmFyIFNlY29uZCAvLy8vLy8vLy8vLy8vLy8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uYm9keS1zaWRlYmFycy1zZWNvbmQge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIGFzaWRlLnNpZGViYXItc2Vjb25kIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oMyBvZiAxMiBsYXN0KTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzZWN0aW9uI2NvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig5IG9mIDEyKTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBCb3RoIC8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtYm90aCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgYXNpZGUuc2lkZWJhci1maXJzdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDIgb2YgMTIpO1xuXG4gICAgICA+ICoge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VjdGlvbiNjb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oOCBvZiAxMik7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXNpZGUuc2lkZWJhci1zZWNvbmQge1xuICAgICAgQGluY2x1ZGUgc3BhbigyIG9mIDEyIGxhc3QpO1xuXG4gICAgICA+ICoge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBOb25lIC8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtbm9uZSB7XG4gIHNlY3Rpb24jY29udGVudCB7XG4gICAgQGluY2x1ZGUgc3BhbigxMiBvZiAxMik7XG5cbiAgICA+ICoge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICB9XG4gIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEdlbmVyYWwgU2lkZWJhciBSdWxlcyAvLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbmFzaWRlLnNpZGViYXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiLy8gU2lkZWJhciBCbG9ja1xuLy9cbi8vIFNpZGViYXIgYmxvY2sgc3R5bGluZy5cbi8vXG4vLyBNYXJrdXA6IGJsb2NrLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5ibG9ja1xuYXNpZGUgLmJsb2NrIHtcbiAgQGV4dGVuZCAuYmxvY2tlZC1zdHlsZTtcblxuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDE3NSU7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIH1cbn1cbiIsIi5yZWdpb24tYnJhbmRpbmcge1xuICAuYmxvY2stc3lzdGVtLW1lbnVibG9jayB1bC5tZW51IHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuICB9XG59XG5cbiNibG9jay1saWdodHVwLWJyYW5kaW5nIHtcbiB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLnNpdGUtYnJhbmRpbmctdGV4dCB7XG4gIHBhZGRpbmc6IDMwcHggMTBweCAyMHB4IDBweDtcbiAgLy9tYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDIyMCU7IC8vMTM1JTtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhIHtcbiAgICBjb2xvcjogIzUxOWMwMDtcbiAgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogJHllbGxvdztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbi8vIGxvZ28gdmFsdWVzXG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28ge1xuICB3aWR0aDogODBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwcHggMHB4IDAgMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuIiwibmF2LmJyZWFkY3J1bWIge1xuICBAZXh0ZW5kIC5ibG9ja2VkLXN0eWxlO1xuXG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgY29sb3I6ICRkYXJrLWdyYXk7XG5cbiAgb2wge1xuICAgIEBleHRlbmQgLm5vLXVsLWxpc3Q7XG5cbiAgICBsaTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcvJztcbiAgICAgIHBhZGRpbmc6IDAgM3B4IDAgMC41cHg7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB9XG5cbiAgICBsaTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vcm1hbDtcbiAgICB9XG4gIH1cbn1cbiIsIi5yZWdpb24tZm9vdGVyIHtcbiAgQGluY2x1ZGUgcmVnaW9uLXNwYWNlcigkbGlnaHQtZ3JheSwgdG9wKTtcblxuICAuYmxvY2stbWVudSB1bC5tZW51IHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuICB9XG59XG4iLCIvLyBIZWFkZXIgTWFpbiBNZW51XG4vL1xuLy8gSGVhZGVyIG1lbnVzIHN0eWxpbmcgZm9yIG1haW4gbmF2XG4vL1xuLy8gTWFya3VwOiBoZWFkZXIudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzLmhlYWRlclxuXG4ucmVnaW9uLWhlYWRlciB7XG4gIEBpbmNsdWRlIHJlZ2lvbi1zcGFjZXIoJGxpZ2h0LWdyYXkpO1xufVxuIiwiLmRydXBhbC1tZXNzYWdlcyB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMTVweCAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcblxuICBAaW5jbHVkZSBib3JkZXJyYWRpdXMoKTtcblxuICBAZXh0ZW5kIC50bXAtc2hhZG93O1xuXG4gIG9sIHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuICB9XG5cbiAgJi5tZXNzYWdlcy0tc3RhdHVzIHtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICB9XG5cbiAgJi5tZXNzYWdlcy0td2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkeWVsbG93LCAwLjMpO1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICB9XG5cbiAgJi5tZXNzYWdlcy0tZXJyb3Ige1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJHJlZCwgMC4zKTtcbiAgICBjb2xvcjogJHJlZDtcbiAgfVxufVxuIiwiLy8gUHJpbWFyeSBUYWJzXG4vL1xuLy8gU2ltcGxlIHRhYnMgc3R5bGluZy5cbi8vXG4vLyBNYXJrdXA6IHRhYnMudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzLnRhYnNcbi5ibG9jay10YWJzIHtcbiAgbWFyZ2luOiAxLjVlbSAwO1xuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBhIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjRlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRXhhbXBsZSBCdXR0b25cbi8vXG4vLyBUaGlzIGlzIGFuIGV4YW1wbGUgc3R5bGVndWlkZSBlbnRyeS4gVG8gc2VlIHRoZSBjb2RlIHRoYXQgZ2VuZXJhdGVzIHRoaXMgZW50cnksIGdvIHRvIHRoZSBgc2Fzcy9jb21wb25lbnRzL2V4YW1wbGVgIGZvbGRlciBpbiB5b3VyIHRoZW1lIGFuZCB2aWV3IHRoZSBgZXhhbXBsZV9idXR0b24uc2Nzc2AsIGBleGFtcGxlX2J1dHRvbi50d2lnYCwgYW5kIGBleGFtcGxlX2J1dHRvbi5qc29uYCBmaWxlcyB0byBzZWUgd2hhdCB0aGV5IGRvLlxuLy9cbi8vIDpob3ZlciAgIC0gVGV4dCB0dXJucyByZWQgb24gaG92ZXIuXG4vLyAucm91bmRlZCAgIC0gV293ISBTbyByb3VuZCFcbi8vXG4vLyBNYXJrdXA6IGV4YW1wbGVfYnV0dG9uLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5leGFtcGxlX2J1dHRvblxuLmJ1dHRvbiB7XG4gIGNvbG9yOiBibHVlO1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbmJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiByZWQ7XG59XG4iLCIvLy8gRXhhbXBsZSBnbG9iYWwgc3RhdGUvKiBjb2RlIC8vLy8vLy8vLy8vLy9cbi8vLyBTZWUgaHR0cHM6Ly9zbWFjc3MuY29tL2Jvb2svdHlwZS1zdGF0ZVxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5pcy1jb2xsYXBzZWQge1xuXG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBDdXN0b20gQ1NTIGZvciBMaWdodHVwIC8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8gVkFSSUFCTEVTXG4vLyBzZWUgX2NvbmZpZy5zY3NzXG5cbi8vIFBBR0VcblxuaHRtbCB7XG4gLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3RoZW1lcy9jdXN0b20vbGlnaHR1cC9pbWFnZXMvcGFnZV9iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcblxuICBoMSwgaDIsIGgzLCBoNCB7XG4gICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cbmgyIHtcbiAgZm9udC1zaXplOiAxNTAlO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbn1cbi5jb2ctLW1xIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG4ubXEtYnJhbmRpbmcsIC5yZWdpb24tZm9vdGVyIHtcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIG1hcmdpbjogMHB4IGF1dG87XG59XG4ubXEtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cbi8vIEhFQURFUiBBTkQgTkFWXG5cbiNicmFuZGluZyB7XG4gIGJhY2tncm91bmQ6IHJnYigyNTUsIDI1NSwgMjU1KTsgLyogRmFsbC1iYWNrIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgcmdiYSAqL1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICB3aWR0aDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHBhZGRpbmc6IDFweDsgIC8vIG5vdCBzdXJlIHdoeSBidXQgdGhpcyBzdG9wcyB0aGUgZ2FwXG59XG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28ge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBpbWcge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIG1hcmdpbjogMTBweDtcbiAgfVxufVxuLnNpdGUtYnJhbmRpbmctdGV4dCB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAzMHB4O1xufVxuLnNpdGUtYnJhbmRpbmctbmFtZSBhLCAuc2l0ZS1icmFuZGluZy1uYW1lIGE6aG92ZXJ7XG4gIGNvbG9yOiAjMDAwO1xufVxuI2Jsb2NrLWxpZ2h0dXAtYnJhbmRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4jYmxvY2stbGlnaHR1cC1tYWluLW1lbnUsICNibG9jay1saWdodHVwLWFjY291bnQtbWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNXB4OyAvLyAxNnB4ID4gMThweFxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdWwubWVudSB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAycHggNXB4O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzMzMztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG4gICAgfVxuICB9XG4gIGEsIGE6bGluaywgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY3Vyc29yOiBpbmhlcml0O1xuICB9XG4gIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMDAwO1xuICB9XG59XG4jYmxvY2stbGlnaHR1cC1hY2NvdW50LW1lbnUgdWwubWVudSBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4vLyBDT05URU5UXG5cbi8vIGFkZGVkIHBlciBodHRwOi8vc2F2YXNsYWJzLmNvbS8yMDE1LzA3LzA2L21hcC1pbi1kcnVwYWwtOC5odG1sXG4ubWFwLWNvbnRhaW5lciB7XG4gIGhlaWdodDogODAwcHg7XG59XG4ubWFwLS1mcm9udCB7XG4gIC8vIFNldCB0aGVzZSB0byB3aGF0ZXZlciB5b3Ugd2FudC5cbiAgaGVpZ2h0OiA4MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSAgeyBoZWlnaHQ6IDYwdmg7IH1cbn1cblxuI3dzaXRlLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2FnaW5hd1wiICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICM3NmIzYjggIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDNweCAhaW1wb3J0YW50O1xufVxuXG4jY29udGVudCB7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi90aGVtZXMvY3VzdG9tL2xpZ2h0dXAvaW1hZ2VzL3BhZ2VfYmFja2dyb3VuZC5qcGdcIik7XG4gIC5maWVsZC0tbmFtZS1ib2R5IHtcbiAgICBhLCBhOmxpbmssIGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgfVxuICB9XG59XG4ucmVnaW9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiByZ2IoMDAwLCAwMDAsIDAwMCk7IC8qIEZhbGwtYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IHJnYmEgKi9cbiAgYmFja2dyb3VuZDogcmdiYSgwMDAsIDAwMCwgMDAwLCAwLjg1KTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGEsIGE6bGluaywgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJHllbGxvdztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBsYWJlbCB7XG4gICAgY29sb3I6ICR5ZWxsb3dcbiAgfVxufVxuLm5vZGV0eXBlLS1wYWdlLCAucGF0aC0tY29udGFjdCwgLnBhdGgtLXVzZXIge1xuICAucmVnaW9uLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogOTYwcHg7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5ib2R5Lm5vZGV0eXBlLS1saWdodCB7XG4gICNibG9jay1saWdodHVwLXBhZ2UtdGl0bGUgaDEge1xuICAgIGNvbG9yOiBncmVlbjtcbiAgfVxufVxuI2Jsb2NrLXZpZXdzLWJsb2NrLWFjdGlvbnMtYnJvd3NlLWJsb2NrLTEsXG4jYmxvY2stdmlld3MtYmxvY2stYWN0aW9ucy1ibG9jay0yLFxuI2Jsb2NrLXZpZXdzLWJsb2NrLWFjdGlvbnMtYnJvd3NlLWJsb2NrLTEtMiB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAkeWVsbG93O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgLnZpZXctaGVhZGVyIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1zaXplOiA4NSU7XG4gIH1cbiAgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQ6IHVybCgnL3RoZW1lcy9jdXN0b20vbGlnaHR1cC9pbWFnZXMvYnVsbGV0X2J1bGIucG5nJykgbm8tcmVwZWF0O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDEwcHggMzBweDtcbiAgfVxufVxuLmFjdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAkeWVsbG93O1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kOiB1cmwoJy90aGVtZXMvY3VzdG9tL2xpZ2h0dXAvaW1hZ2VzL2J1bGxldF9idWxiLnBuZycpIG5vLXJlcGVhdDtcbiAgcGFkZGluZzogNXB4IDEwcHggMTBweCAzMHB4O1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgfVxufVxuLmFjdGlvbi1pbmZvIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAgJHllbGxvdyBzb2xpZCAxcHg7XG4gIC5hY3Rpb24tZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtd2VpZ2h0OiA4Ny41JTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5hY3Rpb24tbGluayB7XG4gIGEsIGE6bGluaywgYTp2aXNpdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIGJvcmRlcjogI2ZmZmZmZiBzb2xpZCAxcHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIH1cbiAgfVxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zIEJvbGQnO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBjb2xvcjogJHllbGxvdztcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkeWVsbG93O1xufVxuXG5maWVsZHNldCBsZWdlbmQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMCAwLjE4NzVlbTtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogLTAuMTg3NWVtO1xufVxuXG4jZWRpdC1maWVsZC1hY3Rpb24tLXdyYXBwZXIge1xuICBsZWdlbmQge1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gIH1cbiAgLmZvcm0taXRlbS1maWVsZC1hY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkeWVsbG93O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gIGlucHV0LmZpZWxkX2FjdGlvbixcbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBpbnB1dC5maWVsZF9hY3Rpb24ge1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbiAgbGFiZWwge1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cbn1cblxuLmxheW91dC1yZWdpb24tbm9kZS1zZWNvbmRhcnkge1xuICAuZWRpdC1hZHZhbmNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cbi5ibG9ja2VkLXN0eWxlLCAubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIsXG5hc2lkZSAuYmxvY2ssIG5hdi5icmVhZGNydW1iIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgcGFkZGluZzogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtcmVwcmVzZW50YXRpdmUsXG4uZmllbGQtLW5hbWUtZmllbGQtc2VuYXRvciB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIC5maWVsZF9fbGFiZWwge1xuICB9XG59XG5cbi5ib2R5LXNpZGViYXJzLW5vbmUgc2VjdGlvbiNjb250ZW50ID4gKiB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG5cbi5yZWdpb24tZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2IoMDAwLCAwMDAsIDAwMCk7IC8qIEZhbGwtYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IHJnYmEgKi9cbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGEsIGE6bGluaywgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJHllbGxvdztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICRncmVlbjtcbiAgfVxuICAjYmxvY2stbGlnaHR1cC1mb290ZXIge1xuICAgIHVsLm1lbnUge1xuICAgICAgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIH1cbiAgICAgIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB3aWR0aDogMTAxcHg7IGhlaWdodDogNTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvSDRXTS5wbmdcIikgbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNibG9jay11c2VycmVnaXN0ZXIge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICAvL2JhY2tncm91bmQ6IHJnYigwMDAsIDAwMCwgMDAwKTsgLyogRmFsbC1iYWNrIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgcmdiYSAqL1xuICAvL2JhY2tncm91bmQ6IHJnYmEoMDAwLCAwMDAsIDAwMCwgMC43KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogJGdyZWVuO1xuICB9XG59XG4ucGFnZS1zdGFuZGFyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5iYWNrLXRvLXRvcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAyMHB4O1xuICByaWdodDogMTBweDtcbiAgei1pbmRleDogOTk5OTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IDA7XG4gICAgZm9udDogMC8wIGE7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdXJsKCcvdGhlbWVzL2N1c3RvbS9saWdodHVwL2ltYWdlcy90b3AucG5nJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG59XG4udmlldy1tYXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogODBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIHotaW5kZXg6IDk5OTk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQ6IDAvMCBhO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHVybCgnL3RoZW1lcy9jdXN0b20vbGlnaHR1cC9pbWFnZXMvdmlldy1tYXAucG5nJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICB9XG59XG4ubWFwLW92ZXJsYXkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAycHggMjBweCAxOHB4IDIwcHg7XG4gIGgxIHtcbiAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogJHllbGxvdztcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cbiAgaDMge1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICB9XG4gIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyNTBweDsgLy8xNjBweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMgQ29uZGVuc2VkJztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICBidXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUwNDk7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAuc3RlcHMge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgLy9mb250LXNpemU6IDEuN3JlbTtcbiAgfVxufVxuI2pvaW4tYW5kLXNoYXJlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmZvcm1bbmFtZT1cImFkZHJlc3NcIl0ge1xuICB3aWR0aDogMzEwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAuZm9ybS1ncm91cC5zdHJlZXQge1xuICAgIHdpZHRoOiAzMTBweDtcbiAgfVxuICAuY2l0eS1zdGF0ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAuZm9ybS1ncm91cC5jaXR5IHtcbiAgICB3aWR0aDogMjQwcHg7XG4gIH1cbiAgLmZvcm0tZ3JvdXAuc3RhdGUge1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG4gIC5mb3JtLWdyb3VwIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmFjdGlvbi1zY3JpcHQge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJvcmRlci1yaWdodDogI2ZhY2EwNiBzb2xpZCAxcHg7XG59XG4uYWN0aW9uLXJlcHMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xufVxuLnJlcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG4ucmVwID4gZGl2IHtcbiAgcGFkZGluZzogMCAyMHB4O1xufVxuLnJlcCBoMyB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGNvbG9yOiAjMDAwO1xufVxuLnJlcCAucGhvdG8ge1xuICB3aWR0aDogMTIwcHg7XG4gIG1pbi13aWR0aDogMTIwcHg7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZXAgLnBob25lIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG59XG4ucmVwIC5vZmZpY2UtbmFtZSB7XG4gIHdpZHRoOiA5NXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuLnJlcCAuZmE6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG4ucmVwIC5idG4ge1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDI2cHg7XG4gIHdpZHRoOiA2OHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5yZXAgLmJ0bjpob3ZlciB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cbi5yZXAgLnBob25lLW51bWJlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubW9kYWwtdGl0bGUge1xuICBjb2xvcjogIzAwMDtcbiAgaW1nIHtcbiAgICB3aWR0aDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxufVxuLm1vZGFsIGxhYmVsIHtcbiAgY29sb3I6ICMwMDA7XG59XG4ubW9kYWwgYTpsaW5rLCAubW9kYWwgYTp2aXNpdGVkLCAjY29udGVudCAubW9kYWwgLmZpZWxkLS1uYW1lLWJvZHkgYSwgI2NvbnRlbnQgLm1vZGFsIC5maWVsZC0tbmFtZS1ib2R5IGE6bGluaywgI2NvbnRlbnQgLm1vZGFsIC5maWVsZC0tbmFtZS1ib2R5IGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAkZ3JlZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tb2RhbCBhOmhvdmVyLCAjY29udGVudCAubW9kYWwgLmZpZWxkLS1uYW1lLWJvZHkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLm1vZGFsIC5tb2RhbC1mb290ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjNzc3O1xufVxuLm1vZGFsIC5tb2RhbC1mb290ZXIgYSwgLm1vZGFsIC5tb2RhbC1mb290ZXIgYTpsaW5rLCAubW9kYWwgLm1vZGFsLWZvb3RlciBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzAwMDtcbn1cbi5tb2RhbC1mb290ZXIgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLm1vZGFsLWZvb3RlciBiIHtcbiAgY29sb3I6ICMzMzM7XG59XG4ubW9kYWwtZm9vdGVyIGkge1xuICBjb2xvcjogI2NjYztcbn1cbi5tb2RhbC5pbiB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogIzMzMztcbn1cbi5tb2RhbC5pbiAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXJnaW46IGF1dG87XG59XG4ubW9kYWwtZGlhbG9nIHtcbiAgICBvdmVyZmxvdy15OiBpbml0aWFsICFpbXBvcnRhbnRcbn1cbi5tb2RhbC1ib2R5IHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjAwcHgpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG59XG4udmlld21hcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jbG9zZSB7XG4gIGJveC1zaGFkb3c6IHVuc2V0O1xufVxuLm5vZGV0eXBlLS1hY3Rpb24gLmJsb2NrLXBhZ2UtdGl0bGUtYmxvY2ssIC5ub2RldHlwZS0tYWN0aW9uIC5ibG9jay10YWJzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5sZWFmbGV0LWNvbnRyb2wgYSwgLmxlYWZsZXQtY29udHJvbCBhOmxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5ib2R5IHtcbiAgLm1vZGFsLWJhY2tkcm9wLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5idG4sIC5idG4tbGcge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMgQ29uZGVuc2VkJztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICAuYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAuYnRuLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUwNDk7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCgkc21hbGwpIHtcbiAgLnVzZXItbG9naW4tZm9ybSB7XG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDk5JSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4jbWFrZUFDYWxsTW9kYWwge1xuICBhIHtcbiAgICBjb2xvcjogIzc3NztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgYTpob3ZlciAge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi50YWtlLWFjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bS1tYXgpICB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxufVxuLnN0ZXBzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmFjdGl2ZS1zdGVwIHtcbiAgY29sb3I6ICRncmVlbjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG4ubWFwLW92ZXJsYXkge1xuICAuc3RlcHMtbGFzdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuYWN0aXZlLXN0ZXAge1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICB9XG59XG5pbWcuYWN0aXZlLWljb24ge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cbi5zY3JvbGwtZm9yLXNjcmlwdCB7XG4gIGgzIHtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkxcHgpe1xuICBkaXNwbGF5OiBub25lO1xuICB9XG59Il19 */
