/**
  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 {
  -webkit-box-sizing: content-box;
  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] {
  -webkit-box-sizing: border-box;
  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;
  -webkit-box-sizing: content-box;
  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 {
  -webkit-box-shadow: 0 0 2px 0 #666666;
  box-shadow: 0 0 2px 0 #666666;
}

.tmp-shadow-none {
  -webkit-box-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;
}

body {
  background: #1f745f;
  color: #505050;
  text-rendering: optimizeLegibility;
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  font-weight: 400;
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

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

body {
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  font-size: 1em;
  line-height: 165%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  padding: 0 0 0.3em;
  margin: 0;
}

h1 {
  font-size: 250%;
  line-height: 120%;
  color: #e01075;
}

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

h3 {
  font-size: 180%;
  line-height: 145%;
  color: #1b90e2;
}

h4 {
  font-size: 160%;
  line-height: 145%;
  color: #1b90e2;
}

h5,
h6 {
  font-size: 125%;
  line-height: 125%;
  color: #e01075;
}

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: #505050;
  text-decoration: underline;
}

.content a,
.content a:link,
.content a:visited {
  color: #1b90e2;
}

.content a:hover,
.content a:link:hover,
.content a:visited:hover {
  color: #e01075;
}

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

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

img {
  vertical-align: middle;
}

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

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

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

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

ol {
  padding: 0 0 0 1em;
  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 1em;
  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;
}

figure[role="group"] {
  margin-left: 0;
  margin-right: 0;
  clear: both;
}

article.media_image_full_width {
  margin-top: 2em;
  margin-bottom: 2em;
}

article.media_image_full_width:first-child {
  margin-top: 0;
}

article.align-center.media_image_main_half,
article.align-center.media_image_half_width {
  width: 100%;
  margin-top: 2em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-center.media_image_main_half,
  article.align-center.media_image_half_width {
    width: 50%;
    margin-top: 4em;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-center.media_image_main_half,
  article.align-center.media_image_half_width {
    width: 50%;
    margin-top: 4em;
  }
}

article.align-center.media_image_main_half + figcaption,
article.align-center.media_image_half_width + figcaption {
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-center.media_image_main_half + figcaption,
  article.align-center.media_image_half_width + figcaption {
    width: 50%;
    clear: both;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2em;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-center.media_image_main_half + figcaption,
  article.align-center.media_image_half_width + figcaption {
    width: 50%;
    clear: both;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2em;
  }
}

article.align-right.media_image_main_half,
article.align-right.media_image_half_width {
  margin-top: 2em;
  margin-bottom: 2em;
  width: 100%;
  float: none;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-right.media_image_main_half,
  article.align-right.media_image_half_width {
    width: 45%;
    margin-left: 4em;
    margin-bottom: 2em;
    float: right;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-right.media_image_main_half,
  article.align-right.media_image_half_width {
    width: 45%;
    margin-left: 4em;
    margin-bottom: 2em;
    float: right;
  }
}

article.align-right.media_image_main_half + figcaption,
article.align-right.media_image_half_width + figcaption {
  width: 100%;
  margin-top: -1.5em;
  margin-bottom: 2em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-right.media_image_main_half + figcaption,
  article.align-right.media_image_half_width + figcaption {
    width: 45%;
    margin-left: 4em;
    float: right;
    clear: both;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-right.media_image_main_half + figcaption,
  article.align-right.media_image_half_width + figcaption {
    width: 45%;
    margin-left: 4em;
    float: right;
    clear: both;
  }
}

article.align-left.media_image_main_half,
article.align-left.media_image_half_width {
  width: 100%;
  margin-top: 2em;
  margin-bottom: 2em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-left.media_image_main_half,
  article.align-left.media_image_half_width {
    width: 45%;
    margin-right: 4em;
    margin-top: 1em;
    margin-bottom: 2em;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-left.media_image_main_half,
  article.align-left.media_image_half_width {
    width: 45%;
    margin-right: 4em;
    margin-top: 1em;
    margin-bottom: 2em;
  }
}

article.align-left.media_image_main_half + figcaption,
article.align-left.media_image_half_width + figcaption {
  width: 100%;
  margin-bottom: 2em;
  margin-top: -1em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.align-left.media_image_main_half + figcaption,
  article.align-left.media_image_half_width + figcaption {
    width: 45%;
    margin-right: 4em;
    float: left;
    clear: both;
  }
}

@media only screen and (min-width: 1024px) {
  article.align-left.media_image_main_half + figcaption,
  article.align-left.media_image_half_width + figcaption {
    width: 45%;
    margin-right: 4em;
    float: left;
    clear: both;
  }
}

figcaption {
  margin: 0.25em 0 0.5em 0;
}

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: #505050;
  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;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  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;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
  transition: border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
textarea:focus {
  -webkit-box-shadow: 0 0 5px #b3b3b3;
  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;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  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;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
  transition: border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out, -webkit-box-shadow 0.45s;
}

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 {
  -webkit-box-shadow: 0 0 5px #b3b3b3;
  box-shadow: 0 0 5px #b3b3b3;
  border-color: #b3b3b3;
  outline: none;
}

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

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

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

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

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

.cog--mq.mq-main {
  background: #fff;
}

#mainwrapper {
  background: #c3de8e;
}

#main #content {
  padding-top: 2em;
  padding-bottom: 4em;
}

.grid-container,
.mq-main,
.region-branding,
.mq-footer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 0 20px 0 20px;
  grid-column-gap: 20px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .grid-container,
  .mq-main,
  .region-branding,
  .mq-footer {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    padding: 0 20px 0 20px;
    grid-column-gap: 20px;
  }
}

@media only screen and (min-width: 1024px) {
  .grid-container,
  .mq-main,
  .region-branding,
  .mq-footer {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    padding: 0 20px 0 20px;
    grid-column-gap: 20px;
  }
}

.mq-branding {
  margin-bottom: 0;
}

.mq-header {
  margin: 0;
}

.mq-main {
  margin: 0 auto;
}

.region-footer {
  padding: 0;
  grid-column: 1 / span 4;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer {
    grid-column: 1 / span 8;
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer {
    grid-column: 1 / span 12;
  }
}

#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 {
    grid-column: 1/span 5;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1023px) {
  .body-sidebars-first aside.sidebar-first {
    grid-column: 1/span 2;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1024px) {
  .body-sidebars-first aside.sidebar-first {
    grid-column: 1/span 3;
  }
}

@media only screen and (min-width: 768px) {
  .body-sidebars-first section#content {
    grid-column: 1/span 4;
  }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1023px) {
  .body-sidebars-first section#content {
    grid-column: 3/span 5;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1024px) {
  .body-sidebars-first section#content {
    grid-column: 4/span 8;
  }
}

@media only screen and (min-width: 768px) {
  .body-sidebars-second aside.sidebar-second {
    width: 23.72881%;
    float: right;
    margin-right: 0;
  }
}

@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 aside.sidebar-second {
    width: 15.25424%;
    float: right;
    margin-right: 0;
  }
  .body-sidebars-both aside.sidebar-second > * {
    padding-right: 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-none section#content {
  grid-column: 1/span 4;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .body-sidebars-none section#content {
    grid-column: 1/span 8;
  }
}

@media only screen and (min-width: 1024px) {
  .body-sidebars-none section#content {
    grid-column: 1/span 12;
  }
}

aside.sidebar {
  overflow: hidden;
}

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

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

.site-branding-text {
  padding: 30px 10px 10px;
  font-size: 135%;
}

div.site-branding a.logo {
  width: 105px;
  display: block;
  padding: 5px 5px 0;
  float: left;
  margin-bottom: 5px;
}

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

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

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

.region-footer {
  color: #fff;
}

.region-footer .field__item {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column-gap: 20px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer .field__item {
    grid-template-columns: repeat(8, 1fr);
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer .field__item {
    grid-template-columns: repeat(12, 1fr);
  }
}

.region-footer a:link,
.region-footer a:visited {
  color: rgba(255, 255, 255, 0.5);
}

.region-footer a:link:hover,
.region-footer a:visited:hover {
  color: white;
  text-decoration: underline;
}

.region-footer #block-abcd-bright-mainfooter {
  grid-column: 1/span 4;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer #block-abcd-bright-mainfooter {
    grid-column: 1 / span 8;
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer #block-abcd-bright-mainfooter {
    grid-column: 1 / span 12;
  }
}

.region-footer .footer_left {
  grid-column: 1/ span 4;
  text-align: center;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer .footer_left {
    grid-column: 1/ span 4;
    text-align: left;
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer .footer_left {
    grid-column: 1 / span 6;
    text-align: left;
  }
}

.region-footer .footer_right {
  grid-column: 1/span 4;
  text-align: center;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer .footer_right {
    grid-column: 5/span 4;
    text-align: right;
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer .footer_right {
    grid-column: 7/span 6;
    text-align: right;
  }
}

.region-footer .footer_lower {
  text-align: center;
  grid-column: 1/span 4;
  padding-bottom: 4em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .region-footer .footer_lower {
    grid-column: 1/span 8;
  }
}

@media only screen and (min-width: 1024px) {
  .region-footer .footer_lower {
    grid-column: 1/span 12;
  }
}

.region-footer .footer_lower img {
  width: 4em;
  margin-top: 1em;
}

.mobile_link {
  display: block;
  position: absolute;
  top: 0.25em;
  left: 20px;
  z-index: 9999999;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .mobile_link {
    display: grid;
    position: static;
    grid-column: 1;
    grid-row: 1;
  }
}

@media only screen and (min-width: 1024px) {
  .mobile_link {
    display: grid;
    position: static;
    grid-column: 1;
    grid-row: 1;
  }
}

.mobile_link img {
  width: 3em;
}

#navwrapper {
  display: none;
}

/*! #######################################################################
  MeanMenu 2.0.7
  --------
  To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */
/* hide the link until viewport size is reached */
a.meanmenu-reveal {
  display: none;
}

/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
  float: left;
  width: 100%;
  position: relative;
  background: #1f745f;
  padding: 4px 0;
  min-height: 42px;
  z-index: 999999;
}

.mean-container a.meanmenu-reveal {
  width: 22px;
  height: 22px;
  padding: 13px 13px 11px;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  color: #fff;
  text-decoration: none;
  text-indent: -9999em;
  line-height: 22px;
  font-size: 1px;
  display: block;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 700;
}

.mean-container a.meanmenu-reveal span {
  display: block;
  background: #fff;
  height: 3px;
  margin-top: 3px;
}

.mean-container .mean-nav {
  float: left;
  width: 100%;
  background: #1f745f;
  margin-top: 44px;
}

.mean-container .mean-nav ul {
  padding: 0;
  margin: 0;
  width: 100%;
  list-style-type: none;
}

.mean-container .mean-nav ul li {
  position: relative;
  float: left;
  width: 100%;
}

.mean-container .mean-nav ul li a {
  display: block;
  float: left;
  width: 90%;
  padding: 1em 5%;
  margin: 0;
  text-align: left;
  color: #fff;
  border-top: 1px solid #383838;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  text-decoration: none;
  text-transform: uppercase;
}

.mean-container .mean-nav ul li li a {
  width: 80%;
  padding: 1em 10%;
  border-top: 1px solid #f1f1f1;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  opacity: 0.75;
  filter: alpha(opacity=75);
  text-shadow: none !important;
  visibility: visible;
}

.mean-container .mean-nav ul li.mean-last a {
  border-bottom: none;
  margin-bottom: 0;
}

.mean-container .mean-nav ul li li li a {
  width: 70%;
  padding: 1em 15%;
}

.mean-container .mean-nav ul li li li li a {
  width: 60%;
  padding: 1em 20%;
}

.mean-container .mean-nav ul li li li li li a {
  width: 50%;
  padding: 1em 25%;
}

.mean-container .mean-nav ul li a:hover {
  background: #252525;
  background: rgba(255, 255, 255, 0.1);
}

.mean-container .mean-nav ul li a.mean-expand {
  margin-top: 1px;
  width: 26px;
  height: 32px;
  padding: 12px !important;
  text-align: center;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.1);
  border: none !important;
  border-left: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
  background: rgba(0, 0, 0, 0.9);
}

.mean-container .mean-push {
  float: left;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both;
}

.mean-nav .wrapper {
  width: 100%;
  padding: 0;
  margin: 0;
}

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar,
.mean-container .mean-bar * {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

.mean-remove {
  display: none !important;
}

#block-abcd-bright-main-menu.global_nav {
  display: grid;
  text-align: right;
  grid-row: 1;
  grid-column: 1/span 4;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #block-abcd-bright-main-menu.global_nav {
    grid-column: 2/span 7;
  }
}

@media only screen and (min-width: 1024px) {
  #block-abcd-bright-main-menu.global_nav {
    grid-column: 2/span 11;
  }
}

.cog--mq.mq-branding {
  margin-top: 0;
}

#block-abcd-bright-main-menu.global_nav ul.menu {
  margin-left: 0;
  margin-bottom: 0;
}

#block-abcd-bright-main-menu.global_nav ul li {
  list-style-type: none;
  display: inline-block;
  color: white;
  padding: 0.5em 1em;
  font-weight: bold;
}

#block-abcd-bright-main-menu.global_nav ul li a:link,
#block-abcd-bright-main-menu.global_nav ul li a:visited {
  text-decoration: none;
  color: white;
  opacity: 0.75;
}

#block-abcd-bright-main-menu.global_nav ul li a:hover,
#block-abcd-bright-main-menu.global_nav ul li a:link:hover {
  opacity: 1;
}

#block-abcd-bright-main-menu.global_nav ul li a.is-active {
  opacity: 1;
}

.mean-container div.mean-bar {
  background: #1f745f;
}

.mean-container .mean-nav li {
  padding: 0;
  /* Removes default nav element padding */
}

nav ul.menu li {
  margin: 0;
}

.region.region-branding div.mobile_link.group a img:hover {
  opacity: 0.5;
  -webkit-filter: invert(100%);
  filter: invert(100%);
}

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

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

.drupal-messages.messages--warning {
  background: rgba(232, 237, 87, 0.3);
  color: #505050;
}

.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;
}

.region.region-banner img {
  width: 100%;
  vertical-align: middle;
}

.program-listings,
.success-story-listings {
  margin-top: 2em;
}

.program-listings .program-teaser,
.success-story-listings .program-teaser {
  background: rgba(195, 222, 142, 0.3);
  padding: 1em;
  margin: 0 0 1em 0;
}

.program-listings .program-teaser .views-field-field-program-banner,
.program-listings .program-teaser .views-field-field-teaser-image,
.success-story-listings .program-teaser .views-field-field-program-banner,
.success-story-listings .program-teaser .views-field-field-teaser-image {
  width: 100%;
  margin: 0 0 1em 0;
  float: left;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .program-listings .program-teaser .views-field-field-program-banner,
  .program-listings .program-teaser .views-field-field-teaser-image,
  .success-story-listings .program-teaser .views-field-field-program-banner,
  .success-story-listings .program-teaser .views-field-field-teaser-image {
    width: 13em;
    margin: 0 1em 0 0;
    float: left;
  }
}

@media only screen and (min-width: 1024px) {
  .program-listings .program-teaser .views-field-field-program-banner,
  .program-listings .program-teaser .views-field-field-teaser-image,
  .success-story-listings .program-teaser .views-field-field-program-banner,
  .success-story-listings .program-teaser .views-field-field-teaser-image {
    width: 13em;
    margin: 0 1em 0 0;
    float: left;
  }
}

.program-listings .program-teaser .views-field-title,
.success-story-listings .program-teaser .views-field-title {
  width: 100%;
  float: none;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .program-listings .program-teaser .views-field-title,
  .success-story-listings .program-teaser .views-field-title {
    width: 75%;
    float: left;
  }
}

@media only screen and (min-width: 1024px) {
  .program-listings .program-teaser .views-field-title,
  .success-story-listings .program-teaser .views-field-title {
    width: 75%;
    float: left;
  }
}

.program-listings .program-teaser .views-field-body,
.success-story-listings .program-teaser .views-field-body {
  width: 100%;
  float: none;
}

@media only screen and (min-width: 1024px) {
  .program-listings .program-teaser .views-field-body,
  .success-story-listings .program-teaser .views-field-body {
    width: 75%;
    float: left;
  }
}

@media only screen and (min-width: 1024px) {
  .program-listings .program-teaser .views-field-body,
  .success-story-listings .program-teaser .views-field-body {
    width: 75%;
    float: left;
  }
}

.program-listings .program-teaser .views-field-body span.field-content article,
.success-story-listings .program-teaser .views-field-body span.field-content article {
  display: none;
}

.program-listings .program-teaser .views-field-title h3,
.program-listings .program-teaser .views-field-title h3 a:link,
.program-listings .program-teaser .views-field-title h3 a:visited,
.success-story-listings .program-teaser .views-field-title h3,
.success-story-listings .program-teaser .views-field-title h3 a:link,
.success-story-listings .program-teaser .views-field-title h3 a:visited {
  color: #1b90e2;
  line-height: 120%;
}

.program-listings .program-teaser .views-field-title h3 a:hover,
.success-story-listings .program-teaser .views-field-title h3 a:hover {
  opacity: 0.5;
}

.program-listings .program-teaser a.views-more-link:link,
.program-listings .program-teaser a.views-more-link:visited,
.success-story-listings .program-teaser a.views-more-link:link,
.success-story-listings .program-teaser a.views-more-link:visited {
  color: #1b90e2;
}

.success-story-listings .program-teaser {
  background: rgba(222, 153, 38, 0.15);
}

.button {
  color: blue;
}

.rounded {
  border-radius: 15px;
}

button:hover {
  color: red;
}

.abcd_events,
#block-views-featured-events-list {
  margin-bottom: 2em;
}

.abcd_events h2,
#block-views-featured-events-list h2 {
  font-size: 140%;
  color: #1b90e2;
}

.abcd_events details,
#block-views-featured-events-list details {
  padding: 0.25em;
  border: 1px solid #8dc8f1;
  border-radius: 0.5em;
  margin-bottom: 0.25em;
}

.abcd_events details > *,
#block-views-featured-events-list details > * {
  margin-left: 1em;
}

.abcd_events details[open],
#block-views-featured-events-list details[open] {
  background: #e8f4fc;
  border: 1px solid #8dc8f1;
  border-radius: 0.5em;
}

.abcd_events details:not(summary),
#block-views-featured-events-list details:not(summary) {
  color: #505050;
}

.abcd_events details summary,
#block-views-featured-events-list details summary {
  display: list-item;
  color: #924b6f;
  font-weight: 700;
  margin-left: 0;
}

.abcd_events details summary time,
#block-views-featured-events-list details summary time {
  color: #505050;
  font-weight: 400;
  border-right: 1px solid #a8a8a8;
  padding-right: 0.25em;
  margin-right: 0.25em;
}

.abcd_events details summary:hover,
#block-views-featured-events-list details summary:hover {
  color: #de9926;
}

.abcd_events details summary::marker,
#block-views-featured-events-list details summary::marker {
  color: #c3de8e;
}

.abcd_events,
#block-views-block-events-views-covid-events-list {
  margin-top: 2em;
}

.abcd_events h2,
#block-views-block-events-views-covid-events-list h2 {
  font-size: 140%;
  color: #e01075;
}

.abcd_events .view-events a,
#block-views-block-events-views-covid-events-list .view-events a {
  color: #1b90e2;
  background: none;
  padding: 0;
}

.abcd_events .view-events a:hover,
#block-views-block-events-views-covid-events-list .view-events a:hover {
  color: #e01075;
  background: none;
  text-decoration: underline;
}

.abcd_events .view-events a:visited,
#block-views-block-events-views-covid-events-list .view-events a:visited {
  color: #1b90e2;
  background: none;
}

.field--name-field-downloads {
  margin: 2em 0 1em;
}

.field--name-field-downloads .field__label {
  margin-bottom: 0.25em;
}

.field--name-field-downloads .field__items .field__item article .field--name-field-media-file .field__item {
  margin-bottom: 0.125em;
}

.field--name-field-downloads .field__items .field__item article .field--name-field-media-file .field__item a {
  color: #1b90e2;
  background: none;
  padding: 0;
}

.field--name-field-downloads .field__items .field__item article .field--name-field-media-file .field__item a:hover {
  color: #e01075;
  background: none;
  text-decoration: underline;
}

.field--name-field-downloads .field__items .field__item article .field--name-field-media-file .field__item a:visited {
  color: #1b90e2;
  background: none;
}

.field--name-field-downloads .field__items .field__item article span.file--application-pdf::before {
  display: inline-block;
  content: "";
  background: url("../images/Icon-PDF.svg") no-repeat;
  opacity: 0.5;
  margin-bottom: -0.125em;
  padding-right: 0.25em;
  width: 1em;
  height: 1em;
}

.abcd-events.homepage-message {
  padding-top: 1em;
  border-top: 2px solid #b3b3b3;
  margin-top: 2em;
  font-size: 1.25em;
  font-size: 3.5vw;
  line-height: 1.25;
  font-weight: 600;
  color: #1b90e2;
}

@media only screen and (min-width: 1024px) {
  .abcd-events.homepage-message {
    font-size: 1.25em;
  }
}

.abcd-events.homepage-message .views-row {
  margin-bottom: 1em;
}

.abcd-events.homepage-message .views-row:last-child {
  margin-bottom: 0;
}

.abcd-events.homepage-message .views-row .field-content {
  background: url(../images/Icon-Info-Outline.svg) top no-repeat;
  background-size: 0.75em;
  background-position: calc(0% + 0.25em);
  padding: 0 0 0 1.5em;
}

.abcd-events.homepage-message .views-row svg {
  fill: fuchsia;
}

.abcd-events.homepage-message a.learn_link:link,
.abcd-events.homepage-message a.learn_link:visited {
  font-weight: 700;
  font-size: 0.875em;
  margin-left: 0;
  color: #924b6f;
  display: inherit;
}

.abcd-events.homepage-message a.learn_link:link:hover,
.abcd-events.homepage-message a.learn_link:visited:hover {
  color: #de9926;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .abcd-events.homepage-message a.learn_link:link,
  .abcd-events.homepage-message a.learn_link:visited {
    display: inline;
    margin-left: 0.5em;
  }
}

@media only screen and (min-width: 1024px) {
  .abcd-events.homepage-message a.learn_link:link,
  .abcd-events.homepage-message a.learn_link:visited {
    display: inline;
    margin-left: 0.5em;
  }
}

body.frontpage section#content h1 {
  font-size: 6vw;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  body.frontpage section#content h1 {
    font-size: 4vw;
    line-height: 1.2;
  }
}

@media only screen and (min-width: 1024px) {
  body.frontpage section#content h1 {
    font-size: 250%;
    line-height: 1.2;
  }
}

body.frontpage section#content p {
  font-size: 4vw;
  line-height: 1.625;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  body.frontpage section#content p {
    font-size: 1.375em;
    line-height: 1.625;
  }
}

@media only screen and (min-width: 1024px) {
  body.frontpage section#content p {
    font-size: 1.5em;
    line-height: 1.625;
  }
}

body.frontpage #main #content {
  padding-bottom: 2em;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  body.frontpage #main #content {
    padding-bottom: 3em;
  }
}

@media only screen and (min-width: 1024px) {
  body.frontpage #main #content {
    padding-bottom: 4em;
  }
}

.homepage-hero {
  position: relative;
}

.homepage-hero img {
  width: 100%;
}

.homepage-hero .hero-inner-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0.9;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .homepage-hero .hero-inner-container {
    width: 66%;
  }
}

@media only screen and (min-width: 1024px) {
  .homepage-hero .hero-inner-container {
    width: 50%;
  }
}

.homepage-hero .hero-inner-container .intro-text {
  float: right;
  bottom: 0;
  right: 0;
  max-width: 39em;
  padding: 2em 1em 1em 1em;
}

.homepage-hero .hero-inner-container .intro-text p {
  font-size: 7vw;
  line-height: 1.1;
  color: #fff;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.9);
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .homepage-hero .hero-inner-container .intro-text p {
    font-size: 4vw;
  }
}

@media only screen and (min-width: 1024px) {
  .homepage-hero .hero-inner-container .intro-text p {
    font-size: 3vw;
  }
}

.homepage-hero .hero-branding-container {
  position: absolute;
  top: 1vw;
  left: 0;
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .homepage-hero .hero-branding-container {
    width: 66%;
    top: 2vw;
  }
}

@media only screen and (min-width: 1024px) {
  .homepage-hero .hero-branding-container {
    width: 50%;
    top: 2vw;
  }
}

.homepage-hero .hero-branding-container .hero-branding {
  float: right;
  top: 0;
  right: 0;
  width: 100%;
  max-width: 39em;
  padding: 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
}

.homepage-hero .hero-branding-container img.hero-logo {
  display: inline-block;
  width: 8em;
}

#lowerbannerwrapper h3,
#lowerbannerwrapper h3 a:link,
#lowerbannerwrapper h3 a:visited {
  color: #fff;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.9), 0 0 1em rgba(0, 0, 0, 0.8), 0 0 1.5em rgba(0, 0, 0, 0.8);
  font-size: 6vw;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper h3,
  #lowerbannerwrapper h3 a:link,
  #lowerbannerwrapper h3 a:visited {
    font-size: 180%;
    font-size: 1.375em;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper h3,
  #lowerbannerwrapper h3 a:link,
  #lowerbannerwrapper h3 a:visited {
    font-size: 180%;
    font-size: 1.375em;
  }
}

#lowerbannerwrapper p {
  color: #fff;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.9), 0 0 1em rgba(0, 0, 0, 0.8), 0 0 1.5em rgba(0, 0, 0, 0.8);
  font-size: 1.5em;
  font-size: 4vw;
  margin-bottom: 1em;
  line-height: 140%;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper p {
    font-size: 1.5em;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper p {
    font-size: 1.5em;
  }
}

#lowerbannerwrapper .light {
  color: black;
}

#lowerbannerwrapper .light h3,
#lowerbannerwrapper .light h3 a:link,
#lowerbannerwrapper .light h3 a:visited {
  color: #000;
  text-shadow: 0 0 0.5em rgba(255, 255, 255, 0.9), 0 0 1em rgba(255, 255, 255, 0.8);
}

#lowerbannerwrapper .light p {
  color: #000;
  text-shadow: 0 0 0.5em rgba(255, 255, 255, 0.9), 0 0 1em rgba(255, 255, 255, 0.8);
}

#lowerbannerwrapper .more-link a:link,
#lowerbannerwrapper .more-link a:visited {
  color: #fff;
  text-decoration: none;
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.5);
  padding: 0.5em;
  margin-top: 1em;
  background: rgba(0, 0, 0, 0.5);
  border: 2px solid #fff;
  border-radius: 0.25em;
  font-size: 4vw;
  -webkit-box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.5), 0 0 1em rgba(0, 0, 0, 0.8);
  box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.5), 0 0 1em rgba(0, 0, 0, 0.8);
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper .more-link a:link,
  #lowerbannerwrapper .more-link a:visited {
    font-size: 1em;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .more-link a:link,
  #lowerbannerwrapper .more-link a:visited {
    font-size: 1em;
  }
}

#lowerbannerwrapper .more-link a:hover {
  color: #de9926;
  border: 2px solid #de9926;
}

#lowerbannerwrapper .cta-banner img {
  width: 100%;
}

#lowerbannerwrapper .cta-banner .cta-half-element {
  width: 100%;
  position: relative;
  float: left;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper .cta-banner .cta-half-element {
    width: 50%;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-half-element {
    width: 50%;
  }
}

#lowerbannerwrapper .cta-banner .cta-half-element .views-field-field-landing-page-header-image .field-content {
  max-height: none;
  overflow: visible;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper .cta-banner .cta-half-element .views-field-field-landing-page-header-image .field-content {
    max-height: 16em;
    overflow: hidden;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-half-element .views-field-field-landing-page-header-image .field-content {
    max-height: 16em;
    overflow: hidden;
  }
}

#lowerbannerwrapper .cta-banner .cta-half-element .cta-half-element-inner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: calc(100% - 40px);
  padding: 1em 0;
  margin: 0 auto;
  text-align: center;
  display: grid;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  -ms-flex-line-pack: center;
  align-content: center;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper .cta-banner .cta-half-element .cta-half-element-inner {
    width: 100%;
    padding: 1em;
    text-align: left;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-half-element .cta-half-element-inner {
    max-width: 39em;
    left: auto;
    padding: 1em;
    text-align: left;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-half-element.views-row.views-row-last .cta-half-element-inner {
    right: auto;
    left: 0;
  }
}

#lowerbannerwrapper .cta-banner .cta-full-element {
  position: relative;
  max-height: none;
  overflow: visible;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  #lowerbannerwrapper .cta-banner .cta-full-element {
    max-height: 16em;
    overflow: hidden;
  }
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-full-element {
    max-height: 16em;
    overflow: hidden;
  }
}

#lowerbannerwrapper .cta-banner .cta-full-element .cta-full-element-inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: calc(100% - 40px);
  margin: 0 auto;
  text-align: center;
  padding: 1em 0;
  display: grid;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  -ms-flex-line-pack: center;
  align-content: center;
}

@media only screen and (min-width: 1024px) {
  #lowerbannerwrapper .cta-banner .cta-full-element .cta-full-element-inner {
    max-width: 80em;
  }
}

article .field--type-entity-reference {
  margin-top: 2em;
}

article .field--type-entity-reference .field__label {
  font-family: "Montserrat", Helvetica, Arial, sans-serif;
  font-weight: 700;
  color: #1b90e2;
  font-size: 1.2em;
}

article .field--type-entity-reference .field__items {
  margin-top: 0.5em;
}

article .field--type-entity-reference .field__items .field__item a:link,
article .field--type-entity-reference .field__items .field__item a:visited {
  color: #fff;
  background: #e01075;
  padding: 0.25em 0.5em;
  border-radius: 0.25em;
}

article .field--type-entity-reference .field__items .field__item a:link:hover,
article .field--type-entity-reference .field__items .field__item a:visited:hover {
  text-decoration: none;
  background: #924b6f;
}

.view-taxonomy-term article {
  margin-top: 1em;
}

.view-taxonomy-term article h2 {
  font-size: 140%;
  color: #e01075;
  padding-bottom: 0;
}

.view-taxonomy-term article h2 a {
  color: #1b90e2;
}

.view-taxonomy-term article h2 a:hover {
  color: #e01075;
  text-decoration: underline;
}

.view-taxonomy-term article h2 a:visited {
  color: #1b90e2;
}

.view-taxonomy-term article content p {
  margin-top: 0;
}

.view-taxonomy-term .feed-icons {
  margin-top: 2em;
}

.view-taxonomy-term .feed-icons a {
  font-style: italic;
  color: #1b90e2;
}

.view-taxonomy-term .feed-icons a:hover {
  color: #e01075;
  text-decoration: underline;
}

.view-taxonomy-term .feed-icons a:visited {
  color: #1b90e2;
}

body.path--user .block-page-title-block {
  display: none;
}

.user_profile_page {
  text-align: center;
}

.user_profile_page .bio_photo img {
  width: 12em;
  border: 6px solid #fff;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
  margin: 2em 0;
}

.user_profile_page .bio_name h2 {
  color: #1b90e2;
}

.user_profile_page .field--name-field-first-name,
.user_profile_page .field--name-field-last-name {
  display: inline-block;
}

.user_profile_page .bio_title h4 {
  font-size: 1.25em;
  font-weight: normal;
  font-style: italic;
  color: #505050;
}

.user_profile_page .bio_biography {
  padding-bottom: 4em;
}

.staff-listings .view-header {
  margin-bottom: 1em;
}

.staff-listings .view-header a:link,
.staff-listings .view-header a:visited {
  color: #1b90e2;
}

.staff-listings .view-header a:link:hover,
.staff-listings .view-header a:visited:hover {
  color: #e01075;
}

.staff-listings .view-content {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .staff-listings .view-content {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media only screen and (min-width: 1024px) {
  .staff-listings .view-content {
    grid-template-columns: repeat(5, 1fr);
  }
}

.staff-listings .view-content .user-listing {
  text-align: center;
  padding: 1em;
  display: grid;
  grid-column: 1 / inherit;
  -ms-flex-line-pack: start;
  align-content: start;
}

.staff-listings .view-content .user-listing .views-field-user-picture a:link img,
.staff-listings .view-content .user-listing .views-field-user-picture a:visited img {
  width: 75%;
  border: 6px solid #fff;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 2em rgba(0, 0, 0, 0.5);
  margin: 1em 0;
}

.staff-listings .view-content .user-listing .views-field-user-picture a:link img:hover,
.staff-listings .view-content .user-listing .views-field-user-picture a:visited img:hover {
  opacity: 0.5;
}

.staff-listings .view-content .user-listing h4 {
  line-height: 130%;
}

.staff-listings .view-content .user-listing .views-field-field-first-name h4 {
  padding-bottom: 0;
}

.staff-listings .view-content .user-listing .views-field-field-job-title {
  font-style: italic;
}

/* stylelint-disable */
/* stylelint-enable */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5zY3NzIiwiX3Jlc2V0LnNjc3MiLCJzdHlsZXMuY3NzIiwiX2NvbmZpZy5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9fYnJlYWtwb2ludC5zY3NzIiwiYmFzZS9fZHJ1cGFsLnNjc3MiLCJiYXNlL19mb3JtLnNjc3MiLCJsYXlvdXQvX2NvbnRhaW5lcnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc3VwcG9ydC9fcmVtLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fY29udGFpbmVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX2NsZWFyZml4LnNjc3MiLCJsYXlvdXQvX3BhbmVscy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX3NwYW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19kaXJlY3Rpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ndXR0ZXJzLnNjc3MiLCJsYXlvdXQvX3NpZGViYXJzLnNjc3MiLCJjb21wb25lbnRzL19hc2lkZV9ibG9ja3Muc2NzcyIsImNvbXBvbmVudHMvX2JyYW5kaW5nLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fbWFpbm1lbnUuc2NzcyIsImNvbXBvbmVudHMvX21lc3NhZ2VzLnNjc3MiLCJjb21wb25lbnRzL190YWJzLnNjc3MiLCJjb21wb25lbnRzL2Jhbm5lci9fYmFubmVyLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnRfdGVhc2Vycy9fY29udGVudF90ZWFzZXJzLnNjc3MiLCJjb21wb25lbnRzL2V4YW1wbGUvZXhhbXBsZV9idXR0b24uc2NzcyIsImNvbXBvbmVudHMvZmVhdHVyZWRfZXZlbnRzL19mZWF0dXJlZF9ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvZmlsZV9kb3dubG9hZHMvX2ZpbGVfZG93bmxvYWRzLnNjc3MiLCJjb21wb25lbnRzL2hvbWVwYWdlX21lc3NhZ2UvX2hvbWVwYWdlX21lc3NhZ2Uuc2NzcyIsImNvbXBvbmVudHMvaG9tZXBhZ2UvX2hvbWVwYWdlLnNjc3MiLCJjb21wb25lbnRzL2hvbWVwYWdlaGVyby9faG9tZXBhZ2VoZXJvLnNjc3MiLCJjb21wb25lbnRzL2xvd2VyX2Jhbm5lci9fbG93ZXJfYmFubmVyLnNjc3MiLCJjb21wb25lbnRzL3Rlcm1fcmVmZXJlbmNlcy9fdGVybV9yZWZlcmVuY2VzLnNjc3MiLCJjb21wb25lbnRzL3VzZXJfcHJvZmlsZS9fdXNlcl9wcm9maWxlLnNjc3MiLCJzdGF0ZS9fc3RhdGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7O0VBRUU7QUNMRix1QkFBdUI7QUFDdkI7RUFBVyxVQUFRO0NBQUc7O0FBQUQ7RUFBYSxXQUFTO0NBQUc7O0FBQUQ7RUFBSyx3QkFBc0I7RUFBRSwyQkFBeUI7RUFBRSwrQkFBNkI7Q0FBRzs7QUFBRDtFQUFLLFVBQVE7Q0FBRzs7QUFBRDtFQUEyRixlQUFhO0NBQUc7O0FBQUQ7RUFBNEIsc0JBQW9CO0VBQUUseUJBQXVCO0NBQUc7O0FBQUQ7RUFBc0IsY0FBWTtFQUFFLFVBQVE7Q0FBRzs7QUNtQ3ZYO0VEbkN3WSxjQUFZO0NBQUc7O0FBQUQ7RUFBRSw4QkFBNEI7Q0FBRzs7QUFBRDtFQUFpQixXQUFTO0NBQUc7O0FBQUQ7RUFBWSwwQkFBd0I7Q0FBRzs7QUFBRDtFQUFrQixpQkFBZTtDQUFHOztBQUFEO0VBQUksbUJBQWlCO0NBQUc7O0FBQUQ7RUFBRyxlQUFhO0VBQUUsZ0JBQWM7Q0FBRzs7QUFBRDtFQUFLLGlCQUFlO0VBQUUsWUFBVTtDQUFHOztBQUFEO0VBQU0sZUFBYTtDQUFHOztBQUFEO0VBQVEsZUFBYTtFQUFFLGVBQWE7RUFBRSxtQkFBaUI7RUFBRSx5QkFBdUI7Q0FBRzs7QUFBRDtFQUFJLFdBQVM7Q0FBRzs7QUFBRDtFQUFJLGVBQWE7Q0FBRzs7QUFBRDtFQUFlLGlCQUFlO0NBQUc7O0FBQUQ7RUFBTyxpQkFBZTtDQUFHOztBQUFEO0VBQWdDLGdDQUFzQjtFQUF0Qix3QkFBc0I7RUFBRSxVQUFRO0NBQUc7O0FBQUQ7RUFBYSxlQUFhO0NBQUc7O0FBQUQ7RUFBa0IsaUNBQStCO0VBQUUsZUFBYTtDQUFHOztBQUFEO0VBQXNDLGVBQWE7RUFBRSxjQUFZO0VBQUUsVUFBUTtDQUFHOztBQUFEO0VBQU8sa0JBQWdCO0NBQUc7O0FBQUQ7RUFBYyxxQkFBbUI7Q0FBRzs7QUFBRDtFQUFvRSwyQkFBeUI7RUFBRSxnQkFBYztDQUFHOztBQUFEO0VBQXNDLGdCQUFjO0NBQUc7O0FBQUQ7RUFBaUQsVUFBUTtFQUFFLFdBQVM7Q0FBRzs7QUFBRDtFQUFNLG9CQUFrQjtDQUFHOztBQUFEO0VBQXVDLCtCQUFxQjtFQUFyQix1QkFBcUI7RUFBRSxXQUFTO0NBQUc7O0FBQUQ7RUFBNEYsYUFBVztDQUFHOztBQUFEO0VBQW1CLDhCQUE0QjtFQUErQixnQ0FBOEI7RUFBRSx3QkFBc0I7Q0FBRzs7QUFBRDtFQUErRix5QkFBdUI7Q0FBRzs7QUFBRDtFQUFTLHlCQUF1QjtFQUFFLGNBQVk7RUFBRSw0QkFBMEI7Q0FBRzs7QUFBRDtFQUFNLDBCQUF3QjtFQUFFLGtCQUFnQjtDQUFHOztBRE9wNUQ7O0VBRUU7QUc4REY7Ozs7Ozs7O0VBUUU7QUEyQkY7RUFDRSxzQkFBcUI7RUFDckIsV0FBVTtFQUNWLFVBQVM7Q0FPVjs7QUFWRDtFQU1JLHNCQUFxQjtFQUNyQixzQkFBcUI7RUFDckIsWUFBVztDQUNaOztBQUdIOzs7O0VBQ0Usc0NBaEgyQjtFQWdIM0IsOEJBaEgyQjtDQWlINUI7O0FBRUQ7RUFDRSx5QkFBZ0I7RUFBaEIsaUJBQWdCO0NBQ2pCOztBQUVEO0VBQ0UsdUJBOUhVO0VBK0hWLGNBQWE7RUFDYixtQkFBa0I7RUFDbEIsb0JBeEg0QjtDQTJIN0I7O0FBR0Q7RUFDRSxvQkE3SHdCO0VBOEh4QixlQTVIdUI7RUE2SHZCLG1DQUFrQztFQUNsQyx3REE3RnFEO0VBOEZyRCxpQkFBZ0I7Q0FDakI7O0FBR0Q7RUFDRSxZQUFXO0VBQ1gsZUFBYztFQUNkLFlBQVc7Q0FDWjs7QUNySkQ7O0VBRUUsaUJBQWdCO0VBQ2hCLFdBQVU7RUFDVixVQUFTO0NBQ1Y7O0FBRUQ7RUFDRSx3RER1Q3FEO0VDdENyRCxlQUFjO0VBQ2Qsa0JBQWlCO0NBQ2xCOztBQU1EOzs7Ozs7RUFRRSxpQkFBZ0I7RUFDaEIsd0REcUJxRDtFQ3BCckQsbUJBQWtCO0VBQ2xCLFVBQVM7Q0FDVjs7QUFFRDtFQUNFLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLGVEckJzQjtDQ3NCdkI7O0FBRUQ7RUFDRSxnQkFBZTtFQUNmLGtCQUFpQjtDQUVsQjs7QUFFRDtFQUNFLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLGVEN0J1QjtDQzhCeEI7O0FBRUQ7RUFDRSxnQkFBZTtFQUNmLGtCQUFpQjtFQUNqQixlRG5DdUI7Q0NvQ3hCOztBQUVEOztFQUVFLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLGVEOUNzQjtDQytDdkI7O0FBRUQ7RUFDRSxlQUFjO0VBQ2QsVUFBUztDQUNWOztBQU1EOzs7RUFHRSxzQkFBcUI7RUFDckIsZURwRTJCO0VDcUUzQixnQkFBZTtDQU1oQjs7QUFYRDs7O0VBUUksZURqRXFCO0VDa0VyQiwyQkFBMEI7Q0FDM0I7O0FBSUg7OztFQUlJLGVEeEVxQjtDQzZFdEI7O0FBVEg7OztFQU9NLGVEL0VrQjtDQ2dGbkI7O0FBS0w7RUFDRSxtQkFBa0I7Q0FDbkI7O0FBR0Q7O0VBRUUsZ0JBQWU7RUFDZixhQUFZO0NBQ2I7O0FBRUQ7RUFDRSx1QkFBc0I7Q0FDdkI7O0FBT0Q7RUFDRSxnQkFBZTtFQUNmLGVEMUd1QjtFQzJHdkIsK0JEL0c0QjtDQ29IN0I7O0FBUkQ7RUFNSSxpQkFBZ0I7Q0FDakI7O0FBR0g7RUFDRSxzQkFBcUI7RUFDckIsaUJBQWdCO0NBU2pCOztBQVhEO0VBS0ksMkJEdkhxQjtFQ3dIckIsb0JENUgwQjtFQzZIMUIsaUJBQWdCO0VBQ2hCLGVBQWM7RUFDZCxlQUFjO0NBQ2Y7O0FBU0g7RUFDRSxtQkFBa0I7RUFDbEIsaUJBQWdCO0NBTWpCOztBQVJEO0VBS0ksY0FBYTtFQUNiLFdBQVU7Q0FDWDs7QUFHSDtFQUNFLHNCQUFxQjtDQUN0Qjs7QUFFRDtFQUNFLHNCQUFxQjtDQUN0Qjs7QUFHRDtFQUNFLG1CQUFrQjtFQUNsQixpQkFBZ0I7Q0FNakI7O0FBUkQ7RUFLSSxjQUFhO0VBQ2IsV0FBVTtDQUNYOztBQUdIO0VBQ0Usc0JBQXFCO0NBQ3RCOztBQUVEO0VBQ0Usc0JBQXFCO0NBQ3RCOztBQU1EO0VBQ0UsWUFBVztDQTZCWjs7QUE5QkQ7RUFJSSxpQkFBZ0I7RUFDaEIsaUJBQWdCO0VBQ2hCLDBCRHhMMEI7RUN5TDFCLGlCQUFnQjtDQUNqQjs7QUFSSDtFQVdJLFVBQVM7RUFDVCxjQUFhO0VBQ2IsaUJBQWdCO0NBQ2pCOztBQWRIO0VBaUJJLDBCRG5NMEI7RUNvTTFCLGlCQUFnQjtDQUNqQjs7QUFuQkg7RUFzQkksMEJEeE0wQjtDQ3lNM0I7O0FBdkJIO0VBMEJJLDBCRDVNMEI7RUM2TTFCLDhCRDdNMEI7RUM4TTFCLGlDRDlNMEI7Q0MrTTNCOztBQU1IO0VBQ0UsZUFBYztFQUNkLGdCQUFlO0VBQ2YsWUFBVztDQUNaOztBQUdEO0VBQ0UsZ0JBQWU7RUFDZixtQkFBa0I7Q0FDbkI7O0FBRUQ7RUFDRSxjQUFhO0NBQ2Q7O0FBR0Q7O0VBRUUsWUFBVztFQUNYLGdCQUFlO0NBV2hCOztBQy9MRztFRGlMSjs7SUFNSSxXQUFVO0lBQ1YsZ0JBQWU7R0FPbEI7Q0ZtTUE7O0FHbFlHO0VEaUxKOztJQVdJLFdBQVU7SUFDVixnQkFBZTtHQUVsQjtDRjJNQTs7QUV6TUQ7O0VBRUUsWUFBVztDQWlCWjs7QUNwTkc7RURpTUo7O0lBS0ksV0FBVTtJQUNWLFlBQVc7SUFDWCxrQkFBaUI7SUFDakIsbUJBQWtCO0lBQ2xCLG1CQUFrQjtHQVVyQjtDRnNNQTs7QUcxWkc7RURpTUo7O0lBYUksV0FBVTtJQUNWLFlBQVc7SUFDWCxrQkFBaUI7SUFDakIsbUJBQWtCO0lBQ2xCLG1CQUFrQjtHQUVyQjtDRmlOQTs7QUUvTUQ7O0VBRUUsZ0JBQWU7RUFDZixtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFlBQVc7Q0FlWjs7QUMxT0c7RURzTko7O0lBUUksV0FBVTtJQUNWLGlCQUFnQjtJQUNoQixtQkFBa0I7SUFDbEIsYUFBWTtHQVNmO0NGNk1BOztBR3ZiRztFRHNOSjs7SUFlSSxXQUFVO0lBQ1YsaUJBQWdCO0lBQ2hCLG1CQUFrQjtJQUNsQixhQUFZO0dBRWY7Q0Z1TkE7O0FFck5EOztFQUVFLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsbUJBQWtCO0NBZW5COztBQy9QRztFRDRPSjs7SUFPSSxXQUFVO0lBQ1YsaUJBQWdCO0lBQ2hCLGFBQVk7SUFDWixZQUFXO0dBU2Q7Q0ZtTkE7O0FHbGRHO0VENE9KOztJQWNJLFdBQVU7SUFDVixpQkFBZ0I7SUFDaEIsYUFBWTtJQUNaLFlBQVc7R0FFZDtDRjZOQTs7QUUzTkQ7O0VBRUUsWUFBVztFQUNYLGdCQUFlO0VBQ2YsbUJBQWtCO0NBZW5COztBQ3BSRztFRGlRSjs7SUFPSSxXQUFVO0lBQ1Ysa0JBQWlCO0lBQ2pCLGdCQUFlO0lBQ2YsbUJBQWtCO0dBU3JCO0NGeU5BOztBRzdlRztFRGlRSjs7SUFjSSxXQUFVO0lBQ1Ysa0JBQWlCO0lBQ2pCLGdCQUFlO0lBQ2YsbUJBQWtCO0dBRXJCO0NGbU9BOztBRS9ORDs7RUFFRSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLGlCQUFnQjtDQWVqQjs7QUMzU0c7RUR3Uko7O0lBT0ksV0FBVTtJQUNWLGtCQUFpQjtJQUNqQixZQUFXO0lBQ1gsWUFBVztHQVNkO0NGNk5BOztBR3hnQkc7RUR3Uko7O0lBY0ksV0FBVTtJQUNWLGtCQUFpQjtJQUNqQixZQUFXO0lBQ1gsWUFBVztHQUVkO0NGdU9BOztBRXBPRDtFQUNFLHlCQUF3QjtDQUN6Qjs7QUVoWEQ7RUFFSSxZQUFXO0NBQ1o7O0FBSEg7RUFNSSxnQkFBZTtDQUNoQjs7QUFQSDtFQVVJLHNCQUFxQjtDQUN0Qjs7QUFYSDtFQWNJLFdBQVU7RUFDVixVQUFTO0NBUVY7O0FBdkJIO0VBb0JNLHFCQUFvQjtFQUNwQixzQkFBcUI7Q0FDdEI7O0FBSUw7RUFDRSxpQkFBZ0I7Q0FLakI7O0FBTkQ7RUFJSSxrQkFBaUI7Q0FDbEI7O0FBR0g7RUFDRSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLG1CQUFrQjtDQUNuQjs7QUFFRDs7RUFLSSxtQkFBa0I7Q0FDbkI7O0FBR0g7RUFDRSxrQkFBaUI7RUFDakIsaUJBQWdCO0VBQ2hCLDhCSHpDNEI7Q0cwQzdCOztBQUVEO0VBQ0UsZ0JBQWU7Q0FDaEI7O0FBRUQ7O0VBRUUsaUNBQWdDO0VBQ2hDLDZCQUE0QjtDQUM3Qjs7QUFFRDs7RUFFRSwrQkFBOEI7RUFDOUIsNkJBQTRCO0NBQzdCOztBQzlERDtFQUNFLGdCQUFlO0NBQ2hCOztBQUVEO0VBQ0Usc0JBQXFCO0VBQ3JCLGVKRXVCO0VJRHZCLGdCQUFlO0VBQ2YsaUJBQWdCO0VBQ2hCLHFCQUFvQjtFQUNwQixtQkFBa0I7RUFDbEIsb0JBQW1CO0NBQ3BCOztBQUVEOzs7O0VBSUUsd0JBQXVCO0VBQ3ZCLHFCQUFvQjtFQUNwQiwwQkpqQitCO0VJa0IvQix1REFBOEM7RUFBOUMsK0NBQThDO0VBQzlDLDJCQUEwQjtFQUMxQixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGdCQUFlO0VBQ2YsZUFBYztFQUNkLFlBQVc7RUFDWCwrQkFBc0I7RUFBdEIsdUJBQXNCO0VBQ3RCLDZFQUE0RDtFQUE1RCxxRUFBNEQ7RUFBNUQsNkRBQTREO0VBQTVELHVGQUE0RDtDQUM3RDs7QUFFRDs7OztFQUlFLG9DSmxDNkI7RUlrQzdCLDRCSmxDNkI7RUltQzdCLHNCSm5DNkI7RUlvQzdCLGtCQUFpQjtFQUNqQixjQUFhO0NBQ2Q7O0FBRUQ7Ozs7RUFJRSxnQkFBZTtDQUNoQjs7QUFFRDtFQUNFLFlBQVc7Q0FDWjs7QUFFRDtFQUNFLDBCSnBENkI7RUlxRDdCLGdCQUFlO0VBQ2Ysa0JBQWlCO0NBQ2xCOztBQUVEO0VBQ0Usa0JBQWlCO0VBQ2pCLGlCQUFnQjtFQUNoQixvQkFBbUI7RUFDbkIsVUFBUztFQUNULHVCQUFzQjtDQUN2Qjs7QUFFRDs7OztFSjZCRSxtQkFEMEI7RUl0QjFCLHVCSjlFVTtFSStFVixrQkFBaUI7RUFDakIsb0JKdkU0QjtFSXdFNUIsZUozRTJCO0NJbUY1Qjs7QUFqQkQ7Ozs7Ozs7RUFlSSxvQkovRTZCO0NJZ0Y5Qjs7QUFHSDs7O0VBR0Usc0JKN0ZXO0VJOEZYLHlDQUF3QztFQUN4QyxpQkFBZ0I7Q0FDakI7O0FBRUQ7OztFQUdFLG9CSjdGNEI7RUk4RjVCLHNCSmhHNkI7Q0lpRzlCOztBQUVEOztFQUVFLGVKM0dXO0NJNEdaOztBQUVEOztFQUVFLGVBQWM7RUFDZCx3QkFBdUI7RUFDdkIsY0FBYTtFQUNiLG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIsa0JBQWlCO0VBQ2pCLG9CSnRIVztFSXVIWCxZQUFXO0NBQ1o7O0FBRUQ7RUFDRSxlQUFjO0NBQ2Y7O0FBRUQ7O0VBRUUsc0JKaElXO0VJaUlYLHlDQUF3QztFQUN4QyxpQkFBZ0I7Q0FDakI7O0FBRUQ7O0VBRUUsb0JKL0g0QjtFSWdJNUIsc0JKbEk2QjtDSW1JOUI7O0FBRUQ7RUFDRSxzQko1SVc7RUk2SVgseUNBQXdDO0NBQ3pDOztBQUVEO0VBQ0Usb0JKekk0QjtFSTBJNUIsc0JKNUk2QjtDSTZJOUI7O0FBRUQ7RUFDRSxlSnRKVztDSXVKWjs7QUFNRDs7Ozs7Ozs7OztFQVVFLHdCQUF1QjtFQUN2QixxQkFBb0I7RUFDcEIsMEJKbEsrQjtFSW1LL0IsdURBQThDO0VBQTlDLCtDQUE4QztFQUM5QywyQkFBMEI7RUFDMUIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixnQkFBZTtFQUNmLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsWUFBVztFQUNYLCtCQUFzQjtFQUF0Qix1QkFBc0I7RUFDdEIsNkVBQTREO0VBQTVELHFFQUE0RDtFQUE1RCw2REFBNEQ7RUFBNUQsdUZBQTREO0NBQzdEOztBQUVEOzs7Ozs7Ozs7O0VBVUUsb0NKMUw2QjtFSTBMN0IsNEJKMUw2QjtFSTJMN0Isc0JKM0w2QjtFSTRMN0IsY0FBYTtDQUNkOztBQUVEOztFQUdFLGtDQUF5QjtFQUF6QiwwQkFBeUI7Q0FXMUI7O0FBZEQ7O0VBTUksMEJKck0yQjtFSXNNM0IseUJBQWdCO0VBQWhCLGlCQUFnQjtFQUNoQix5QkFBZ0I7RUFBaEIsaUJBQWdCO0NBQ2pCOztBQVRIOztFQVlJLDBCSjNNMkI7Q0k0TTVCOztBQ2pOSDtFQ2VJLGdCRGRxQjtFQ2NyQixrQkNxRG9DO0VEckRwQyxtQkNxRG1FO0VGbEVyRSxrQkFBaUI7Q0FDbEI7O0FHSUc7RUFDRSxhQUFZO0VBQ1osZUFBYztFQUNkLFlBQVc7Q0FDWjs7QUhOTDtFQUNDLGlCTFJXO0NLU1g7O0FBRUQ7RUFDQyxvQkxLc0I7Q0tKdEI7O0FBRUQ7RUFJRSxpQkFBZ0I7RUFDaEIsb0JBQW1CO0NBQ25COztBQUlGOzs7O0VBSUUsY0FBYTtFQUNiLHNDQUFxQztFQUNyQyx1QkFBc0I7RUFDdEIsc0JBQXFCO0NBYXRCOztBSGlCRztFR3JDSjs7OztJQVNFLGNBQWE7SUFDYixzQ0FBcUM7SUFDckMsdUJBQXNCO0lBQ3RCLHNCQUFxQjtHQVF0QjtDTnMyQkE7O0FHcjFCRztFR3JDSjs7OztJQWVFLGNBQWE7SUFDYix1Q0FBc0M7SUFDdEMsdUJBQXNCO0lBQ3RCLHNCQUFxQjtHQUV0QjtDTmszQkE7O0FNaDNCRDtFQUNDLGlCQUFnQjtDQUNoQjs7QUFFRDtFQUNDLFVBQVM7Q0FDVDs7QUFFRDtFQUNDLGVBQWM7Q0FDZDs7QUFJRDtFQUNDLFdBQVU7RUFDVix3QkFBdUI7Q0FPdkI7O0FIUkc7RUdESjtJQUlFLHdCQUF1QjtHQUt4QjtDTmczQkE7O0FHeDNCRztFR0RKO0lBT0UseUJBQXdCO0dBRXpCO0NOczNCQTs7QVU1N0JEO0VBQ0UsZ0JBQWU7Q0FDaEI7O0FBRUQ7RUFDRSxnQkFBZTtFQUNmLGlCQUFnQjtDQUNqQjs7QUFFRDtFQUVJLFlBQVc7Q0FDWjs7QUFISDtFSFFJLGdCR0Z1QjtFSEV2QixrQkNxRG9DO0VEckRwQyxtQkNxRG1FO0NFdERwRTs7QUFQSDtFRENNLGFBQVk7RUFDWixlQUFjO0VBQ2QsWUFBVztDQUNaOztBQ1dMO0VIUEksWUl3STBDO0VKeEkxQyxhS0F1RTtFTEF2RSxnQklrRm9CO0NEeEVyQjs7QVBtQ0M7RU9oQ0o7SUhiSSxpQkl3STBDO0lKeEkxQyxZS0E0RDtJTEE1RCx1Qk00RDhFO0dIM0M3RTtFQUpMO0lIYkksaUJJd0kwQztJSnhJMUMsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRDdEbkI7Q1ZrOEJKOztBRzE2Qkc7RU9wQko7SUh6QkksaUJJd0kwQztJSnhJMUMsWUtBNEQ7SUxBNUQsdUJNNEQ4RTtHSC9CN0U7RUFKTDtJSHpCSSxpQkl3STBDO0lKeEkxQyxhS0F1RTtJTEF2RSxnQklrRm9CO0dEakRuQjtDVm04Qko7O0FHdjdCRztFT1JKO0lIckNJLGlCSXdJMEM7SUp4STFDLFlLQTREO0lMQTVELHVCTTREOEU7R0huQjdFO0VBSkw7SUhyQ0ksaUJJd0kwQztJSnhJMUMsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRHJDbkI7Q1ZvOEJKOztBR3A4Qkc7RU9JSjtJSGpESSxpQkl3STBDO0lKeEkxQyxZS0E0RDtJTEE1RCx1Qk00RDhFO0dIUDdFO0VBSkw7SUhqREksaUJJd0kwQztJSnhJMUMsWUtBNEQ7SUxBNUQsdUJNNEQ4RTtHSEg3RTtFQVJMO0lIakRJLGlCSXdJMEM7SUp4STFDLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RyQm5CO0NWczhCSjs7QUd0OUJHO0VPb0JKO0lIakVJLGlCSXdJMEM7SUp4STFDLFlLQTREO0lMQTVELHVCTTREOEU7R0hTN0U7RUFKTDtJSGpFSSxpQkl3STBDO0lKeEkxQyxZS0E0RDtJTEE1RCx1Qk00RDhFO0dIYTdFO0VBUkw7SUhqRUksaUJJd0kwQztJSnhJMUMsYUtBdUU7SUxBdkUsZ0JJa0ZvQjtHRExuQjtDVnc4Qko7O0FHeCtCRztFT29DSjtJSGpGSSxpQkl3STBDO0lKeEkxQyxZS0E0RDtJTEE1RCx1Qk00RDhFO0dIeUI3RTtFQUpMO0lIakZJLGlCSXdJMEM7SUp4STFDLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RPbkI7RUFSTDtJSGpGSSxpQkl3STBDO0lKeEkxQyxZS0E0RDtJTEE1RCx1Qk00RDhFO0dIaUM3RTtFQVpMO0lIakZJLGlCSXdJMEM7SUp4STFDLFlLQTREO0lMQTVELHVCTTREOEU7R0hxQzdFO0VBaEJMO0lIakZJLGlCSXdJMEM7SUp4STFDLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0RtQm5CO0NWNDhCSjs7QUdwZ0NHO0VPNERKO0lIekdJLGlCSXdJMEM7SUp4STFDLFlLQTREO0lMQTVELHVCTTREOEU7R0hpRDdFO0VBSkw7SUh6R0ksaUJJd0kwQztJSnhJMUMsWUtBNEQ7SUxBNUQsdUJNNEQ4RTtHSHFEN0U7RUFSTDtJSHpHSSxpQkl3STBDO0lKeEkxQyxhS0F1RTtJTEF2RSxnQklrRm9CO0dEbUNuQjtFQVpMO0lIekdJLGlCSXdJMEM7SUp4STFDLFlLQTREO0lMQTVELHVCTTREOEU7R0g2RDdFO0VBaEJMO0lIekdJLGlCSXdJMEM7SUp4STFDLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0QyQ25CO0NWZzlCSjs7QUdoaUNHO0VXckRKO0lBSU0sc0JBQXFCO0dBV3RCO0NkNGtDSjs7QUd0aUNHO0VXckRKO0lBTVEsc0JBQXFCO0dBU3hCO0Nka2xDSjs7QUc1aUNHO0VXckRKO0lBU1Esc0JBQXFCO0dBTXhCO0Nkd2xDSjs7QUdsakNHO0VXckRKO0lBbUJNLHNCQUFxQjtHQVd0QjtDZCtrQ0o7O0FHeGpDRztFV3JESjtJQXFCUSxzQkFBcUI7R0FTeEI7Q2RxbENKOztBRzlqQ0c7RVdyREo7SUF3QlEsc0JBQXFCO0dBTXhCO0NkMmxDSjs7QUdwa0NHO0VXakJKO0lQNUJJLGlCSXdJMEM7SUp4STFDLGFLQXVFO0lMQXZFLGdCSWtGb0I7R0c5Q25CO0NkcWxDSjs7QUc1a0NHO0VXS0o7SVBsREksaUJJd0kwQztJSnhJMUMsWUtBNEQ7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Q0FVbEI7O0FBYkg7O0VBT0ksZWhDckNxQjtDZ0MwQ3JCOztBQVpKOztFQVVLLGVoQzVDbUI7Q2dDNkNuQjs7QUFYTDtFQWlCRSxjQUFhO0VBQ2Isc0NBQXFDO0VBQ3JDLHNCQUFxQjtFQUNyQixtQkFBa0I7Q0E0Q2xCOztBOUJoREU7RThCaEJKO0lBdUJHLHNDQUFxQztHQXlDdEM7Q2pDdTFFRDs7QUd2NEVHO0U4QmhCSjtJQTBCSyxzQ0FBcUM7R0FzQ3hDO0NqQzYxRUQ7O0FpQzc1RUQ7RUErQkcsbUJBQWtCO0VBQ2xCLGFBQVk7RUFDWixjQUFhO0VBQ2IseUJBQXdCO0VBQ3hCLDBCQUFvQjtFQUFwQixxQkFBb0I7Q0E0QnBCOztBQS9ESDs7RUF1Q0ksV0FBVTtFQUNWLHVCaEN0RlE7RWdDdUZSLG1CQUFrQjtFQUNsQiwrQ2hDcEZNO0VnQ29GTix1Q2hDcEZNO0VnQ3FGTixjQUFhO0NBTWI7O0FBakRKOztFQThDSyxhQUFZO0NBQ1o7O0FBL0NMO0VBb0RJLGtCQUFpQjtDQUNqQjs7QUFyREo7RUF3REksa0JBQWlCO0NBQ2pCOztBQXpESjtFQTRESSxtQkFBa0I7Q0FDbEI7O0FDM0dKLHVCQUF1QjtBQUl2QixzQkFBc0IiLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJy4uL25vZGVfbW9kdWxlcy9zdXN5L3Nhc3Mvc3VzeSc7XG5AaW1wb3J0ICcuLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQnO1xuXG4vKipcbiAgTm9ybWFsIHJlc2V0XG4qL1xuQGltcG9ydCBcInJlc2V0XCI7XG5cbi8qKlxuICBDb25maWcgZmlsZSB0aGF0IGNvbnRhaW5zIGNlbnRyYWxpemVkIHZhcmlhYmxlc1xuKi9cbkBpbXBvcnQgXCJjb25maWdcIjtcblxuLy8gQmFzZVxuLy9cbi8vIFRoZXNlIGFyZSB0aGUgZGVmYXVsdCBiYXNlIHN0eWxlcyBhcHBsaWVkIHRvIEhUTUwgZWxlbWVudHMuXG4vL1xuLy8gQ29tcG9uZW50IGNsYXNzZXMgY2FuIG92ZXJyaWRlIHRoZXNlIHN0eWxlcywgYnV0IGlmIG5vIGNsYXNzIGFwcGxpZXMgYSBzdHlsZVxuLy8gdG8gYW4gSFRNTCBlbGVtZW50LCB0aGVzZSBzdHlsZXMgd2lsbCBiZSB0aGUgb25lcyBkaXNwbGF5ZWQuXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGJhc2VcblxuLy8gRm9ybVxuLy9cbi8vIFRoZXNlIGFyZSB0aGUgZGVmYXVsdCBmb3JtIHN0eWxlcyBhcHBsaWVkIHRvIEhUTUwgZWxlbWVudHMuXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGZvcm1cbkBpbXBvcnQgXCJiYXNlL19iYXNlLnNjc3NcIjtcbkBpbXBvcnQgXCJiYXNlL19kcnVwYWwuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2Zvcm0uc2Nzc1wiO1xuXG4vLyBMYXlvdXRcbi8vXG4vLyBUaGVzZSBhcmUgdGhlIGxheW91dCBydWxlcy5cbi8vXG4vLyBTdHlsZSBndWlkZTogbGF5b3V0XG5AaW1wb3J0IFwibGF5b3V0L19jb250YWluZXJzLnNjc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvX3BhbmVscy5zY3NzXCI7XG5AaW1wb3J0IFwibGF5b3V0L19zaWRlYmFycy5zY3NzXCI7XG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZXNpZ24gY29tcG9uZW50cyBhcmUgcmV1c2FibGUgc3R5bGluZyB0aGF0IGNhbiBiZSBhcHBsaWVkIHVzaW5nIGp1c3QgdGhlIENTU1xuLy8gY2xhc3MgbmFtZXMgc3BlY2lmaWVkIGluIHRoZSBjb21wb25lbnQuIEFsc28ga25vd24gYXMgZGVzaWduICdtb2R1bGVzJy5cbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50c1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2FzaWRlX2Jsb2Nrcy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnJhbmRpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2JyZWFkY3J1bWIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9faGVhZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19tYWlubWVudS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbWVzc2FnZXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RhYnMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmFubmVyL19iYW5uZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY29udGVudF90ZWFzZXJzL19jb250ZW50X3RlYXNlcnMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZXhhbXBsZS9leGFtcGxlX2J1dHRvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZF9ldmVudHMvX2ZlYXR1cmVkX2V2ZW50cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9maWxlX2Rvd25sb2Fkcy9fZmlsZV9kb3dubG9hZHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaG9tZXBhZ2VfbWVzc2FnZS9faG9tZXBhZ2VfbWVzc2FnZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ob21lcGFnZS9faG9tZXBhZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaG9tZXBhZ2VoZXJvL19ob21lcGFnZWhlcm8uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbG93ZXJfYmFubmVyL19sb3dlcl9iYW5uZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdGVybV9yZWZlcmVuY2VzL190ZXJtX3JlZmVyZW5jZXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdXNlcl9wcm9maWxlL191c2VyX3Byb2ZpbGUuc2Nzc1wiO1xuXG4vLyBTdGF0ZXNcbi8vXG4vLyBTdGF0ZXMgYXJlIHZhcmlhdGlvbnMgdGhhdCBhcmUgdXN1YWxseSBhcHBsaWVkIHZpYSBqcywgc3VjaCBhcyBgLmlzLWFjdGl2ZWAuXG4vLyBcbi8vIFN0eWxlIGd1aWRlOiBzdGF0ZXNcbkBpbXBvcnQgXCJzdGF0ZS9fc3RhdGVzLnNjc3NcIjtcbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5pbWcsbGVnZW5ke2JvcmRlcjowfWxlZ2VuZCx0ZCx0aHtwYWRkaW5nOjB9aHRtbHtmb250LWZhbWlseTpzYW5zLXNlcmlmOy1tcy10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCV9Ym9keXttYXJnaW46MH1hcnRpY2xlLGFzaWRlLGRldGFpbHMsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbWFpbixtZW51LG5hdixzZWN0aW9uLHN1bW1hcnl7ZGlzcGxheTpibG9ja31hdWRpbyxjYW52YXMscHJvZ3Jlc3MsdmlkZW97ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9YXVkaW86bm90KFtjb250cm9sc10pe2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MH1baGlkZGVuXSx0ZW1wbGF0ZXtkaXNwbGF5Om5vbmV9YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fWE6YWN0aXZlLGE6aG92ZXJ7b3V0bGluZTowfWFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206MXB4IGRvdHRlZH1iLG9wdGdyb3VwLHN0cm9uZ3tmb250LXdlaWdodDo3MDB9ZGZue2ZvbnQtc3R5bGU6aXRhbGljfWgxe2ZvbnQtc2l6ZToyZW07bWFyZ2luOi42N2VtIDB9bWFya3tiYWNrZ3JvdW5kOiNmZjA7Y29sb3I6IzAwMH1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1cHt0b3A6LS41ZW19c3Vie2JvdHRvbTotLjI1ZW19c3ZnOm5vdCg6cm9vdCl7b3ZlcmZsb3c6aGlkZGVufWZpZ3VyZXttYXJnaW46MWVtIDQwcHh9aHJ7LW1vei1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3g7aGVpZ2h0OjB9cHJlLHRleHRhcmVhe292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7bWFyZ2luOjB9YnV0dG9ue292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixodG1sIGlucHV0W3R5cGU9YnV0dG9uXSxpbnB1dFt0eXBlPXJlc2V0XSxpbnB1dFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtjdXJzb3I6cG9pbnRlcn1idXR0b25bZGlzYWJsZWRdLGh0bWwgaW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9aW5wdXR7bGluZS1oZWlnaHQ6bm9ybWFsfWlucHV0W3R5cGU9Y2hlY2tib3hdLGlucHV0W3R5cGU9cmFkaW9de2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7LXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O2JveC1zaXppbmc6Y29udGVudC1ib3h9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtib3JkZXI6MXB4IHNvbGlkIHNpbHZlcjttYXJnaW46MCAycHg7cGFkZGluZzouMzVlbSAuNjI1ZW0gLjc1ZW19dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9IiwiLyoqXG4gIE5vcm1hbCByZXNldFxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5pbWcsIGxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kLCB0ZCwgdGgge1xuICBwYWRkaW5nOiAwO1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5hdWRpbywgY2FudmFzLCBwcm9ncmVzcywgdmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG5baGlkZGVuXSwgdGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmE6YWN0aXZlLCBhOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG5iLCBvcHRncm91cCwgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IC42N2VtIDA7XG59XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLCBzdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0uNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0uMjVlbTtcbn1cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbnByZSwgdGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuY29kZSwga2JkLCBwcmUsIHNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmJ1dHRvbiwgaW5wdXQsIG9wdGdyb3VwLCBzZWxlY3QsIHRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIG1hcmdpbjogMDtcbn1cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbiwgc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbmJ1dHRvbiwgaHRtbCBpbnB1dFt0eXBlPWJ1dHRvbl0sIGlucHV0W3R5cGU9cmVzZXRdLCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b25bZGlzYWJsZWRdLCBodG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLCBpbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XSwgaW5wdXRbdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCBzaWx2ZXI7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuLyoqXG4gIENvbmZpZyBmaWxlIHRoYXQgY29udGFpbnMgY2VudHJhbGl6ZWQgdmFyaWFibGVzXG4qL1xuLypcbmJvZHkge1xuICBiYWNrZ3JvdW5kOiBncmVlbiAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzbWFsbCkgIHsgYmFja2dyb3VuZDogb3JhbmdlICFpbXBvcnRhbnQ7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7IGJhY2tncm91bmQ6IHRlYWwgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkgIHsgYmFja2dyb3VuZDogb3JjaGlkICFpbXBvcnRhbnQ7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pICB7IGJhY2tncm91bmQ6IGFsaWNlYmx1ZSAhaW1wb3J0YW50OyB9XG59XG4qL1xuLm5vLXVsLWxpc3QsIGJvZHkgdWwubGlua3MuaW5saW5lIGxpLCAucmVnaW9uLWJyYW5kaW5nIC5ibG9jay1zeXN0ZW0tbWVudWJsb2NrIHVsLm1lbnUsIG5hdi5icmVhZGNydW1iIG9sLCAucmVnaW9uLWZvb3RlciAuYmxvY2stbWVudSB1bC5tZW51LCAuZHJ1cGFsLW1lc3NhZ2VzIG9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5uby11bC1saXN0ID4gbGksIGJvZHkgdWwubGlua3MuaW5saW5lIGxpID4gbGksIC5yZWdpb24tYnJhbmRpbmcgLmJsb2NrLXN5c3RlbS1tZW51YmxvY2sgdWwubWVudSA+IGxpLCBuYXYuYnJlYWRjcnVtYiBvbCA+IGxpLCAucmVnaW9uLWZvb3RlciAuYmxvY2stbWVudSB1bC5tZW51ID4gbGksIC5kcnVwYWwtbWVzc2FnZXMgb2wgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDJweDtcbn1cblxuLnRtcC1zaGFkb3csIC5ibG9ja2VkLXN0eWxlLCAubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIsIGFzaWRlIC5ibG9jaywgbmF2LmJyZWFkY3J1bWIsIGJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIC5kcnVwYWwtbWVzc2FnZXMge1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDAgIzY2NjY2Njtcbn1cblxuLnRtcC1zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ibG9ja2VkLXN0eWxlLCAubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIsIGFzaWRlIC5ibG9jaywgbmF2LmJyZWFkY3J1bWIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBwYWRkaW5nOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjMWY3NDVmO1xuICBjb2xvcjogIzUwNTA1MDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZ3JvdXA6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDE2NSU7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMCAwIDAuM2VtO1xuICBtYXJnaW46IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyNTAlO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgY29sb3I6ICNlMDEwNzU7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAyMTAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDE4MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNDUlO1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDE2MCU7XG4gIGxpbmUtaGVpZ2h0OiAxNDUlO1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuaDUsXG5oNiB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gIGNvbG9yOiAjZTAxMDc1O1xufVxuXG5ib2R5IC5tZW51LWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG5hLFxuYTpsaW5rLFxuYTp2aXNpdGVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzY2NjY2NjtcbiAgY3Vyc29yOiBpbmhlcml0O1xufVxuXG5hOmhvdmVyLFxuYTpsaW5rOmhvdmVyLFxuYTp2aXNpdGVkOmhvdmVyIHtcbiAgY29sb3I6ICM1MDUwNTA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY29udGVudCBhLFxuLmNvbnRlbnQgYTpsaW5rLFxuLmNvbnRlbnQgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMxYjkwZTI7XG59XG5cbi5jb250ZW50IGE6aG92ZXIsXG4uY29udGVudCBhOmxpbms6aG92ZXIsXG4uY29udGVudCBhOnZpc2l0ZWQ6aG92ZXIge1xuICBjb2xvcjogI2UwMTA3NTtcbn1cblxuYm9keSBwIHtcbiAgbWFyZ2luOiAzcHggMCAxMHB4O1xufVxuXG5pbWcsXG5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICM1MDUwNTA7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2Y3ZjdmNztcbn1cblxuYmxvY2txdW90ZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5wcmUgY29kZSB7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCAjNTA1MDUwO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAycHggOXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA4NSU7XG59XG5cbm9sIHtcbiAgcGFkZGluZzogMCAwIDAgMWVtO1xuICBtYXJnaW46IDAgMCAxMHB4O1xufVxuXG5vbCBsaSB7XG4gIG1hcmdpbjogNHB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbm9sIG9sIHtcbiAgcGFkZGluZzogMCAwIDAgMjIuNXB4O1xufVxuXG5vbCBvbCBvbCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIyLjVweDtcbn1cblxudWwge1xuICBwYWRkaW5nOiAwIDAgMCAxZW07XG4gIG1hcmdpbjogMCAwIDEwcHg7XG59XG5cbnVsIGxpIHtcbiAgbWFyZ2luOiA0cHggMDtcbiAgcGFkZGluZzogMDtcbn1cblxudWwgdWwge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbnVsIHVsIHVsIHtcbiAgcGFkZGluZzogMCAwIDAgMjIuNXB4O1xufVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG50YWJsZSB0aCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDRweCA1cHg7XG59XG5cbnRhYmxlIHRkIHtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiA0cHggNXB4O1xufVxuXG50YWJsZSB0aGVhZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbnRhYmxlIHRib2R5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y3ZjdmNztcbn1cblxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmN2Y3O1xufVxuXG5maWd1cmVbcm9sZT1cImdyb3VwXCJdIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmFydGljbGUubWVkaWFfaW1hZ2VfZnVsbF93aWR0aCB7XG4gIG1hcmdpbi10b3A6IDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuXG5hcnRpY2xlLm1lZGlhX2ltYWdlX2Z1bGxfd2lkdGg6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5hcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9tYWluX2hhbGYsXG5hcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICBhcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9tYWluX2hhbGYsXG4gIGFydGljbGUuYWxpZ24tY2VudGVyLm1lZGlhX2ltYWdlX2hhbGZfd2lkdGgge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogNGVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGFydGljbGUuYWxpZ24tY2VudGVyLm1lZGlhX2ltYWdlX21haW5faGFsZixcbiAgYXJ0aWNsZS5hbGlnbi1jZW50ZXIubWVkaWFfaW1hZ2VfaGFsZl93aWR0aCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiA0ZW07XG4gIH1cbn1cblxuYXJ0aWNsZS5hbGlnbi1jZW50ZXIubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbmFydGljbGUuYWxpZ24tY2VudGVyLm1lZGlhX2ltYWdlX2hhbGZfd2lkdGggKyBmaWdjYXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYXJ0aWNsZS5hbGlnbi1jZW50ZXIubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbiAgYXJ0aWNsZS5hbGlnbi1jZW50ZXIubWVkaWFfaW1hZ2VfaGFsZl93aWR0aCArIGZpZ2NhcHRpb24ge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9tYWluX2hhbGYgKyBmaWdjYXB0aW9uLFxuICBhcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoICsgZmlnY2FwdGlvbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICB9XG59XG5cbmFydGljbGUuYWxpZ24tcmlnaHQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmLFxuYXJ0aWNsZS5hbGlnbi1yaWdodC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgbWFyZ2luLXRvcDogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICBhcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX21haW5faGFsZixcbiAgYXJ0aWNsZS5hbGlnbi1yaWdodC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1sZWZ0OiA0ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX21haW5faGFsZixcbiAgYXJ0aWNsZS5hbGlnbi1yaWdodC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1sZWZ0OiA0ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5hcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX21haW5faGFsZiArIGZpZ2NhcHRpb24sXG5hcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX2hhbGZfd2lkdGggKyBmaWdjYXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC0xLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIGFydGljbGUuYWxpZ24tcmlnaHQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbiAgYXJ0aWNsZS5hbGlnbi1yaWdodC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoICsgZmlnY2FwdGlvbiB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgICBtYXJnaW4tbGVmdDogNGVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX21haW5faGFsZiArIGZpZ2NhcHRpb24sXG4gIGFydGljbGUuYWxpZ24tcmlnaHQubWVkaWFfaW1hZ2VfaGFsZl93aWR0aCArIGZpZ2NhcHRpb24ge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDRlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX21haW5faGFsZixcbmFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIGFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9tYWluX2hhbGYsXG4gIGFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1yaWdodDogNGVtO1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX21haW5faGFsZixcbiAgYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX2hhbGZfd2lkdGgge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLXJpZ2h0OiA0ZW07XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgfVxufVxuXG5hcnRpY2xlLmFsaWduLWxlZnQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbmFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoICsgZmlnY2FwdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IC0xZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX21haW5faGFsZiArIGZpZ2NhcHRpb24sXG4gIGFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoICsgZmlnY2FwdGlvbiB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmFsaWduLWxlZnQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbiAgYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX2hhbGZfd2lkdGggKyBmaWdjYXB0aW9uIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1yaWdodDogNGVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbmZpZ2NhcHRpb24ge1xuICBtYXJnaW46IDAuMjVlbSAwIDAuNWVtIDA7XG59XG5cbmJvZHkgYnV0dG9uLnRhYmxlZHJhZy10b2dnbGUtd2VpZ2h0IHtcbiAgbWFyZ2luOiA1cHg7XG59XG5cbmJvZHkgdGQuZmllbGQtbXVsdGlwbGUtZHJhZyB7XG4gIG1heC13aWR0aDogMzBweDtcbn1cblxuYm9keSAuaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5ib2R5IHVsLmxpbmtzLmlubGluZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYm9keSB1bC5saW5rcy5pbmxpbmUgbGkge1xuICBwYWRkaW5nOiAwIDlweCAzcHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5mb3JtIC5mb3JtLWl0ZW0ge1xuICBwYWRkaW5nOiAwIDAgN3B4O1xufVxuXG5mb3JtIC5mb3JtLWl0ZW0uZm9ybS10eXBlLXRleHRhcmVhIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbmZvcm0gLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDkwJTtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIgaDMsXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIgaDQge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbi5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjdmN2Y3O1xufVxuXG5mb3JtIGRldGFpbHMuanMtZm9ybS13cmFwcGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUsXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmpzW2Rpcj1cInJ0bFwiXSBpbnB1dC5mb3JtLWF1dG9jb21wbGV0ZSxcbi5qc1tkaXI9XCJydGxcIl0gaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbmZvcm0ge1xuICBtYXJnaW46IDAgMCAxZW07XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzUwNTA1MDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW46IDAgMCAwLjE4NzVlbTtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICB3aWR0aDogYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjQ1cywgYm9yZGVyLWNvbG9yIDAuNDVzIGVhc2UtaW4tb3V0O1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNiM2IzYjM7XG4gIGJvcmRlci1jb2xvcjogI2IzYjNiMztcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuc2VsZWN0IHtcbiAgbWFyZ2luOiAwIDAgMWVtO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNiM2IzYjM7XG4gIHBhZGRpbmc6IDEuMjVlbTtcbiAgbWFyZ2luOiAxLjEyNWVtIDA7XG59XG5cbmZpZWxkc2V0IGxlZ2VuZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiAwIDAuMTg3NWVtO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1ZW07XG59XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmc6IDVweCAxMXB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxuYnV0dG9uOmhvdmVyLCBidXR0b246Zm9jdXMsXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG5pbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG59XG5cbi5lcnJvcixcbi5lcnJvciB0ZXh0YXJlYSxcbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lcnJvciBpbnB1dDpmb2N1cyxcbi5lcnJvciB0ZXh0YXJlYTpmb2N1cyxcbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbi5lcnJvciBsYWJlbCxcbi5lcnJvciBsYWJlbC5lcnJvciB7XG4gIGNvbG9yOiAjZWU2OTZjO1xufVxuXG4uZXJyb3IgPiBzbWFsbCxcbi5lcnJvciBzbWFsbC5lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjM3NWVtIDAuMjVlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICNlZTY5NmM7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZXJyb3Igc3Bhbi5lcnJvci1tZXNzYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmlucHV0LmVycm9yLFxudGV4dGFyZWEuZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmlucHV0LmVycm9yOmZvY3VzLFxudGV4dGFyZWEuZXJyb3I6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNlZTY5NmM7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG59XG5cbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItY29sb3I6ICNiM2IzYjM7XG59XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICNlZTY5NmM7XG59XG5cbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbWFyZ2luOiAwIDAgMWVtO1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgaGVpZ2h0OiAyLjMxMjVlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC40NXMsIGJvcmRlci1jb2xvciAwLjQ1cyBlYXNlLWluLW91dDtcbn1cblxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNiM2IzYjM7XG4gIGJvcmRlci1jb2xvcjogI2IzYjNiMztcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuZm9ybSBidXR0b24sXG5mb3JtIGlucHV0IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuZm9ybSBidXR0b25bZGlzYWJsZWRdLFxuZm9ybSBpbnB1dFtkaXNhYmxlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNiM2IzO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiBhdXRvO1xufVxuXG5mb3JtIGJ1dHRvbjpob3ZlcixcbmZvcm0gaW5wdXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNiM2IzO1xufVxuXG4uY29nLS1tcSB7XG4gIG1heC13aWR0aDogODBlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG59XG5cbi5jb2ctLW1xOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmNvZy0tbXEubXEtbWFpbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbiNtYWlud3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNjM2RlOGU7XG59XG5cbiNtYWluICNjb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcbn1cblxuLmdyaWQtY29udGFpbmVyLFxuLm1xLW1haW4sXG4ucmVnaW9uLWJyYW5kaW5nLFxuLm1xLWZvb3RlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIHBhZGRpbmc6IDAgMjBweCAwIDIwcHg7XG4gIGdyaWQtY29sdW1uLWdhcDogMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuZ3JpZC1jb250YWluZXIsXG4gIC5tcS1tYWluLFxuICAucmVnaW9uLWJyYW5kaW5nLFxuICAubXEtZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDgsIDFmcik7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgMjBweDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmdyaWQtY29udGFpbmVyLFxuICAubXEtbWFpbixcbiAgLnJlZ2lvbi1icmFuZGluZyxcbiAgLm1xLWZvb3RlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgICBwYWRkaW5nOiAwIDIwcHggMCAyMHB4O1xuICAgIGdyaWQtY29sdW1uLWdhcDogMjBweDtcbiAgfVxufVxuXG4ubXEtYnJhbmRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubXEtaGVhZGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubXEtbWFpbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucmVnaW9uLWZvb3RlciB7XG4gIHBhZGRpbmc6IDA7XG4gIGdyaWQtY29sdW1uOiAxIC8gc3BhbiA0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5yZWdpb24tZm9vdGVyIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gODtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucmVnaW9uLWZvb3RlciB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDEyO1xuICB9XG59XG5cbiNwZ19fYy5wYWdlLXBhbmVsIC5tcS1tYWluIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5ib2R5ICNwZ19fYy5wYWdlLXBhbmVsIHNlY3Rpb24jY29udGVudCA+ICNjb250ZW50LWFyZWEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jb2ctcGwgLmNvZy1wYW5lbC0tZnVsbHJvdyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29nLXBsIC5jb2ctcGFuZWwtLW1xIHtcbiAgbWF4LXdpZHRoOiA4MGVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29nLXBsIC5jb2ctcGFuZWwtLW1xOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnBhbmVsLWNvZy1sYXlvdXQtb25lLWNvbCAuY29nLWxheW91dC0tbWFpbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZSAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZSAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jbCAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiA3NC41NzYyNyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jbCAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jciAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiAyMy43Mjg4MSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jciAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNzQuNTc2MjclO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUtY20gLmNvZy1sYXlvdXQtLW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLW9uZS1jbSAuY29nLWxheW91dC0tbWlkZGxlLWNlbnRlciB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS1vbmUtY20gLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDIzLjcyODgxJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by10aHJlZS1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10d28tdGhyZWUtb25lIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLWxlZnQge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLXRocmVlLW9uZSAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLXRocmVlLW9uZSAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1yaWdodCB7XG4gICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1sZWZ0IHtcbiAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1jZW50ZXIge1xuICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtdHdvLW9uZSAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLXR3by1vbmUgLmNvZy1sYXlvdXQtLXNlY29uZC1taWRkbGUtbGVmdCB7XG4gICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICB9XG4gIC5wYW5lbC1jb2ctbGF5b3V0LW9uZS10aHJlZS10d28tb25lIC5jb2ctbGF5b3V0LS1zZWNvbmQtbWlkZGxlLXJpZ2h0IHtcbiAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYm9keS1zaWRlYmFycy1maXJzdCBhc2lkZS5zaWRlYmFyLWZpcnN0IHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ib2R5LXNpZGViYXJzLWZpcnN0IGFzaWRlLnNpZGViYXItZmlyc3Qge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ib2R5LXNpZGViYXJzLWZpcnN0IGFzaWRlLnNpZGViYXItZmlyc3Qge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ib2R5LXNpZGViYXJzLWZpcnN0IHNlY3Rpb24jY29udGVudCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiA0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYm9keS1zaWRlYmFycy1maXJzdCBzZWN0aW9uI2NvbnRlbnQge1xuICAgIGdyaWQtY29sdW1uOiAzL3NwYW4gNTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ib2R5LXNpZGViYXJzLWZpcnN0IHNlY3Rpb24jY29udGVudCB7XG4gICAgZ3JpZC1jb2x1bW46IDQvc3BhbiA4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJvZHktc2lkZWJhcnMtc2Vjb25kIGFzaWRlLnNpZGViYXItc2Vjb25kIHtcbiAgICB3aWR0aDogMjMuNzI4ODElO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYm9keS1zaWRlYmFycy1ib3RoIGFzaWRlLnNpZGViYXItZmlyc3Qge1xuICAgIHdpZHRoOiAxNS4yNTQyNCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgfVxuICAuYm9keS1zaWRlYmFycy1ib3RoIGFzaWRlLnNpZGViYXItZmlyc3QgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtYm90aCBhc2lkZS5zaWRlYmFyLXNlY29uZCB7XG4gICAgd2lkdGg6IDE1LjI1NDI0JTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5ib2R5LXNpZGViYXJzLWJvdGggYXNpZGUuc2lkZWJhci1zZWNvbmQgPiAqIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG4gIC5ib2R5LXNpZGViYXJzLWJvdGggc2VjdGlvbiNjb250ZW50IHtcbiAgICB3aWR0aDogNjYuMTAxNjklO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gIH1cbiAgLmJvZHktc2lkZWJhcnMtYm90aCBzZWN0aW9uI2NvbnRlbnQgPiAqIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5cbi5ib2R5LXNpZGViYXJzLW5vbmUgc2VjdGlvbiNjb250ZW50IHtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiA0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ib2R5LXNpZGViYXJzLW5vbmUgc2VjdGlvbiNjb250ZW50IHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmJvZHktc2lkZWJhcnMtbm9uZSBzZWN0aW9uI2NvbnRlbnQge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMTI7XG4gIH1cbn1cblxuYXNpZGUuc2lkZWJhciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmFzaWRlIC5ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG5cbmFzaWRlIC5ibG9jayBoMiB7XG4gIGZvbnQtc2l6ZTogMTc1JTtcbiAgY29sb3I6ICM1MDUwNTA7XG59XG5cbi5zaXRlLWJyYW5kaW5nLXRleHQge1xuICBwYWRkaW5nOiAzMHB4IDEwcHggMTBweDtcbiAgZm9udC1zaXplOiAxMzUlO1xufVxuXG5kaXYuc2l0ZS1icmFuZGluZyBhLmxvZ28ge1xuICB3aWR0aDogMTA1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA1cHggNXB4IDA7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbm5hdi5icmVhZGNydW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBjb2xvcjogIzUwNTA1MDtcbn1cblxubmF2LmJyZWFkY3J1bWIgb2wgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcvJztcbiAgcGFkZGluZzogMCAzcHggMCAwLjVweDtcbiAgY29sb3I6ICM1MDUwNTA7XG59XG5cbm5hdi5icmVhZGNydW1iIG9sIGxpOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBjb250ZW50OiBub3JtYWw7XG59XG5cbi5yZWdpb24tZm9vdGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5yZWdpb24tZm9vdGVyIC5maWVsZF9faXRlbSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIGdyaWQtY29sdW1uLWdhcDogMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucmVnaW9uLWZvb3RlciAuZmllbGRfX2l0ZW0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDgsIDFmcik7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgLmZpZWxkX19pdGVtIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgfVxufVxuXG4ucmVnaW9uLWZvb3RlciBhOmxpbmssXG4ucmVnaW9uLWZvb3RlciBhOnZpc2l0ZWQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuXG4ucmVnaW9uLWZvb3RlciBhOmxpbms6aG92ZXIsXG4ucmVnaW9uLWZvb3RlciBhOnZpc2l0ZWQ6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucmVnaW9uLWZvb3RlciAjYmxvY2stYWJjZC1icmlnaHQtbWFpbmZvb3RlciB7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gNDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucmVnaW9uLWZvb3RlciAjYmxvY2stYWJjZC1icmlnaHQtbWFpbmZvb3RlciB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW5mb290ZXIge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxMjtcbiAgfVxufVxuXG4ucmVnaW9uLWZvb3RlciAuZm9vdGVyX2xlZnQge1xuICBncmlkLWNvbHVtbjogMS8gc3BhbiA0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgLmZvb3Rlcl9sZWZ0IHtcbiAgICBncmlkLWNvbHVtbjogMS8gc3BhbiA0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgLmZvb3Rlcl9sZWZ0IHtcbiAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gNjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5yZWdpb24tZm9vdGVyIC5mb290ZXJfcmlnaHQge1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucmVnaW9uLWZvb3RlciAuZm9vdGVyX3JpZ2h0IHtcbiAgICBncmlkLWNvbHVtbjogNS9zcGFuIDQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgLmZvb3Rlcl9yaWdodCB7XG4gICAgZ3JpZC1jb2x1bW46IDcvc3BhbiA2O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5yZWdpb24tZm9vdGVyIC5mb290ZXJfbG93ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gNDtcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucmVnaW9uLWZvb3RlciAuZm9vdGVyX2xvd2VyIHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnJlZ2lvbi1mb290ZXIgLmZvb3Rlcl9sb3dlciB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxMjtcbiAgfVxufVxuXG4ucmVnaW9uLWZvb3RlciAuZm9vdGVyX2xvd2VyIGltZyB7XG4gIHdpZHRoOiA0ZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cblxuLm1vYmlsZV9saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1ZW07XG4gIGxlZnQ6IDIwcHg7XG4gIHotaW5kZXg6IDk5OTk5OTk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLm1vYmlsZV9saW5rIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1vYmlsZV9saW5rIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbn1cblxuLm1vYmlsZV9saW5rIGltZyB7XG4gIHdpZHRoOiAzZW07XG59XG5cbiNuYXZ3cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyohICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4gIE1lYW5NZW51IDIuMC43XG4gIC0tLS0tLS0tXG4gIFRvIGJlIHVzZWQgd2l0aCBqcXVlcnkubWVhbm1lbnUuanMgYnkgQ2hyaXMgV2hhcnRvbiAoaHR0cDovL3d3dy5tZWFudGhlbWVzLmNvbS9wbHVnaW5zL21lYW5tZW51LylcblxuIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgKi9cbi8qIGhpZGUgdGhlIGxpbmsgdW50aWwgdmlld3BvcnQgc2l6ZSBpcyByZWFjaGVkICovXG5hLm1lYW5tZW51LXJldmVhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIHdoZW4gdW5kZXIgdmlld3BvcnQgc2l6ZSwgLm1lYW4tY29udGFpbmVyIGlzIGFkZGVkIHRvIGJvZHkgKi9cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogIzFmNzQ1ZjtcbiAgcGFkZGluZzogNHB4IDA7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIHotaW5kZXg6IDk5OTk5OTtcbn1cblxuLm1lYW4tY29udGFpbmVyIGEubWVhbm1lbnUtcmV2ZWFsIHtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcbiAgcGFkZGluZzogMTNweCAxM3B4IDExcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGZvbnQtc2l6ZTogMXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5tZWFuLWNvbnRhaW5lciBhLm1lYW5tZW51LXJldmVhbCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGhlaWdodDogM3B4O1xuICBtYXJnaW4tdG9wOiAzcHg7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMxZjc0NWY7XG4gIG1hcmdpbi10b3A6IDQ0cHg7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1lYW4tY29udGFpbmVyIC5tZWFuLW5hdiB1bCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogOTAlO1xuICBwYWRkaW5nOiAxZW0gNSU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMzgzODM4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgbGkgYSB7XG4gIHdpZHRoOiA4MCU7XG4gIHBhZGRpbmc6IDFlbSAxMCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjFmMWYxO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbiAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLm1lYW4tY29udGFpbmVyIC5tZWFuLW5hdiB1bCBsaS5tZWFuLWxhc3QgYSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgbGkgbGkgYSB7XG4gIHdpZHRoOiA3MCU7XG4gIHBhZGRpbmc6IDFlbSAxNSU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgbGkgbGkgbGkgYSB7XG4gIHdpZHRoOiA2MCU7XG4gIHBhZGRpbmc6IDFlbSAyMCU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgbGkgbGkgbGkgbGkgYSB7XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDFlbSAyNSU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyNTI1MjU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLm1lYW4tY29udGFpbmVyIC5tZWFuLW5hdiB1bCBsaSBhLm1lYW4tZXhwYW5kIHtcbiAgbWFyZ2luLXRvcDogMXB4O1xuICB3aWR0aDogMjZweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBwYWRkaW5nOiAxMnB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAyO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpICFpbXBvcnRhbnQ7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgYS5tZWFuLWV4cGFuZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLm1lYW4tY29udGFpbmVyIC5tZWFuLXB1c2gge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5tZWFuLW5hdiAud3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEZpeCBmb3IgYm94IHNpemluZyBvbiBGb3VuZGF0aW9uIEZyYW1ld29yayBldGMuICovXG4ubWVhbi1jb250YWluZXIgLm1lYW4tYmFyLFxuLm1lYW4tY29udGFpbmVyIC5tZWFuLWJhciAqIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5tZWFuLXJlbW92ZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGdyaWQtcm93OiAxO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHtcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDc7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHtcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDExO1xuICB9XG59XG5cbi5jb2ctLW1xLm1xLWJyYW5kaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsLm1lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGE6bGluayxcbiNibG9jay1hYmNkLWJyaWdodC1tYWluLW1lbnUuZ2xvYmFsX25hdiB1bCBsaSBhOnZpc2l0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGE6aG92ZXIsXG4jYmxvY2stYWJjZC1icmlnaHQtbWFpbi1tZW51Lmdsb2JhbF9uYXYgdWwgbGkgYTpsaW5rOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGEuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1lYW4tY29udGFpbmVyIGRpdi5tZWFuLWJhciB7XG4gIGJhY2tncm91bmQ6ICMxZjc0NWY7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgbGkge1xuICBwYWRkaW5nOiAwO1xuICAvKiBSZW1vdmVzIGRlZmF1bHQgbmF2IGVsZW1lbnQgcGFkZGluZyAqL1xufVxuXG5uYXYgdWwubWVudSBsaSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnJlZ2lvbi5yZWdpb24tYnJhbmRpbmcgZGl2Lm1vYmlsZV9saW5rLmdyb3VwIGEgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xuICBmaWx0ZXI6IGludmVydCgxMDAlKTtcbn1cblxuLmRydXBhbC1tZXNzYWdlcyB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMTVweCAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uZHJ1cGFsLW1lc3NhZ2VzLm1lc3NhZ2VzLS1zdGF0dXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBjb2xvcjogIzUwNTA1MDtcbn1cblxuLmRydXBhbC1tZXNzYWdlcy5tZXNzYWdlcy0td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjMyLCAyMzcsIDg3LCAwLjMpO1xuICBjb2xvcjogIzUwNTA1MDtcbn1cblxuLmRydXBhbC1tZXNzYWdlcy5tZXNzYWdlcy0tZXJyb3Ige1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIzOCwgMTA1LCAxMDgsIDAuMyk7XG4gIGNvbG9yOiAjZWU2OTZjO1xufVxuXG4uYmxvY2stdGFicyB7XG4gIG1hcmdpbjogMS41ZW0gMDtcbn1cblxuLmJsb2NrLXRhYnMgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2IzYjNiMztcbn1cblxuLmJsb2NrLXRhYnMgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5ibG9jay10YWJzIHVsIGxpIGEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNGVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5yZWdpb24ucmVnaW9uLWJhbm5lciBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnByb2dyYW0tbGlzdGluZ3MsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyB7XG4gIG1hcmdpbi10b3A6IDJlbTtcbn1cblxuLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyLFxuLnN1Y2Nlc3Mtc3RvcnktbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxOTUsIDIyMiwgMTQyLCAwLjMpO1xuICBwYWRkaW5nOiAxZW07XG4gIG1hcmdpbjogMCAwIDFlbSAwO1xufVxuXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWZpZWxkLXByb2dyYW0tYmFubmVyLFxuLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1maWVsZC10ZWFzZXItaW1hZ2UsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWZpZWxkLXByb2dyYW0tYmFubmVyLFxuLnN1Y2Nlc3Mtc3RvcnktbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1maWVsZC10ZWFzZXItaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMWVtIDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5wcm9ncmFtLWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtZmllbGQtcHJvZ3JhbS1iYW5uZXIsXG4gIC5wcm9ncmFtLWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtZmllbGQtdGVhc2VyLWltYWdlLFxuICAuc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWZpZWxkLXByb2dyYW0tYmFubmVyLFxuICAuc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWZpZWxkLXRlYXNlci1pbWFnZSB7XG4gICAgd2lkdGg6IDEzZW07XG4gICAgbWFyZ2luOiAwIDFlbSAwIDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1maWVsZC1wcm9ncmFtLWJhbm5lcixcbiAgLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1maWVsZC10ZWFzZXItaW1hZ2UsXG4gIC5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtZmllbGQtcHJvZ3JhbS1iYW5uZXIsXG4gIC5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtZmllbGQtdGVhc2VyLWltYWdlIHtcbiAgICB3aWR0aDogMTNlbTtcbiAgICBtYXJnaW46IDAgMWVtIDAgMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlLFxuLnN1Y2Nlc3Mtc3RvcnktbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC10aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlLFxuICAuc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICB3aWR0aDogNzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wcm9ncmFtLWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtdGl0bGUsXG4gIC5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtdGl0bGUge1xuICAgIHdpZHRoOiA3NSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1ib2R5LFxuLnN1Y2Nlc3Mtc3RvcnktbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC1ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWJvZHksXG4gIC5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtYm9keSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWJvZHksXG4gIC5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtYm9keSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWJvZHkgc3Bhbi5maWVsZC1jb250ZW50IGFydGljbGUsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLWJvZHkgc3Bhbi5maWVsZC1jb250ZW50IGFydGljbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGgzLFxuLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIC52aWV3cy1maWVsZC10aXRsZSBoMyBhOmxpbmssXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGgzIGE6dmlzaXRlZCxcbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtdGl0bGUgaDMsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGgzIGE6bGluayxcbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciAudmlld3MtZmllbGQtdGl0bGUgaDMgYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMxYjkwZTI7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xufVxuXG4ucHJvZ3JhbS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGgzIGE6aG92ZXIsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgLnZpZXdzLWZpZWxkLXRpdGxlIGgzIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5wcm9ncmFtLWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciBhLnZpZXdzLW1vcmUtbGluazpsaW5rLFxuLnByb2dyYW0tbGlzdGluZ3MgLnByb2dyYW0tdGVhc2VyIGEudmlld3MtbW9yZS1saW5rOnZpc2l0ZWQsXG4uc3VjY2Vzcy1zdG9yeS1saXN0aW5ncyAucHJvZ3JhbS10ZWFzZXIgYS52aWV3cy1tb3JlLWxpbms6bGluayxcbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciBhLnZpZXdzLW1vcmUtbGluazp2aXNpdGVkIHtcbiAgY29sb3I6ICMxYjkwZTI7XG59XG5cbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjIyLCAxNTMsIDM4LCAwLjE1KTtcbn1cblxuLmJ1dHRvbiB7XG4gIGNvbG9yOiBibHVlO1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbmJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbi5hYmNkX2V2ZW50cyxcbiNibG9jay12aWV3cy1mZWF0dXJlZC1ldmVudHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbn1cblxuLmFiY2RfZXZlbnRzIGgyLFxuI2Jsb2NrLXZpZXdzLWZlYXR1cmVkLWV2ZW50cy1saXN0IGgyIHtcbiAgZm9udC1zaXplOiAxNDAlO1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuLmFiY2RfZXZlbnRzIGRldGFpbHMsXG4jYmxvY2stdmlld3MtZmVhdHVyZWQtZXZlbnRzLWxpc3QgZGV0YWlscyB7XG4gIHBhZGRpbmc6IDAuMjVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhkYzhmMTtcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLmFiY2RfZXZlbnRzIGRldGFpbHMgPiAqLFxuI2Jsb2NrLXZpZXdzLWZlYXR1cmVkLWV2ZW50cy1saXN0IGRldGFpbHMgPiAqIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLmFiY2RfZXZlbnRzIGRldGFpbHNbb3Blbl0sXG4jYmxvY2stdmlld3MtZmVhdHVyZWQtZXZlbnRzLWxpc3QgZGV0YWlsc1tvcGVuXSB7XG4gIGJhY2tncm91bmQ6ICNlOGY0ZmM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4ZGM4ZjE7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xufVxuXG4uYWJjZF9ldmVudHMgZGV0YWlsczpub3Qoc3VtbWFyeSksXG4jYmxvY2stdmlld3MtZmVhdHVyZWQtZXZlbnRzLWxpc3QgZGV0YWlsczpub3Qoc3VtbWFyeSkge1xuICBjb2xvcjogIzUwNTA1MDtcbn1cblxuLmFiY2RfZXZlbnRzIGRldGFpbHMgc3VtbWFyeSxcbiNibG9jay12aWV3cy1mZWF0dXJlZC1ldmVudHMtbGlzdCBkZXRhaWxzIHN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGNvbG9yOiAjOTI0YjZmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmFiY2RfZXZlbnRzIGRldGFpbHMgc3VtbWFyeSB0aW1lLFxuI2Jsb2NrLXZpZXdzLWZlYXR1cmVkLWV2ZW50cy1saXN0IGRldGFpbHMgc3VtbWFyeSB0aW1lIHtcbiAgY29sb3I6ICM1MDUwNTA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhOGE4YTg7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG59XG5cbi5hYmNkX2V2ZW50cyBkZXRhaWxzIHN1bW1hcnk6aG92ZXIsXG4jYmxvY2stdmlld3MtZmVhdHVyZWQtZXZlbnRzLWxpc3QgZGV0YWlscyBzdW1tYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNkZTk5MjY7XG59XG5cbi5hYmNkX2V2ZW50cyBkZXRhaWxzIHN1bW1hcnk6Om1hcmtlcixcbiNibG9jay12aWV3cy1mZWF0dXJlZC1ldmVudHMtbGlzdCBkZXRhaWxzIHN1bW1hcnk6Om1hcmtlciB7XG4gIGNvbG9yOiAjYzNkZThlO1xufVxuXG4uYWJjZF9ldmVudHMsXG4jYmxvY2stdmlld3MtYmxvY2stZXZlbnRzLXZpZXdzLWNvdmlkLWV2ZW50cy1saXN0IHtcbiAgbWFyZ2luLXRvcDogMmVtO1xufVxuXG4uYWJjZF9ldmVudHMgaDIsXG4jYmxvY2stdmlld3MtYmxvY2stZXZlbnRzLXZpZXdzLWNvdmlkLWV2ZW50cy1saXN0IGgyIHtcbiAgZm9udC1zaXplOiAxNDAlO1xuICBjb2xvcjogI2UwMTA3NTtcbn1cblxuLmFiY2RfZXZlbnRzIC52aWV3LWV2ZW50cyBhLFxuI2Jsb2NrLXZpZXdzLWJsb2NrLWV2ZW50cy12aWV3cy1jb3ZpZC1ldmVudHMtbGlzdCAudmlldy1ldmVudHMgYSB7XG4gIGNvbG9yOiAjMWI5MGUyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uYWJjZF9ldmVudHMgLnZpZXctZXZlbnRzIGE6aG92ZXIsXG4jYmxvY2stdmlld3MtYmxvY2stZXZlbnRzLXZpZXdzLWNvdmlkLWV2ZW50cy1saXN0IC52aWV3LWV2ZW50cyBhOmhvdmVyIHtcbiAgY29sb3I6ICNlMDEwNzU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYWJjZF9ldmVudHMgLnZpZXctZXZlbnRzIGE6dmlzaXRlZCxcbiNibG9jay12aWV3cy1ibG9jay1ldmVudHMtdmlld3MtY292aWQtZXZlbnRzLWxpc3QgLnZpZXctZXZlbnRzIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjMWI5MGUyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtZG93bmxvYWRzIHtcbiAgbWFyZ2luOiAyZW0gMCAxZW07XG59XG5cbi5maWVsZC0tbmFtZS1maWVsZC1kb3dubG9hZHMgLmZpZWxkX19sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLmZpZWxkLS1uYW1lLWZpZWxkLWRvd25sb2FkcyAuZmllbGRfX2l0ZW1zIC5maWVsZF9faXRlbSBhcnRpY2xlIC5maWVsZC0tbmFtZS1maWVsZC1tZWRpYS1maWxlIC5maWVsZF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMTI1ZW07XG59XG5cbi5maWVsZC0tbmFtZS1maWVsZC1kb3dubG9hZHMgLmZpZWxkX19pdGVtcyAuZmllbGRfX2l0ZW0gYXJ0aWNsZSAuZmllbGQtLW5hbWUtZmllbGQtbWVkaWEtZmlsZSAuZmllbGRfX2l0ZW0gYSB7XG4gIGNvbG9yOiAjMWI5MGUyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZmllbGQtLW5hbWUtZmllbGQtZG93bmxvYWRzIC5maWVsZF9faXRlbXMgLmZpZWxkX19pdGVtIGFydGljbGUgLmZpZWxkLS1uYW1lLWZpZWxkLW1lZGlhLWZpbGUgLmZpZWxkX19pdGVtIGE6aG92ZXIge1xuICBjb2xvcjogI2UwMTA3NTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5maWVsZC0tbmFtZS1maWVsZC1kb3dubG9hZHMgLmZpZWxkX19pdGVtcyAuZmllbGRfX2l0ZW0gYXJ0aWNsZSAuZmllbGQtLW5hbWUtZmllbGQtbWVkaWEtZmlsZSAuZmllbGRfX2l0ZW0gYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMxYjkwZTI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5maWVsZC0tbmFtZS1maWVsZC1kb3dubG9hZHMgLmZpZWxkX19pdGVtcyAuZmllbGRfX2l0ZW0gYXJ0aWNsZSBzcGFuLmZpbGUtLWFwcGxpY2F0aW9uLXBkZjo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWFnZXMvSWNvbi1QREYuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC41O1xuICBtYXJnaW4tYm90dG9tOiAtMC4xMjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC4yNWVtO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbn1cblxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2Uge1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2IzYjNiMztcbiAgbWFyZ2luLXRvcDogMmVtO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC1zaXplOiAzLjV2dztcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMWI5MGUyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYWJjZC1ldmVudHMuaG9tZXBhZ2UtbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gIH1cbn1cblxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgLnZpZXdzLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgLnZpZXdzLXJvdzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgLnZpZXdzLXJvdyAuZmllbGQtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvSWNvbi1JbmZvLU91dGxpbmUuc3ZnKSB0b3Agbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNzVlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygwJSArIDAuMjVlbSk7XG4gIHBhZGRpbmc6IDAgMCAwIDEuNWVtO1xufVxuXG4uYWJjZC1ldmVudHMuaG9tZXBhZ2UtbWVzc2FnZSAudmlld3Mtcm93IHN2ZyB7XG4gIGZpbGw6IGZ1Y2hzaWE7XG59XG5cbi5hYmNkLWV2ZW50cy5ob21lcGFnZS1tZXNzYWdlIGEubGVhcm5fbGluazpsaW5rLFxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgYS5sZWFybl9saW5rOnZpc2l0ZWQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBjb2xvcjogIzkyNGI2ZjtcbiAgZGlzcGxheTogaW5oZXJpdDtcbn1cblxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgYS5sZWFybl9saW5rOmxpbms6aG92ZXIsXG4uYWJjZC1ldmVudHMuaG9tZXBhZ2UtbWVzc2FnZSBhLmxlYXJuX2xpbms6dmlzaXRlZDpob3ZlciB7XG4gIGNvbG9yOiAjZGU5OTI2O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5hYmNkLWV2ZW50cy5ob21lcGFnZS1tZXNzYWdlIGEubGVhcm5fbGluazpsaW5rLFxuICAuYWJjZC1ldmVudHMuaG9tZXBhZ2UtbWVzc2FnZSBhLmxlYXJuX2xpbms6dmlzaXRlZCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYWJjZC1ldmVudHMuaG9tZXBhZ2UtbWVzc2FnZSBhLmxlYXJuX2xpbms6bGluayxcbiAgLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2UgYS5sZWFybl9saW5rOnZpc2l0ZWQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIH1cbn1cblxuYm9keS5mcm9udHBhZ2Ugc2VjdGlvbiNjb250ZW50IGgxIHtcbiAgZm9udC1zaXplOiA2dnc7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYm9keS5mcm9udHBhZ2Ugc2VjdGlvbiNjb250ZW50IGgxIHtcbiAgICBmb250LXNpemU6IDR2dztcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGJvZHkuZnJvbnRwYWdlIHNlY3Rpb24jY29udGVudCBoMSB7XG4gICAgZm9udC1zaXplOiAyNTAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cblxuYm9keS5mcm9udHBhZ2Ugc2VjdGlvbiNjb250ZW50IHAge1xuICBmb250LXNpemU6IDR2dztcbiAgbGluZS1oZWlnaHQ6IDEuNjI1O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIGJvZHkuZnJvbnRwYWdlIHNlY3Rpb24jY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjI1O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGJvZHkuZnJvbnRwYWdlIHNlY3Rpb24jY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYyNTtcbiAgfVxufVxuXG5ib2R5LmZyb250cGFnZSAjbWFpbiAjY29udGVudCB7XG4gIHBhZGRpbmctYm90dG9tOiAyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYm9keS5mcm9udHBhZ2UgI21haW4gI2NvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYm9keS5mcm9udHBhZ2UgI21haW4gI2NvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiA0ZW07XG4gIH1cbn1cblxuLmhvbWVwYWdlLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ob21lcGFnZS1oZXJvIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaG9tZXBhZ2UtaGVybyAuaGVyby1pbm5lci1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ob21lcGFnZS1oZXJvIC5oZXJvLWlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDY2JTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaG9tZXBhZ2UtaGVybyAuaGVyby1pbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmhvbWVwYWdlLWhlcm8gLmhlcm8taW5uZXItY29udGFpbmVyIC5pbnRyby10ZXh0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDM5ZW07XG4gIHBhZGRpbmc6IDJlbSAxZW0gMWVtIDFlbTtcbn1cblxuLmhvbWVwYWdlLWhlcm8gLmhlcm8taW5uZXItY29udGFpbmVyIC5pbnRyby10ZXh0IHAge1xuICBmb250LXNpemU6IDd2dztcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgwLCAwLCAwLCAwLjkpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5ob21lcGFnZS1oZXJvIC5oZXJvLWlubmVyLWNvbnRhaW5lciAuaW50cm8tdGV4dCBwIHtcbiAgICBmb250LXNpemU6IDR2dztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaG9tZXBhZ2UtaGVybyAuaGVyby1pbm5lci1jb250YWluZXIgLmludHJvLXRleHQgcCB7XG4gICAgZm9udC1zaXplOiAzdnc7XG4gIH1cbn1cblxuLmhvbWVwYWdlLWhlcm8gLmhlcm8tYnJhbmRpbmctY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDF2dztcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmhvbWVwYWdlLWhlcm8gLmhlcm8tYnJhbmRpbmctY29udGFpbmVyIHtcbiAgICB3aWR0aDogNjYlO1xuICAgIHRvcDogMnZ3O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ob21lcGFnZS1oZXJvIC5oZXJvLWJyYW5kaW5nLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICB0b3A6IDJ2dztcbiAgfVxufVxuXG4uaG9tZXBhZ2UtaGVybyAuaGVyby1icmFuZGluZy1jb250YWluZXIgLmhlcm8tYnJhbmRpbmcge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDM5ZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5ob21lcGFnZS1oZXJvIC5oZXJvLWJyYW5kaW5nLWNvbnRhaW5lciBpbWcuaGVyby1sb2dvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOGVtO1xufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIGgzLFxuI2xvd2VyYmFubmVyd3JhcHBlciBoMyBhOmxpbmssXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIGgzIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAwIDAuNWVtIHJnYmEoMCwgMCwgMCwgMC45KSwgMCAwIDFlbSByZ2JhKDAsIDAsIDAsIDAuOCksIDAgMCAxLjVlbSByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtc2l6ZTogNnZ3O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgaDMsXG4gICNsb3dlcmJhbm5lcndyYXBwZXIgaDMgYTpsaW5rLFxuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIGgzIGE6dmlzaXRlZCB7XG4gICAgZm9udC1zaXplOiAxODAlO1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIGgzLFxuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIGgzIGE6bGluayxcbiAgI2xvd2VyYmFubmVyd3JhcHBlciBoMyBhOnZpc2l0ZWQge1xuICAgIGZvbnQtc2l6ZTogMTgwJTtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gIH1cbn1cblxuI2xvd2VyYmFubmVyd3JhcHBlciBwIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgwLCAwLCAwLCAwLjkpLCAwIDAgMWVtIHJnYmEoMCwgMCwgMCwgMC44KSwgMCAwIDEuNWVtIHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC1zaXplOiA0dnc7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDE0MCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgI2xvd2VyYmFubmVyd3JhcHBlciBwIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgfVxufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5saWdodCB7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuI2xvd2VyYmFubmVyd3JhcHBlciAubGlnaHQgaDMsXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5saWdodCBoMyBhOmxpbmssXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5saWdodCBoMyBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwLjVlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSksIDAgMCAxZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5saWdodCBwIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpLCAwIDAgMWVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuI2xvd2VyYmFubmVyd3JhcHBlciAubW9yZS1saW5rIGE6bGluayxcbiNsb3dlcmJhbm5lcndyYXBwZXIgLm1vcmUtbGluayBhOnZpc2l0ZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogMCAwIDAuNWVtIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgcGFkZGluZzogMC41ZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIGZvbnQtc2l6ZTogNHZ3O1xuICBib3gtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgwLCAwLCAwLCAwLjUpLCAwIDAgMWVtIHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5tb3JlLWxpbmsgYTpsaW5rLFxuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5tb3JlLWxpbmsgYTp2aXNpdGVkIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5tb3JlLWxpbmsgYTpsaW5rLFxuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5tb3JlLWxpbmsgYTp2aXNpdGVkIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5tb3JlLWxpbmsgYTpob3ZlciB7XG4gIGNvbG9yOiAjZGU5OTI2O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGU5OTI2O1xufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5jdGEtYmFubmVyIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jbG93ZXJiYW5uZXJ3cmFwcGVyIC5jdGEtYmFubmVyIC5jdGEtaGFsZi1lbGVtZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgI2xvd2VyYmFubmVyd3JhcHBlciAuY3RhLWJhbm5lciAuY3RhLWhhbGYtZWxlbWVudCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5jdGEtYmFubmVyIC5jdGEtaGFsZi1lbGVtZW50IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbiNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1oYWxmLWVsZW1lbnQgLnZpZXdzLWZpZWxkLWZpZWxkLWxhbmRpbmctcGFnZS1oZWFkZXItaW1hZ2UgLmZpZWxkLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5jdGEtYmFubmVyIC5jdGEtaGFsZi1lbGVtZW50IC52aWV3cy1maWVsZC1maWVsZC1sYW5kaW5nLXBhZ2UtaGVhZGVyLWltYWdlIC5maWVsZC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxNmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgI2xvd2VyYmFubmVyd3JhcHBlciAuY3RhLWJhbm5lciAuY3RhLWhhbGYtZWxlbWVudCAudmlld3MtZmllbGQtZmllbGQtbGFuZGluZy1wYWdlLWhlYWRlci1pbWFnZSAuZmllbGQtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTZlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbiNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1oYWxmLWVsZW1lbnQgLmN0YS1oYWxmLWVsZW1lbnQtaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZ3JpZDtcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1oYWxmLWVsZW1lbnQgLmN0YS1oYWxmLWVsZW1lbnQtaW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1oYWxmLWVsZW1lbnQgLmN0YS1oYWxmLWVsZW1lbnQtaW5uZXIge1xuICAgIG1heC13aWR0aDogMzllbTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1oYWxmLWVsZW1lbnQudmlld3Mtcm93LnZpZXdzLXJvdy1sYXN0IC5jdGEtaGFsZi1lbGVtZW50LWlubmVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbiNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1mdWxsLWVsZW1lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1mdWxsLWVsZW1lbnQge1xuICAgIG1heC1oZWlnaHQ6IDE2ZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAjbG93ZXJiYW5uZXJ3cmFwcGVyIC5jdGEtYmFubmVyIC5jdGEtZnVsbC1lbGVtZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxNmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuI2xvd2VyYmFubmVyd3JhcHBlciAuY3RhLWJhbm5lciAuY3RhLWZ1bGwtZWxlbWVudCAuY3RhLWZ1bGwtZWxlbWVudC1pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFlbSAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1pdGVtczogZW5kO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICNsb3dlcmJhbm5lcndyYXBwZXIgLmN0YS1iYW5uZXIgLmN0YS1mdWxsLWVsZW1lbnQgLmN0YS1mdWxsLWVsZW1lbnQtaW5uZXIge1xuICAgIG1heC13aWR0aDogODBlbTtcbiAgfVxufVxuXG5hcnRpY2xlIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIHtcbiAgbWFyZ2luLXRvcDogMmVtO1xufVxuXG5hcnRpY2xlIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9fbGFiZWwge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMWI5MGUyO1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuXG5hcnRpY2xlIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9faXRlbXMge1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuYXJ0aWNsZSAuZmllbGQtLXR5cGUtZW50aXR5LXJlZmVyZW5jZSAuZmllbGRfX2l0ZW1zIC5maWVsZF9faXRlbSBhOmxpbmssXG5hcnRpY2xlIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9faXRlbXMgLmZpZWxkX19pdGVtIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTAxMDc1O1xuICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbn1cblxuYXJ0aWNsZSAuZmllbGQtLXR5cGUtZW50aXR5LXJlZmVyZW5jZSAuZmllbGRfX2l0ZW1zIC5maWVsZF9faXRlbSBhOmxpbms6aG92ZXIsXG5hcnRpY2xlIC5maWVsZC0tdHlwZS1lbnRpdHktcmVmZXJlbmNlIC5maWVsZF9faXRlbXMgLmZpZWxkX19pdGVtIGE6dmlzaXRlZDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogIzkyNGI2Zjtcbn1cblxuLnZpZXctdGF4b25vbXktdGVybSBhcnRpY2xlIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4udmlldy10YXhvbm9teS10ZXJtIGFydGljbGUgaDIge1xuICBmb250LXNpemU6IDE0MCU7XG4gIGNvbG9yOiAjZTAxMDc1O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnZpZXctdGF4b25vbXktdGVybSBhcnRpY2xlIGgyIGEge1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuLnZpZXctdGF4b25vbXktdGVybSBhcnRpY2xlIGgyIGE6aG92ZXIge1xuICBjb2xvcjogI2UwMTA3NTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi52aWV3LXRheG9ub215LXRlcm0gYXJ0aWNsZSBoMiBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuLnZpZXctdGF4b25vbXktdGVybSBhcnRpY2xlIGNvbnRlbnQgcCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi52aWV3LXRheG9ub215LXRlcm0gLmZlZWQtaWNvbnMge1xuICBtYXJnaW4tdG9wOiAyZW07XG59XG5cbi52aWV3LXRheG9ub215LXRlcm0gLmZlZWQtaWNvbnMgYSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMxYjkwZTI7XG59XG5cbi52aWV3LXRheG9ub215LXRlcm0gLmZlZWQtaWNvbnMgYTpob3ZlciB7XG4gIGNvbG9yOiAjZTAxMDc1O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnZpZXctdGF4b25vbXktdGVybSAuZmVlZC1pY29ucyBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzFiOTBlMjtcbn1cblxuYm9keS5wYXRoLS11c2VyIC5ibG9jay1wYWdlLXRpdGxlLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVzZXJfcHJvZmlsZV9wYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udXNlcl9wcm9maWxlX3BhZ2UgLmJpb19waG90byBpbWcge1xuICB3aWR0aDogMTJlbTtcbiAgYm9yZGVyOiA2cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMmVtIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgbWFyZ2luOiAyZW0gMDtcbn1cblxuLnVzZXJfcHJvZmlsZV9wYWdlIC5iaW9fbmFtZSBoMiB7XG4gIGNvbG9yOiAjMWI5MGUyO1xufVxuXG4udXNlcl9wcm9maWxlX3BhZ2UgLmZpZWxkLS1uYW1lLWZpZWxkLWZpcnN0LW5hbWUsXG4udXNlcl9wcm9maWxlX3BhZ2UgLmZpZWxkLS1uYW1lLWZpZWxkLWxhc3QtbmFtZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnVzZXJfcHJvZmlsZV9wYWdlIC5iaW9fdGl0bGUgaDQge1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzUwNTA1MDtcbn1cblxuLnVzZXJfcHJvZmlsZV9wYWdlIC5iaW9fYmlvZ3JhcGh5IHtcbiAgcGFkZGluZy1ib3R0b206IDRlbTtcbn1cblxuLnN0YWZmLWxpc3RpbmdzIC52aWV3LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLnN0YWZmLWxpc3RpbmdzIC52aWV3LWhlYWRlciBhOmxpbmssXG4uc3RhZmYtbGlzdGluZ3MgLnZpZXctaGVhZGVyIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjMWI5MGUyO1xufVxuXG4uc3RhZmYtbGlzdGluZ3MgLnZpZXctaGVhZGVyIGE6bGluazpob3Zlcixcbi5zdGFmZi1saXN0aW5ncyAudmlldy1oZWFkZXIgYTp2aXNpdGVkOmhvdmVyIHtcbiAgY29sb3I6ICNlMDEwNzU7XG59XG5cbi5zdGFmZi1saXN0aW5ncyAudmlldy1jb250ZW50IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuICBncmlkLXJvdy1nYXA6IDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnN0YWZmLWxpc3RpbmdzIC52aWV3LWNvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnN0YWZmLWxpc3RpbmdzIC52aWV3LWNvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gIH1cbn1cblxuLnN0YWZmLWxpc3RpbmdzIC52aWV3LWNvbnRlbnQgLnVzZXItbGlzdGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMWVtO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWNvbHVtbjogMSAvIGluaGVyaXQ7XG4gIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xufVxuXG4uc3RhZmYtbGlzdGluZ3MgLnZpZXctY29udGVudCAudXNlci1saXN0aW5nIC52aWV3cy1maWVsZC11c2VyLXBpY3R1cmUgYTpsaW5rIGltZyxcbi5zdGFmZi1saXN0aW5ncyAudmlldy1jb250ZW50IC51c2VyLWxpc3RpbmcgLnZpZXdzLWZpZWxkLXVzZXItcGljdHVyZSBhOnZpc2l0ZWQgaW1nIHtcbiAgd2lkdGg6IDc1JTtcbiAgYm9yZGVyOiA2cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMmVtIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cblxuLnN0YWZmLWxpc3RpbmdzIC52aWV3LWNvbnRlbnQgLnVzZXItbGlzdGluZyAudmlld3MtZmllbGQtdXNlci1waWN0dXJlIGE6bGluayBpbWc6aG92ZXIsXG4uc3RhZmYtbGlzdGluZ3MgLnZpZXctY29udGVudCAudXNlci1saXN0aW5nIC52aWV3cy1maWVsZC11c2VyLXBpY3R1cmUgYTp2aXNpdGVkIGltZzpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLnN0YWZmLWxpc3RpbmdzIC52aWV3LWNvbnRlbnQgLnVzZXItbGlzdGluZyBoNCB7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xufVxuXG4uc3RhZmYtbGlzdGluZ3MgLnZpZXctY29udGVudCAudXNlci1saXN0aW5nIC52aWV3cy1maWVsZC1maWVsZC1maXJzdC1uYW1lIGg0IHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5zdGFmZi1saXN0aW5ncyAudmlldy1jb250ZW50IC51c2VyLWxpc3RpbmcgLnZpZXdzLWZpZWxkLWZpZWxkLWpvYi10aXRsZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8vIENvbG9ycyAvLy8vLy8vLy8vLy8vLy9cbi8vIGNvbW1vbiBjb2xvcnNcbiR3aGl0ZTogI2ZmZjtcbiRyZWQ6ICNlZTY5NmM7XG4keWVsbG93OiAjZThlZDU3O1xuLy8gYiZ3IGNvbG9ycyBhcyBwbGFjZWhvbGRlcnNcbiRibGs6ICMwMDA7XG4vLyRkYXJrLWdyYXk6IGxpZ2h0ZW4oJGJsaywgMjAlKTtcbiRtZWQtZ3JheTogbGlnaHRlbigkYmxrLCA0MCUpO1xuJGxpZ2h0LWdyYXk6IGxpZ2h0ZW4oJGJsaywgNzAlKTtcbiRsaWdodGVyLWdyYXk6IGxpZ2h0ZW4oJGJsaywgOTAlKTtcbiRvZmYtd2hpdGU6IGxpZ2h0ZW4oJGJsaywgOTclKTtcbi8vIEFCQ0QtU3BlY2lmaWMgQ29sb3JzXG4kZGFyay10ZWFsOiByZ2IoMzEsMTE2LDk1KTtcbiR2aW9sZXQ6IHJnYigyMjQsMTYsMTE3KTtcbiRkYXJrLWdyYXk6IHJnYig4MCw4MCw4MCk7XG4kb3JhbmdlOiByZ2IoMjIyLDE1MywzOCk7XG4kcGx1bTogcmdiKDE0Niw3NSwxMTEpO1xuJHNreWJsdWU6IHJnYigyNywxNDQsMjI2KTtcbiRsaW1lOiByZ2IoMTk1LDIyMiwxNDIpO1xuXG4vLyBBY2N1cmF0ZSBDb2xvciBUaW50cyBhbmQgVG9uZXMsIHZzLiBIU0xcbi8vLyBTbGlnaHRseSBsaWdodGVuIGEgY29sb3Jcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGNvbG9yIHRvIHRpbnRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcmNlbnRhZ2UgLSBwZXJjZW50YWdlIG9mIGAkY29sb3JgIGluIHJldHVybmVkIGNvbG9yXG4vLy8gQHJldHVybiB7Q29sb3J9XG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50YWdlKSB7XG4gIEByZXR1cm4gbWl4KHdoaXRlLCAkY29sb3IsICRwZXJjZW50YWdlKTtcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbiBhIGNvbG9yXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBjb2xvciB0byBzaGFkZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyY2VudGFnZSAtIHBlcmNlbnRhZ2Ugb2YgYCRjb2xvcmAgaW4gcmV0dXJuZWQgY29sb3Jcbi8vLyBAcmV0dXJuIHtDb2xvcn1cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50YWdlKSB7XG4gIEByZXR1cm4gbWl4KGJsYWNrLCAkY29sb3IsICRwZXJjZW50YWdlKTtcbn1cblxuLy8gVXRpbGl0eSBjb2xvciB2YXJpYWJsZXMgLy8vLy8vLy8vLy8vLy8vXG4kaGVhZGluZzogJGRhcmstZ3JheTtcbiRsaW5rOiAkbWVkLWdyYXk7XG4vLyRsaW5rOiAkc2t5Ymx1ZTtcblxuLy8gRm9udHMgLy8vLy8vLy8vLy8vLy8vXG4kb3BlbnNhbnM6ICdPcGVuIFNhbnMnO1xuJHBvcHBpbnM6ICdQb3BwaW5zJztcbiRtb250c2VycmF0OiAnTW9udHNlcnJhdCcsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4vLyRoZWFkaW5nX2ZvbnQ6ICRvcGVuc2FucztcbiRoZWFkaW5nX2ZvbnQ6ICRtb250c2VycmF0O1xuLy8kYm9keV9mb250OiAkcG9wcGlucztcbiRib2R5X2ZvbnQ6ICRtb250c2VycmF0O1xuXG4vLyBTdXN5IGNvbmZpZyAvLy8vLy8vLy8vLy8vLy9cbi8vIENvbW1lbnRlZCBvdXQgZHVlIHRvIENTUy1HcmlkIExheW91dHNcbi8vICRzdXN5OiAoXG4vLyAgIGNvbHVtbnM6IDEyLCAvLyBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgaW4geW91ciBncmlkXG4vLyAgIGd1dHRlcnM6IDEvNCwgLy8gVGhlIHNpemUgb2YgYSBndXR0ZXIgaW4gcmVsYXRpb24gdG8gYSBzaW5nbGUgY29sdW1uXG4vLyApO1xuXG4vLyBCcmVha3BvaW50cyAmIE1RJ3MgLy8vLy8vLy8vLy8vLy8vXG4kc2NyZWVuOiBcIm9ubHkgc2NyZWVuXCIgIWRlZmF1bHQ7XG4kc21hbGwtbWF4OiA3NjdweCAhZGVmYXVsdDtcbiRtZWRpdW0tbWF4OiAxMDIzcHggIWRlZmF1bHQ7XG4kc21hbGw6ICRzY3JlZW4gbWF4LXdpZHRoICRzbWFsbC1tYXg7XG4kdXAtc206ICRzY3JlZW4gJHNtYWxsLW1heCArIDE7XG4kbWVkaXVtOiAkc2NyZWVuICRzbWFsbC1tYXggKyAxICRtZWRpdW0tbWF4O1xuJGxhcmdlOiAkc2NyZWVuICRtZWRpdW0tbWF4ICsgMTtcblxuLy8gRVhBTVBMRSBGT1IgTVEgUkVGRVJFTkNFUyA9PlxuXG4vKlxuYm9keSB7XG4gIGJhY2tncm91bmQ6IGdyZWVuICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNtYWxsKSAgeyBiYWNrZ3JvdW5kOiBvcmFuZ2UgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHsgYmFja2dyb3VuZDogdGVhbCAhaW1wb3J0YW50OyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSAgeyBiYWNrZ3JvdW5kOiBvcmNoaWQgIWltcG9ydGFudDsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkgIHsgYmFja2dyb3VuZDogYWxpY2VibHVlICFpbXBvcnRhbnQ7IH1cbn1cbiovXG5cbi8vIEV4YW1wbGUgTWl4aW5zIC8vLy8vLy8vLy8vLy8vL1xuQG1peGluIG9wYWMtY29sb3IoJHIsICRnLCAkYiwgJHBlcnRjKSB7XG4gIGJhY2tncm91bmQ6IHJnYigkciwgJGcsICRiKTtcbiAgYmFja2dyb3VuZDogcmdiYSgkciwgJGcsICRiLCAkcGVydGMpO1xufVxuXG5AbWl4aW4gcmVnaW9uLXNwYWNlcigkY29sb3IsICRkaXJlY3Rpb246IGJvdHRvbSkge1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkICRjb2xvcjtcblxuICBAaWYgJGRpcmVjdGlvbiA9PSB0b3Age1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVycmFkaXVzKCRweDogNXB4KSB7XG4gIGJvcmRlci1yYWRpdXM6ICRweDtcbiAgLy8gYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cbi8vIEV4YW1wbGUgUGxhY2Vob2xkZXJzIC8vLy8vLy8vLy8vLy8vL1xuLm5vLXVsLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbjogMnB4O1xuICB9XG59XG5cbi50bXAtc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAwIHJnYmEoJG1lZC1ncmF5LCAxKTtcbn1cblxuLnRtcC1zaGFkb3ctbm9uZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ibG9ja2VkLXN0eWxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICBwYWRkaW5nOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG5cbiAgQGV4dGVuZCAudG1wLXNoYWRvdztcbn1cblxuLy8gQmFzZSBTdHlsaW5nXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogJGRhcmstdGVhbDtcbiAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IC8vIEltcHJvdmVzIHR5cG9ncmFwaHkgcGVyZm9ybWFuY2Ugb24gaU9TXG4gIGZvbnQtZmFtaWx5OiAkbW9udHNlcnJhdDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLy8gQ2xlYXJmaXggSGFja1xuLmdyb3VwOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuIiwiLy8gQmFzZSBIVE1MIEVsZW1lbnRzLlxuaHRtbCxcbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGJvZHlfZm9udDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxNjUlO1xufVxuLy8gQmFzZSBIZWFkaW5nc1xuLy9cbi8vIE1hcmt1cDogaGVhZGxpbmVzLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogYmFzZS5oZWFkbGluZXNcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIC8vY29sb3I6ICRoZWFkaW5nO1xuICAvL2ZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZ19mb250O1xuICBwYWRkaW5nOiAwIDAgMC4zZW07XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDI1MCU7XG4gIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICBjb2xvcjogJHZpb2xldDtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDIxMCU7XG4gIGxpbmUtaGVpZ2h0OiAxNDUlO1xuICAkY29sb3I6IHNreWJsdWU7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxODAlO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbiAgY29sb3I6ICRza3libHVlO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMTYwJTtcbiAgbGluZS1oZWlnaHQ6IDE0NSU7XG4gIGNvbG9yOiAkc2t5Ymx1ZTtcbn1cblxuaDUsXG5oNiB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gIGNvbG9yOiAkdmlvbGV0O1xufVxuXG5ib2R5IC5tZW51LWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luOiAwO1xufVxuLy8gQmFzZSBUZXh0XG4vL1xuLy8gTWFya3VwOiB0ZXh0LnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogYmFzZS50ZXh0XG5hLFxuYTpsaW5rLFxuYTp2aXNpdGVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGxpbms7XG4gIGN1cnNvcjogaW5oZXJpdDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4vLyBCb2R5IENvbnRlbnQgVGV4dCBMaW5rc1xuLmNvbnRlbnQge1xuICBhLFxuICBhOmxpbmssXG4gIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRza3libHVlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHZpb2xldDtcbiAgICB9XG4gIH1cbn1cblxuXG5ib2R5IHAge1xuICBtYXJnaW46IDNweCAwIDEwcHg7XG59XG5cbi8vIFJlc3BvbnNpdmUgSW1hZ2VzXG5pbWcsXG5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gUmVtb3ZlcyBsaW5lLWhlaWdodCBmcm9tIGJvdHRvbSBvZiByZXNwb25zaXZlIGltYWdlcy5cbn1cblxuLy8gQmxvY2txdW90ZSAmIFByZVxuLy9cbi8vIE1hcmt1cDogYmxvY2txdW90ZS50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGJhc2UuYmxvY2txdW90ZVxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJG9mZi13aGl0ZTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gIGNvZGUge1xuICAgIGJvcmRlcjogMXB4IGRvdHRlZCAkZGFyay1ncmF5O1xuICAgIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gICAgcGFkZGluZzogMnB4IDlweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDg1JTtcbiAgfVxufVxuLy8gTGlzdCBUeXBlc1xuLy9cbi8vIE1hcmt1cDogbGlzdHMudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBiYXNlLmxpc3RzXG5cbi8vIE9MIGl0ZW1zXG5vbCB7XG4gIHBhZGRpbmc6IDAgMCAwIDFlbTsgIC8vIFNldHMgZWxlbWVudCB3aXRoaW4gY29udGFpbmVyXG4gIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgbGkge1xuICAgIG1hcmdpbjogNHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5vbCBvbCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIyLjVweDtcbn1cblxub2wgb2wgb2wge1xuICBwYWRkaW5nOiAwIDAgMCAyMi41cHg7XG59XG5cbi8vIFVMIGl0ZW1zXG51bCB7XG4gIHBhZGRpbmc6IDAgMCAwIDFlbTsgLy8gU2V0cyBlbGVtZW50IHdpdGhpbiBjb250YWluZXJcbiAgbWFyZ2luOiAwIDAgMTBweDtcblxuICBsaSB7XG4gICAgbWFyZ2luOiA0cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbnVsIHVsIHtcbiAgcGFkZGluZzogMCAwIDAgMjIuNXB4O1xufVxuXG51bCB1bCB1bCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIyLjVweDtcbn1cbi8vIFRhYmxlc1xuLy9cbi8vIE1hcmt1cDogdGFibGUudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBiYXNlLnRhYmxlXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIHRoIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTtcbiAgICBwYWRkaW5nOiA0cHggNXB4O1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG9mZi13aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG5cbiAgdGJvZHkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRvZmYtd2hpdGU7XG4gIH1cblxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtd2hpdGU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvZmYtd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRvZmYtd2hpdGU7XG4gIH1cbn1cblxuLy8gSW1hZ2UgU2V0dXBzIGZvciBNZWRpYSBNYW5hZ2VkIGFuZC9vciBjYXB0aW9uZWQgaW1hZ2VzXG5cbi8vIFRoaXMgb3ZlcnJpZGVzIHJlc2V0LnNjc3NcbmZpZ3VyZVtyb2xlPVwiZ3JvdXBcIl0ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbn1cblxuLy8gRnVsbCBXaWR0aCBTdHlsaW5nXG5hcnRpY2xlLm1lZGlhX2ltYWdlX2Z1bGxfd2lkdGgge1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbn1cblxuYXJ0aWNsZS5tZWRpYV9pbWFnZV9mdWxsX3dpZHRoOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlcyB0b3AgbWFyZ2luIGZvciBmaXJzdCBpdGVtIGluIGxheW91dC5cbn1cblxuLy8gSGFsZiBXaWR0aCBTdHlsaW5nXG5hcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9tYWluX2hhbGYsXG5hcnRpY2xlLmFsaWduLWNlbnRlci5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDJlbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogNGVtO1xuICB9XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSl7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiA0ZW07XG4gIH1cbn1cblxuYXJ0aWNsZS5hbGlnbi1jZW50ZXIubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbmFydGljbGUuYWxpZ24tY2VudGVyLm1lZGlhX2ltYWdlX2hhbGZfd2lkdGggKyBmaWdjYXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIFxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuICAgIHdpZHRoOiA1MCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKXtcbiAgICB3aWR0aDogNTAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cbn1cblxuYXJ0aWNsZS5hbGlnbi1yaWdodC5tZWRpYV9pbWFnZV9tYWluX2hhbGYsXG5hcnRpY2xlLmFsaWduLXJpZ2h0Lm1lZGlhX2ltYWdlX2hhbGZfd2lkdGgge1xuICBtYXJnaW4tdG9wOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lOyBcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDRlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDRlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbmFydGljbGUuYWxpZ24tcmlnaHQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbmFydGljbGUuYWxpZ24tcmlnaHQubWVkaWFfaW1hZ2VfaGFsZl93aWR0aCArIGZpZ2NhcHRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKXsgXG4gICAgd2lkdGg6IDQ1JTtcbiAgICBtYXJnaW4tbGVmdDogNGVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKXsgXG4gICAgd2lkdGg6IDQ1JTtcbiAgICBtYXJnaW4tbGVmdDogNGVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG5hcnRpY2xlLmFsaWduLWxlZnQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmLFxuYXJ0aWNsZS5hbGlnbi1sZWZ0Lm1lZGlhX2ltYWdlX2hhbGZfd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKXtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1yaWdodDogNGVtO1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSl7XG4gICAgd2lkdGg6IDQ1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRlbTtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICB9XG59XG5cblxuLy8gVGhpcyBvbmx5IGNvbnRyb2xzIHRoZSBmaWdjYXB0aW9uIGVsZW1lbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIFwiQ2FwdGlvbiBJbWFnZVwiIGZlYXR1cmUgaXMgZW5hYmxlZCBpbiB0aGUgV1lTSVdZRyBlZGl0b3IuXG5hcnRpY2xlLmFsaWduLWxlZnQubWVkaWFfaW1hZ2VfbWFpbl9oYWxmICsgZmlnY2FwdGlvbixcbmFydGljbGUuYWxpZ24tbGVmdC5tZWRpYV9pbWFnZV9oYWxmX3dpZHRoICsgZmlnY2FwdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IC0xZW07IC8vIEZpeGVzIGxvd2VyIHNwYWNpbmcgaXNzdWVzIHdoZW4gY2FwdGlvbnMgYXJlIHVzZWQuXG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKXtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1hcmdpbi1yaWdodDogNGVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbWFyZ2luLXJpZ2h0OiA0ZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8gR2VuZXJhbCBjYXB0aW9uIHNwYWNpbmdcbmZpZ2NhcHRpb24ge1xuICBtYXJnaW46IDAuMjVlbSAwIDAuNWVtIDA7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiYm9keSB7XG4gIGJ1dHRvbi50YWJsZWRyYWctdG9nZ2xlLXdlaWdodCB7XG4gICAgbWFyZ2luOiA1cHg7XG4gIH1cblxuICB0ZC5maWVsZC1tdWx0aXBsZS1kcmFnIHtcbiAgICBtYXgtd2lkdGg6IDMwcHg7XG4gIH1cblxuICAuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICB1bC5saW5rcy5pbmxpbmUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgbGkge1xuICAgICAgQGV4dGVuZCAubm8tdWwtbGlzdDtcblxuICAgICAgcGFkZGluZzogMCA5cHggM3B4IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbmZvcm0gLmZvcm0taXRlbSB7XG4gIHBhZGRpbmc6IDAgMCA3cHg7XG5cbiAgJi5mb3JtLXR5cGUtdGV4dGFyZWEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbmZvcm0gLmRlc2NyaXB0aW9uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IDkwJTtcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xufVxuXG4ubGF5b3V0LW5vZGUtZm9ybSAubGF5b3V0LXJlZ2lvbi1ub2RlLXNlY29uZGFyeSA+IC5mb3JtLXdyYXBwZXIge1xuICBAZXh0ZW5kIC5ibG9ja2VkLXN0eWxlO1xuXG4gIGgzLFxuICBoNCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG59XG5cbi5sYXlvdXQtbm9kZS1mb3JtIC5sYXlvdXQtcmVnaW9uLW5vZGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmLXdoaXRlO1xufVxuXG5mb3JtIGRldGFpbHMuanMtZm9ybS13cmFwcGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUsXG4uanMgaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmpzW2Rpcj1cInJ0bFwiXSBpbnB1dC5mb3JtLWF1dG9jb21wbGV0ZSxcbi5qc1tkaXI9XCJydGxcIl0gaW5wdXQuZm9ybS1hdXRvY29tcGxldGUudWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4iLCIvLyBGb3Jtc1xuLy8gXG4vLyBCYXNlIGZvcm0gZWxlbWVudHMuXG4vL1xuLy8gTWFya3VwOiBmb3JtX2h0bWwudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBmb3JtLmNvbW1vblxuZm9ybSB7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkZGFyay1ncmF5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbjogMCAwIDAuMTg3NWVtO1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG50ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0ZXItZ3JheTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIG1hcmdpbjogMCAwIDFlbTtcbiAgcGFkZGluZzogMC41ZW07XG4gIHdpZHRoOiBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNDVzLCBib3JkZXItY29sb3IgMC40NXMgZWFzZS1pbi1vdXQ7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG50ZXh0YXJlYTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwiZmlsZVwiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbnNlbGVjdCB7XG4gIG1hcmdpbjogMCAwIDFlbTtcbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuZmllbGRzZXQge1xuICBib3JkZXI6IHNvbGlkIDFweCAkbGlnaHQtZ3JheTtcbiAgcGFkZGluZzogMS4yNWVtO1xuICBtYXJnaW46IDEuMTI1ZW0gMDtcbn1cblxuZmllbGRzZXQgbGVnZW5kIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDAgMC4xODc1ZW07XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVlbTtcbn1cbi8vIGJ1dHRvbnMgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIEBpbmNsdWRlIGJvcmRlcnJhZGl1cygpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgcGFkZGluZzogNXB4IDExcHg7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gIGNvbG9yOiAkbWVkLWdyYXk7XG5cbiAgQGV4dGVuZCAudG1wLXNoYWRvdztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRlci1ncmF5O1xuICB9XG59XG4vLyBFcnJvciBjb25kaXRpb25zIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5lcnJvcixcbi5lcnJvciB0ZXh0YXJlYSxcbi5lcnJvciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICRyZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk4LCAxNSwgMTksIDAuMSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5lcnJvciBpbnB1dDpmb2N1cyxcbi5lcnJvciB0ZXh0YXJlYTpmb2N1cyxcbi5lcnJvciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO1xuICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xufVxuXG4uZXJyb3IgbGFiZWwsXG4uZXJyb3IgbGFiZWwuZXJyb3Ige1xuICBjb2xvcjogJHJlZDtcbn1cblxuLmVycm9yID4gc21hbGwsXG4uZXJyb3Igc21hbGwuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4zNzVlbSAwLjI1ZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kOiAkcmVkO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmVycm9yIHNwYW4uZXJyb3ItbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5pbnB1dC5lcnJvcixcbnRleHRhcmVhLmVycm9yIHtcbiAgYm9yZGVyLWNvbG9yOiAkcmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5OCwgMTUsIDE5LCAwLjEpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5pbnB1dC5lcnJvcjpmb2N1cyxcbnRleHRhcmVhLmVycm9yOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTtcbiAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JheTtcbn1cblxuLmVycm9yIHNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTgsIDE1LCAxOSwgMC4xKTtcbn1cblxuLmVycm9yIHNlbGVjdDpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICRvZmYtd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG59XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICRyZWQ7XG59XG4vLyBGb3JtIEhUTUw1XG4vL1xuLy8gTWFya3VwOiBmb3JtX2h0bWw1LnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogZm9ybS5odG1sNVxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodGVyLWdyYXk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBtYXJnaW46IDAgMCAxZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBoZWlnaHQ6IDIuMzEyNWVtO1xuICB3aWR0aDogYXV0bztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjQ1cywgYm9yZGVyLWNvbG9yIDAuNDVzIGVhc2UtaW4tb3V0O1xufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggJGxpZ2h0LWdyYXk7XG4gIGJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmZvcm0gYnV0dG9uLFxuZm9ybSBpbnB1dCB7XG4gIC8vIHNpbXBsZSB0cmFuc2l0aW9ucyAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IGF1dG87XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgfVxufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJpbWFyeSBDb250YWluZXIgUnVsZXMgLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uY29nLS1tcSB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcig4MGVtKTtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG59XG5cbi5jb2ctLW1xLm1xLW1haW4ge1xuXHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG59XG5cbiNtYWlud3JhcHBlciB7XG5cdGJhY2tncm91bmQ6ICRsaW1lO1xufVxuXG4jbWFpbiB7XG5cdC8vYmFja2dyb3VuZDogJHdoaXRlO1xuXG5cdCNjb250ZW50IHtcblx0XHRwYWRkaW5nLXRvcDogMmVtOyAvLyBTZXRzIHNwYWNpbmcgZm9yIHRvcCBvZiBjb250ZW50IGFyZWFcblx0XHRwYWRkaW5nLWJvdHRvbTogNGVtOyAvLyBTZXRzIHNwYWNpbmcgZm9yIGJvdHRvbSBvZiBjb250ZW50IGFyZWFcblx0fVxufVxuXG4vLyBDU1MgR3JpZCBDb250YWluZXJzXG4uZ3JpZC1jb250YWluZXIsXG4ubXEtbWFpbixcbi5yZWdpb24tYnJhbmRpbmcsXG4ubXEtZm9vdGVyIHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cdFx0cGFkZGluZzogMCAyMHB4IDAgMjBweDtcblx0XHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSl7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xuXHRcdHBhZGRpbmc6IDAgMjBweCAwIDIwcHg7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHR9XG5cdCBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG5cdFx0cGFkZGluZzogMCAyMHB4IDAgMjBweDtcblx0XHRncmlkLWNvbHVtbi1nYXA6IDIwcHg7XG5cdH1cbn1cblxuLm1xLWJyYW5kaW5nIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm1xLWhlYWRlciB7XG5cdG1hcmdpbjogMDtcbn1cblxuLm1xLW1haW4ge1xuXHRtYXJnaW46IDAgYXV0bztcbn1cblxuLy8gU2V0cyBzcGFuIG9mIHRoaXMgY2hpbGQgZWxlbWVudFxuLy8gVHVybnMgb2ZmIHBhZGRpbmcgdmFsdWVzIGZvciByZWdpb24gZm9vdGVyLCBzaW5jZSBpdCdzIGluc2lkZSAubXEtZm9vdGVyXG4ucmVnaW9uLWZvb3RlciB7XG5cdHBhZGRpbmc6IDA7XG5cdGdyaWQtY29sdW1uOiAxIC8gc3BhbiA0O1xuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuXHRcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiA4O1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKXtcblx0XHRncmlkLWNvbHVtbjogMSAvIHNwYW4gMTI7XG5cdH1cbn0iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCIvLyBDb250YWluZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09PT09XG5cbi8vIENvbnRhaW5lciBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgY29udGFpbmVyIGVsZW1lbnRcbi8vIC0gWyRsYXlvdXRdICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBjb250YWluZXIoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgICAgOiAkbGF5b3V0O1xuICAkbGF5b3V0ICAgICA6IHBhcnNlLWdyaWQoJGxheW91dCk7XG5cbiAgJF93aWR0aCAgICAgOiBnZXQtY29udGFpbmVyLXdpZHRoKCRsYXlvdXQpO1xuICAkX2p1c3RpZnkgICA6IHBhcnNlLWNvbnRhaW5lci1wb3NpdGlvbihzdXN5LWdldChjb250YWluZXItcG9zaXRpb24sICRsYXlvdXQpKTtcbiAgJF9wcm9wZXJ0eSAgOiBpZihzdXN5LWdldChtYXRoLCAkbGF5b3V0KSA9PSBzdGF0aWMsIHdpZHRoLCBtYXgtd2lkdGgpO1xuXG4gICRfYm94ICAgICAgIDogc3VzeS1nZXQoYm94LXNpemluZywgJGxheW91dCk7XG5cbiAgQGlmICRfYm94IHtcbiAgICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRfYm94KSk7XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoY29udGFpbmVyLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGZsb2F0LWNvbnRhaW5lcigkX3dpZHRoLCAkX2p1c3RpZnksICRfcHJvcGVydHkpO1xuICBAaW5jbHVkZSBzaG93LWdyaWQoJGxheW91dCk7XG59XG5cbi8vIENvbnRhaW5lciBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGNvbnRhaW5lciB3aWR0aFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0OiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICBAcmV0dXJuIGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG59XG5cbi8vIEdldCBDb250YWluZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB0aGUgY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XTogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGdldC1jb250YWluZXItd2lkdGgoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGxheW91dCAgICAgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgJF93aWR0aCAgICAgICAgIDogc3VzeS1nZXQoY29udGFpbmVyLCAkbGF5b3V0KTtcbiAgJF9jb2x1bW4td2lkdGggIDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkbGF5b3V0KTtcbiAgJF9tYXRoICAgICAgICAgIDogc3VzeS1nZXQobWF0aCwgJGxheW91dCk7XG5cbiAgQGlmIG5vdCgkX3dpZHRoKSBvciAkX3dpZHRoID09IGF1dG8ge1xuICAgIEBpZiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKSB7XG4gICAgICAkX2NvbHVtbnMgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRsYXlvdXQpO1xuICAgICAgJF9ndXR0ZXJzICAgOiBzdXN5LWdldChndXR0ZXJzLCAkbGF5b3V0KTtcbiAgICAgICRfc3ByZWFkICAgIDogaWYoaXMtc3BsaXQoJGxheW91dCksIHdpZGUsIG5hcnJvdyk7XG4gICAgICAkX3dpZHRoICAgICA6IHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkgKiAkX2NvbHVtbi13aWR0aDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRfd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3dpZHRoO1xufVxuXG4vLyBQYXJzZSBDb250YWluZXIgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFyc2UgdGhlICRjb250YWluZXItcG9zaXRpb24gaW50byBtYXJnaW4gdmFsdWVzLlxuLy8gLSBbJGp1c3RpZnldICAgOiBsZWZ0IHwgY2VudGVyIHwgcmlnaHQgfCA8bGVuZ3RoPiBbPGxlbmd0aD5dXG5AZnVuY3Rpb24gcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKFxuICAkanVzdGlmeTogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgY29udGFpbmVyLXBvc2l0aW9uKVxuKSB7XG4gICRfcmV0dXJuOiBpZigkanVzdGlmeSA9PSBsZWZ0LCAwLCBhdXRvKSBpZigkanVzdGlmeSA9PSByaWdodCwgMCwgYXV0byk7XG5cbiAgQGlmIG5vdChpbmRleChsZWZ0IHJpZ2h0IGNlbnRlciwgJGp1c3RpZnkpKSB7XG4gICAgJF9yZXR1cm46IG50aCgkanVzdGlmeSwgMSk7XG4gICAgJF9yZXR1cm46ICRfcmV0dXJuIGlmKGxlbmd0aCgkanVzdGlmeSkgPiAxLCBudGgoJGp1c3RpZnksIDIpLCAkX3JldHVybik7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuIiwiLy8gU3VzeSBGYWxsYmFjayBDbGVhcmZpeFxuLy8gPT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENsZWFyZml4XG4vLyAtLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG5AbWl4aW4gc3VzeS1jbGVhcmZpeCB7XG4gIEBpZiBzdXN5LXN1cHBvcnQoY2xlYXJmaXgsIChtaXhpbjogY2xlYXJmaXgpKSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH0gQGVsc2Uge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gYmFzaWMgb3V0c2lkZSBhbmQgaW5zaWRlIGNvbnRhaW5lcnMgLy8vLy8vLy8vLy8vL1xuLy8gQHNlZTogKl9wcmVwcm9jZXNzX3BhZ2VcbiNwZ19fYy5wYWdlLXBhbmVsIC5tcS1tYWluIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5ib2R5ICNwZ19fYy5wYWdlLXBhbmVsIHNlY3Rpb24jY29udGVudCA+ICNjb250ZW50LWFyZWEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jb2ctcGwge1xuICAuY29nLXBhbmVsLS1mdWxscm93IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5jb2ctcGFuZWwtLW1xIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXIoODBlbSk7XG4gIH1cbn1cblxuLy8gdmlzdWFsIG1hcmtlcnM6IGVuYWJsZSBmb3IgcmVmZXJlbmNlIC8vLy8vLy8vLy8vL1xuLy8uY29nLXBhbmVsLS1mdWxscm93IHsgYm9yZGVyLXRvcDogMnB4IGRvdHRlZCAjZDNlMGU1OyBib3JkZXItYm90dG9tOiAycHggZG90dGVkICNkM2UwZTUgfVxuLy8uY29nLXBhbmVsLS1tcSB7IGJvcmRlci1yaWdodDogMnB4IGRvdHRlZCAjZDNlMGU1OyBib3JkZXItbGVmdDogMnB4IGRvdHRlZCAjZDNlMGU1OyB9XG5cbi8vLyBDb2cgUGFuZWwgTGF5b3V0cyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLnBhbmVsLWNvZy1sYXlvdXQtb25lLWNvbCB7IC8vIG9uZS1jb2x1bW5cbiAgLmNvZy1sYXlvdXQtLW1haW4ge1xuICAgIEBpbmNsdWRlIHNwYW4oMTIgb2YgMTIgbGFzdCk7XG4gIH1cbn1cblxuLnBhbmVsLWNvZy1sYXlvdXQtb25lLXR3by1vbmUgeyAvLyBvbmUtdHdvLW9uZVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDYgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jbCB7IC8vIG9uZS10d28tb25lIGNvbnRlbnQgbGVmdFxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDkgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3BhbigzIG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdHdvLW9uZS1jciB7IC8vIG9uZS10d28tb25lIGNvbnRlbnQgcmlnaHRcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pIHtcbiAgICAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3BhbigzIG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tbWlkZGxlLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oOSBvZiAxMiBsYXN0KTtcbiAgICB9XG4gIH1cbn1cblxuLnBhbmVsLWNvZy1sYXlvdXQtb25lLXRocmVlLW9uZSB7IC8vIG9uZS10aHJlZS1vbmVcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pIHtcbiAgICAuY29nLWxheW91dC0tbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tbWlkZGxlLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDQgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtb25lLWNtIHsgLy8gb25lLXRocmVlLW9uZSBjb250ZW50IG1pZGRsZVxuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtbGVmdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDMgb2YgMTIpO1xuICAgIH1cblxuICAgIC5jb2ctbGF5b3V0LS1taWRkbGUtY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLW1pZGRsZS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDMgb2YgMTIgbGFzdCk7XG4gICAgfVxuICB9XG59XG5cbi5wYW5lbC1jb2ctbGF5b3V0LW9uZS10d28tdGhyZWUtb25lIHsgLy8gb25lLXR3by10aHJlZS1vbmVcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pIHtcbiAgICAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLWxlZnQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMiBsYXN0KTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLXNlY29uZC1taWRkbGUtY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLXNlY29uZC1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuXG4ucGFuZWwtY29nLWxheW91dC1vbmUtdGhyZWUtdHdvLW9uZSB7IC8vIG9uZS10aHJlZS10d28tb25lXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLWZpcnN0LW1pZGRsZS1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgc3Bhbig0IG9mIDEyKTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tZmlyc3QtbWlkZGxlLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNCBvZiAxMiBsYXN0KTtcbiAgICB9XG5cbiAgICAuY29nLWxheW91dC0tc2Vjb25kLW1pZGRsZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIHNwYW4oNiBvZiAxMik7XG4gICAgfVxuXG4gICAgLmNvZy1sYXlvdXQtLXNlY29uZC1taWRkbGUtcmlnaHQge1xuICAgICAgQGluY2x1ZGUgc3Bhbig2IG9mIDEyIGxhc3QpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gU3BhbiBTeW50YXhcbi8vID09PT09PT09PT09XG5cbi8vIFNwYW4gW21peGluXVxuLy8gLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBzcGFubmluZyBlbGVtZW50IHVzaW5nIHNob3J0aGFuZCBzeW50YXguXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHNwYW4oXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbjogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRvdXRwdXQ6IHNwYW4tbWF0aCgkc3Bhbik7XG4gICRuZXN0aW5nOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG4gICRjbGVhcjogc3VzeS1nZXQoY2xlYXIsICRzcGFuKTtcblxuICAkYm94OiBzdXN5LWdldChib3gtc2l6aW5nLCAkc3Bhbik7XG4gICRjb250ZW50LWJveDogaWYoc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpICE9ICdib3JkZXItYm94JywgdHJ1ZSwgZmFsc2UpO1xuICAkYm94OiAkYm94IG9yIGlmKGlzLWluc2lkZSgkc3BhbikgYW5kICRjb250ZW50LWJveCwgYm9yZGVyLWJveCwgbnVsbCk7XG5cbiAgQGlmICRjbGVhciA9PSBicmVhayB7XG4gICAgQGluY2x1ZGUgYnJlYWs7XG4gIH0gQGVsc2UgaWYgJGNsZWFyID09IG5vYnJlYWsge1xuICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3Qoc3BhbiwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRib3gpKTtcbiAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgQGlmIHZhbGlkLWNvbHVtbnMoJG5lc3RpbmcsIHNpbGVudCkge1xuICAgIEBpbmNsdWRlIG5lc3RlZCgkc3BhbikgeyBAY29udGVudDsgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBTcGFuIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIHNwYW4uXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQGZ1bmN0aW9uIHNwYW4oXG4gICRzcGFuXG4pIHtcbiAgQHJldHVybiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG59XG5cbi8vIFNwYW4gTWF0aFxuLy8gLS0tLS0tLS0tXG4vLyBHZXQgYWxsIHRoZSBzcGFuIHJlc3VsdHMuXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIHNwYW4tbWF0aChcbiAgJHNwYW5cbikge1xuICAkbmVzdCAgICAgICAgICAgICA6IGlmKHN1c3ktZ2V0KHJvbGUsICRzcGFuKSA9PSBuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRzcGxpdC1uZXN0ICAgICAgIDogaWYoaXMtc3BsaXQoJHNwYW4pIGFuZCAkbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZWRnZSAgICAgICAgICAgICA6IGdldC1lZGdlKCRzcGFuKTtcbiAgJGxvY2F0aW9uICAgICAgICAgOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuXG4gICRmbG9hdCAgICAgICAgICAgIDogZnJvbTtcbiAgJHBhZGRpbmctYmVmb3JlICAgOiBudWxsO1xuICAkcGFkZGluZy1hZnRlciAgICA6IG51bGw7XG4gICRtYXJnaW4tYmVmb3JlICAgIDogbnVsbDtcbiAgJG1hcmdpbi1hZnRlciAgICAgOiBudWxsO1xuXG4gIC8vIGNhbGN1bGF0ZSB3aWR0aHNcbiAgJHNwcmVhZDogaW5kZXgobWFwLXZhbHVlcygkc3BhbiksIHNwcmVhZCk7XG4gICRzcGFuOiBpZigkc3BsaXQtbmVzdCBhbmQgbm90KCRzcHJlYWQpLCBtYXAtbWVyZ2UoJHNwYW4sIChzcHJlYWQ6IHdpZGUpKSwgJHNwYW4pO1xuICAkd2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbiAgJGd1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcblxuICAvLyBhcHBseSBndXR0ZXJzXG4gIEBpZiBpcy1pbnNpZGUoJHNwYW4pIHtcbiAgICBAaWYgbm90KHN1c3ktZ2V0KHJvbGUsICRzcGFuKSkge1xuICAgICAgJHBhZGRpbmctYmVmb3JlOiBtYXAtZ2V0KCRndXR0ZXJzLCBiZWZvcmUpO1xuICAgICAgJHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiBub3QoJHNwbGl0LW5lc3QpIHtcbiAgICAgICRtYXJnaW4tYmVmb3JlOiBtYXAtZ2V0KCRndXR0ZXJzLCBiZWZvcmUpO1xuICAgICAgJG1hcmdpbi1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHNwZWNpYWwgbWFyZ2luIGhhbmRsaW5nXG4gIEBpZiBzdXN5LWdldChvdXRwdXQsICRzcGFuKSA9PSBpc29sYXRlIGFuZCAkbG9jYXRpb24ge1xuICAgICRtYXJnaW4tYmVmb3JlOiBnZXQtaXNvbGF0aW9uKCRzcGFuKTtcbiAgICAkbWFyZ2luLWFmdGVyOiAtMTAwJTtcbiAgfSBAZWxzZSBpZiAkZWRnZSB7XG4gICAgJGlzLXNwbGl0OiBpcy1zcGxpdCgkc3Bhbik7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG5cbiAgICBAaWYgJGVkZ2UgPT0gbGFzdCB7XG4gICAgICAkZmxvYXQ6IHN1c3ktZ2V0KGxhc3QtZmxvdywgJHNwYW4pO1xuICAgIH1cblxuICAgIEBpZiBub3QoJGlzLXNwbGl0KSB7XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gZmlyc3QgYW5kICRwb3MgPT0gYmVmb3JlKSB7XG4gICAgICAgICRtYXJnaW4tYmVmb3JlOiAwO1xuICAgICAgfVxuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGxhc3QgYW5kICRwb3MgPT0gYWZ0ZXIpIHtcbiAgICAgICAgJG1hcmdpbi1hZnRlcjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEByZXR1cm4gKFxuICAgIHdpZHRoICAgICAgICAgICA6ICR3aWR0aCxcbiAgICBmbG9hdCAgICAgICAgICAgOiAkZmxvYXQsXG4gICAgbWFyZ2luLWJlZm9yZSAgIDogJG1hcmdpbi1iZWZvcmUsXG4gICAgbWFyZ2luLWFmdGVyICAgIDogJG1hcmdpbi1hZnRlcixcbiAgICBwYWRkaW5nLWJlZm9yZSAgOiAkcGFkZGluZy1iZWZvcmUsXG4gICAgcGFkZGluZy1hZnRlciAgIDogJHBhZGRpbmctYWZ0ZXIsXG4gICAgZmxvdyAgICAgICAgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pLFxuICApO1xufVxuXG4vLyBHZXQgU3BhbiBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBzcGFuIHdpZHRoLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBnZXQtc3Bhbi13aWR0aChcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgOiBwYXJzZS1zcGFuKCRzcGFuKTtcblxuICAkbiAgICAgICAgOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG4gICRsb2NhdGlvbiA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG4gICRjb2x1bW5zICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKTtcbiAgJGd1dHRlcnMgIDogc3VzeS1nZXQoZ3V0dGVycywgJHNwYW4pO1xuICAkc3ByZWFkICAgOiBzdXN5LWdldChzcHJlYWQsICRzcGFuKTtcblxuICAkY29udGV4dCAgOiBudWxsO1xuICAkc3Bhbi1zdW0gOiBudWxsO1xuICAkd2lkdGggICAgOiBudWxsO1xuXG4gIEBpZiAkbiA9PSAnZnVsbCcge1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuICAgICRyb2xlOiBzdXN5LWdldChyb2xlLCAkc3Bhbik7XG4gICAgJG46IGlmKCRwb3MgPT0gc3BsaXQgYW5kICRyb2xlICE9IG5lc3QsIHN1c3ktY291bnQoJGNvbHVtbnMpLCAxMDAlKTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRuKSAhPSBudW1iZXIge1xuICAgIEB3YXJuIFwiKCN7dHlwZS1vZigkbil9KSAjeyRufSBpcyBub3QgYSB2YWxpZCBzcGFuLlwiO1xuICB9IEBlbHNlIGlmIHVuaXRsZXNzKCRuKSB7XG4gICAgJGNvbnRleHQ6IHN1c3ktc3VtKCRjb2x1bW5zLCAkZ3V0dGVycywgaWYoaXMtc3BsaXQoJHNwYW4pLCB3aWRlLCBuYXJyb3cpKTtcbiAgICAkc3ByZWFkOiBpZihpcy1pbnNpZGUoJHNwYW4pLCAkc3ByZWFkIG9yIHdpZGUsICRzcHJlYWQpO1xuICAgICRzcGFuLXN1bTogc3VzeSgkbiwgJGxvY2F0aW9uLCAkY29sdW1ucywgJGd1dHRlcnMsICRzcHJlYWQpO1xuXG4gICAgJF9tYXRoOiBzdXN5LWdldChtYXRoLCAkc3Bhbik7XG4gICAgJF9jb2x1bW4td2lkdGg6IHN1c3ktZ2V0KGNvbHVtbi13aWR0aCwgJHNwYW4pO1xuICAgIEBpZiAkX21hdGggPT0gc3RhdGljIHtcbiAgICAgICR3aWR0aDogJHNwYW4tc3VtICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJHNwYW4tc3VtIC8gJGNvbnRleHQpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgJHdpZHRoOiAkbjtcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuIiwiLy8gRGlyZWN0aW9uIEhlbHBlcnNcbi8vID09PT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgRmxvdyBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBmbG93OiBsdHIsXG4pKTtcblxuLy8gR2V0IERpcmVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgb3IgJ3RvJyBkaXJlY3Rpb24gb2YgYSBsdHIgb3IgcnRsIGZsb3cuXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG4vLyAtIFska2V5XSAgIDogZnJvbSB8IHRvXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbihcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpLFxuICAka2V5OiBmcm9tXG4pIHtcbiAgJHJldHVybjogaWYoJGZsb3cgPT0gcnRsLCAoZnJvbTogcmlnaHQsIHRvOiBsZWZ0KSwgKGZyb206IGxlZnQsIHRvOiByaWdodCkpO1xuICBAcmV0dXJuIG1hcC1nZXQoJHJldHVybiwgJGtleSk7XG59XG5cbi8vIFRvXG4vLyAtLVxuLy8gUmV0dXJuIHRoZSAndG8nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiB0byhcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCB0byk7XG59XG5cbi8vIEZyb21cbi8vIC0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiBmcm9tKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIGZyb20pO1xufVxuIiwiLy8gR3V0dGVyIFN5bnRheFxuLy8gPT09PT09PT09PT09PVxuXG5cbi8vIEd1dHRlcnNcbi8vIC0tLS0tLS1cbi8vIFNldCBndXR0ZXJzIG9uIGFuIGVsZW1lbnQuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgOiAkc3BhbjtcbiAgJHNwYW4gICAgIDogcGFyc2UtZ3V0dGVycygkc3Bhbik7XG4gICRfZ3V0dGVycyA6IGdldC1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX291dHB1dDogKFxuICAgIGJlZm9yZTogbWFwLWdldCgkX2d1dHRlcnMsIGJlZm9yZSksXG4gICAgYWZ0ZXI6IG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlciksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJHNwYW4pLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChndXR0ZXJzLCAkaW5zcGVjdCk7XG5cbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dCgkX291dHB1dC4uLik7XG4gIH1cbn1cblxuQG1peGluIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZ3V0dGVycygkc3Bhbik7XG59XG5cblxuLy8gR3V0dGVyXG4vLyAtLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBndXR0ZXIuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBndXR0ZXIoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRzcGFuOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX2d1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSBvciBtYXAtZ2V0KCRfZ3V0dGVycywgYWZ0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXJzO1xufVxuXG5AZnVuY3Rpb24gZ3V0dGVycyhcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQHJldHVybiBndXR0ZXIoJHNwYW4pO1xufVxuXG5cbi8vIEdldCBHdXR0ZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBndXR0ZXIgd2lkdGguXG4vLyAtIFskY29udGV4dF06IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGdldC1ndXR0ZXItd2lkdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVycyA6IHN1c3ktZ2V0KGd1dHRlcnMsICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgIDogc3VzeS1nZXQoZ3V0dGVyLW92ZXJyaWRlLCAkY29udGV4dCk7XG5cbiAgQGlmICRfZ3V0dGVycyBhbmQgKCRfZ3V0dGVycyA+IDApIGFuZCBub3QoJF9ndXR0ZXIpIHtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkY29udGV4dCk7XG4gICAgJF9tYXRoOiBndXR0ZXItbWF0aCgkY29udGV4dCk7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJF9ndXR0ZXI6ICRfZ3V0dGVycyAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF9jb2x1bW5zIDogc3VzeS1nZXQoY29sdW1ucywgJGNvbnRleHQpO1xuICAgICAgJF9zcHJlYWQgIDogaWYoaXMtc3BsaXQoJGNvbnRleHQpLCB3aWRlLCBzdXN5LWdldChzcHJlYWQsICRjb250ZXh0KSk7XG4gICAgICAkX2d1dHRlciAgOiBwZXJjZW50YWdlKCRfZ3V0dGVycyAvIHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkpO1xuICAgIH1cbiAgfVxuXG4gICRfZ3V0dGVyOiBpZigkX2d1dHRlciA9PSAnbm8tZ3V0dGVycycgb3IgJF9ndXR0ZXIgPT0gJ25vLWd1dHRlcicsIG51bGwsICRfZ3V0dGVyKTtcblxuICBAcmV0dXJuICRfZ3V0dGVyO1xufVxuXG5cbi8vIEdldCBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGJlZm9yZSBhbmQgYWZ0ZXIgZ3V0dGVyIHZhbHVlcy5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlcnMoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICAgICAgICAgICAgOiBwYXJzZS1ndXR0ZXJzKCRjb250ZXh0KTtcblxuICAkX2d1dHRlci1wb3NpdGlvbiAgIDogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG4gICRfZ3V0dGVyICAgICAgICAgICAgOiBnZXQtZ3V0dGVyLXdpZHRoKCRjb250ZXh0KTtcblxuICAkX3JldHVybiAgICAgICAgICAgIDogKGJlZm9yZTogbnVsbCwgYWZ0ZXI6IG51bGwpO1xuXG4gIEBpZiBpcy1zcGxpdCgkY29udGV4dCkgYW5kICRfZ3V0dGVyIHtcbiAgICAkX2d1dHRlcjogJF9ndXR0ZXIgLyAyO1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChiZWZvcmU6ICRfZ3V0dGVyLCBhZnRlcjogJF9ndXR0ZXIpKTtcbiAgfSBAZWxzZSB7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKCRfZ3V0dGVyLXBvc2l0aW9uOiAkX2d1dHRlcikpO1xuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBJcyBJbnNpZGVcbi8vIC0tLS0tLS0tLVxuLy8gUmV0dXJucyB0cnVlIGlmIGd1dHRlcnMgYXJlIGluc2lkZS5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1pbnNpZGUoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9pbnNpZGU6IGluc2lkZSBpbnNpZGUtc3RhdGljO1xuICAkX2d1dHRlci1wb3NpdGlvbjogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG5cbiAgQHJldHVybiBpZihpbmRleCgkX2luc2lkZSwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gSXMgU3BsaXRcbi8vIC0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgc3BsaXQuXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gaXMtc3BsaXQoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9zcGxpdDogc3BsaXQgaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfc3BsaXQsICRfZ3V0dGVyLXBvc2l0aW9uKSwgdHJ1ZSwgZmFsc2UpO1xufVxuXG5cbi8vIEd1dHRlciBNYXRoXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBtYXRoIHRvIHVzZSBmb3IgZ3V0dGVyIGNhbGN1bGF0aW9uc1xuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGd1dHRlci1tYXRoKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkX3JldHVybiAgOiBzdXN5LWdldChtYXRoLCAkY29udGV4dCk7XG4gICRfcmV0dXJuICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpID09IGluc2lkZS1zdGF0aWMsIHN0YXRpYywgJF9yZXR1cm4pO1xuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBMYXlvdXRcbi8vXG4vLyBTaWRlYmFycyBSZWdpb24gU3R5bGluZ1xuLy9cbi8vIE1hcmt1cDogc2lkZWJhcnMudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBsYXlvdXQuc2lkZWJhcnNcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBGaXJzdCAvLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtZmlyc3Qge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCR1cC1zbSkge1xuICAgIGFzaWRlLnNpZGViYXItZmlyc3Qge1xuICAgICAgLy9AaW5jbHVkZSBzcGFuKDMgb2YgMTIpOyAvLyBTdXN5IFNldHRpbmdcbiAgICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gNTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgICBncmlkLWNvbHVtbjogMS9zcGFuIDM7XG4gICAgICB9XG5cbiAgICAgID4gKiB7XG4gICAgICAgIC8vcGFkZGluZy1sZWZ0OiAxNXB4OyAvLyBOb24tZ3JpZCBzZXR0aW5nXG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VjdGlvbiNjb250ZW50IHtcbiAgICAgIC8vQGluY2x1ZGUgc3Bhbig5IG9mIDEyIGxhc3QpOyAvLyBTdXN5IFNldHRpbmdcbiAgICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gNDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICAgICBncmlkLWNvbHVtbjogMy9zcGFuIDU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICAgICAgICBncmlkLWNvbHVtbjogNC9zcGFuIDg7XG4gICAgICB9XG5cbiAgICAgID4gKiB7XG4gICAgICAgIC8vcGFkZGluZy1yaWdodDogMjVweDsgLy8gTm9uLWdyaWQgc2V0dGluZ1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBTZWNvbmQgLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtc2Vjb25kIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdXAtc20pIHtcbiAgICBhc2lkZS5zaWRlYmFyLXNlY29uZCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDMgb2YgMTIgbGFzdCk7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIC8vcGFkZGluZy1yaWdodDogMTVweDsgLy8gTm9uLWdyaWQgc2V0dGluZ1xuICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24jY29udGVudCB7XG4gICAgICAvL0BpbmNsdWRlIHNwYW4oOSBvZiAxMik7IC8vIFN1c3kgU2V0dGluZ1xuXG4gICAgICA+ICoge1xuICAgICAgICAvL3BhZGRpbmctbGVmdDogMjVweDsgLy8gTm9uLWdyaWQgc2V0dGluZ1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBCb3RoIC8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtYm90aCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHVwLXNtKSB7XG4gICAgYXNpZGUuc2lkZWJhci1maXJzdCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDIgb2YgMTIpO1xuXG4gICAgICA+ICoge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXNpZGUuc2lkZWJhci1zZWNvbmQge1xuICAgICAgQGluY2x1ZGUgc3BhbigyIG9mIDEyIGxhc3QpO1xuXG4gICAgICA+ICoge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24jY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBzcGFuKDggb2YgMTIpO1xuXG4gICAgICA+ICoge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2lkZWJhciBOb25lIC8vLy8vLy8vLy8vLy8vLy8vL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmJvZHktc2lkZWJhcnMtbm9uZSB7XG4gIHNlY3Rpb24jY29udGVudCB7XG4gICAgLy9AaW5jbHVkZSBzcGFuKDEyIG9mIDEyKTsgLy8gU3VzeSBzZXR0aW5nXG4gICAgICBncmlkLWNvbHVtbjogMS9zcGFuIDQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG4gICAgICBncmlkLWNvbHVtbjogMS9zcGFuIDg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG4gICAgICBncmlkLWNvbHVtbjogMS9zcGFuIDEyO1xuICAgIH1cblxuICAgID4gKiB7XG4gICAgICAvL3BhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIC8vcGFkZGluZy1yaWdodDogMTVweDtcbiAgICB9XG4gIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEdlbmVyYWwgU2lkZWJhciBSdWxlcyAvLy8vLy8vLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbmFzaWRlLnNpZGViYXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiLy8gU2lkZWJhciBCbG9ja1xuLy9cbi8vIFNpZGViYXIgYmxvY2sgc3R5bGluZy5cbi8vXG4vLyBNYXJrdXA6IGJsb2NrLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5ibG9ja1xuYXNpZGUgLmJsb2NrIHtcbiAgQGV4dGVuZCAuYmxvY2tlZC1zdHlsZTtcblxuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDE3NSU7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIH1cbn1cbiIsIi5yZWdpb24tYnJhbmRpbmcge1xuICAuYmxvY2stc3lzdGVtLW1lbnVibG9jayB1bC5tZW51IHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuICB9XG59XG5cbi5zaXRlLWJyYW5kaW5nLXRleHQge1xuICBwYWRkaW5nOiAzMHB4IDEwcHggMTBweDtcbiAgZm9udC1zaXplOiAxMzUlO1xufVxuLy8gbG9nbyB2YWx1ZXNcbmRpdi5zaXRlLWJyYW5kaW5nIGEubG9nbyB7XG4gIHdpZHRoOiAxMDVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDVweCA1cHggMDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbiIsIm5hdi5icmVhZGNydW1iIHtcbiAgQGV4dGVuZCAuYmxvY2tlZC1zdHlsZTtcblxuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGNvbG9yOiAkZGFyay1ncmF5O1xuXG4gIG9sIHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuXG4gICAgbGk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnLyc7XG4gICAgICBwYWRkaW5nOiAwIDNweCAwIDAuNXB4O1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgfVxuXG4gICAgbGk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub3JtYWw7XG4gICAgfVxuICB9XG59XG4iLCIucmVnaW9uLWZvb3RlciB7XG4gIC8vQGluY2x1ZGUgcmVnaW9uLXNwYWNlcigkbGlnaHQtZ3JheSwgdG9wKTtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAuYmxvY2stbWVudSB1bC5tZW51IHtcbiAgICBAZXh0ZW5kIC5uby11bC1saXN0O1xuICB9XG5cblxuICAvLyBSZXBsaWNhdGVzIHRoZSBncmlkIHBhdHRlcm4gb24gdGhlIGNvbnRhaW5lciBlbGVtZW50XG4gIC5maWVsZF9faXRlbSB7XG4gIFx0ZGlzcGxheTogZ3JpZDtcbiAgXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICBcdGdyaWQtY29sdW1uLWdhcDogMjBweDtcbiAgXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuICBcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOCwgMWZyKTtcbiAgXHR9XG4gIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuICBcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gIFx0fVxuICB9XG5cblxuICBhOmxpbmssXG4gIGE6dmlzaXRlZCB7XG4gIFx0Y29sb3I6IHJnYmEoJHdoaXRlLCAwLjUpO1xuXG4gIFx0Jjpob3ZlciB7XG4gIFx0XHRjb2xvcjogcmdiYSgkd2hpdGUsIDEpO1xuICBcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIFx0fVxuICB9XG5cbiAjYmxvY2stYWJjZC1icmlnaHQtbWFpbmZvb3RlciB7XG4gXHRncmlkLWNvbHVtbjogMS9zcGFuIDQ7XG5cdCAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdCAgXHRncmlkLWNvbHVtbjogMSAvIHNwYW4gODtcblx0ICB9XG5cdCAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0ICBcdGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxMjtcblx0ICB9XG4gfVxuXG5cbi5mb290ZXJfbGVmdCB7XG5cdGdyaWQtY29sdW1uOiAxLyBzcGFuIDQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0Z3JpZC1jb2x1bW46IDEvIHNwYW4gNDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG5cdGdyaWQtY29sdW1uOiAxIC8gc3BhbiA2O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG59XG5cblxuLmZvb3Rlcl9yaWdodCB7XG5cdGdyaWQtY29sdW1uOiAxL3NwYW4gNDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRncmlkLWNvbHVtbjogNS9zcGFuIDQ7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0Z3JpZC1jb2x1bW46IDcvc3BhbiA2O1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0fVxufVxuXG4uZm9vdGVyX2xvd2VyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDQ7XG4gIHBhZGRpbmctYm90dG9tOiA0ZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gODtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDEyO1xuICB9XG59XG5cbi5mb290ZXJfbG93ZXIgaW1nIHtcbiAgd2lkdGg6IDRlbTtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG5cbn1cbiIsIi8vIEhlYWRlciBNYWluIE1lbnVcbi8vXG4vLyBIZWFkZXIgbWVudXMgc3R5bGluZyBmb3IgbWFpbiBuYXZcbi8vXG4vLyBNYXJrdXA6IGhlYWRlci50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuaGVhZGVyXG5cbi5yZWdpb24taGVhZGVyIHtcbiAgLy9AaW5jbHVkZSByZWdpb24tc3BhY2VyKCRsaWdodC1ncmF5KTtcbn1cblxuLm1vYmlsZV9saW5rIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwLjI1ZW07XG5cdGxlZnQ6IDIwcHg7XG5cdHotaW5kZXg6IDk5OTk5OTk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSl7XG5cdFx0ZGlzcGxheTogZ3JpZDtcblx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdGdyaWQtY29sdW1uOiAxO1xuXHRcdGdyaWQtcm93OiAxO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKXtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0Z3JpZC1jb2x1bW46IDE7XG5cdFx0Z3JpZC1yb3c6IDE7XG5cdH1cbn1cblxuLm1vYmlsZV9saW5rIGltZyB7XG5cdHdpZHRoOiAzZW07XG59XG5cblxuI25hdndyYXBwZXIge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5oZWFkZXIjaGVhZGVyIHtcblx0Ly9kaXNwbGF5OiBub25lO1xufSIsIi8vIE1lYW4gTWVudSBTdHlsaW5nXG5cbi8qISAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICBNZWFuTWVudSAyLjAuN1xuICAtLS0tLS0tLVxuICBUbyBiZSB1c2VkIHdpdGgganF1ZXJ5Lm1lYW5tZW51LmpzIGJ5IENocmlzIFdoYXJ0b24gKGh0dHA6Ly93d3cubWVhbnRoZW1lcy5jb20vcGx1Z2lucy9tZWFubWVudS8pXG5cbiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjICovXG5cbi8qIGhpZGUgdGhlIGxpbmsgdW50aWwgdmlld3BvcnQgc2l6ZSBpcyByZWFjaGVkICovXG5hLm1lYW5tZW51LXJldmVhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIHdoZW4gdW5kZXIgdmlld3BvcnQgc2l6ZSwgLm1lYW4tY29udGFpbmVyIGlzIGFkZGVkIHRvIGJvZHkgKi9cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1iYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJGRhcmstdGVhbDtcbiAgcGFkZGluZzogNHB4IDA7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIHotaW5kZXg6IDk5OTk5OTtcbn1cblxuLm1lYW4tY29udGFpbmVyIGEubWVhbm1lbnUtcmV2ZWFsIHtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcbiAgcGFkZGluZzogMTNweCAxM3B4IDExcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAvL2ZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBmb250LXNpemU6IDFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ubWVhbi1jb250YWluZXIgYS5tZWFubWVudS1yZXZlYWwgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luLXRvcDogM3B4O1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAkZGFyay10ZWFsO1xuICBtYXJnaW4tdG9wOiA0NHB4O1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDkwJTtcbiAgcGFkZGluZzogMWVtIDUlO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzM4MzgzODtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGxpIGEge1xuICB3aWR0aDogODAlO1xuICBwYWRkaW5nOiAxZW0gMTAlO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2YxZjFmMTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03NSk7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkubWVhbi1sYXN0IGEge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGxpIGxpIGEge1xuICB3aWR0aDogNzAlO1xuICBwYWRkaW5nOiAxZW0gMTUlO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGxpIGxpIGxpIGEge1xuICB3aWR0aDogNjAlO1xuICBwYWRkaW5nOiAxZW0gMjAlO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGxpIGxpIGxpIGxpIGEge1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nOiAxZW0gMjUlO1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjUyNTI1O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgdWwgbGkgYS5tZWFuLWV4cGFuZCB7XG4gIG1hcmdpbi10b3A6IDFweDtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMzJweDtcbiAgcGFkZGluZzogMTJweCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSAhaW1wb3J0YW50O1xufVxuXG4ubWVhbi1jb250YWluZXIgLm1lYW4tbmF2IHVsIGxpIGEubWVhbi1leHBhbmQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1wdXNoIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ubWVhbi1uYXYgLndyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBGaXggZm9yIGJveCBzaXppbmcgb24gRm91bmRhdGlvbiBGcmFtZXdvcmsgZXRjLiAqL1xuLm1lYW4tY29udGFpbmVyIC5tZWFuLWJhcixcbi5tZWFuLWNvbnRhaW5lciAubWVhbi1iYXIgKiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4ubWVhbi1yZW1vdmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIEdsb2JhbCBNZW51IFN0eWxpbmdcbiNibG9jay1hYmNkLWJyaWdodC1tYWluLW1lbnUuZ2xvYmFsX25hdiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBncmlkLXJvdzogMTtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiA0O1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gNztcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSl7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxMTtcbiAgfVxufVxuXG4uY29nLS1tcS5tcS1icmFuZGluZyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbiNibG9jay1hYmNkLWJyaWdodC1tYWluLW1lbnUuZ2xvYmFsX25hdiB1bC5tZW51IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAyNTUsIDAuMyk7XG59XG5cbiNibG9jay1hYmNkLWJyaWdodC1tYWluLW1lbnUuZ2xvYmFsX25hdiB1bCBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDI1NSwgMC41KTtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xuICAvL21hcmdpbjogMCAtMC4xMzc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4jYmxvY2stYWJjZC1icmlnaHQtbWFpbi1tZW51Lmdsb2JhbF9uYXYgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAvL2JvcmRlci1yYWRpdXM6IDAgMCAwIDAuNWVtO1xufVxuXG4jYmxvY2stYWJjZC1icmlnaHQtbWFpbi1tZW51Lmdsb2JhbF9uYXYgdWwgbGk6bGFzdC1jaGlsZCB7XG4gIC8vYm9yZGVyLXJhZGl1czogMCAwIDAuNWVtO1xufVxuXG4jYmxvY2stYWJjZC1icmlnaHQtbWFpbi1tZW51Lmdsb2JhbF9uYXYgdWwgbGkgYTpsaW5rLFxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGE6dmlzaXRlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7IC8vIE5lZWRlZCBoZXJlIHRvIG92ZXJyaWRlIGRlZmF1bHQgc3R5bGluZ1xuICAvL21hcmdpbjogMCAtMC4xMjVlbTtcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGE6aG92ZXIsXG4jYmxvY2stYWJjZC1icmlnaHQtbWFpbi1tZW51Lmdsb2JhbF9uYXYgdWwgbGkgYTpsaW5rOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuI2Jsb2NrLWFiY2QtYnJpZ2h0LW1haW4tbWVudS5nbG9iYWxfbmF2IHVsIGxpIGEuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy8gQ3VzdG9tIFN0eWxpbmcgRm9sbG93c1xuLm1lYW4tY29udGFpbmVyIGRpdi5tZWFuLWJhciB7XG4gIGJhY2tncm91bmQ6ICRkYXJrLXRlYWw7XG59XG5cbi5tZWFuLWNvbnRhaW5lciAubWVhbi1uYXYgbGkge1xuICBwYWRkaW5nOiAwOyAvKiBSZW1vdmVzIGRlZmF1bHQgbmF2IGVsZW1lbnQgcGFkZGluZyAqL1xufVxuXG5uYXYgdWwubWVudSBsaSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnJlZ2lvbi5yZWdpb24tYnJhbmRpbmcgZGl2Lm1vYmlsZV9saW5rLmdyb3VwIGEgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xuICBmaWx0ZXI6IGludmVydCgxMDAlKTtcbn1cbiIsIi5kcnVwYWwtbWVzc2FnZXMge1xuICBwYWRkaW5nOiAxNXB4O1xuICBtYXJnaW46IDE1cHggMDtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG5cbiAgQGluY2x1ZGUgYm9yZGVycmFkaXVzKCk7XG5cbiAgQGV4dGVuZCAudG1wLXNoYWRvdztcblxuICBvbCB7XG4gICAgQGV4dGVuZCAubm8tdWwtbGlzdDtcbiAgfVxuXG4gICYubWVzc2FnZXMtLXN0YXR1cyB7XG4gICAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgfVxuXG4gICYubWVzc2FnZXMtLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJHllbGxvdywgMC4zKTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgfVxuXG4gICYubWVzc2FnZXMtLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRyZWQsIDAuMyk7XG4gICAgY29sb3I6ICRyZWQ7XG4gIH1cbn1cbiIsIi8vIFByaW1hcnkgVGFic1xuLy9cbi8vIFNpbXBsZSB0YWJzIHN0eWxpbmcuXG4vL1xuLy8gTWFya3VwOiB0YWJzLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy50YWJzXG4uYmxvY2stdGFicyB7XG4gIG1hcmdpbjogMS41ZW0gMDtcblxuICB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMC40ZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhbm5lclxuLy9cbi8vIFN0eWxpbmcgZm9yIHRoZSBiYW5uZXIgcmVnaW9uIG9mIEFCQ0Rcbi8vXG4vL1xuLy8gTWFya3VwOiBiYW5uZXIudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzLmJhbm5lclxuLnJlZ2lvbi5yZWdpb24tYmFubmVyIHtcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAxMDAlOyAvLyBTZXRzIGJhbm5lcnMgdG8gZnVsbC13aWR0aC5cblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyBSZW1vdmVzIGxpbmUtaGVpZ2h0IGZyb20gYm90dG9tIG9mIHJlc3BvbnNpdmUgaW1hZ2VzLlxuXHR9XG5cbn0iLCIvLyBQcm9ncmFtc1xuLy9cbi8vIENvbnRlbnQgVGVhc2VyIHN0eWxpbmcgZm9yIEFCQ0Rcbi8vXG4vLyBNYXJrdXA6IGNvbnRlbnRfdGVhc2Vycy50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuY29udGVudF90ZWFzZXJzXG5cbi8vIFByb2dyYW0gVGVhc2VyIERpc3BsYXlzXG4ucHJvZ3JhbS1saXN0aW5ncyxcbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIHtcblx0Ly8gYm9yZGVyOiAxcHggc29saWQgcmVkO1xuXHRtYXJnaW4tdG9wOiAyZW07XG5cblx0LnByb2dyYW0tdGVhc2VyIHtcblx0XHQvLyBib3JkZXI6IDFweCBzb2xpZCBibHVlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJGxpbWUsIDAuMyk7XG5cdFx0cGFkZGluZzogMWVtO1xuXHRcdG1hcmdpbjogMCAwIDFlbSAwO1xuXG5cdFx0LnZpZXdzLWZpZWxkLWZpZWxkLXByb2dyYW0tYmFubmVyLFxuXHRcdC52aWV3cy1maWVsZC1maWVsZC10ZWFzZXItaW1hZ2Uge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDAgMCAxZW0gMDtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRcdFx0d2lkdGg6IDEzZW07XG5cdFx0XHRcdG1hcmdpbjogMCAxZW0gMCAwO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDEzZW07XG5cdFx0XHRcdG1hcmdpbjogMCAxZW0gMCAwO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC52aWV3cy1maWVsZC10aXRsZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZsb2F0OiBub25lO1xuXG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdFx0XHR3aWR0aDogNzUlO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDc1JTtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQudmlld3MtZmllbGQtYm9keSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZsb2F0OiBub25lO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0XHR3aWR0aDogNzUlO1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDc1JTtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cblx0XHRcdHNwYW4uZmllbGQtY29udGVudCBhcnRpY2xlIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC52aWV3cy1maWVsZC10aXRsZSBoMyxcblx0XHQudmlld3MtZmllbGQtdGl0bGUgaDMgYTpsaW5rLFxuXHRcdC52aWV3cy1maWVsZC10aXRsZSBoMyBhOnZpc2l0ZWQge1xuXHRcdFx0Y29sb3I6ICRza3libHVlO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEyMCU7XG5cdFx0fVxuXG5cdFx0LnZpZXdzLWZpZWxkLXRpdGxlIGgzIGE6aG92ZXIge1xuXHRcdFx0b3BhY2l0eTogMC41O1xuXHRcdH1cblxuXHRcdGEudmlld3MtbW9yZS1saW5rOmxpbmssXG5cdFx0YS52aWV3cy1tb3JlLWxpbms6dmlzaXRlZCB7XG5cdFx0XHRjb2xvcjogJHNreWJsdWU7XG5cdFx0fVxuXHR9XG5cbn1cblxuLy8gRGlmZmVyZW5jZXMgZm9yIFN1Y2Nlc3MgU3RvcnkgRGlzcGxheXNcbi5zdWNjZXNzLXN0b3J5LWxpc3RpbmdzIC5wcm9ncmFtLXRlYXNlciB7XG5cdGJhY2tncm91bmQ6IHJnYmEoJG9yYW5nZSwgMC4xNSk7XG59XG4iLCIvLyBFeGFtcGxlIEJ1dHRvblxuLy9cbi8vIFRoaXMgaXMgYW4gZXhhbXBsZSBzdHlsZWd1aWRlIGVudHJ5LiBUbyBzZWUgdGhlIGNvZGUgdGhhdCBnZW5lcmF0ZXMgdGhpcyBlbnRyeSwgZ28gdG8gdGhlIGBzYXNzL2NvbXBvbmVudHMvZXhhbXBsZWAgZm9sZGVyIGluIHlvdXIgdGhlbWUgYW5kIHZpZXcgdGhlIGBleGFtcGxlX2J1dHRvbi5zY3NzYCwgYGV4YW1wbGVfYnV0dG9uLnR3aWdgLCBhbmQgYGV4YW1wbGVfYnV0dG9uLmpzb25gIGZpbGVzIHRvIHNlZSB3aGF0IHRoZXkgZG8uXG4vL1xuLy8gOmhvdmVyICAgLSBUZXh0IHR1cm5zIHJlZCBvbiBob3Zlci5cbi8vIC5yb3VuZGVkICAgLSBXb3chIFNvIHJvdW5kIVxuLy9cbi8vIE1hcmt1cDogZXhhbXBsZV9idXR0b24udHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzLmV4YW1wbGVfYnV0dG9uXG4uYnV0dG9uIHtcbiAgY29sb3I6IGJsdWU7XG59XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbn1cblxuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHJlZDtcbn1cbiIsIi8vIEZlYXR1cmVkIEV2ZW50c1xuLy9cbi8vIFVzZWQgdG8gZGlzcGxheSBmZWF0dXJlZCBldmVudHMgb2YgaW50ZXJlc3QgdG8gdGhlIGNvbW11bml0eS5cbi8vXG4vLyBNYXJrdXA6IGZlYXR1cmVkX2V2ZW50cy50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuZmVhdHVyZWRfZXZlbnRzXG4uYWJjZF9ldmVudHMsXG4jYmxvY2stdmlld3MtZmVhdHVyZWQtZXZlbnRzLWxpc3Qge1xuXHRtYXJnaW4tYm90dG9tOiAyZW07XG5cblx0aDIge1xuXHRcdGZvbnQtc2l6ZTogMTQwJTtcblx0XHRjb2xvcjogJHNreWJsdWU7XG5cdH1cblxuXHRkZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAwLjI1ZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgdGludCgkc2t5Ymx1ZSwgNTAlKTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG5cbiAgICAmID4gKiB7XG4gICAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIH1cblxuICAgICZbb3Blbl0ge1xuICAgICAgYmFja2dyb3VuZDogdGludCgkc2t5Ymx1ZSwgOTAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRpbnQoJHNreWJsdWUsIDUwJSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgICB9XG5cbiAgICAmOm5vdChzdW1tYXJ5KSB7XG4gICAgICAvL2ZvbnQtc2l6ZTogODUlO1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgfVxuXG4gICAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBSZW1vdmVzIHNpdGUgc3R5bGluZyByZXNldCBzZXR0aW5nc1xuICAgIGNvbG9yOiAkcGx1bTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICB0aW1lIHtcbiAgICAgIFx0Y29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICBcdGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRpbnQoJGRhcmstZ3JheSwgNTAlKTtcbiAgICAgIFx0cGFkZGluZy1yaWdodDogMC4yNWVtO1xuICAgICAgXHRtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkb3JhbmdlO1xuICAgICAgICAvL2JhY2tncm91bmQ6IHRpbnQoJHNreWJsdWUsIDkwJSk7XG4gICAgICB9XG5cbiAgICAgICY6Om1hcmtlciB7XG4gICAgICAgIGNvbG9yOiAkbGltZTsgLy8gRXhwZXJpbWVudGFsIHRlY2hub2xvZ3lcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG59XG5cblxuLy8gQ09WSUQtU3BlY2lmaWMgRXZlbnRzXG4uYWJjZF9ldmVudHMsXG4jYmxvY2stdmlld3MtYmxvY2stZXZlbnRzLXZpZXdzLWNvdmlkLWV2ZW50cy1saXN0IHtcbiAgbWFyZ2luLXRvcDogMmVtO1xuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDE0MCU7XG4gICAgY29sb3I6ICR2aW9sZXQ7XG4gIH1cblxuICAudmlldy1ldmVudHMge1xuICAgICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkc2t5Ymx1ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdmlvbGV0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgICBjb2xvcjogJHNreWJsdWU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgfVxufVxuIiwiLy8gRXhhbXBsZSBCdXR0b25cbi8vXG4vLyBGaWxlIGRvd25sb2FkIHNlY3Rpb24gc3R5bGluZy5cbi8vXG4vL1xuLy8gTWFya3VwOiBmaWxlX2Rvd25sb2Fkcy50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuZmlsZV9kb3dubG9hZHNcbi5maWVsZC0tbmFtZS1maWVsZC1kb3dubG9hZHMge1xuXHRtYXJnaW46IDJlbSAwIDFlbTtcblxuXHQuZmllbGRfX2xhYmVsIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG5cdH1cblxuXHQuZmllbGRfX2l0ZW1zIC5maWVsZF9faXRlbSBhcnRpY2xlIHtcblxuXHRcdC5maWVsZC0tbmFtZS1maWVsZC1tZWRpYS1maWxlIHtcblxuXHRcdFx0LmZpZWxkX19pdGVtIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMC4xMjVlbTtcblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRjb2xvcjogJHNreWJsdWU7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHZpb2xldDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOnZpc2l0ZWQge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRza3libHVlO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdHNwYW4uZmlsZS0tYXBwbGljYXRpb24tcGRmIHtcblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9JY29uLVBERi5zdmcnKSBuby1yZXBlYXQ7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogLTAuMTI1ZW07IC8vIFNldHMgbG93ZXIgYmFzZWxpbmUgdG8gdmlzdWFsbHkgYmFsYW5jZSB0ZXh0XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDAuMjVlbTtcblx0XHRcdFx0d2lkdGg6IDFlbTtcblx0XHRcdFx0aGVpZ2h0OiAxZW07XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0fVxuXG5cblxufVxuIiwiLy8gSG9tZXBhZ2UgTWVzc2FnZVxuLy9cbi8vIFVzZWQgdG8gZGlzcGxheSBub3RpZmljYXRpb25zIG9uIHRoZSBob21wYWdlIHRvIGd1aWRlIHVzZXJzIHRvIG1vcmUgaW5mb3JtYXRpb24gb24gc2VsZWN0IGZlYXR1cmVkIGV2ZW50cyBvZiBpbXBvcnRhbmNlLlxuLy9cbi8vIE1hcmt1cDogaG9tZXBhZ2VfbWVzc2FnZS50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuaG9tZXBhZ2VfbWVzc2FnZVxuLmFiY2QtZXZlbnRzLmhvbWVwYWdlLW1lc3NhZ2Uge1xuXHRwYWRkaW5nLXRvcDogMWVtO1xuXHRib3JkZXItdG9wOiAycHggc29saWQgJGxpZ2h0LWdyYXk7XG5cdG1hcmdpbi10b3A6IDJlbTtcblx0Zm9udC1zaXplOiAxLjI1ZW07XG5cdGZvbnQtc2l6ZTogMy41dnc7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogJHNreWJsdWU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHRcdGZvbnQtc2l6ZTogMS4yNWVtO1xuXHR9XG5cblx0LnZpZXdzLXJvdyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0LmZpZWxkLWNvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9JY29uLUluZm8tT3V0bGluZS5zdmcpIHRvcCBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDAuNzVlbTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMCUgKyAwLjI1ZW0pO1xuXHRcdFx0cGFkZGluZzogMCAwIDAgMS41ZW07XG5cblxuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHRmaWxsOiBmdWNoc2lhO1xuXHRcdH1cblx0fVxuXG5cdGEubGVhcm5fbGluazpsaW5rLFxuXHRhLmxlYXJuX2xpbms6dmlzaXRlZCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRmb250LXNpemU6IDAuODc1ZW07XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0Y29sb3I6ICRwbHVtO1xuXHRcdGRpc3BsYXk6IGluaGVyaXQ7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkb3JhbmdlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSl7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogMC41ZW07XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDAuNWVtO1xuXHRcdH1cblx0fVxuXG59XG4iLCIvLyBIb21lcGFnZVxuLy9cbi8vIEN1c3RvbSBzdHlsaW5nIGZvciBob21lcGFnZS5cbi8vXG4vLyBNYXJrdXA6IGhvbWVwYWdlLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5ob21lcGFnZVxuYm9keS5mcm9udHBhZ2Ugc2VjdGlvbiNjb250ZW50IHtcblxuXG5cdGgxIHtcblx0XHRmb250LXNpemUgOiA2dnc7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRcdGZvbnQtc2l6ZTogNHZ3OyAvLyBOZWVkZWQgZm9yIHJlc2V0dGluZyByZWxhdGl2ZSBzaXppbmdcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0fVxuXG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiAyNTAlO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHR9XG5cblxuXHR9XG5cblx0cCB7XG5cdFx0Zm9udC1zaXplOiA0dnc7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNjI1O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0XHRmb250LXNpemU6IDEuMzc1ZW07IC8vIE5lZWRlZCBmb3IgcmVzZXR0aW5nIHJlbGF0aXZlIHNpemluZ1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNjI1O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IDEuNWVtOyAvLyBOZWVkZWQgZm9yIHJlc2V0dGluZyByZWxhdGl2ZSBzaXppbmdcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjYyNTtcblx0XHR9XG5cblx0fVxufVxuXG5cbi8vIEFkanVzdHMgc3BhY2luZyBpbiBtYWluIGNvbnRhaW5lcnNcbmJvZHkuZnJvbnRwYWdlICNtYWluICNjb250ZW50IHtcblx0cGFkZGluZy1ib3R0b206IDJlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogM2VtO1xuXG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdHBhZGRpbmctYm90dG9tOiA0ZW07XG5cdH1cbn0iLCIvLyBIb21lcGFnZSBIZXJvXG4vL1xuLy8gVGhpcyBjb250cm9scyB0aGUgc3R5bGluZyBmb3IgdGhlIGhvbWVwYWdlIGhlcm8gc2xpZGVyIGRpc3BsYXlcbi8vXG4vLyBNYXJrdXA6IGhvbWVwYWdlaGVyby50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMuaG9tZXBhZ2VoZXJvXG4uaG9tZXBhZ2UtaGVybyB7XG5cdC8vYm9yZGVyOiAxcHggc29saWQgcmVkO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0aW1nIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cblx0Lmhlcm8taW5uZXItY29udGFpbmVyIHtcblx0XHQvL2JvcmRlcjogMXB4IHNvbGlkIHllbGxvdztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0Ly9iYWNrZ3JvdW5kOiBzaGFkZSgkZGFyay10ZWFsLCAyMCUpO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJGJsaywgMC43KTtcblx0XHRvcGFjaXR5OiAwLjk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA2NiU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cblx0XHQuaW50cm8tdGV4dCB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdG1heC13aWR0aDogMzllbTtcblx0XHRcdHBhZGRpbmc6IDJlbSAxZW0gMWVtIDFlbTtcblx0XHRcdC8vYm9yZGVyOiAxcHggc29saWQgZnVjaHNpYTtcblxuXG5cdFx0XHRwIHtcblx0XHRcdFx0Zm9udC1zaXplOiA3dnc7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgwLDAsMCwgMC45KTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pe1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogNHZ3O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogM3Z3O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cblxuXHQuaGVyby1icmFuZGluZy1jb250YWluZXIge1xuXHRcdC8vYm9yZGVyOiAxcHggZGFzaGVkIGZ1Y2hzaWE7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMXZ3O1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA2NiU7XG5cdFx0XHR0b3A6IDJ2dztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdHRvcDogMnZ3O1xuXHRcdH1cblxuXHRcdC5oZXJvLWJyYW5kaW5nIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7IC8vIE5lZWRzIHRvIGJlIGluIHRvIHNpemUgY2hpbGQgZWxlbWVudHNcblx0XHRcdG1heC13aWR0aDogMzllbTtcblx0XHRcdHBhZGRpbmc6IDFlbTtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHQvL2JvcmRlcjogMXB4IHNvbGlkIHJlZDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHRcdGltZy5oZXJvLWxvZ28ge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IDhlbTtcblx0XHR9XG5cdH1cblxufSIsIi8vIExvd2VyIEJhbm5lclxuLy9cbi8vIE1hcmt1cDogbG93ZXJfYmFubmVyLnR3aWdcbi8vXG4vLyBTdHlsZSBndWlkZTogY29tcG9uZW50cy5sb3dlcl9iYW5uZXJcbiNsb3dlcmJhbm5lcndyYXBwZXIge1xuXHQvL2JvcmRlcjogMXB4IHNvbGlkIHllbGxvdztcblxuXHQvLyBDaGlsZCBFbGVtZW50IFN0eWxpbmdcblx0aDMsXG5cdGgzIGE6bGluayxcblx0aDMgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkYmxrLCAwLjkpLCAwIDAgMWVtIHJnYmEoJGJsaywgMC44KSwgMCAwIDEuNWVtIHJnYmEoJGJsaywgMC44KTtcblx0XHRmb250LXNpemU6IDZ2dztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiAxODAlO1xuXHRcdFx0Zm9udC1zaXplOiAxLjM3NWVtOyAvLyBOZWVkZWQgZm9yIHJlc2V0dGluZyByZWxhdGl2ZSBzaXppbmdcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiAxODAlO1xuXHRcdFx0Zm9udC1zaXplOiAxLjM3NWVtOyAvLyBOZWVkZWQgZm9yIHJlc2V0dGluZyByZWxhdGl2ZSBzaXppbmdcblx0XHR9XG5cdH1cblxuXHRwIHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkYmxrLCAwLjkpLCAwIDAgMWVtIHJnYmEoJGJsaywgMC44KSwgMCAwIDEuNWVtIHJnYmEoJGJsaywgMC44KTtcblx0XHRmb250LXNpemU6IDEuNWVtO1xuXHRcdGZvbnQtc2l6ZTogNHZ3O1xuXHRcdG1hcmdpbi1ib3R0b206IDFlbTtcblx0XHRsaW5lLWhlaWdodDogMTQwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHR9XG5cdH1cblxuXHQvLyBPcHBvc2l0ZSBzZXR0aW5ncyBmb3IgbGlnaHQgdGhlbWUga2V5XG5cdC5saWdodCB7XG5cdFx0Y29sb3I6IGJsYWNrO1xuXG5cdFx0aDMsXG5cdFx0aDMgYTpsaW5rLFxuXHRcdGgzIGE6dmlzaXRlZCB7XG5cdFx0XHRjb2xvcjogJGJsaztcblx0XHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkd2hpdGUsIDAuOSksIDAgMCAxZW0gcmdiYSgkd2hpdGUsIDAuOCk7XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogJGJsaztcblx0XHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkd2hpdGUsIDAuOSksIDAgMCAxZW0gcmdiYSgkd2hpdGUsIDAuOCk7XG5cblx0XHR9XG5cdH1cblxuXHQubW9yZS1saW5rIGE6bGluayxcblx0Lm1vcmUtbGluayBhOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkYmxrLCAwLjUpO1xuXHRcdHBhZGRpbmc6IDAuNWVtO1xuXHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRibGssIDAuNSk7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcblx0XHRmb250LXNpemU6IDR2dztcblx0XHRib3gtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkYmxrLCAwLjUpLCAwIDAgMWVtIHJnYmEoJGJsaywgMC44KTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiAxZW07XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdH1cblx0fVxuXG5cdC5tb3JlLWxpbmsgYTpob3ZlciB7XG5cdFx0Y29sb3I6ICRvcmFuZ2U7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJG9yYW5nZTtcblx0fVxuXG5cdC5jdGEtYmFubmVyIHtcblx0XHQvL2JvcmRlcjogMXB4IHNvbGlkIGZ1Y2hzaWE7XG5cblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0Ly8gQ29udGFpbmVyIEVsZW1lbnQgU3R5bGluZ1xuXHRcdC5jdGEtaGFsZi1lbGVtZW50IHtcblx0XHRcdC8vYm9yZGVyOiAxcHggc29saWQgb3JhbmdlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRmbG9hdDogbGVmdDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHR9XG5cblx0XHRcdC52aWV3cy1maWVsZC1maWVsZC1sYW5kaW5nLXBhZ2UtaGVhZGVyLWltYWdlIC5maWVsZC1jb250ZW50IHtcblx0XHRcdFx0bWF4LWhlaWdodDogbm9uZTtcblx0XHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDogMTZlbTtcblx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdFx0XHRtYXgtaGVpZ2h0OiAxNmVtO1xuXHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXG5cdFx0XHQuY3RhLWhhbGYtZWxlbWVudC1pbm5lciB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG5cdFx0XHRcdHBhZGRpbmc6IDFlbSAwO1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkOyAvLyBVc2UgdG8gdmVydGljYWxseSBzcGFjZSBlbGVtZW50c1xuXHRcdFx0XHRhbGlnbi1pdGVtczogZW5kOyAvLyBVc2UgdG8gdmVydGljYWxseSBzcGFjZSBlbGVtZW50c1xuXHRcdFx0XHRhbGlnbi1jb250ZW50OiBjZW50ZXI7ICAvLyBVc2UgdG8gdmVydGljYWxseSBzcGFjZSBlbGVtZW50cyBpbiBTYWZhcmlcblx0XHRcdFx0Ly9ib3JkZXI6IDJweCBkb3R0ZWQgb3JhbmdlO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDFlbTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDM5ZW07XG5cdFx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0XHRwYWRkaW5nOiAxZW07XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0fVx0XHRcdFx0XG5cblx0XHRcdH1cblxuXHRcdH1cblxuXHRcdC8vIFNldHMgYWxpZ25tZW50IGZvciByaWdodC1oYW5kIGVsZW1lbnRcblx0XHQuY3RhLWhhbGYtZWxlbWVudC52aWV3cy1yb3cudmlld3Mtcm93LWxhc3Qge1xuXHRcdFx0Ly9ib3JkZXI6IDNweCBkb3R0ZWQgcmVkO1xuXG5cdFx0XHQuY3RhLWhhbGYtZWxlbWVudC1pbm5lciB7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuY3RhLWZ1bGwtZWxlbWVudCB7XG5cdFx0XHQvL2JvcmRlcjogMXB4IGRhc2hlZCB3aGl0ZTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1heC1oZWlnaHQ6IG5vbmU7XG5cdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbWVkaXVtKXtcblx0XHRcdFx0bWF4LWhlaWdodDogMTZlbTtcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHRcdFx0XHRtYXgtaGVpZ2h0OiAxNmVtO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0fVx0XHRcdFxuXG5cblx0XHRcdC5jdGEtZnVsbC1lbGVtZW50LWlubmVyIHtcblx0XHRcdFx0Ly9ib3JkZXI6IDJweCBkb3R0ZWQgZnVjaHNpYTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0cGFkZGluZzogMWVtIDA7XG5cdFx0XHRcdGRpc3BsYXk6IGdyaWQ7IC8vIFVzZSB0byB2ZXJ0aWNhbGx5IHNwYWNlIGVsZW1lbnRzXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBlbmQ7IC8vIFVzZSB0byB2ZXJ0aWNhbGx5IHNwYWNlIGVsZW1lbnRzXG5cdFx0XHRcdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgIC8vIFVzZSB0byB2ZXJ0aWNhbGx5IHNwYWNlIGVsZW1lbnRzIGluIFNhZmFyaVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxhcmdlKXtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDgwZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLy8gVGVybSBSZWZlcmVuY2VzXG4vL1xuLy8gRGlzcGxheSBvZiB0ZXJtIHJlZmVyZW5jZXMgYW5kIGxpc3RpbmcgZGlzcGxheXMgb2YgdGhpcyBjb250ZW50XG4vL1xuLy8gTWFya3VwOiB0ZXJtX3JlZmVyZW5jZXMudHdpZ1xuLy9cbi8vIFN0eWxlIGd1aWRlOiBjb21wb25lbnRzLnRlcm1fcmVmZXJlbmNlc1xuYXJ0aWNsZSAuZmllbGQtLXR5cGUtZW50aXR5LXJlZmVyZW5jZSB7XG5cdG1hcmdpbi10b3A6IDJlbTtcblxuXHQuZmllbGRfX2xhYmVsIHtcblx0XHRmb250LWZhbWlseTogJGhlYWRpbmdfZm9udDtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGNvbG9yOiAkc2t5Ymx1ZTtcblx0XHRmb250LXNpemU6IDEuMmVtO1xuXHR9XG5cblx0LmZpZWxkX19pdGVtcyB7XG5cdFx0bWFyZ2luLXRvcDogMC41ZW07XG5cblx0XHQuZmllbGRfX2l0ZW0gYTpsaW5rLFxuXHRcdC5maWVsZF9faXRlbSBhOnZpc2l0ZWQge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdGJhY2tncm91bmQ6ICR2aW9sZXQ7XG5cdFx0XHRwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwLjI1ZW07XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRwbHVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG59XG5cbi8vIFRheG9ub215IERpc3BsYXlzIG9mIFRlcm1zXG4udmlldy10YXhvbm9teS10ZXJtIHtcblxuXG5cdGFydGljbGUge1xuXHRcdG1hcmdpbi10b3A6IDFlbTtcblxuXHRcdGgyIHtcblx0XHRcdGZvbnQtc2l6ZTogMTQwJTtcbiAgICBcdFx0Y29sb3I6ICR2aW9sZXQ7XG4gICAgXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgXHRcdGEge1xuICAgIFx0XHRcdGNvbG9yOiAkc2t5Ymx1ZTtcblxuICAgIFx0XHRcdCY6aG92ZXIge1xuICAgIFx0XHRcdFx0Y29sb3I6ICR2aW9sZXQ7XG4gICAgXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBcdFx0XHR9XG5cbiAgICBcdFx0XHQmOnZpc2l0ZWQge1xuICAgIFx0XHRcdFx0Y29sb3I6ICRza3libHVlO1xuICAgIFx0XHRcdH1cblxuICAgIFx0XHR9XG5cdFx0fVxuXG5cdFx0Y29udGVudCBwIHtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXHR9XG5cblx0LmZlZWQtaWNvbnMge1xuXHRcdG1hcmdpbi10b3A6IDJlbTtcblxuXHRcdGEge1xuXHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0Y29sb3I6ICRza3libHVlO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6ICR2aW9sZXQ7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0fVxuXG5cdFx0XHQmOnZpc2l0ZWQge1xuXHRcdFx0XHRjb2xvcjogJHNreWJsdWU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvLyBVc2VyIFByb2ZpbGVcbi8vXG4vLyBFbGVtZW50IFN0eWxpbmcgZm9yIFVzZXIgUHJvZmlsZSBhbmQgR3JvdXBpbmcgRGlzcGxheXNcbi8vXG4vLyBNYXJrdXA6IHVzZXJfcHJvZmlsZS50d2lnXG4vL1xuLy8gU3R5bGUgZ3VpZGU6IGNvbXBvbmVudHMudXNlcl9wcm9maWxlXG5cbi8vIEhpZGVzIFRpdGxlIG9uIFVzZXIgUHJvZmlsZSBQYWdlXG5ib2R5LnBhdGgtLXVzZXIgLmJsb2NrLXBhZ2UtdGl0bGUtYmxvY2sge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udXNlcl9wcm9maWxlX3BhZ2Uge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuXHQuYmlvX3Bob3RvIGltZyB7XG5cdFx0d2lkdGg6IDEyZW07XG5cdFx0Ym9yZGVyOiA2cHggc29saWQgJHdoaXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRib3gtc2hhZG93OiAwIDAgMmVtIHJnYmEoJGJsaywgMC41KTtcblx0XHRtYXJnaW46IDJlbSAwO1xuXHR9XG5cblx0LmJpb19uYW1lIGgyIHtcblx0XHRjb2xvcjogJHNreWJsdWU7XG5cdH1cblxuXHQuZmllbGQtLW5hbWUtZmllbGQtZmlyc3QtbmFtZSxcblx0LmZpZWxkLS1uYW1lLWZpZWxkLWxhc3QtbmFtZSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cblx0LmJpb190aXRsZSBoNCB7XG5cdFx0Zm9udC1zaXplOiAxLjI1ZW07XG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdH1cblxuXHQuYmlvX2Jpb2dyYXBoeSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDRlbTtcblx0fVxuXG59XG5cbi8vIEdyb3VwIERpc3BsYXlzXG4uc3RhZmYtbGlzdGluZ3Mge1xuXG5cdFx0LnZpZXctaGVhZGVyIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDFlbTtcblxuXHRcdFx0YTpsaW5rLFxuXHRcdFx0YTp2aXNpdGVkIHtcblx0XHRcdFx0Y29sb3I6ICRza3libHVlO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAkdmlvbGV0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cblx0XHQudmlldy1jb250ZW50IHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG5cdFx0Z3JpZC1jb2x1bW4tZ2FwOiAyMHB4O1xuXHRcdGdyaWQtcm93LWdhcDogMjBweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1lZGl1bSl7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuXHQgIFx0fVxuXHQgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGFyZ2Upe1xuXHQgIFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuXHQgIFx0fVxuXG5cblx0XHQudXNlci1saXN0aW5nIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDFlbTtcblx0XHRcdGRpc3BsYXk6IGdyaWQ7XG5cdFx0XHRncmlkLWNvbHVtbjogMSAvIGluaGVyaXQ7XG5cdFx0XHRhbGlnbi1jb250ZW50OiBzdGFydDtcblxuXHRcdFx0LnZpZXdzLWZpZWxkLXVzZXItcGljdHVyZSAgYTpsaW5rIGltZyxcblx0XHRcdC52aWV3cy1maWVsZC11c2VyLXBpY3R1cmUgYTp2aXNpdGVkIGltZyB7XG5cdFx0XHRcdHdpZHRoOiA3NSU7XG5cdFx0XHRcdGJvcmRlcjogNnB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHRib3gtc2hhZG93OiAwIDAgMmVtIHJnYmEoJGJsaywgMC41KTtcblx0XHRcdFx0bWFyZ2luOiAxZW0gMDtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXG5cdFx0XHRoNCB7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxMzAlO1xuXHRcdFx0fVxuXG5cdFx0XHQudmlld3MtZmllbGQtZmllbGQtZmlyc3QtbmFtZSBoNCB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQudmlld3MtZmllbGQtZmllbGQtam9iLXRpdGxlIHtcblx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0fVxuXG5cdFx0fVxuXHR9XG59XG4iLCIvLy8gRXhhbXBsZSBnbG9iYWwgc3RhdGUvKiBjb2RlIC8vLy8vLy8vLy8vLy9cbi8vLyBTZWUgaHR0cHM6Ly9zbWFjc3MuY29tL2Jvb2svdHlwZS1zdGF0ZVxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi5pcy1jb2xsYXBzZWQge1xuXG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iXX0= */
