@charset "UTF-8";
/*****************************************************************************
 Hier werden "benötigte!!!" Erweiterungen inkludiert
 ****************************************************************************/
@import url("https://fonts.googleapis.com/css?family=Raleway:500,400,300,700");
@import url("https://fonts.googleapis.com/css?family=Montserrat:400,700");
meta.foundation-version {
  font-family: "/{{VERSION}}/"; }

meta.foundation-mq-small {
  font-family: "/only screen/";
  width: 0em; }

meta.foundation-mq-small-only {
  font-family: "/only screen and (max-width: 59.625rem)/";
  width: 0em; }

meta.foundation-mq-medium {
  font-family: "/only screen and (min-width:47.9375rem)/";
  width: 47.9375rem; }

meta.foundation-mq-medium-only {
  font-family: "/only screen and (min-width:47.9375rem) and (max-width:62.4375rem)/";
  width: 47.9375rem; }

meta.foundation-mq-large {
  font-family: "/only screen and (min-width:62.5rem)/";
  width: 62.5rem; }

meta.foundation-mq-large-only {
  font-family: "/only screen and (min-width:62.5rem) and (max-width:90em)/";
  width: 62.5rem; }

meta.foundation-mq-xlarge {
  font-family: "/only screen and (min-width:90.0625em)/";
  width: 90.0625em; }

meta.foundation-mq-xlarge-only {
  font-family: "/only screen and (min-width:90.0625em) and (max-width:120em)/";
  width: 90.0625em; }

meta.foundation-mq-xxlarge {
  font-family: "/only screen and (min-width:120.0625em)/";
  width: 120.0625em; }

meta.foundation-data-attribute-namespace {
  font-family: false; }

html, body {
  height: 100%; }

html {
  box-sizing: border-box; }

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

html,
body {
  font-size: 100%; }

body {
  background: #fff;
  color: #222;
  cursor: auto;
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  margin: 0;
  padding: 0;
  position: relative; }

a:hover {
  cursor: pointer; }

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

img {
  -ms-interpolation-mode: bicubic; }

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

.left {
  float: left !important; }

.right {
  float: right !important; }

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.hide {
  display: none; }

.invisible {
  visibility: hidden; }

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle; }

textarea {
  height: auto;
  min-height: 50px; }

select {
  width: 100%; }

.row {
  margin: 0 auto;
  max-width: 62.5rem;
  width: 100%; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }
  .row.collapse > .column,
  .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row .row {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .row .row:before, .row .row:after {
      content: " ";
      display: table; }
    .row .row:after {
      clear: both; }
    .row .row.collapse {
      margin: 0;
      max-width: none;
      width: auto; }
      .row .row.collapse:before, .row .row.collapse:after {
        content: " ";
        display: table; }
      .row .row.collapse:after {
        clear: both; }

.column,
.columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

[class*="column"] + [class*="column"]:last-child {
  float: right; }

[class*="column"] + [class*="column"].end {
  float: left; }

@media only screen {
  .small-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .small-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .small-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .small-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .small-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .small-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .small-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .small-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .small-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .small-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .small-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .small-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .small-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .small-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .small-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .small-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .small-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .small-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .small-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .small-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .small-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .small-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .small-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .small-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .small-1 {
    width: 8.33333%; }
  .small-2 {
    width: 16.66667%; }
  .small-3 {
    width: 25%; }
  .small-4 {
    width: 33.33333%; }
  .small-5 {
    width: 41.66667%; }
  .small-6 {
    width: 50%; }
  .small-7 {
    width: 58.33333%; }
  .small-8 {
    width: 66.66667%; }
  .small-9 {
    width: 75%; }
  .small-10 {
    width: 83.33333%; }
  .small-11 {
    width: 91.66667%; }
  .small-12 {
    width: 100%; }
  .small-offset-0 {
    margin-left: 0 !important; }
  .small-offset-1 {
    margin-left: 8.33333% !important; }
  .small-offset-2 {
    margin-left: 16.66667% !important; }
  .small-offset-3 {
    margin-left: 25% !important; }
  .small-offset-4 {
    margin-left: 33.33333% !important; }
  .small-offset-5 {
    margin-left: 41.66667% !important; }
  .small-offset-6 {
    margin-left: 50% !important; }
  .small-offset-7 {
    margin-left: 58.33333% !important; }
  .small-offset-8 {
    margin-left: 66.66667% !important; }
  .small-offset-9 {
    margin-left: 75% !important; }
  .small-offset-10 {
    margin-left: 83.33333% !important; }
  .small-offset-11 {
    margin-left: 91.66667% !important; }
  .small-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.small-centered,
  .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.small-uncentered,
  .columns.small-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.small-centered:last-child,
  .columns.small-centered:last-child {
    float: none; }
  .column.small-uncentered:last-child,
  .columns.small-uncentered:last-child {
    float: left; }
  .column.small-uncentered.opposite,
  .columns.small-uncentered.opposite {
    float: right; }
  .row.small-collapse > .column,
  .row.small-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.small-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.small-uncollapse > .column,
  .row.small-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; } }

@media only screen and (min-width: 47.9375rem) {
  .medium-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .medium-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .medium-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .medium-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .medium-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .medium-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .medium-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .medium-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .medium-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .medium-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .medium-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .medium-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .medium-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .medium-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .medium-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .medium-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .medium-1 {
    width: 8.33333%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-3 {
    width: 25%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-6 {
    width: 50%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-9 {
    width: 75%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-0 {
    margin-left: 0 !important; }
  .medium-offset-1 {
    margin-left: 8.33333% !important; }
  .medium-offset-2 {
    margin-left: 16.66667% !important; }
  .medium-offset-3 {
    margin-left: 25% !important; }
  .medium-offset-4 {
    margin-left: 33.33333% !important; }
  .medium-offset-5 {
    margin-left: 41.66667% !important; }
  .medium-offset-6 {
    margin-left: 50% !important; }
  .medium-offset-7 {
    margin-left: 58.33333% !important; }
  .medium-offset-8 {
    margin-left: 66.66667% !important; }
  .medium-offset-9 {
    margin-left: 75% !important; }
  .medium-offset-10 {
    margin-left: 83.33333% !important; }
  .medium-offset-11 {
    margin-left: 91.66667% !important; }
  .medium-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.medium-centered,
  .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.medium-uncentered,
  .columns.medium-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.medium-centered:last-child,
  .columns.medium-centered:last-child {
    float: none; }
  .column.medium-uncentered:last-child,
  .columns.medium-uncentered:last-child {
    float: left; }
  .column.medium-uncentered.opposite,
  .columns.medium-uncentered.opposite {
    float: right; }
  .row.medium-collapse > .column,
  .row.medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.medium-uncollapse > .column,
  .row.medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

@media only screen and (min-width: 62.5rem) {
  .large-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .large-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .large-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .large-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .large-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .large-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .large-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .large-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .large-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .large-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .large-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .large-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .large-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .large-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .large-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .large-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .large-1 {
    width: 8.33333%; }
  .large-2 {
    width: 16.66667%; }
  .large-3 {
    width: 25%; }
  .large-4 {
    width: 33.33333%; }
  .large-5 {
    width: 41.66667%; }
  .large-6 {
    width: 50%; }
  .large-7 {
    width: 58.33333%; }
  .large-8 {
    width: 66.66667%; }
  .large-9 {
    width: 75%; }
  .large-10 {
    width: 83.33333%; }
  .large-11 {
    width: 91.66667%; }
  .large-12 {
    width: 100%; }
  .large-offset-0 {
    margin-left: 0 !important; }
  .large-offset-1 {
    margin-left: 8.33333% !important; }
  .large-offset-2 {
    margin-left: 16.66667% !important; }
  .large-offset-3 {
    margin-left: 25% !important; }
  .large-offset-4 {
    margin-left: 33.33333% !important; }
  .large-offset-5 {
    margin-left: 41.66667% !important; }
  .large-offset-6 {
    margin-left: 50% !important; }
  .large-offset-7 {
    margin-left: 58.33333% !important; }
  .large-offset-8 {
    margin-left: 66.66667% !important; }
  .large-offset-9 {
    margin-left: 75% !important; }
  .large-offset-10 {
    margin-left: 83.33333% !important; }
  .large-offset-11 {
    margin-left: 91.66667% !important; }
  .large-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.large-centered,
  .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.large-uncentered,
  .columns.large-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.large-centered:last-child,
  .columns.large-centered:last-child {
    float: none; }
  .column.large-uncentered:last-child,
  .columns.large-uncentered:last-child {
    float: left; }
  .column.large-uncentered.opposite,
  .columns.large-uncentered.opposite {
    float: right; }
  .row.large-collapse > .column,
  .row.large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.large-uncollapse > .column,
  .row.large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

.accordion {
  margin-bottom: 0; }
  .accordion:before, .accordion:after {
    content: " ";
    display: table; }
  .accordion:after {
    clear: both; }
  .accordion .accordion-navigation, .accordion dd {
    display: block;
    margin-bottom: 0 !important; }
    .accordion .accordion-navigation.active > a, .accordion dd.active > a {
      background: #e8e8e8; }
    .accordion .accordion-navigation > a, .accordion dd > a {
      background: #EFEFEF;
      color: #222222;
      display: block;
      font-family: "Raleway", sans-serif;
      font-size: 1rem;
      padding: 1rem; }
      .accordion .accordion-navigation > a:hover, .accordion dd > a:hover {
        background: #e3e3e3; }
    .accordion .accordion-navigation > .content, .accordion dd > .content {
      display: none;
      padding: 0.9375rem; }
      .accordion .accordion-navigation > .content.active, .accordion dd > .content.active {
        background: #ffffff;
        display: block; }

[class*="block-grid-"] {
  display: block;
  padding: 0;
  margin: 0 -0.625rem; }
  [class*="block-grid-"]:before, [class*="block-grid-"]:after {
    content: " ";
    display: table; }
  [class*="block-grid-"]:after {
    clear: both; }
  [class*="block-grid-"] > li {
    display: block;
    float: left;
    height: auto;
    padding: 0 0.625rem 1.25rem; }

@media only screen {
  .small-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .small-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .small-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .small-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .small-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .small-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .small-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .small-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .small-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .small-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .small-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .small-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .small-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .small-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .small-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .small-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .small-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .small-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .small-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .small-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .small-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .small-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .small-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .small-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

@media only screen and (min-width: 47.9375rem) {
  .medium-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .medium-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .medium-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .medium-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .medium-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .medium-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .medium-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .medium-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .medium-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .medium-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .medium-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .medium-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .medium-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .medium-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .medium-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .medium-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .medium-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .medium-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .medium-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .medium-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .medium-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .medium-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .medium-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .medium-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

@media only screen and (min-width: 62.5rem) {
  .large-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .large-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .large-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .large-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .large-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .large-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .large-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .large-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .large-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .large-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .large-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .large-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .large-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .large-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .large-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .large-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .large-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .large-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .large-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .large-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .large-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .large-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .large-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .large-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

/* Clearing Styles */
.clearing-thumbs, [data-clearing] {
  list-style: none;
  margin-left: 0;
  margin-bottom: 0; }
  .clearing-thumbs:before, .clearing-thumbs:after, [data-clearing]:before, [data-clearing]:after {
    content: " ";
    display: table; }
  .clearing-thumbs:after, [data-clearing]:after {
    clear: both; }
  .clearing-thumbs li, [data-clearing] li {
    float: left;
    margin-right: 10px; }
  .clearing-thumbs[class*="block-grid-"] li, [data-clearing][class*="block-grid-"] li {
    margin-right: 0; }

.clearing-blackout {
  background: #333333;
  height: 100%;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 998;
  left: 0; }
  .clearing-blackout .clearing-close {
    display: block; }

.clearing-container {
  height: 100%;
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 998; }

.clearing-touch-label {
  color: #AAAAAA;
  font-size: .6em;
  left: 50%;
  position: absolute;
  top: 50%; }

.visible-img {
  height: 95%;
  position: relative; }
  .visible-img img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    max-height: 100%;
    max-width: 100%; }

.clearing-caption {
  background: #333333;
  bottom: 0;
  color: #CCCCCC;
  font-size: 0.875em;
  line-height: 1.3;
  margin-bottom: 0;
  padding: 10px 30px 20px;
  position: absolute;
  text-align: center;
  width: 100%;
  left: 0; }

.clearing-close {
  color: #CCCCCC;
  display: none;
  font-size: 30px;
  line-height: 1;
  padding-left: 20px;
  padding-top: 10px;
  z-index: 999; }
  .clearing-close:hover, .clearing-close:focus {
    color: #CCCCCC; }

.clearing-assembled .clearing-container {
  height: 100%; }
  .clearing-assembled .clearing-container .carousel > ul {
    display: none; }

.clearing-feature li {
  display: none; }
  .clearing-feature li.clearing-featured-img {
    display: block; }

@media only screen and (min-width: 47.9375rem) {
  .clearing-main-prev,
  .clearing-main-next {
    height: 100%;
    position: absolute;
    top: 0;
    width: 40px; }
    .clearing-main-prev > span,
    .clearing-main-next > span {
      border: solid 12px;
      display: block;
      height: 0;
      position: absolute;
      top: 50%;
      width: 0; }
      .clearing-main-prev > span:hover,
      .clearing-main-next > span:hover {
        opacity: .8; }
  .clearing-main-prev {
    left: 0; }
    .clearing-main-prev > span {
      left: 5px;
      border-color: transparent;
      border-right-color: #CCCCCC; }
  .clearing-main-next {
    right: 0; }
    .clearing-main-next > span {
      border-color: transparent;
      border-left-color: #CCCCCC; }
  .clearing-main-prev.disabled,
  .clearing-main-next.disabled {
    opacity: .3; }
  .clearing-assembled .clearing-container .carousel {
    background: rgba(51, 51, 51, 0.8);
    height: 120px;
    margin-top: 10px;
    text-align: center; }
    .clearing-assembled .clearing-container .carousel > ul {
      display: inline-block;
      z-index: 999;
      height: 100%;
      position: relative;
      float: none; }
      .clearing-assembled .clearing-container .carousel > ul li {
        clear: none;
        cursor: pointer;
        display: block;
        float: left;
        margin-right: 0;
        min-height: inherit;
        opacity: .4;
        overflow: hidden;
        padding: 0;
        position: relative;
        width: 120px; }
        .clearing-assembled .clearing-container .carousel > ul li.fix-height img {
          height: 100%;
          max-width: none; }
        .clearing-assembled .clearing-container .carousel > ul li a.th {
          border: none;
          box-shadow: none;
          display: block; }
        .clearing-assembled .clearing-container .carousel > ul li img {
          cursor: pointer !important;
          width: 100% !important; }
        .clearing-assembled .clearing-container .carousel > ul li.visible {
          opacity: 1; }
        .clearing-assembled .clearing-container .carousel > ul li:hover {
          opacity: .8; }
  .clearing-assembled .clearing-container .visible-img {
    background: #333333;
    height: 85%;
    overflow: hidden; }
  .clearing-close {
    padding-left: 0;
    padding-top: 0;
    position: absolute;
    top: 10px;
    right: 20px; } }

button, .button {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Raleway", sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 1.25rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 1rem 2rem 1.0625rem 2rem;
  font-size: 1rem;
  background-color: #008CBA;
  border-color: #007095;
  color: #ffffff;
  transition: background-color 300ms ease-out; }
  button:hover, button:focus, .button:hover, .button:focus {
    background-color: #007095; }
  button:hover, button:focus, .button:hover, .button:focus {
    color: #ffffff; }
  button.secondary, .button.secondary {
    background-color: #e7e7e7;
    border-color: #b9b9b9;
    color: #333333; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      background-color: #b9b9b9; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      color: #333333; }
  button.success, .button.success {
    background-color: #43AC6A;
    border-color: #368a55;
    color: #ffffff; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      background-color: #368a55; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      color: #ffffff; }
  button.alert, .button.alert {
    background-color: #f04124;
    border-color: #cf2a0e;
    color: #ffffff; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      background-color: #cf2a0e; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      color: #ffffff; }
  button.warning, .button.warning {
    background-color: #f08a24;
    border-color: #cf6e0e;
    color: #ffffff; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      background-color: #cf6e0e; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      color: #ffffff; }
  button.info, .button.info {
    background-color: #a0d3e8;
    border-color: #61b6d9;
    color: #333333; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      background-color: #61b6d9; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      color: #ffffff; }
  button.large, .button.large {
    padding: 1.125rem 2.25rem 1.1875rem 2.25rem;
    font-size: 1.25rem; }
  button.small, .button.small {
    padding: 0.875rem 1.75rem 0.9375rem 1.75rem;
    font-size: 0.8125rem; }
  button.tiny, .button.tiny {
    padding: 0.625rem 1.25rem 0.6875rem 1.25rem;
    font-size: 0.6875rem; }
  button.expand, .button.expand {
    padding-left: 0;
    padding-right: 0;
    width: 100%; }
  button.left-align, .button.left-align {
    text-align: left;
    text-indent: 0.75rem; }
  button.right-align, .button.right-align {
    text-align: right;
    padding-right: 0.75rem; }
  button.radius, .button.radius {
    border-radius: 3px; }
  button.round, .button.round {
    border-radius: 1000px; }
  button.disabled, button[disabled], .button.disabled, .button[disabled] {
    background-color: #008CBA;
    border-color: #007095;
    color: #ffffff;
    box-shadow: none;
    cursor: default;
    opacity: 0.7; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #007095; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      color: #ffffff; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #008CBA; }
    button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .button[disabled].secondary {
      background-color: #e7e7e7;
      border-color: #b9b9b9;
      color: #333333;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #b9b9b9; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        color: #333333; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #e7e7e7; }
    button.disabled.success, button[disabled].success, .button.disabled.success, .button[disabled].success {
      background-color: #43AC6A;
      border-color: #368a55;
      color: #ffffff;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #368a55; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        color: #ffffff; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #43AC6A; }
    button.disabled.alert, button[disabled].alert, .button.disabled.alert, .button[disabled].alert {
      background-color: #f04124;
      border-color: #cf2a0e;
      color: #ffffff;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cf2a0e; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        color: #ffffff; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #f04124; }
    button.disabled.warning, button[disabled].warning, .button.disabled.warning, .button[disabled].warning {
      background-color: #f08a24;
      border-color: #cf6e0e;
      color: #ffffff;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #cf6e0e; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        color: #ffffff; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #f08a24; }
    button.disabled.info, button[disabled].info, .button.disabled.info, .button[disabled].info {
      background-color: #a0d3e8;
      border-color: #61b6d9;
      color: #333333;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #61b6d9; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        color: #ffffff; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #a0d3e8; }

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

@media only screen and (min-width: 47.9375rem) {
  button, .button {
    display: inline-block; } }

/* Standard Forms */
form {
  margin: 0 0 1rem; }

/* Using forms within rows, we need to set some defaults */
form .row .row {
  margin: 0 -0.5rem; }
  form .row .row .column,
  form .row .row .columns {
    padding: 0 0.5rem; }
  form .row .row.collapse {
    margin: 0; }
    form .row .row.collapse .column,
    form .row .row.collapse .columns {
      padding: 0; }
    form .row .row.collapse input {
      -webkit-border-bottom-right-radius: 0;
      -webkit-border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-top-right-radius: 0; }

form .row input.column,
form .row input.columns,
form .row textarea.column,
form .row textarea.columns {
  padding-left: 0.5rem; }

/* Label Styles */
label {
  color: #4d4d4d;
  cursor: pointer;
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0;
  /* Styles for required inputs */ }
  label.right {
    float: none !important;
    text-align: right; }
  label.inline {
    margin: 0 0 1rem 0;
    padding: 0.5625rem 0; }
  label small {
    text-transform: capitalize;
    color: #676767; }

/* Attach elements to the beginning or end of an input */
.prefix,
.postfix {
  border-style: solid;
  border-width: 1px;
  display: block;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem;
  overflow: visible;
  padding-bottom: 0;
  padding-top: 0;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 2; }

/* Adjust padding, alignment and radius if pre/post element is a button */
.postfix.button {
  border: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-top: 0;
  text-align: center; }

.prefix.button {
  border: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-top: 0;
  text-align: center; }

.prefix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.postfix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.prefix.button.round {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

.postfix.button.round {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

/* Separate prefix and postfix styles when on span or label so buttons keep their own */
span.prefix, label.prefix {
  background: #f2f2f2;
  border-right: none;
  color: #333333;
  border-color: #cccccc; }

span.postfix, label.postfix {
  background: #f2f2f2;
  border-left: none;
  color: #333333;
  border-color: #cccccc; }

/* We use this to get basic styling on all basic form elements */
input[type="text"], input[type="password"], input[type="date"], 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"], input[type="color"], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  background-color: #ffffff;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-family: inherit;
  font-size: 0.875rem;
  height: 2.3125rem;
  margin: 0 0 1rem 0;
  padding: 0.5rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-color 0.15s linear, background 0.15s linear;
  -moz-transition: border-color 0.15s linear, background 0.15s linear;
  -ms-transition: border-color 0.15s linear, background 0.15s linear;
  -o-transition: border-color 0.15s linear, background 0.15s linear;
  transition: border-color 0.15s linear, background 0.15s linear; }
  input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, 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, input[type="color"]:focus, textarea:focus {
    background: #fafafa;
    border-color: #999999;
    outline: none; }
  input[type="text"]:disabled, input[type="password"]:disabled, input[type="date"]:disabled, input[type="datetime"]:disabled, input[type="datetime-local"]:disabled, input[type="month"]:disabled, input[type="week"]:disabled, input[type="email"]:disabled, input[type="number"]:disabled, input[type="search"]:disabled, input[type="tel"]:disabled, input[type="time"]:disabled, input[type="url"]:disabled, input[type="color"]:disabled, textarea:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"][disabled], input[type="text"][readonly],
  fieldset[disabled] input[type="text"], input[type="password"][disabled], input[type="password"][readonly],
  fieldset[disabled] input[type="password"], input[type="date"][disabled], input[type="date"][readonly],
  fieldset[disabled] input[type="date"], input[type="datetime"][disabled], input[type="datetime"][readonly],
  fieldset[disabled] input[type="datetime"], input[type="datetime-local"][disabled], input[type="datetime-local"][readonly],
  fieldset[disabled] input[type="datetime-local"], input[type="month"][disabled], input[type="month"][readonly],
  fieldset[disabled] input[type="month"], input[type="week"][disabled], input[type="week"][readonly],
  fieldset[disabled] input[type="week"], input[type="email"][disabled], input[type="email"][readonly],
  fieldset[disabled] input[type="email"], input[type="number"][disabled], input[type="number"][readonly],
  fieldset[disabled] input[type="number"], input[type="search"][disabled], input[type="search"][readonly],
  fieldset[disabled] input[type="search"], input[type="tel"][disabled], input[type="tel"][readonly],
  fieldset[disabled] input[type="tel"], input[type="time"][disabled], input[type="time"][readonly],
  fieldset[disabled] input[type="time"], input[type="url"][disabled], input[type="url"][readonly],
  fieldset[disabled] input[type="url"], input[type="color"][disabled], input[type="color"][readonly],
  fieldset[disabled] input[type="color"], textarea[disabled], textarea[readonly],
  fieldset[disabled] textarea {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"].radius, input[type="password"].radius, input[type="date"].radius, input[type="datetime"].radius, input[type="datetime-local"].radius, input[type="month"].radius, input[type="week"].radius, input[type="email"].radius, input[type="number"].radius, input[type="search"].radius, input[type="tel"].radius, input[type="time"].radius, input[type="url"].radius, input[type="color"].radius, textarea.radius {
    border-radius: 3px; }

form .row .prefix-radius.row.collapse input,
form .row .prefix-radius.row.collapse textarea,
form .row .prefix-radius.row.collapse select,
form .row .prefix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-radius.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse input,
form .row .postfix-radius.row.collapse textarea,
form .row .postfix-radius.row.collapse select,
form .row .postfix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-round.row.collapse input,
form .row .prefix-round.row.collapse textarea,
form .row .prefix-round.row.collapse select,
form .row .prefix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

form .row .prefix-round.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse input,
form .row .postfix-round.row.collapse textarea,
form .row .postfix-round.row.collapse select,
form .row .postfix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0; }

/* Respect enforced amount of rows for textarea */
textarea[rows] {
  height: auto; }

/* Not allow resize out of parent */
textarea {
  max-width: 100%; }

/* Add height value for select elements to match text input height */
select {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: #FAFAFA;
  border-radius: 0;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);
  background-position: 100% center;
  background-repeat: no-repeat;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  color: rgba(0, 0, 0, 0.75);
  font-family: inherit;
  font-size: 0.875rem;
  line-height: normal;
  padding: 0.5rem;
  border-radius: 0;
  height: 2.3125rem; }
  select::-ms-expand {
    display: none; }
  select.radius {
    border-radius: 3px; }
  select:hover {
    background-color: #f3f3f3;
    border-color: #999999; }
  select:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  select[multiple] {
    height: auto; }

/* Adjust margin for form elements below */
input[type="file"],
input[type="checkbox"],
input[type="radio"],
select {
  margin: 0 0 1rem 0; }

input[type="checkbox"] + label,
input[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline; }

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

/* HTML5 Number spinners settings */
/* We add basic fieldset styling */
fieldset {
  border: 1px solid #DDDDDD;
  margin: 1.125rem 0;
  padding: 1.25rem; }
  fieldset legend {
    background: #ffffff;
    font-weight: bold;
    margin-left: -0.1875rem;
    margin: 0;
    padding: 0 0.1875rem; }

/* Error Handling */
[data-abide] .error small.error, [data-abide] .error span.error, [data-abide] span.error, [data-abide] small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #ffffff; }

[data-abide] span.error, [data-abide] small.error {
  display: none; }

span.error, small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #ffffff; }

.error input,
.error textarea,
.error select {
  margin-bottom: 0; }

.error input[type="checkbox"],
.error input[type="radio"] {
  margin-bottom: 1rem; }

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

.error small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #ffffff; }

.error > label > small {
  background: transparent;
  color: #676767;
  display: inline;
  font-size: 60%;
  font-style: normal;
  margin: 0;
  padding: 0;
  text-transform: capitalize; }

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

input.error,
textarea.error,
select.error {
  margin-bottom: 0; }

label.error {
  color: #f04124; }

.inline-list {
  list-style: none;
  margin-left: -1.375rem;
  margin-right: 0;
  margin: 0 auto 1.0625rem auto;
  overflow: hidden;
  padding: 0; }
  .inline-list > li {
    display: block;
    float: left;
    list-style: none;
    margin-left: 1.375rem; }
    .inline-list > li > * {
      display: block; }

.label {
  display: inline-block;
  font-family: "Raleway", sans-serif;
  font-weight: normal;
  line-height: 1;
  margin-bottom: auto;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  padding: 0.25rem 0.5rem 0.25rem;
  font-size: 0.6875rem;
  background-color: #008CBA;
  color: #ffffff; }
  .label.radius {
    border-radius: 3px; }
  .label.round {
    border-radius: 1000px; }
  .label.alert {
    background-color: #f04124;
    color: #ffffff; }
  .label.warning {
    background-color: #f08a24;
    color: #ffffff; }
  .label.success {
    background-color: #43AC6A;
    color: #ffffff; }
  .label.secondary {
    background-color: #e7e7e7;
    color: #333333; }
  .label.info {
    background-color: #a0d3e8;
    color: #333333; }

@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* Orbit Graceful Loading */
.slideshow-wrapper {
  position: relative; }
  .slideshow-wrapper ul {
    list-style-type: none;
    margin: 0; }
    .slideshow-wrapper ul li,
    .slideshow-wrapper ul li .orbit-caption {
      display: none; }
    .slideshow-wrapper ul li:first-child {
      display: block; }
  .slideshow-wrapper .orbit-container {
    background-color: transparent; }
    .slideshow-wrapper .orbit-container li {
      display: block; }
      .slideshow-wrapper .orbit-container li .orbit-caption {
        display: block; }
    .slideshow-wrapper .orbit-container .orbit-bullets li {
      display: inline-block; }
  .slideshow-wrapper .preloader {
    border-radius: 1000px;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-name: rotate;
    animation-timing-function: linear;
    border-color: #555555 #ffffff;
    border: solid 3px;
    display: block;
    height: 40px;
    left: 50%;
    margin-left: -20px;
    margin-top: -20px;
    position: absolute;
    top: 50%;
    width: 40px; }

.orbit-container {
  background: none;
  overflow: hidden;
  position: relative;
  width: 100%; }
  .orbit-container .orbit-slides-container {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0); }
    .orbit-container .orbit-slides-container img {
      display: block;
      max-width: 100%; }
    .orbit-container .orbit-slides-container > * {
      position: absolute;
      top: 0;
      width: 100%;
      margin-left: 100%; }
      .orbit-container .orbit-slides-container > *:first-child {
        margin-left: 0; }
      .orbit-container .orbit-slides-container > * .orbit-caption {
        bottom: 0;
        position: absolute;
        background-color: rgba(51, 51, 51, 0.8);
        color: #ffffff;
        font-size: 0.875rem;
        padding: 0.625rem 0.875rem;
        width: 100%; }
  .orbit-container .orbit-slide-number {
    left: 10px;
    background: transparent;
    color: #ffffff;
    font-size: 12px;
    position: absolute;
    top: 10px;
    z-index: 10; }
    .orbit-container .orbit-slide-number span {
      font-weight: 700;
      padding: 0.3125rem; }
  .orbit-container .orbit-timer {
    height: 6px;
    position: absolute;
    top: 12px;
    width: 100px;
    z-index: 10;
    right: 10px; }
    .orbit-container .orbit-timer .orbit-progress {
      background-color: rgba(255, 255, 255, 0.3);
      display: block;
      height: 3px;
      position: relative;
      right: 20px;
      top: 5px;
      width: 0; }
    .orbit-container .orbit-timer > span {
      border-bottom: none;
      border-top: none;
      border: solid 4px #ffffff;
      display: none;
      height: 14px;
      position: absolute;
      top: 0;
      width: 11px;
      right: 0; }
    .orbit-container .orbit-timer.paused > span {
      border-color: transparent;
      border-left-color: #ffffff;
      border-left-style: solid;
      border: inset 8px;
      height: 14px;
      top: 0;
      width: 11px;
      right: -4px; }
      .orbit-container .orbit-timer.paused > span.dark {
        border-left-color: #333333; }
  .orbit-container:hover .orbit-timer > span {
    display: block; }
  .orbit-container .orbit-prev,
  .orbit-container .orbit-next {
    background-color: transparent;
    color: white;
    height: 60px;
    line-height: 50px;
    margin-top: -25px;
    position: absolute;
    text-indent: -9999px !important;
    top: 45%;
    width: 36px;
    z-index: 10; }
    .orbit-container .orbit-prev:hover,
    .orbit-container .orbit-next:hover {
      background-color: rgba(0, 0, 0, 0.3); }
    .orbit-container .orbit-prev > span,
    .orbit-container .orbit-next > span {
      border: inset 10px;
      display: block;
      height: 0;
      margin-top: -10px;
      position: absolute;
      top: 50%;
      width: 0; }
  .orbit-container .orbit-prev {
    left: 0; }
    .orbit-container .orbit-prev > span {
      border-right-style: solid;
      border-color: transparent;
      border-right-color: #ffffff; }
    .orbit-container .orbit-prev:hover > span {
      border-right-color: #ffffff; }
  .orbit-container .orbit-next {
    right: 0; }
    .orbit-container .orbit-next > span {
      border-color: transparent;
      border-left-style: solid;
      border-left-color: #ffffff;
      left: 50%;
      margin-left: -4px; }
    .orbit-container .orbit-next:hover > span {
      border-left-color: #ffffff; }

.orbit-bullets-container {
  text-align: center; }

.orbit-bullets {
  display: block;
  float: none;
  margin: 0 auto 30px auto;
  overflow: hidden;
  position: relative;
  text-align: center;
  top: 10px; }
  .orbit-bullets li {
    background: #ffffff;
    cursor: pointer;
    display: inline-block;
    float: none;
    height: 0.8125rem;
    margin-right: 6px;
    width: 0.8125rem;
    border-radius: 1000px; }
    .orbit-bullets li.active {
      background: #fff5c2; }
    .orbit-bullets li:last-child {
      margin-right: 0; }

.touch .orbit-container .orbit-prev,
.touch .orbit-container .orbit-next {
  display: none; }

.touch .orbit-bullets {
  display: none; }

@media only screen and (min-width: 47.9375rem) {
  .touch .orbit-container .orbit-prev,
  .touch .orbit-container .orbit-next {
    display: inherit; }
  .touch .orbit-bullets {
    display: block; } }

@media only screen and (max-width: 59.625rem) {
  .orbit-stack-on-small .orbit-slides-container {
    height: auto !important; }
  .orbit-stack-on-small .orbit-slides-container > * {
    margin: 0  !important;
    opacity: 1 !important;
    position: relative; }
  .orbit-stack-on-small .orbit-slide-number {
    display: none; }
  .orbit-timer {
    display: none; }
  .orbit-next, .orbit-prev {
    display: none; }
  .orbit-bullets {
    display: none; } }

.reveal-modal-bg {
  background: #000000;
  background: rgba(0, 0, 0, 0.45);
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1004;
  left: 0; }

.reveal-modal {
  border-radius: 3px;
  display: none;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: 1005;
  left: 0;
  background-color: #ffffff;
  padding: 1.875rem;
  border: solid 1px #666666;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); }
  @media only screen and (max-width: 59.625rem) {
    .reveal-modal {
      min-height: 100vh; } }
  .reveal-modal .column, .reveal-modal .columns {
    min-width: 0; }
  .reveal-modal > :first-child {
    margin-top: 0; }
  .reveal-modal > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 80%; } }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal {
      top: 6.25rem; } }
  .reveal-modal.radius {
    border-radius: 3px; }
  .reveal-modal.round {
    border-radius: 1000px; }
  .reveal-modal.collapse {
    padding: 0; }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal.tiny {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 30%; } }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal.small {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 40%; } }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal.medium {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 60%; } }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal.large {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 70%; } }
  @media only screen and (min-width: 47.9375rem) {
    .reveal-modal.xlarge {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 95%; } }
  .reveal-modal.full {
    height: 100vh;
    height: 100%;
    left: 0;
    margin-left: 0 !important;
    max-width: none !important;
    min-height: 100vh;
    top: 0; }
    @media only screen and (min-width: 47.9375rem) {
      .reveal-modal.full {
        left: 0;
        margin: 0 auto;
        max-width: 62.5rem;
        right: 0;
        width: 100%; } }
  .reveal-modal.toback {
    z-index: 1003; }
  .reveal-modal .close-reveal-modal {
    color: #AAAAAA;
    cursor: pointer;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    top: 0.625rem;
    right: 1.375rem; }

.side-nav {
  display: block;
  font-family: "Raleway", sans-serif;
  list-style-position: outside;
  list-style-type: none;
  margin: 0;
  padding: 0.875rem 0; }
  .side-nav li {
    font-size: 0.875rem;
    font-weight: normal;
    margin: 0 0 0.4375rem 0; }
    .side-nav li a:not(.button) {
      color: #9fa0a5;
      display: block;
      margin: 0;
      padding: 0.4375rem 0.875rem; }
      .side-nav li a:not(.button):hover, .side-nav li a:not(.button):focus {
        background: rgba(0, 0, 0, 0.025);
        color: #ffffff; }
      .side-nav li a:not(.button):active {
        color: #ffffff; }
    .side-nav li.active > a:first-child:not(.button) {
      color: #ffffff;
      font-family: "Raleway", sans-serif;
      font-weight: normal; }
    .side-nav li.divider {
      border-top-color: white;
      border-top: 1px solid;
      height: 0;
      list-style: none;
      padding: 0; }
    .side-nav li.heading {
      color: #9fa0a5;
      font-size: 0.875rem;
      font-weight: bold;
      text-transform: uppercase; }

.sub-nav {
  display: block;
  margin: -0.25rem 0 1.125rem;
  overflow: hidden;
  padding-top: 0.25rem;
  width: auto; }
  .sub-nav dt {
    text-transform: uppercase; }
  .sub-nav dt,
  .sub-nav dd,
  .sub-nav li {
    color: #999999;
    float: left;
    font-family: "Raleway", sans-serif;
    font-size: 0.875rem;
    font-weight: normal;
    margin-left: 1rem;
    margin-bottom: 0; }
    .sub-nav dt a,
    .sub-nav dd a,
    .sub-nav li a {
      color: #999999;
      padding: 0.1875rem 1rem;
      text-decoration: none; }
      .sub-nav dt a:hover,
      .sub-nav dd a:hover,
      .sub-nav li a:hover {
        color: #737373; }
    .sub-nav dt.active a,
    .sub-nav dd.active a,
    .sub-nav li.active a {
      border-radius: 3px;
      background: #008CBA;
      color: #ffffff;
      cursor: default;
      font-weight: normal;
      padding: 0.1875rem 1rem; }
      .sub-nav dt.active a:hover,
      .sub-nav dd.active a:hover,
      .sub-nav li.active a:hover {
        background: #0078a0; }

table {
  background: #ffffff;
  border: solid 1px #DDDDDD;
  margin-bottom: 1.25rem;
  table-layout: auto; }
  table caption {
    background: transparent;
    color: #222222;
    font-size: 1rem;
    font-weight: bold; }
  table thead {
    background: #F5F5F5; }
    table thead tr th,
    table thead tr td {
      color: #222222;
      font-size: 0.875rem;
      font-weight: bold;
      padding: 0.5rem 0.625rem 0.625rem; }
  table tfoot {
    background: #F5F5F5; }
    table tfoot tr th,
    table tfoot tr td {
      color: #222222;
      font-size: 0.875rem;
      font-weight: bold;
      padding: 0.5rem 0.625rem 0.625rem; }
  table tr th,
  table tr td {
    color: #222222;
    font-size: 0.875rem;
    padding: 0.5625rem 0.625rem;
    text-align: left; }
  table tr.even, table tr.alt, table tr:nth-of-type(even) {
    background: #F9F9F9; }
  table thead tr th,
  table tfoot tr th,
  table tfoot tr td,
  table tbody tr th,
  table tbody tr td,
  table tr td {
    display: table-cell;
    line-height: 1.125rem; }

.tabs {
  margin-bottom: 0 !important;
  margin-left: 0; }
  .tabs:before, .tabs:after {
    content: " ";
    display: table; }
  .tabs:after {
    clear: both; }
  .tabs dd, .tabs .tab-title {
    float: left;
    list-style: none;
    margin-bottom: 0 !important;
    position: relative; }
    .tabs dd > a, .tabs .tab-title > a {
      display: block;
      background-color: #EFEFEF;
      color: #222222;
      font-family: "Raleway", sans-serif;
      font-size: 1rem;
      padding: 1rem 2rem; }
      .tabs dd > a:hover, .tabs .tab-title > a:hover {
        background-color: #e1e1e1; }
    .tabs dd.active a, .tabs .tab-title.active a {
      background-color: #ffffff;
      color: #222222; }
  .tabs.radius dd:first-child a, .tabs.radius .tab:first-child a {
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }
  .tabs.radius dd:last-child a, .tabs.radius .tab:last-child a {
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }
  .tabs.vertical dd, .tabs.vertical .tab-title {
    position: inherit;
    float: none;
    display: block;
    top: auto; }

.tabs-content {
  margin-bottom: 1.5rem;
  width: 100%; }
  .tabs-content:before, .tabs-content:after {
    content: " ";
    display: table; }
  .tabs-content:after {
    clear: both; }
  .tabs-content > .content {
    display: none;
    float: left;
    padding: 0.9375rem 0;
    width: 100%; }
    .tabs-content > .content.active {
      display: block;
      float: none; }
    .tabs-content > .content.contained {
      padding: 0.9375rem; }
  .tabs-content.vertical {
    display: block; }
    .tabs-content.vertical > .content {
      padding: 0 0.9375rem; }

@media only screen and (min-width: 47.9375rem) {
  .tabs.vertical {
    float: left;
    margin: 0 0 1.25rem;
    max-width: 20%;
    width: 20%; }
  .tabs-content.vertical {
    float: left;
    margin-left: -1px;
    max-width: 80%;
    padding-left: 1rem;
    width: 80%; } }

.no-js .tabs-content > .content {
  display: block;
  float: none; }

meta.foundation-mq-topbar {
  font-family: "/only screen and (min-width:47.9375rem)/";
  width: 47.9375rem; }

/* Wrapped around .top-bar to contain to grid width */
.contain-to-grid {
  width: 100%;
  background: #0059a9; }
  .contain-to-grid .top-bar {
    margin-bottom: 0; }

.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99;
  left: 0; }
  .fixed.expanded:not(.top-bar) {
    height: auto;
    max-height: 100%;
    overflow-y: auto;
    width: 100%; }
    .fixed.expanded:not(.top-bar) .title-area {
      position: fixed;
      width: 100%;
      z-index: 99; }
    .fixed.expanded:not(.top-bar) .top-bar-section {
      margin-top: 2.8125rem;
      z-index: 98; }

.top-bar {
  background: #0059a9;
  height: 2.8125rem;
  line-height: 2.8125rem;
  margin-bottom: 0;
  overflow: hidden;
  position: relative; }
  .top-bar ul {
    list-style: none;
    margin-bottom: 0; }
  .top-bar .row {
    max-width: none; }
  .top-bar form,
  .top-bar input {
    margin-bottom: 0; }
  .top-bar input {
    font-size: 0.75rem;
    height: 1.75rem;
    padding-bottom: .35rem;
    padding-top: .35rem; }
  .top-bar .button, .top-bar button {
    font-size: 0.75rem;
    margin-bottom: 0;
    padding-bottom: 0.4125rem;
    padding-top: 0.4125rem; }
    @media only screen and (max-width: 59.625rem) {
      .top-bar .button, .top-bar button {
        position: relative;
        top: -1px; } }
  .top-bar .title-area {
    margin: 0;
    position: relative; }
  .top-bar .name {
    font-size: 16px;
    height: 2.8125rem;
    margin: 0; }
    .top-bar .name h1, .top-bar .name h2, .top-bar .name h3, .top-bar .name h4, .top-bar .name p, .top-bar .name span {
      font-size: 0.8125rem;
      line-height: 2.8125rem;
      margin: 0; }
      .top-bar .name h1 a, .top-bar .name h2 a, .top-bar .name h3 a, .top-bar .name h4 a, .top-bar .name p a, .top-bar .name span a {
        color: #ffffff;
        display: block;
        font-weight: bold;
        padding: 0 0.9375rem;
        width: 75%; }
  .top-bar .toggle-topbar {
    position: absolute;
    right: 0;
    top: 0; }
    .top-bar .toggle-topbar a {
      color: #ffffff;
      display: block;
      font-size: 0.8125rem;
      font-weight: bold;
      height: 2.8125rem;
      line-height: 2.8125rem;
      padding: 0 0.9375rem;
      position: relative;
      text-transform: uppercase; }
    .top-bar .toggle-topbar.menu-icon {
      margin-top: -16px;
      top: 50%; }
      .top-bar .toggle-topbar.menu-icon a {
        color: #ffffff;
        height: 34px;
        line-height: 33px;
        padding: 0 2.5rem 0 0.9375rem;
        position: relative; }
        .top-bar .toggle-topbar.menu-icon a span::after {
          content: "";
          display: block;
          height: 0;
          position: absolute;
          margin-top: -8px;
          top: 50%;
          right: 0.9375rem;
          box-shadow: 0 0 0 1px #ffffff, 0 7px 0 1px #ffffff, 0 14px 0 1px #ffffff;
          width: 16px; }
        .top-bar .toggle-topbar.menu-icon a span:hover:after {
          box-shadow: 0 0 0 1px "", 0 7px 0 1px "", 0 14px 0 1px ""; }
  .top-bar.expanded {
    background: transparent;
    height: auto; }
    .top-bar.expanded .title-area {
      background: #0059a9; }
    .top-bar.expanded .toggle-topbar a {
      color: #888888; }
      .top-bar.expanded .toggle-topbar a span::after {
        box-shadow: 0 0 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888; }

.top-bar-section {
  left: 0;
  position: relative;
  width: auto;
  transition: left 300ms ease-out; }
  .top-bar-section ul {
    display: block;
    font-size: 16px;
    height: auto;
    margin: 0;
    padding: 0;
    width: 100%; }
  .top-bar-section .divider,
  .top-bar-section [role="separator"] {
    border-top: solid 1px #002d55;
    clear: both;
    height: 1px;
    width: 100%; }
  .top-bar-section ul li {
    background: #98cb00; }
    .top-bar-section ul li > a {
      color: #ffffff;
      display: block;
      font-family: "Raleway", sans-serif;
      font-size: 0.8125rem;
      font-weight: bold;
      padding-left: 0.9375rem;
      padding: 12px 0 12px 0;
      text-transform: none;
      width: 100%; }
      .top-bar-section ul li > a.button {
        font-size: 0.8125rem;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        background-color: #008CBA;
        border-color: #007095;
        color: #ffffff; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          background-color: #007095; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          color: #ffffff; }
      .top-bar-section ul li > a.button.secondary {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          color: #333333; }
      .top-bar-section ul li > a.button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #ffffff; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          color: #ffffff; }
      .top-bar-section ul li > a.button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #ffffff; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          color: #ffffff; }
      .top-bar-section ul li > a.button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #ffffff; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          color: #ffffff; }
      .top-bar-section ul li > a.button.info {
        background-color: #a0d3e8;
        border-color: #61b6d9;
        color: #333333; }
        .top-bar-section ul li > a.button.info:hover, .top-bar-section ul li > a.button.info:focus {
          background-color: #61b6d9; }
        .top-bar-section ul li > a.button.info:hover, .top-bar-section ul li > a.button.info:focus {
          color: #ffffff; }
    .top-bar-section ul li > button {
      font-size: 0.8125rem;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      background-color: #008CBA;
      border-color: #007095;
      color: #ffffff; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        background-color: #007095; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        color: #ffffff; }
      .top-bar-section ul li > button.secondary {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          color: #333333; }
      .top-bar-section ul li > button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #ffffff; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          color: #ffffff; }
      .top-bar-section ul li > button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #ffffff; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          color: #ffffff; }
      .top-bar-section ul li > button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #ffffff; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          color: #ffffff; }
      .top-bar-section ul li > button.info {
        background-color: #a0d3e8;
        border-color: #61b6d9;
        color: #333333; }
        .top-bar-section ul li > button.info:hover, .top-bar-section ul li > button.info:focus {
          background-color: #61b6d9; }
        .top-bar-section ul li > button.info:hover, .top-bar-section ul li > button.info:focus {
          color: #ffffff; }
    .top-bar-section ul li:hover:not(.has-form) > a {
      background-color: #0059a9;
      background: #ffffff;
      color: #0059a9; }
    .top-bar-section ul li.active > a {
      background: #ffffff;
      color: #0059a9; }
      .top-bar-section ul li.active > a:hover {
        background: #ffffff;
        color: #0059a9; }
  .top-bar-section .has-form {
    padding: 0.9375rem; }
  .top-bar-section .has-dropdown {
    position: relative; }
    .top-bar-section .has-dropdown > a:after {
      margin-right: 0.9375rem;
      margin-top: -4.5px;
      position: absolute;
      top: 50%;
      right: 0; }
    .top-bar-section .has-dropdown.moved {
      position: static; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        display: block;
        position: static !important;
        height: auto;
        width: auto;
        overflow: visible;
        clip: auto;
        position: absolute !important;
        width: 100%; }
      .top-bar-section .has-dropdown.moved > a:after {
        display: none; }
  .top-bar-section .dropdown {
    padding: 0;
    position: absolute;
    top: 0;
    z-index: 99;
    display: block;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
    left: 100%; }
    .top-bar-section .dropdown li {
      height: auto;
      width: 100%; }
      .top-bar-section .dropdown li a {
        font-weight: bold;
        padding: 8px 0.9375rem; }
        .top-bar-section .dropdown li a.parent-link {
          font-weight: bold; }
      .top-bar-section .dropdown li.title h5, .top-bar-section .dropdown li.parent-link {
        margin-bottom: 0;
        margin-top: 0;
        font-size: 1.125rem; }
        .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown li.parent-link a {
          color: #ffffff;
          display: block; }
          .top-bar-section .dropdown li.title h5 a:hover, .top-bar-section .dropdown li.parent-link a:hover {
            background: none; }
      .top-bar-section .dropdown li.has-form {
        padding: 8px 0.9375rem; }
      .top-bar-section .dropdown li .button, .top-bar-section .dropdown li button {
        top: auto; }
    .top-bar-section .dropdown label {
      color: #777777;
      font-size: 0.625rem;
      font-weight: bold;
      margin-bottom: 0;
      padding: 8px 0.9375rem 2px;
      text-transform: uppercase; }

.js-generated {
  display: block; }

@media only screen and (min-width: 47.9375rem) {
  .top-bar {
    background: #0059a9;
    overflow: visible; }
    .top-bar:before, .top-bar:after {
      content: " ";
      display: table; }
    .top-bar:after {
      clear: both; }
    .top-bar .toggle-topbar {
      display: none; }
    .top-bar .title-area {
      float: left; }
    .top-bar .name h1 a,
    .top-bar .name h2 a,
    .top-bar .name h3 a,
    .top-bar .name h4 a,
    .top-bar .name h5 a,
    .top-bar .name h6 a {
      width: auto; }
    .top-bar input,
    .top-bar .button,
    .top-bar button {
      font-size: 0.875rem;
      height: 1.75rem;
      position: relative;
      top: 0.53125rem; }
    .top-bar.expanded {
      background: #0059a9; }
  .contain-to-grid .top-bar {
    margin-bottom: 0;
    margin: 0 auto;
    max-width: 62.5rem; }
  .top-bar-section {
    transition: none 0 0;
    left: 0 !important; }
    .top-bar-section ul {
      display: inline;
      height: auto !important;
      width: auto; }
      .top-bar-section ul li {
        float: left; }
        .top-bar-section ul li .js-generated {
          display: none; }
    .top-bar-section li.hover > a:not(.button) {
      background-color: #0059a9;
      background: #ffffff;
      color: #0059a9; }
    .top-bar-section li:not(.has-form) a:not(.button) {
      background: #0059a9;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li:not(.has-form) a:not(.button):hover {
        background-color: #0059a9;
        background: #ffffff; }
    .top-bar-section li.active:not(.has-form) a:not(.button) {
      background: #ffffff;
      color: #0059a9;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover {
        background: #ffffff;
        color: #0059a9; }
    .top-bar-section .has-dropdown.moved {
      position: relative; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        display: block;
        clip: rect(1px, 1px, 1px, 1px);
        height: 1px;
        overflow: hidden;
        position: absolute !important;
        width: 1px; }
    .top-bar-section .has-dropdown.hover > .dropdown, .top-bar-section .has-dropdown.not-click:hover > .dropdown {
      display: block;
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      position: absolute !important; }
    .top-bar-section .has-dropdown > a:focus + .dropdown {
      display: block;
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      position: absolute !important; }
    .top-bar-section .dropdown {
      left: 0;
      background: transparent;
      min-width: 100%;
      top: auto; }
      .top-bar-section .dropdown li a {
        background: #0059a9;
        color: #ffffff;
        line-height: 2.8125rem;
        padding: 12px 0.9375rem;
        white-space: nowrap; }
      .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
        background: #0059a9;
        color: #ffffff; }
      .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) {
        background-color: #0059a9;
        color: #0059a9;
        background: #f2f2f2; }
      .top-bar-section .dropdown li label {
        background: #333333;
        white-space: nowrap; }
      .top-bar-section .dropdown li .dropdown {
        left: 100%;
        top: 0; }
    .top-bar-section > ul > .divider,
    .top-bar-section > ul > [role="separator"] {
      border-right: solid 1px #0070d5;
      border-bottom: none;
      border-top: none;
      clear: none;
      height: 2.8125rem;
      width: 0; }
    .top-bar-section .has-form {
      background: #0059a9;
      height: 2.8125rem;
      padding: 0 0.9375rem; }
    .top-bar-section .right li .dropdown {
      left: auto;
      right: 0; }
      .top-bar-section .right li .dropdown li .dropdown {
        right: 100%; }
    .top-bar-section .left li .dropdown {
      right: auto;
      left: 0; }
      .top-bar-section .left li .dropdown li .dropdown {
        left: 100%; }
  .no-js .top-bar-section ul li:hover > a {
    background-color: #0059a9;
    background: #ffffff;
    color: #0059a9; }
  .no-js .top-bar-section ul li:active > a {
    background: #ffffff;
    color: #0059a9; }
  .no-js .top-bar-section .has-dropdown:hover > .dropdown {
    display: block;
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    position: absolute !important; }
  .no-js .top-bar-section .has-dropdown > a:focus + .dropdown {
    display: block;
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    position: absolute !important; } }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .top-bar.expanded .top-bar-section .has-dropdown.moved > .dropdown {
    clip: initial; }
  .top-bar.expanded .top-bar-section .dropdown {
    clip: initial; }
  .top-bar.expanded .top-bar-section .has-dropdown:not(.moved) > ul {
    padding: 0; } }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .top-bar.expanded .top-bar-section .has-dropdown.moved > .dropdown {
    clip: initial; }
  .top-bar.expanded .top-bar-section .dropdown {
    clip: initial; }
  .top-bar.expanded .top-bar-section .has-dropdown:not(.moved) > ul {
    padding: 0; } }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

.text-center {
  text-align: center !important; }

.text-justify {
  text-align: justify !important; }

@media only screen and (max-width: 59.625rem) {
  .small-only-text-left {
    text-align: left !important; }
  .small-only-text-right {
    text-align: right !important; }
  .small-only-text-center {
    text-align: center !important; }
  .small-only-text-justify {
    text-align: justify !important; } }

@media only screen {
  .small-text-left {
    text-align: left !important; }
  .small-text-right {
    text-align: right !important; }
  .small-text-center {
    text-align: center !important; }
  .small-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 47.9375rem) and (max-width: 62.4375rem) {
  .medium-only-text-left {
    text-align: left !important; }
  .medium-only-text-right {
    text-align: right !important; }
  .medium-only-text-center {
    text-align: center !important; }
  .medium-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 47.9375rem) {
  .medium-text-left {
    text-align: left !important; }
  .medium-text-right {
    text-align: right !important; }
  .medium-text-center {
    text-align: center !important; }
  .medium-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 62.5rem) and (max-width: 90em) {
  .large-only-text-left {
    text-align: left !important; }
  .large-only-text-right {
    text-align: right !important; }
  .large-only-text-center {
    text-align: center !important; }
  .large-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 62.5rem) {
  .large-text-left {
    text-align: left !important; }
  .large-text-right {
    text-align: right !important; }
  .large-text-center {
    text-align: center !important; }
  .large-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 90.0625em) and (max-width: 120em) {
  .xlarge-only-text-left {
    text-align: left !important; }
  .xlarge-only-text-right {
    text-align: right !important; }
  .xlarge-only-text-center {
    text-align: center !important; }
  .xlarge-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 90.0625em) {
  .xlarge-text-left {
    text-align: left !important; }
  .xlarge-text-right {
    text-align: right !important; }
  .xlarge-text-center {
    text-align: center !important; }
  .xlarge-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 120.0625em) and (max-width: 99999999em) {
  .xxlarge-only-text-left {
    text-align: left !important; }
  .xxlarge-only-text-right {
    text-align: right !important; }
  .xxlarge-only-text-center {
    text-align: center !important; }
  .xxlarge-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 120.0625em) {
  .xxlarge-text-left {
    text-align: left !important; }
  .xxlarge-text-right {
    text-align: right !important; }
  .xxlarge-text-center {
    text-align: center !important; }
  .xxlarge-text-justify {
    text-align: justify !important; } }

/* Typography resets */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

/* Default Link Styles */
a {
  color: #008CBA;
  line-height: inherit;
  text-decoration: none; }
  a:hover, a:focus {
    color: #0078a0; }
  a img {
    border: none; }

/* Default paragraph styles */
p {
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  text-rendering: optimizeLegibility; }
  p.lead {
    font-size: 1.21875rem;
    line-height: 1.6; }
  p aside {
    font-size: 0.875rem;
    font-style: italic;
    line-height: 1.35; }

/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  color: #222222;
  font-family: "Raleway", sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  margin-top: 0.2rem;
  text-rendering: optimizeLegibility; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    color: #6f6f6f;
    font-size: 60%;
    line-height: 0; }

h1 {
  font-size: 1.875rem; }

h2 {
  font-size: 1.25rem; }

h3 {
  font-size: 1.375rem; }

h4 {
  font-size: 0.75rem; }

h5 {
  font-size: 1.125rem; }

h6 {
  font-size: 1rem; }

.subheader {
  line-height: 1.4;
  color: #6f6f6f;
  font-weight: normal;
  margin-top: 0.2rem;
  margin-bottom: 0.5rem; }

hr {
  border: solid #DDDDDD;
  border-width: 1px 0 0;
  clear: both;
  height: 0;
  margin: 1.25rem 0 1.1875rem; }

/* Helpful Typography Defaults */
em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 60%;
  line-height: inherit; }

code {
  background-color: #f8f8f8;
  border-color: #dfdfdf;
  border-style: solid;
  border-width: 1px;
  color: #333333;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  padding: 0.125rem 0.3125rem 0.0625rem; }

/* Lists */
ul,
ol,
dl {
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.6;
  list-style-position: outside;
  margin-bottom: 1.25rem; }

ul {
  margin-left: 1.1rem; }
  ul.no-bullet {
    margin-left: 0; }
    ul.no-bullet li ul,
    ul.no-bullet li ol {
      margin-left: 1.25rem;
      margin-bottom: 0;
      list-style: none; }

/* Unordered Lists */
ul li ul,
ul li ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

ul.square li ul, ul.circle li ul, ul.disc li ul {
  list-style: inherit; }

ul.square {
  list-style-type: square;
  margin-left: 1.1rem; }

ul.circle {
  list-style-type: circle;
  margin-left: 1.1rem; }

ul.disc {
  list-style-type: disc;
  margin-left: 1.1rem; }

ul.no-bullet {
  list-style: none; }

/* Ordered Lists */
ol {
  margin-left: 1.4rem; }
  ol li ul,
  ol li ol {
    margin-left: 1.25rem;
    margin-bottom: 0; }

/* Definition Lists */
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold; }

dl dd {
  margin-bottom: 0.75rem; }

/* Abbreviations */
abbr,
acronym {
  text-transform: uppercase;
  font-size: 90%;
  color: #222;
  cursor: help; }

abbr {
  text-transform: none; }
  abbr[title] {
    border-bottom: 1px dotted #DDDDDD; }

/* Blockquotes */
blockquote {
  margin: 0 0 1.25rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #DDDDDD; }
  blockquote cite {
    display: block;
    font-size: 0.8125rem;
    color: #555555; }
    blockquote cite:before {
      content: "\2014 \0020"; }
    blockquote cite a,
    blockquote cite a:visited {
      color: #555555; }

blockquote,
blockquote p {
  line-height: 1.6;
  color: #6f6f6f; }

/* Microformats */
.vcard {
  display: inline-block;
  margin: 0 0 1.25rem 0;
  border: 1px solid #DDDDDD;
  padding: 0.625rem 0.75rem; }
  .vcard li {
    margin: 0;
    display: block; }
  .vcard .fn {
    font-weight: bold;
    font-size: 0.9375rem; }

.vevent .summary {
  font-weight: bold; }

.vevent abbr {
  cursor: default;
  text-decoration: none;
  font-weight: bold;
  border: none;
  padding: 0 0.0625rem; }

@media only screen and (min-width: 47.9375rem) {
  h1, h2, h3, h4, h5, h6 {
    line-height: 1.4; }
  h1 {
    font-size: 2.5rem; }
  h2 {
    font-size: 1.25rem; }
  h3 {
    font-size: 1.6875rem; }
  h4 {
    font-size: 1.0625rem; }
  h5 {
    font-size: 1.125rem; }
  h6 {
    font-size: 1rem; } }

.off-canvas-wrap {
  -webkit-backface-visibility: hidden;
  position: relative;
  width: 100%;
  overflow: hidden; }
  .off-canvas-wrap.move-right, .off-canvas-wrap.move-left {
    min-height: 100%;
    -webkit-overflow-scrolling: touch; }

.inner-wrap {
  position: relative;
  width: 100%;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .inner-wrap:before, .inner-wrap:after {
    content: " ";
    display: table; }
  .inner-wrap:after {
    clear: both; }

.tab-bar {
  -webkit-backface-visibility: hidden;
  background: #0059a9;
  color: #ffffff;
  height: 2.8125rem;
  line-height: 2.8125rem;
  position: relative; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4, .tab-bar h5, .tab-bar h6 {
    color: #ffffff;
    font-weight: bold;
    line-height: 2.8125rem;
    margin: 0; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4 {
    font-size: 1.125rem; }

.left-small {
  height: 2.8125rem;
  position: absolute;
  top: 0;
  width: 2.8125rem;
  border-right: solid 1px #002d55;
  left: 0; }

.right-small {
  height: 2.8125rem;
  position: absolute;
  top: 0;
  width: 2.8125rem;
  border-left: solid 1px #002d55;
  right: 0; }

.tab-bar-section {
  height: 2.8125rem;
  padding: 0 0.625rem;
  position: absolute;
  text-align: center;
  top: 0; }
  .tab-bar-section.left {
    text-align: left; }
  .tab-bar-section.right {
    text-align: right; }
  .tab-bar-section.left {
    left: 0;
    right: 2.8125rem; }
  .tab-bar-section.right {
    left: 2.8125rem;
    right: 0; }
  .tab-bar-section.middle {
    left: 2.8125rem;
    right: 2.8125rem; }

.tab-bar .menu-icon {
  color: #ffffff;
  display: block;
  height: 2.8125rem;
  padding: 0;
  position: relative;
  text-indent: 2.1875rem;
  transform: translate3d(0, 0, 0);
  width: 2.8125rem; }
  .tab-bar .menu-icon span::after {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: 50%;
    margin-top: -0.5rem;
    left: 0.90625rem;
    box-shadow: 0 0 0 1px #ffffff, 0 7px 0 1px #ffffff, 0 14px 0 1px #ffffff;
    width: 1rem; }
  .tab-bar .menu-icon span:hover:after {
    box-shadow: 0 0 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3; }

.left-off-canvas-menu {
  -webkit-backface-visibility: hidden;
  background: #0059a9;
  bottom: 0;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  transition: transform 500ms ease 0s;
  width: 15.625rem;
  z-index: 1001;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate(-100%, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -o-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  left: 0; }
  .left-off-canvas-menu * {
    -webkit-backface-visibility: hidden; }

.right-off-canvas-menu {
  -webkit-backface-visibility: hidden;
  background: #0059a9;
  bottom: 0;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  transition: transform 500ms ease 0s;
  width: 15.625rem;
  z-index: 1001;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate(100%, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  right: 0; }
  .right-off-canvas-menu * {
    -webkit-backface-visibility: hidden; }

ul.off-canvas-list {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  ul.off-canvas-list li label {
    background: #444444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    display: block;
    font-size: 0.75rem;
    font-weight: bold;
    margin: 0;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase; }
  ul.off-canvas-list li a {
    border-bottom: 1px solid #00437f;
    color: rgba(255, 255, 255, 0.7);
    display: block;
    padding: 0.66667rem;
    transition: background 300ms ease; }
    ul.off-canvas-list li a:hover {
      background: #003e76; }
    ul.off-canvas-list li a:active {
      background: #003e76; }

.move-right > .inner-wrap {
  -webkit-transform: translate3d(15.625rem, 0, 0);
  -moz-transform: translate3d(15.625rem, 0, 0);
  -ms-transform: translate(15.625rem, 0);
  -ms-transform: translate3d(15.625rem, 0, 0);
  -o-transform: translate3d(15.625rem, 0, 0);
  transform: translate3d(15.625rem, 0, 0); }

.move-right .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 47.9375rem) {
    .move-right .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.move-left > .inner-wrap {
  -webkit-transform: translate3d(-15.625rem, 0, 0);
  -moz-transform: translate3d(-15.625rem, 0, 0);
  -ms-transform: translate(-15.625rem, 0);
  -ms-transform: translate3d(-15.625rem, 0, 0);
  -o-transform: translate3d(-15.625rem, 0, 0);
  transform: translate3d(-15.625rem, 0, 0); }

.move-left .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 47.9375rem) {
    .move-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap .left-off-canvas-menu, .offcanvas-overlap .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 47.9375rem) {
    .offcanvas-overlap .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-left .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-left .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 47.9375rem) {
    .offcanvas-overlap-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-right .left-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-right .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 47.9375rem) {
    .offcanvas-overlap-right .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.no-csstransforms .left-off-canvas-menu {
  left: -15.625rem; }

.no-csstransforms .right-off-canvas-menu {
  right: -15.625rem; }

.no-csstransforms .move-left > .inner-wrap {
  right: 15.625rem; }

.no-csstransforms .move-right > .inner-wrap {
  left: 15.625rem; }

.left-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #0059a9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate(-100%, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -o-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  left: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .left-submenu * {
    -webkit-backface-visibility: hidden; }
  .left-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .left-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .left-submenu .back > a:before {
      content: "\AB";
      margin-right: .5rem;
      display: inline; }
  .left-submenu.move-right, .left-submenu.offcanvas-overlap-right, .left-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

.right-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #0059a9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate(100%, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  right: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .right-submenu * {
    -webkit-backface-visibility: hidden; }
  .right-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .right-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .right-submenu .back > a:after {
      content: "\BB";
      margin-left: .5rem;
      display: inline; }
  .right-submenu.move-left, .right-submenu.offcanvas-overlap-left, .right-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

.left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
  content: "\BB";
  margin-left: .5rem;
  display: inline; }

.right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
  content: "\AB";
  margin-right: .5rem;
  display: inline; }

/* small displays */
@media only screen {
  .show-for-small-only, .show-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .hide-for-small-only, .hide-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .visible-for-small-only, .visible-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .hidden-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .hidden-for-small-only, .hidden-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.show-for-small-only, table.show-for-small-up, table.show-for-small, table.show-for-small-down, table.hide-for-medium-only, table.hide-for-medium-up, table.hide-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.show-for-small-only, thead.show-for-small-up, thead.show-for-small, thead.show-for-small-down, thead.hide-for-medium-only, thead.hide-for-medium-up, thead.hide-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.show-for-small-only, tbody.show-for-small-up, tbody.show-for-small, tbody.show-for-small-down, tbody.hide-for-medium-only, tbody.hide-for-medium-up, tbody.hide-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.show-for-small-only, tr.show-for-small-up, tr.show-for-small, tr.show-for-small-down, tr.hide-for-medium-only, tr.hide-for-medium-up, tr.hide-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.show-for-small-only, td.show-for-small-only, th.show-for-small-up, td.show-for-small-up, th.show-for-small, td.show-for-small, th.show-for-small-down, td.show-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.hide-for-medium-up, td.hide-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* medium displays */
@media only screen and (min-width: 47.9375rem) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.show-for-medium-only, table.show-for-medium-up, table.show-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.show-for-medium-only, thead.show-for-medium-up, thead.show-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.show-for-medium-only, tbody.show-for-medium-up, tbody.show-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.show-for-medium-only, tr.show-for-medium-up, tr.show-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.show-for-medium-only, td.show-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.show-for-medium, td.show-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* large displays */
@media only screen and (min-width: 62.5rem) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.show-for-large-only, table.show-for-large-up, table.show-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.show-for-large-only, thead.show-for-large-up, thead.show-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.show-for-large-only, tbody.show-for-large-up, tbody.show-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.show-for-large-only, tr.show-for-large-up, tr.show-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.show-for-large-only, td.show-for-large-only, th.show-for-large-up, td.show-for-large-up, th.show-for-large, td.show-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xlarge displays */
@media only screen and (min-width: 90.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.show-for-xlarge-only, table.show-for-xlarge-up, table.show-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.show-for-xlarge-only, thead.show-for-xlarge-up, thead.show-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.show-for-xlarge-only, tbody.show-for-xlarge-up, tbody.show-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.show-for-xlarge-only, tr.show-for-xlarge-up, tr.show-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.show-for-xlarge-only, td.show-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.show-for-xlarge, td.show-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xxlarge displays */
@media only screen and (min-width: 120.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .hide-for-xlarge-only, .show-for-xlarge-up, .hide-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .show-for-xlarge-only, .hide-for-xlarge-up, .show-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .hidden-for-xlarge-only, .visible-for-xlarge-up, .hidden-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .visible-for-xlarge-only, .hidden-for-xlarge-up, .visible-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.hide-for-xlarge-only, table.show-for-xlarge-up, table.hide-for-xlarge, table.hide-for-xlarge-down, table.show-for-xxlarge-only, table.show-for-xxlarge-up, table.show-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.hide-for-xlarge-only, thead.show-for-xlarge-up, thead.hide-for-xlarge, thead.hide-for-xlarge-down, thead.show-for-xxlarge-only, thead.show-for-xxlarge-up, thead.show-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.hide-for-xlarge-only, tbody.show-for-xlarge-up, tbody.hide-for-xlarge, tbody.hide-for-xlarge-down, tbody.show-for-xxlarge-only, tbody.show-for-xxlarge-up, tbody.show-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.hide-for-xlarge-only, tr.show-for-xlarge-up, tr.hide-for-xlarge, tr.hide-for-xlarge-down, tr.show-for-xxlarge-only, tr.show-for-xxlarge-up, tr.show-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.hide-for-xlarge-down, td.hide-for-xlarge-down, th.show-for-xxlarge-only, td.show-for-xxlarge-only, th.show-for-xxlarge-up, td.show-for-xxlarge-up, th.show-for-xxlarge, td.show-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* Orientation targeting */
.show-for-landscape,
.hide-for-portrait {
  display: inherit !important; }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }

/* Specific visibility for tables */
table.hide-for-landscape, table.show-for-portrait {
  display: table !important; }

thead.hide-for-landscape, thead.show-for-portrait {
  display: table-header-group !important; }

tbody.hide-for-landscape, tbody.show-for-portrait {
  display: table-row-group !important; }

tr.hide-for-landscape, tr.show-for-portrait {
  display: table-row !important; }

td.hide-for-landscape, td.show-for-portrait,
th.hide-for-landscape,
th.show-for-portrait {
  display: table-cell !important; }

@media only screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: inherit !important; }
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important; }
  /* Specific visibility for tables */
  table.show-for-landscape, table.hide-for-portrait {
    display: table !important; }
  thead.show-for-landscape, thead.hide-for-portrait {
    display: table-header-group !important; }
  tbody.show-for-landscape, tbody.hide-for-portrait {
    display: table-row-group !important; }
  tr.show-for-landscape, tr.hide-for-portrait {
    display: table-row !important; }
  td.show-for-landscape, td.hide-for-portrait,
  th.show-for-landscape,
  th.hide-for-portrait {
    display: table-cell !important; } }

@media only screen and (orientation: portrait) {
  .show-for-portrait,
  .hide-for-landscape {
    display: inherit !important; }
  .hide-for-portrait,
  .show-for-landscape {
    display: none !important; }
  /* Specific visibility for tables */
  table.show-for-portrait, table.hide-for-landscape {
    display: table !important; }
  thead.show-for-portrait, thead.hide-for-landscape {
    display: table-header-group !important; }
  tbody.show-for-portrait, tbody.hide-for-landscape {
    display: table-row-group !important; }
  tr.show-for-portrait, tr.hide-for-landscape {
    display: table-row !important; }
  td.show-for-portrait, td.hide-for-landscape,
  th.show-for-portrait,
  th.hide-for-landscape {
    display: table-cell !important; } }

/* Touch-enabled device targeting */
.show-for-touch {
  display: none !important; }

.hide-for-touch {
  display: inherit !important; }

.touch .show-for-touch {
  display: inherit !important; }

.touch .hide-for-touch {
  display: none !important; }

/* Specific visibility for tables */
table.hide-for-touch {
  display: table !important; }

.touch table.show-for-touch {
  display: table !important; }

thead.hide-for-touch {
  display: table-header-group !important; }

.touch thead.show-for-touch {
  display: table-header-group !important; }

tbody.hide-for-touch {
  display: table-row-group !important; }

.touch tbody.show-for-touch {
  display: table-row-group !important; }

tr.hide-for-touch {
  display: table-row !important; }

.touch tr.show-for-touch {
  display: table-row !important; }

td.hide-for-touch {
  display: table-cell !important; }

.touch td.show-for-touch {
  display: table-cell !important; }

th.hide-for-touch {
  display: table-cell !important; }

.touch th.show-for-touch {
  display: table-cell !important; }

/* Screen reader-specific classes */
.show-for-sr {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }

.show-on-focus {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }
  .show-on-focus:focus, .show-on-focus:active {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }

/*
       * Print styles.
       *
       * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
       * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
      */
.print-only {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: #000000 !important;
    /* Black prints faster: h5bp.com/s */
    text-shadow: none !important; }
  .show-for-print {
    display: block; }
  .hide-for-print {
    display: none; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: .5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .hide-on-print {
    display: none !important; }
  .print-only {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  .show-for-print {
    display: inherit !important; } }

/* Print visibility */
@media print {
  .show-for-print {
    display: block; }
  .hide-for-print {
    display: none; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; } }

/*****************************************************************************/
/*****************************************************************************
 In der Custom wird der eigene CSS-Code implementiert 
 ****************************************************************************/
/***********************************************************
    In diese Datei werden alle eigenen CSS_Anweisungen geschrieben
    -   Variablen bitte in der Datei _settings definieren
    -   Farben bitte auch in der Settings definieren
************************************************************/
#main-content {
  padding-bottom: 50px; }

#logo {
  padding-left: 0; }

h1 {
  color: #25346d;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  margin: 0;
  line-height: 2.5rem;
  text-transform: uppercase;
  padding: 0 0 1.25rem 2.1875rem; }

.ls-slide h1 {
  text-transform: none; }

.h1_border_bottom {
  float: left;
  border-bottom: 5px solid #0059a9;
  padding-bottom: 10px;
  margin-bottom: 20px;
  padding-right: 40px;
  min-width: 300px; }

.h1_border_bottom h1 {
  display: inline; }

h2 {
  color: #009fe3;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  padding: 0.9375rem 0;
  text-transform: uppercase; }

h3 {
  color: #000000;
  font-size: 0.9375rem; }

h4 {
  color: #000000;
  font-size: 0.9375rem; }

h5 {
  color: #000000;
  font-size: 0.9375rem; }

h6.midline {
  display: block;
  margin: 0px;
  padding: 0px;
  height: 1px;
  background-color: #666666;
  width: 80px;
  margin: auto; }

h3.coloured {
  background-color: #0059a9;
  color: #ffffff;
  font-size: 0.9375rem;
  padding: 0.625rem;
  font-weight: 700;
  text-transform: uppercase; }

h4 {
  color: #000000;
  font-weight: bold; }

h5 {
  color: #000000;
  font-size: 0.9375rem;
  font-weight: 700;
  margin-top: 0;
  text-transform: uppercase; }

.headline_icon_container {
  display: table;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
  margin-bottom: 2.9375rem;
  padding: 0 0.625rem;
  width: 100%; }

.headline_icon_container_content {
  border-top: 0.0625rem solid #f4f4f4;
  border-bottom: 0.0625rem solid #f4f4f4;
  padding: 0 0.625rem 0 1.9375rem; }

.headline_icon_container div.icon_container {
  display: table-cell;
  vertical-align: middle;
  padding-left: 2.6875rem; }

@media only screen and (max-width: 43.75rem) {
  .headline_icon_container div.icon_container {
    display: none;
    width: 1px;
    height: 1px; } }

a {
  color: #000000;
  text-decoration: none; }

a:hover {
  color: #000000;
  text-decoration: underline; }

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

.row {
  max-width: 80rem; }

.full-width {
  margin-left: auto;
  margin-right: auto;
  max-width: inherit;
  width: 100%; }

.left img {
  padding: 0 20px 10px 0px !important; }

.no-padding {
  padding: 0; }

.border-bottom-head_image {
  border-bottom: 4px solid #98cb00; }

.radius {
  margin-top: 29px;
  margin-bottom: 15px; }

#main-content div.element-container p, #main-content div.element-container ul {
  line-height: 1.625rem; }

.panel {
  background: #f2f2f2;
  padding: 25px 18px 10px 38px;
  border: none; }

.block_background {
  background-color: #f2f2f2;
  padding: 1.25rem;
  margin-bottom: 1.25rem; }

.element-container {
  margin: 0px;
  padding: 0px;
  padding-bottom: 30px; }

.single-image-container {
  padding: 0 1.25rem; }

.singleImage img {
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem; }

.singleImage {
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem; }

.multimedia_row {
  padding-bottom: 1.875rem; }

.text-image div.text-image-col {
  display: table-cell;
  vertical-align: top;
  box-sizing: border-box;
  padding: 0px;
  margin: 0px; }

.text-image div.text-image-col-left {
  padding-right: 20px; }

.text-image div.text-image-col img {
  padding-bottom: 10px; }

.text-image div.text-image-col-text {
  display: table-cell;
  vertical-align: top;
  box-sizing: border-box;
  padding: 0px;
  margin: 0px; }

.text-image .image-legend-container {
  margin: 10px 0 20px 0; }

.right .image-legend-container {
  padding-left: 20px; }

@media only screen and (max-width: 46.875rem) {
  .text-image div.text-image-col {
    display: block;
    width: 100% !important; }
  .text-image div.text-image-col-left {
    padding-right: 0px; }
  .text-image div.text-image-col img {
    padding: 5px;
    width: 100%; } }

.content_left {
  padding-left: 0;
  border-right: 0.0625rem dashed #e1e0e1; }

.icon {
  float: left;
  position: relative;
  width: 1.875rem;
  height: 1px; }

.icon_round {
  position: absolute;
  top: 0px;
  left: 0px;
  background-color: #0059a9;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 1.25rem;
  float: left; }

.icon_round:hover {
  background-color: #9fa0a5; }

.icon_round_text {
  position: absolute;
  top: -0.0625rem;
  left: 0.4375rem;
  color: #ffffff;
  font-weight: 700; }

ul.tabs .tab-title {
  border: solid 1px #9fa0a5;
  position: relative;
  top: 1px;
  margin-right: 3px; }

ul.tabs .tab-title a {
  background-color: #f2f2f2; }

ul.tabs li.active {
  border-bottom-color: #ffffff;
  position: relative;
  top: 1px;
  z-index: 15; }

ul.tabs li.active a {
  font-weight: bold;
  background-color: #ffffff; }

.tabs-content div {
  border: solid 1px #9fa0a5;
  z-index: 10; }

.tabs-content div.content {
  padding: 10px;
  background-color: #ffffff; }

@media only screen and (max-width: 31.25rem) {
  ul.tabs .tab-title {
    float: none;
    width: 100%; } }

div.videogalerie {
  margin-top: 50px; }

.videogalerie h6 {
  margin-bottom: 20px; }

.videogalerie p.video_title {
  color: #000000;
  font-weight: 700; }

div.image-galery {
  margin-top: 20px;
  margin-bottom: 20px; }

.image-galery-untertitel {
  margin: 0px;
  margin-top: 10px; }

div.image-galery-text {
  margin: 0px; }

.image-galery-text p {
  margin-top: 0px;
  padding-top: 0px; }

.image-galery img.image_fading_effekt {
  -webkit-transition: all 0.5s linear;
  -moz-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  -ms-transition: all 0.5s linear;
  transition: all 0.5s linear; }

.image-galery img.image_fading_effekt:hover {
  filter: alpha(opacity=50);
  -moz-opacity: 0.50;
  opacity: 0.50; }

.block_elem_container li div {
  position: relative;
  padding-bottom: 5px;
  color: #ffffff; }

.block_elem_container li > div {
  background-color: #ffffff; }

.block_elem_container li div a {
  text-decoration: none; }

.block_elem_container li div div {
  position: relative; }

.block_elem_container div.image_fading_effekt {
  width: 100%;
  background-size: 100% auto;
  background-position: center center;
  background-repeat: 0;
  -webkit-transition: all 0.5s linear;
  -moz-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  -ms-transition: all 0.5s linear;
  transition: all 0.5s linear; }

.block_elem_container .link_pfeil {
  background: url("../../img/icon_pfeil.png") center center no-repeat;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: -25px;
  margin-left: -25px;
  z-index: 50;
  width: 50px;
  height: 50px;
  -webkit-transition: all 0.5s linear;
  -moz-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  -ms-transition: all 0.5s linear;
  transition: all 0.5s linear;
  border: 0px; }

.block_elem_container div:hover .link_pfeil {
  top: -40px;
  width: 70px;
  height: 70px;
  margin-left: -35px;
  z-index: 50; }

.navi_block li div {
  color: #000000; }

.linkliste_block li div {
  background-color: #f2f2f2; }

.linkliste_block li div h2 {
  padding-top: 10px;
  padding-bottom: 0px;
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 0.9375rem;
  text-transform: uppercase;
  color: #666666; }

.linkliste_block li div h6 {
  margin-bottom: 15px;
  background-color: #666666; }

.linkliste_block li ul {
  margin: 5px;
  margin-top: 10px;
  background-color: #f2f2f2;
  list-style-position: inside; }

.linkliste_block li ul li, .linkliste_block li ul li a {
  font-size: 0.9375rem;
  color: #666666;
  background-color: #f2f2f2;
  text-align: left;
  list-style-type: none;
  border-bottom: 1px solid #f2f2f2;
  padding: 5px;
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  -ms-transition: all 0.3s linear;
  transition: all 0.3s linear; }

.linkliste_block li ul li a {
  margin: 0px;
  padding: 0px;
  display: block;
  width: 90%;
  margin-left: 10%;
  border: 0px; }

.linkliste_block li ul li:hover, .linkliste_block li ul li:hover a, .linkliste_block li ul li a:hover {
  background-color: #9fa0a5;
  text-decoration: none;
  color: #ffffff; }

.linkliste_block li ul li div.icon {
  position: relative;
  top: 3px;
  background-color: transparent;
  margin-left: 10px; }

.linkliste_icon_block li div h2 {
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 0.9375rem;
  text-transform: uppercase;
  color: #ffffff;
  background-color: #0059a9; }

.linkliste_icon_block li div h6 {
  margin-bottom: 15px;
  background-color: #ffffff; }

.linkliste_icon_block li div h6.midline {
  background-color: #666666; }

.linkliste_icon_block li ul {
  margin: 10px 0 0 0;
  list-style-position: inside; }

.linkliste_icon_block li ul li, .linkliste_icon_block li ul li a {
  font-size: 0.8125rem;
  color: #666666;
  background-color: #f2f2f2;
  text-align: left;
  list-style-type: none;
  border-bottom: 1px solid #f2f2f2;
  padding: 5px;
  -webkit-transition: all 0.3s linear;
  -moz-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  -ms-transition: all 0.3s linear;
  transition: all 0.3s linear;
  font-size: 0.9375rem; }

.linkliste_icon_block li ul li {
  margin-bottom: 5px; }

.linkliste_icon_block li ul li a {
  display: table-cell;
  min-height: 50px;
  vertical-align: middle; }

.linkliste_icon_block li ul li a {
  margin: 0px;
  padding: 0px;
  display: block;
  border: 0px;
  text-transform: uppercase;
  font-weight: 700; }

.linkliste_icon_block_icon {
  position: absolute;
  right: 10px; }

.linkliste_icon_block li ul li:hover, .linkliste_icon_block li ul li:hover a, .linkliste_icon_block li ul li a:hover {
  background-color: #9fa0a5;
  text-decoration: none;
  color: #ffffff; }

.linkliste_icon_block li ul li:hover h6.midline {
  background-color: #ffffff; }

.linkliste_icon_block li ul li div.icon {
  position: relative;
  top: 3px;
  background-color: transparent;
  margin-left: 10px; }

.hover > .dropdown, .not-click:hover > .dropdown {
  opacity: 1; }

.dropdown {
  opacity: 0;
  transition: opacity 1000ms ease; }

.no-js .top-bar-section ul li:hover > a {
  background: #ffffff;
  color: #0059a9; }

.no-js .top-bar-section ul li:active > a {
  background: #ffffff;
  color: #0059a9; }

.no-js .top-bar-section .has-dropdown:hover > .dropdown {
  display: block;
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto;
  position: absolute !important;
  opacity: 1; }

.headimage {
  border-bottom: 4px solid #98cb00; }

.layerslider-caption {
  width: 400px;
  height: 450px; }

.layerslider-caption-text {
  margin-bottom: 2.1875rem; }

.layerslider-container {
  border-bottom: 4px solid #98cb00; }

.layerslider-container p {
  margin-top: 0.9375rem;
  color: #ffffff;
  font-weight: 700;
  font-size: 1.0625rem; }

.layerslider-bullets-container {
  position: absolute;
  bottom: 0;
  width: 100%; }

.ls-slide > * h1, .slider_box h1 {
  float: left;
  line-height: 25px;
  margin: 10px 20px 0 20px;
  position: relative;
  padding-bottom: 5px;
  color: #ffffff; }

.ls-slide > * h4 {
  border-bottom: 1px solid #ffffff;
  border-top: 1px solid #ffffff;
  float: left;
  font-size: 0.875rem;
  line-height: 18px;
  margin: 0 20px 10px 20px;
  position: relative;
  padding: 5px 0 5px 0;
  color: #ffffff; }

.ls-slide > * a {
  left: 30%; }

.ls-slide > .slider_box {
  position: absolute;
  background-color: rgba(139, 139, 139, 0.7); }

.layer_text_anim {
  color: #ffffff;
  text-transform: uppercase; }

.layer_text_anim_1 {
  font-size: 3.4375rem;
  font-weight: 700; }

.layer_text_anim_2 {
  font-size: 4.375rem;
  font-weight: 300; }

.layer_text_anim_3 {
  font-size: 5.625rem;
  font-weight: 700; }

.layer_text_anim_4 {
  font-size: 3.75rem;
  font-weight: 300; }

.layerslider-border-bottom {
  background: url("../../img/layerslider-border-bottom.gif") no-repeat;
  height: 0.5625rem; }

.layerslider-margin-bottom {
  margin-bottom: 4.25rem; }

.off-canvas-wrap .tab-bar {
  display: none; }

.container_kontakt {
  margin-top: 20px;
  margin-bottom: 1.875rem; }

div.row div.kontakt {
  background-color: #0059a9;
  color: #ffffff;
  padding: 20px;
  padding-left: 40px; }

div.row div.kontakt a {
  color: #ffffff;
  text-decoration: underline; }

@media only screen and (max-width: 75rem) {
  div.row div.kontakt {
    padding: 10px;
    padding-left: 10px; }
  div.row div.kontakt p {
    font-size: 0.8em; } }

footer {
  background-image: url("../../img/footer-background.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  position: relative;
  padding-top: 21px; }

#footer-nav {
  position: relative;
  float: left;
  width: 100%; }

#footer-nav ul {
  margin: 0;
  padding: 0; }

#footer-nav ul li {
  display: block; }

#footer-nav a {
  color: #25346d;
  font-size: 0.875rem;
  font-weight: 700;
  padding: 0 50px 0 0;
  text-decoration: none; }

#footer-nav ul ul {
  overflow: hidden;
  margin-top: 15px; }

#footer-nav ul ul li {
  display: block;
  float: none;
  line-height: 1rem;
  padding: 0; }

#footer-nav ul ul li a {
  color: #25346d;
  font-size: 0.8125rem;
  font-weight: 400; }

#footer-nav ul ul li a:hover {
  color: #000000; }

#footer-address {
  background: #25346d;
  position: relative; }

#footer-address p {
  color: #8c969c;
  font-size: 0.875rem;
  font-weight: 700;
  font-family: 'Montserrat', sans-serif;
  line-height: 6.0625rem;
  margin-bottom: 0;
  position: relative;
  text-transform: uppercase; }

#footer-topButton {
  position: absolute;
  top: -10px;
  right: 0px;
  display: block;
  width: 45px;
  height: 45px;
  background: url("../../img/top_link.png") center center no-repeat transparent; }

.footer-divider {
  background: #b4b0c9;
  height: 0.0625rem;
  margin-top: 0.8125rem;
  max-width: 6.25rem; }

/*
.quick-search-icon {
    display: none;
    position: absolute;
    top: rem-calc(10);
    right: 0;
    width: 45px;
    height: 45px;
    cursor: pointer;
    float: right;
    background:url('../../img/icon-suche.png') no-repeat center center transparent;
    background-size: 100% 100%;

    @media only screen and (min-width: rem-calc(1255)) {
        width: 54px;
        height: 54px;
        right: rem-calc(-11);
    }

    @media only screen and (min-width:62.5rem) {
        display: block;
    }
}
*/
.quick-search-form {
  display: none;
  position: absolute;
  right: 0;
  z-index: 999;
  width: 22.8125rem;
  padding: 0 3.4375rem;
  height: 3.1875rem;
  background-color: #ffffff;
  border: 1px solid #f2f2f2;
  -webkit-box-shadow: 0px 5px 12px -5px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 5px 12px -5px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 5px 12px -5px rgba(0, 0, 0, 0.75); }
  .quick-search-form input {
    background-color: transparent;
    border-radius: 0;
    border: none;
    outline: none;
    color: #000000;
    height: 3.1875rem;
    line-height: 3.1875rem;
    margin: 0;
    box-shadow: none; }
    .quick-search-form input::-webkit-input-placeholder {
      color: #000000; }
    .quick-search-form input:-moz-placeholder {
      /* Firefox 18- */
      color: #000000; }
    .quick-search-form input::-moz-placeholder {
      /* Firefox 19+ */
      color: #000000; }
    .quick-search-form input:-ms-input-placeholder {
      color: #000000; }
    .quick-search-form input:focus {
      background-color: transparent; }
  .quick-search-form .btnSubmit {
    position: absolute;
    top: 0;
    left: 0;
    width: 3.4375rem;
    height: 3.1875rem;
    font-size: 0;
    color: transparent;
    text-indent: -9999em;
    overflow: hidden;
    background: url("../../img/icon_search.png") no-repeat 17px center transparent;
    border: none; }
  .quick-search-form .close {
    position: absolute;
    top: 0;
    right: 0;
    width: 3.4375rem;
    height: 3.1875rem;
    font-size: 0;
    color: transparent;
    text-indent: -9999em;
    overflow: hidden;
    background: url("../../img/icon_quicksearch_close.png") no-repeat center center transparent; }
  .quick-search-form.active {
    display: block; }

.search-result div.sr-item {
  border-bottom: 1px solid #9fa0a5;
  margin-bottom: 20px; }

.search-result span.sr-highlight {
  background-color: #f2f2f2; }

.search-result div.resultCount {
  border-bottom: 1px solid #9fa0a5;
  padding-bottom: 20px;
  margin-bottom: 20px; }

@media only screen and (max-width: 70.9375rem) {
  #footer-nav a {
    padding: 0 70px 0 0; } }

@media only screen and (max-width: 62.4375rem) {
  .response-off {
    display: none; }
  .image-no-padding {
    padding: 0 !important; }
  #nav-impagb,
  .top-bar {
    display: none; }
  .off-canvas-wrap .tab-bar {
    display: block; }
  .sidebar,
  .news-text,
  .news-title,
  .panel {
    padding-left: 5px; } }

.element-container-ansprechpartner img {
  padding: 4px;
  border: #dddddd 1px solid;
  width: 80%;
  margin: 10px;
  max-width: 250px;
  width: 100%; }

.element-container-ansprechpartner div.vollerNameBox {
  padding: 10px 5px 5px 25px;
  font-size: 0.875rem;
  font-weight: 400;
  text-transform: uppercase;
  color: #003B69; }

.element-container-ansprechpartner div.positionBox {
  padding: 0px 5px 0px 25px;
  font-size: 0.75rem;
  font-weight: 400;
  color: #0066d0; }

.element-container-ansprechpartner div.textBox {
  padding: 0px 5px 0px 25px;
  font-size: 0.875rem;
  font-weight: 400;
  color: #000000; }

/*
.titelbox {
	width                    : 178px;
	padding                  : 5px 10px;
	margin                   : 0px 0px 5px 0px;
	border                   : #cccccc 1px dotted ;
	font-size                : 12px;
	font-weight              : bold;
	text-align               : center;
}

.textbox {
	width                    : 178px;
	min-height               : 80px;
	padding                  : 5px 10px;
	margin                   : 5px 0px 0px 0px;
	border                   : #666666 1px dotted ;
	font-size                : 12px;
	font-weight              : 300;
	text-align               : center;
	border-radius            : 7px;
	background               : #eeeeee;
}

*/
ul.liste {
  margin-top: 40px; }

ul.liste h5.liste_accordion {
  cursor: pointer; }

ul.liste {
  margin-left: 0px;
  padding-left: 0px;
  margin-bottom: 1.25rem; }

ul.liste li {
  margin-left: 0px;
  background-color: #f2f2f2;
  margin-bottom: 0.625rem;
  padding: 10px;
  list-style-type: none;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid; }

ul.liste h5 {
  margin: 0;
  padding: 0;
  color: #000000;
  padding-left: 1.25rem;
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: none; }

ul.liste li div.akkordion_text {
  background-color: #ffffff;
  color: #000000;
  padding: 10px;
  font-size: 0.9375rem;
  margin-top: 0.625rem; }

.logo_link_slider_container {
  padding-top: 20px; }

.logo_link_slider_container h1 {
  color: #666666;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 0.25rem;
  padding-bottom: 20px;
  margin-bottom: 5px; }

.logo_link_slider_container h1.centered {
  margin: auto;
  text-align: center; }

.logo_link_slider_container h1.underline {
  border-bottom: 1px solid #f2f2f2; }

.logo_link_slider {
  margin-top: 15px; }
  .logo_link_slider .slick-track {
    padding-bottom: 20px; }
  .logo_link_slider button.slick-prev {
    position: absolute;
    left: 10px;
    top: 100%;
    z-index: 999; }
  .logo_link_slider button.slick-prev:before {
    color: #0059a9;
    font-size: 30px;
    font-weight: bold; }
  .logo_link_slider button.slick-next {
    position: absolute;
    right: 20px;
    top: 100%;
    z-index: 999; }
  .logo_link_slider button.slick-next:before {
    color: #0059a9;
    font-size: 30px;
    font-weight: bold; }

.imprint {
  padding: 0; }

.imprint li:first-child {
  margin-right: 0; }

@media only screen and (max-width: 37.5rem) {
  .imprint li:first-child {
    padding-right: 10px; }
  .header-imprint-padding {
    padding-top: 0;
    padding-bottom: 0.3125rem;
    padding-left: 0;
    padding-right: 0.625rem; } }

.imprint li {
  border-bottom: 0.0625rem solid #898586;
  padding: 0 0.5rem 0.3125rem; }

.imprint a,
.imprint a:hover,
.imprint a:active,
.imprint a:visited {
  font-size: 0.9375rem;
  font-weight: 400;
  color: #7a7a79;
  text-decoration: none; }

.imprint a:hover {
  color: #00499a; }

.header-imprint-padding {
  padding-top: 2.375rem;
  padding-bottom: 0.3125rem;
  padding-left: 0;
  padding-right: 0.9375rem; }

.side-nav {
  padding: 0; }

.side-nav-title {
  border-bottom: 0.25rem solid #f4f4f4;
  color: #009fe3;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  margin: 0;
  padding: 0 0 1.75rem 1.375rem;
  text-transform: uppercase; }

.side-nav li.active > a:first-child:not(.button) {
  background-color: #ffffff;
  color: #676767; }

.side-nav li ul li {
  margin-left: 20px;
  border-bottom: 0px; }

.sidebar-head h1 {
  border-bottom: 3px solid #ffffff;
  border-top: 3px solid #ffffff;
  line-height: 29px;
  text-align: left; }

.news-date {
  background: #ffffff;
  height: 75px;
  margin-bottom: 7px;
  color: #0059a9;
  padding: 10px 0px 5px 5px;
  text-align: center; }

.news-month {
  font-size: 1rem;
  font-weight: 700;
  line-height: 5px;
  text-transform: uppercase; }

.news-year {
  font-size: 1rem;
  font-weight: 700;
  line-height: 14px;
  padding-left: 5px;
  position: relative;
  top: -6px; }

.news-title {
  background: #ffffff;
  color: #666666 !important;
  padding-left: 10px; }

.news-title h2 {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1rem;
  margin-top: 14px;
  color: #666666; }

.news-text {
  background: #ffffff;
  margin-bottom: 7px; }

.news-text img {
  padding-bottom: 10px; }

.news-text p {
  font-size: 0.8125rem; }

.newsblock img {
  padding-top: 0px;
  padding-top: 0px; }

.newsblock button.slick-prev {
  position: absolute;
  left: 10px;
  top: 100%;
  z-index: 999; }

.newsblock button.slick-prev:before {
  color: #0059a9;
  font-size: 30px;
  font-weight: bold; }

.newsblock button.slick-next {
  position: absolute;
  right: 20px;
  top: 100%;
  z-index: 999; }

.newsblock button.slick-next:before {
  color: #0059a9;
  font-size: 30px;
  font-weight: bold; }

.newsblock ul {
  margin-left: -8% !important; }

.slick-list {
  outline: none !important; }

.slick-slide:focus {
  outline: none; }

.slick-slide:focus, .slick-slide a {
  outline: none; }

.newslister_kurz .news_container:first-child {
  border-top: 1px solid #9fa0a5;
  padding-top: 10px;
  margin-top: 10px; }

.newslister .news_container {
  border-bottom: 1px solid #9fa0a5;
  padding-bottom: 10px;
  margin-bottom: 10px;
  position: relative;
  float: left;
  width: 100%; }
  .newslister .news_container h2 {
    color: #0059a9;
    font-size: 1.0625rem;
    font-weight: 700; }
  .newslister .news_container p.datum {
    margin-bottom: 0.3125rem;
    color: #0059a9 !important; }
  .newslister .news_container div.news_mehr {
    /*position:absolute;
			right:10px;
			bottom:0px;
			*/ }
  .newslister .news_container .image-container {
    float: right;
    padding-top: 10px;
    padding-left: 20px;
    padding-bottom: 10px; }
  .newslister .news_container .news_zurueck {
    margin-bottom: 10px;
    color: #0059a9; }
  .newslister .news_container .news_zurueck a {
    color: #0059a9; }

.newslister_spalte_links .news_container:first-child {
  border-top: 0;
  padding-top: 0px;
  margin-top: 0px; }

.newslister_spalte_links .news_container:last-child {
  border-bottom: 0; }

.newslister_spalte_links .news_container {
  padding: 10px;
  padding-left: 0px !important;
  padding-right: 0px !important;
  margin-left: 0px;
  border-bottom: 1px solid #f2f2f2; }

.newslister_spalte_links p.datum {
  margin-bottom: 0 !important; }

.newslister_spalte_links h2 {
  margin-top: 0px !important;
  margin-bottom: 0px !important; }

.facebook_news .item {
  background: #ffffff;
  margin-bottom: 5px;
  padding: 10px 10px 10px 0;
  font-size: 0.8125rem;
  border-bottom: 1px solid #0059a9; }

.facebook_news div.item span.headline {
  font-weight: bold; }

.facebook_news div.item span.date {
  background-color: #0059a9;
  color: #ffffff;
  padding: 2px;
  font-weight: bold; }

.sidebar_informationen {
  position: relative;
  background-color: #f2f2f2;
  padding: 0px;
  margin: 0px;
  padding-bottom: 20px; }

.sidebar_informationen div {
  margin: 0px;
  padding: 0px;
  padding-left: 0.3125rem;
  padding-right: 0.3125rem; }

.sidebar_informationen h4 {
  padding-bottom: 10px;
  border-bottom: #9fa0a5 1px solid; }

.sidebar_informationen h3 {
  color: #d43431;
  font-size: 0.875rem;
  padding-bottom: 0px;
  margin-bottom: 0px; }

.sidebar_informationen h1 {
  display: block;
  width: 100%;
  margin: 0px;
  padding: 0px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  background-color: #9fa0a5;
  color: #ffffff;
  border-bottom: solid 3px #0059a9;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  margin-bottom: 1.875rem; }

@media only screen and (max-width: 62.5rem) {
  .sidebar_informationen h1 {
    font-size: 1.0625rem; } }

button, .button {
  background-color: #009fe3;
  color: #ffffff;
  padding: 0.875rem 1.1875rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  transition: all 0.3s ease 0s; }

.ls-slide .button {
  transition: none; }

button:hover, button:focus, .button:hover, .button:focus {
  background-color: #25346d;
  color: #ffffff; }

.anfrage {
  padding: 24px 18px 0 32px; }

.logo-anfrage {
  margin-bottom: 1.25rem; }

.anfrage label {
  color: #0059a9;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0;
  text-transform: uppercase; }

.anfrage input {
  background: #ffffff;
  border: none;
  line-height: 2.125rem;
  margin-bottom: 0.3125rem; }

.anfrage-border-padding {
  border-top: 1px solid #0059a9;
  padding: 20px 0 20px 0; }

.anfrage p {
  color: #0059a9;
  font-size: 0.8125rem;
  font-weight: 300;
  margin-bottom: 0; }

.anfrage h2 {
  color: #0059a9;
  font-size: 1.0625rem;
  font-weight: bold;
  text-transform: uppercase; }

.anfrage .button {
  background: #ffffff;
  color: #0059a9;
  margin: 0; }

.g-recaptcha {
  margin-bottom: 20px; }

.contact-form-content input, .contact-form-content textarea {
  background-color: #ffffff;
  border: 1px solid #666666; }

.contact-form-content input:hover, .contact-form-content input:focus, .contact-form-content textarea:hover, .contact-form-content textarea:focus {
  background-color: #f2f2f2; }

div.large-6 .contact-form-content div.large-6, div.large-4 .contact-form-content div.large-6, div.large-3 .contact-form-content div.large-6 {
  display: block;
  width: 100%; }

div.large-6 .contact-form-content fieldset.recaptcha_form, div.large-4 .contact-form-content fieldset.recaptcha_form, div.large-3 .contact-form-content fieldset.recaptcha_form {
  padding: 0px;
  border: 0;
  padding-top: 10px; }

.multicolumn_2 {
  column-count: 2;
  padding: 0 0 1.0625rem 0;
  width: 100%;
  -moz-column-count: 2;
  -webkit-column-count: 2;
  -webkit-column-gap: 3.75rem;
  -moz-column-gap: 3.75rem;
  column-gap: 3.75rem; }

.multicolumn_3 {
  width: 100%;
  column-count: 3;
  -moz-column-count: 3;
  -webkit-column-count: 3; }

.multicolumn_4 {
  width: 100%;
  column-count: 4;
  -moz-column-count: 4;
  -webkit-column-count: 4; }

.multicolumn_2 table, .multicolumn_3 table, .multicolumn_4 table {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid; }

@media only screen and (max-width: 56.25rem) {
  .multicolumn_3 {
    width: 100%;
    column-count: 2;
    -moz-column-count: 2;
    -webkit-column-count: 2; }
  .multicolumn_4 {
    width: 100%;
    column-count: 2;
    -moz-column-count: 2;
    -webkit-column-count: 2; } }

@media only screen and (max-width: 43.75rem) {
  .multicolumn_2 {
    width: 100%;
    column-count: 1;
    -moz-column-count: 1;
    -webkit-column-count: 1; }
  .multicolumn_3 {
    width: 100%;
    column-count: 1;
    -moz-column-count: 1;
    -webkit-column-count: 1; }
  .multicolumn_4 {
    width: 100%;
    column-count: 1;
    -moz-column-count: 1;
    -webkit-column-count: 1; } }

div.large-4 .contact-form-content div.large-6, div.large-3 .contact-form-content div.large-6 {
  display: block;
  width: 100%; }

div.large-4 .contact-form-content fieldset.recaptcha_form, div.large-3 .contact-form-content fieldset.recaptcha_form {
  position: relative;
  left: -10px;
  padding: 0px;
  border: 0;
  padding-top: 10px; }

.parallax-row {
  height: 400px;
  background: transparent; }
  .parallax-row.element-container {
    padding: 0;
    margin-bottom: 3.75rem; }

.parallax-header {
  position: relative;
  overflow: hidden;
  height: 100%;
  width: 100%; }

@media only screen and (max-width: 28.125rem) {
  table {
    overflow-x: auto;
    display: block; } }

body {
  font-size: 0.8125rem; }

p,
ul,
table {
  font-size: 0.9375rem;
  line-height: 1.25rem; }

ul {
  padding-left: 0.9375rem; }

hr {
  margin-left: 0.625rem; }

strong {
  color: #009fe3;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.9375rem;
  font-weight: 700;
  text-transform: uppercase; }

.h1-container {
  border-bottom: 0.0625rem solid #f4f4f4;
  margin: 0 0 2.8125rem 0.5625rem;
  padding-bottom: 0; }

.imprint {
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase; }

#logo2 img {
  padding-right: 0.3125rem;
  padding-bottom: 1.6875rem !important; }

@media only screen and (max-width: 62.4375rem) {
  #logo2 img {
    padding-top: 0.75rem !important;
    padding-right: 0 !important; } }

ul.imprint li.active a {
  color: #00499a; }

.imprint li:first-child {
  border: none;
  margin-right: 0;
  margin-top: 0.4375rem; }

.imprint li:nth-child(2) {
  margin-left: 1rem; }

.footer-navi ul {
  text-align: left !important; }

input[type="text"]#imprint-input {
  background: url("../../img/search-icon-header.png") no-repeat 52% center;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border-bottom: 0.0625rem solid #898586;
  border-left: none;
  border-right: none;
  border-top: none;
  box-shadow: none;
  color: #d7d7d7;
  direction: rtl;
  height: 1.875rem;
  margin: -0.6875rem 0;
  padding: 0.375rem 0.9375rem 0.375rem 1.5625rem;
  width: 3.125rem; }

input[type="text"]#imprint-input:focus {
  background: none;
  color: #6a6f75;
  margin: -0.6875rem 0;
  outline: none;
  padding-left: 0.625rem;
  text-align: left;
  width: 200px; }

input[type="text"]#imprint-input {
  -webkit-transition: all 0.7s ease 0s;
  -moz-transition: all 0.7s ease 0s;
  -o-transition: all 0.7s ease 0s;
  transition: all 0.7s ease 0s; }

#main-content .content_right ul {
  font-size: 0.9375rem;
  font-weight: 700;
  list-style-image: url("../../img/list-style-icon.png"); }

#main-content .content_right .large-12 {
  padding-left: 2.6875rem; }

table {
  border-collapse: collapse;
  margin: -0.4375rem 0 0 -0.4375rem;
  width: 100%; }
  table tbody tr td {
    font-family: 'Montserrat', sans-serif;
    color: #25346d;
    text-align: center;
    border: 0.4375rem solid #ffffff;
    padding: 0.625rem 0.875rem; }
  table tbody tr:nth-child(even) {
    background: #e4eef9; }
  table tbody tr:nth-child(odd) {
    background: #b3d3ef; }
  table tbody tr:first-of-type {
    background: #009fe3; }
    table tbody tr:first-of-type td {
      color: #ffffff;
      font-size: 1rem;
      font-weight: 700;
      text-align: center; }
  table tbody tr td:first-of-type {
    text-align: left; }
  table tbody tr:last-child {
    background: #009fe3; }
    table tbody tr:last-child td {
      line-height: 0.4375rem; }

.error-message-container {
  padding-left: 2.5625rem; }
  .error-message-container .error-message {
    background-color: #f04124;
    color: #ffffff;
    font-size: 0.9375rem;
    font-weight: 700;
    margin-bottom: 1.875rem;
    padding: 0.4375rem;
    animation: fadein 1.5s;
    -moz-animation: fadein 1.5s;
    /* Firefox */
    -webkit-animation: fadein 1.5s;
    /* Safari and Chrome */
    -o-animation: fadein 1.5s;
    /* Opera */ }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-moz-keyframes fadein {
  /* Firefox */
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes fadein {
  /* Safari and Chrome */
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-o-keyframes fadein {
  /* Opera */
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

footer {
  color: #25346d;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.875rem; }
  footer a {
    text-align: left !important; }
  footer .footer-home-icon {
    background: url("../../img/icon-home.png") no-repeat 3.5rem 0.125rem;
    border-bottom: 0.0625rem solid #e3e2eb;
    margin-bottom: 2.3125rem;
    padding: 0 0 0.875rem 5.0625rem;
    text-transform: uppercase;
    font-weight: 700; }
  footer #footer-local-sales-contact {
    border-bottom: 0.25rem solid #bfc4d0;
    padding: 0 0 2.25rem 5.0625rem; }
    footer #footer-local-sales-contact #footer-local-sales-contact-border-bottom {
      border-bottom: 0.0625rem solid #b4b0c9;
      height: 0.0625rem;
      margin-bottom: 2.5625rem;
      width: 6.25rem; }
    footer #footer-local-sales-contact strong {
      color: #25346d !important;
      display: block;
      font-weight: 700;
      margin-bottom: 0.9375rem; }
    footer #footer-local-sales-contact .contactsidebar strong {
      margin-bottom: 0; }
  @media only screen and (max-width: 62.4375rem) {
    footer #footer-nav-container {
      display: none; }
    footer #footer-local-sales-contact {
      border-bottom: none;
      padding: 0 0.625rem 2.25rem 0.625rem !important; } }

ul.left-submenu {
  list-style: none;
  padding-left: 0; }

img.image_fading_effekt {
  -webkit-transition: all 0.5s linear;
  -moz-transition: all 0.5s linear;
  -o-transition: all 0.5s linear;
  -ms-transition: all 0.5s linear;
  transition: all 0.5s linear; }
  img.image_fading_effekt:hover {
    filter: alpha(opacity=50);
    -moz-opacity: 0.50;
    opacity: 0.50; }

@media only screen and (max-width: 47.9375rem) {
  #handling-procedure {
    display: none; } }

@media only screen and (max-width: 62.4375rem) {
  #home .content_right {
    padding: 0 1.875rem 0 1.25rem; } }

#layerslider-overlay {
  bottom: 0;
  padding: 0;
  position: absolute;
  width: 100%;
  z-index: 3; }
  #layerslider-overlay img {
    width: 100%; }

.mediapool-container {
  border-top: 0.25rem solid #f4f4f4;
  border-bottom: 0.25rem solid #f4f4f4;
  min-height: 14.625rem;
  padding: 2.25rem 0 0.5rem 0; }
  .mediapool-container .mediapool {
    border-right: 0.0625rem solid #000000; }
    .mediapool-container .mediapool .mediapool-video-container {
      padding: 0 1.1875rem 0 0; }
  .mediapool-container .mediapool-text-container {
    height: 10.1875rem;
    padding-left: 2.6875rem; }
    .mediapool-container .mediapool-text-container .mediapool-h2 {
      color: #009fe3;
      font-family: 'Montserrat', sans-serif;
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 0.75rem;
      padding: 0; }
    .mediapool-container .mediapool-text-container .mediapool-text p {
      font-size: 0.875rem;
      font-weight: 700; }
  .mediapool-container .mediapool-more-info {
    color: #b2b2b2;
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase; }
    .mediapool-container .mediapool-more-info span {
      display: block;
      margin-right: 1.3125rem; }
    .mediapool-container .mediapool-more-info span::before {
      content: url("../../img/mediapool-more-info-icon.png");
      padding-right: 0.625rem; }
  @media only screen and (max-width: 62.4375rem) {
    .mediapool-container .mediapool {
      border-right: none; } }

@media only screen and (max-width: 62.4375rem) {
  .content_left .mediapool-container {
    border-bottom: none; } }

#nav-slider-container {
  position: relative; }

.top_bar_container {
  position: relative;
  top: -80px;
  transition: all 0.2s ease-in-out;
  display: none; }

.top_bar_container-active {
  top: 0;
  display: block; }

.top-bar-menu-icon {
  background: transparent url("../../img/top-nav-background.png") repeat-x;
  position: absolute;
  top: 0;
  height: 0;
  z-index: 100;
  width: 100%;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  -ms-transition: all 0.2s linear;
  transition: all 0.2s linear; }

.top-bar-menu-icon-image-active {
  background: url("../../img/menu-icon.png"); }

.top-bar-menu-icon-active {
  height: 3.75rem; }

.top-bar.nocolor {
  background: none !important; }

.top-bar.nocolor .top-bar-section ul li {
  background: none !important;
  position: relative; }

.top-bar-section ul li > a {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.875rem;
  font-weight: 700; }

.top-bar.nocolor .top-bar-section li:not(.has-form) a:not(.button) {
  background: none;
  color: #ffffff;
  line-height: 3.75rem;
  text-transform: uppercase;
  text-decoration: none; }

.top-bar.nocolor .top-bar-section li:not(.has-form) a:hover:not(.button),
.top-bar.nocolor .top-bar-section li.active:not(.has-form) a:not(.button) {
  color: #ffffff;
  text-transform: uppercase; }

.top-bar.nocolor .top-bar-section li:hover > a > span {
  background: #ffffff;
  height: 0.5rem;
  position: absolute;
  width: 85%;
  display: block;
  left: 7%; }

.top-bar.nocolor .top-bar-section ul.dropdown {
  background: rgba(153, 153, 153, 0.7);
  color: #ffffff; }

ul .has-dropdown:last-child .dropdown {
  margin-left: -2.5rem; }

.top-bar.nocolor .top-bar-section ul.dropdown li:not(.has-form) a:not(.button) {
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 2.8125rem; }

.top-bar.nocolor .top-bar-section ul.dropdown li:not(.has-form) a:hover:not(.button),
.top-bar.nocolor .top-bar-section ul.dropdown li.active:not(.has-form) a:not(.button) {
  background: #ffffff;
  color: #009fe3;
  font-weight: 400;
  font-size: 0.8125rem; }

.top-bar-section li:not(.has-form) a:not(.button) {
  padding: 0 0.9375rem; }

@media only screen and (max-width: 75rem) {
  .top-bar-section li:not(.has-form) a:not(.button) {
    padding: 0 0.5625rem; } }

@media only screen and (max-width: 68.75rem) {
  .top-bar-section li:not(.has-form) a:not(.button) {
    padding: 0 0.3125rem; } }

.top-bar-section ul.dropdown {
  text-align: left; }

.top-bar-section ul.dropdown li a {
  color: #ffffff;
  border-bottom: none;
  padding: 1.25rem;
  text-decoration: none; }

.top-bar-section ul.dropdown li.no_link a {
  cursor: default; }

.top-bar-section ul.dropdown li.no_link a:hover {
  text-decoration: none; }

.top-bar-section ul.dropdown li a img {
  padding-right: 20px;
  width: 50px; }

.top-bar-menu-icon-image {
  background: url("../../img/menu-icon.png");
  cursor: pointer;
  float: left;
  position: relative;
  z-index: 200;
  min-width: 3.75rem;
  min-height: 3.75rem; }

.top-bar-menu-icon-container {
  position: relative; }

#contact-form-left {
  background: #eeeeee;
  color: #000000;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  padding: 1.9375rem 1.75rem 1.25rem 1.75rem;
  width: 100%;
  z-index: 100; }
  #contact-form-left input[type="text"] {
    border: none;
    font-size: 0.8125rem;
    height: 2.5625rem;
    line-height: 2.5625rem;
    margin-bottom: 1.375rem;
    padding-left: 0.8125rem;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none; }
  #contact-form-left input[type="text"]::-webkit-input-placeholder {
    color: #000000; }
  #contact-form-left input[type="text"]:-moz-placeholder {
    color: #000000; }
  #contact-form-left input[type="text"]::-moz-placeholder {
    color: #000000; }
  #contact-form-left input[type="text"]:-ms-input-placeholder {
    color: #000000; }
  #contact-form-left textarea {
    border: none;
    height: 11.25rem;
    margin-bottom: 1.5625rem;
    width: 100%;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none; }
  #contact-form-left textarea::-webkit-input-placeholder {
    color: #000000; }
  #contact-form-left textarea:-moz-placeholder {
    color: #000000; }
  #contact-form-left textarea::-moz-placeholder {
    color: #000000; }
  #contact-form-left textarea:-ms-input-placeholder {
    color: #000000; }
  #contact-form-left button {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8125rem;
    margin-bottom: 1.375rem;
    text-transform: none;
    padding: 0.5rem 1.1875rem; }

#contact-form-left-headline {
  color: #009fe3;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
  padding: 0 0 1.1875rem 1.75rem; }

.sidebar-head {
  margin-bottom: 5rem; }
  .sidebar-head .side-nav li > a {
    font-family: 'Montserrat', sans-serif !important; }
  .sidebar-head .side-nav {
    border-bottom: 0.25rem solid #f4f4f4; }
    .sidebar-head .side-nav li {
      border-bottom: 0.0625rem solid #f4f4f4;
      font-family: 'Montserrat', sans-serif;
      margin: 0; }
      .sidebar-head .side-nav li a:not(.button) {
        color: #000000;
        text-decoration: none;
        padding: 1.375rem 0 1.375rem 1.375rem; }
      .sidebar-head .side-nav li ul.side-nav {
        border-bottom: 0.0625rem solid #f4f4f4; }
      .sidebar-head .side-nav li ul li {
        border: none; }
        .sidebar-head .side-nav li ul li > a:not(.button) {
          padding: 0.125rem 0 0.125rem 2.75rem; }
        .sidebar-head .side-nav li ul li.active a {
          padding-left: 3.4375rem; }
      .sidebar-head .side-nav li.has-dropdown {
        border-bottom: none; }
        .sidebar-head .side-nav li.has-dropdown > a:not(.button) {
          padding-bottom: 0.6875rem; }
        .sidebar-head .side-nav li.has-dropdown ul.side-nav {
          padding-bottom: 1.25rem; }
  .sidebar-head .side-nav li a:hover:not(.button), .sidebar-head .side-nav li a:focus:not(.button) {
    color: #676767;
    transition: background-color 0.5s ease; }
  .sidebar-head .side-nav li ul li a:not(.button) {
    color: #009fe3; }
  .sidebar-head .side-nav li ul li a:not(.button)::before {
    content: url("../../img/list-style-icon.png");
    padding-right: 0.3125rem; }

.sidebar-head .side-nav li ul li a {
  padding: 0.375rem; }

.side-nav li ul li.active > a:first-child:not(.button) {
  color: #009fe3; }

.packaging-container img {
  border: 0.125rem dashed #e1e0e1;
  border-bottom-left-radius: 0.375rem;
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem; }

.packaging-container .packaging-image {
  padding-bottom: 3.125rem;
  position: relative; }
  .packaging-container .packaging-image .packaging-bubble-icon {
    background: url("../../img/icon-bubble-packaging.gif") no-repeat;
    bottom: 1.0625rem;
    height: 2.1875rem;
    left: 5rem;
    position: absolute;
    width: 1.875rem; }

.packaging-container .packaging-image-gallery-text {
  padding-left: 41px;
  padding-right: 40px; }
  .packaging-container .packaging-image-gallery-text p {
    font-weight: 700;
    line-height: 1rem;
    text-align: left; }

.icon-container {
  padding-top: 2.4375rem; }
  .icon-container .icon-content {
    z-index: 10000; }
  .icon-container .icon-list {
    border-right: 0.0625rem solid #e1e0e1;
    padding: 0 2.1875rem; }
    .icon-container .icon-list .icon-content-container {
      padding-left: 0;
      padding-right: 2.1875rem; }
    .icon-container .icon-list:last-child {
      border-right: 0; }
  .icon-container .icon-image {
    margin-bottom: 2.5rem; }
  .icon-container .icon-list-title {
    color: #009fe3;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 1.3125rem;
    text-transform: uppercase; }
  .icon-container .icon-image-gallery-text p {
    font-weight: 500; }

#handling-procedure {
  position: absolute;
  right: 0;
  top: 71.25rem;
  z-index: 100; }

.illustration-container {
  margin-bottom: 4.625rem;
  padding-left: 0; }
  .illustration-container figure {
    border-bottom: 1px solid #e7e5ef;
    margin: 0; }

ul.teaser-block {
  margin: 0 -0.75rem; }
  ul.teaser-block li {
    padding: 0 0.75rem; }
  ul.teaser-block a {
    text-decoration: none; }
    ul.teaser-block a :hover .teaser-block-icon {
      bottom: -0.4375rem;
      -webkit-transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      -o-transform: rotate(180deg); }
  ul.teaser-block .teaser-block-container {
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 4.625rem;
    position: relative; }
    ul.teaser-block .teaser-block-container a {
      text-decoration: none; }
      ul.teaser-block .teaser-block-container a :hover .teaser-block-icon {
        bottom: -0.375rem;
        -webkit-transform: rotate(180deg);
        -moz-transform: rotate(180deg);
        -o-transform: rotate(180deg); }
    ul.teaser-block .teaser-block-container .teaser-block-overlay {
      background: url("../../img/teaser-block-text-container-background.png") no-repeat 0 0;
      height: 1.375rem;
      max-width: 47.5rem;
      position: absolute;
      width: 100%;
      z-index: 10; }
    ul.teaser-block .teaser-block-container .teaser-block-headline {
      background: #1d9dd9;
      font-size: 1rem;
      line-height: 3.3125rem;
      text-transform: uppercase;
      padding-left: 1.9375rem; }
    ul.teaser-block .teaser-block-container .teaser-block-image-container {
      position: relative; }
      ul.teaser-block .teaser-block-container .teaser-block-image-container img {
        width: 100%; }
      ul.teaser-block .teaser-block-container .teaser-block-image-container .teaser-block-icon {
        bottom: -1.1875rem;
        left: 40%;
        position: absolute;
        z-index: 100;
        padding: 0;
        -webkit-transition-duration: .2s;
        -moz-transition-duration: .2s;
        -o-transition-duration: .2s;
        transition-duration: .2s; }
      ul.teaser-block .teaser-block-container .teaser-block-image-container .image_fading_effekt {
        padding: 0; }
    ul.teaser-block .teaser-block-container .teaser-block-text-container {
      background: #eeeeee;
      color: #000000;
      overflow: hidden;
      height: 9.3125rem;
      max-height: 9.3125rem;
      padding: 2.0625rem 0.75rem 1.3125rem 1.6875rem; }
    ul.teaser-block .teaser-block-container .teaser-block-text-container p {
      font-size: 0.8125rem;
      margin: 0; }
    ul.teaser-block .teaser-block-container figure {
      border-bottom: 1px solid #e7e5ef;
      margin: 0; }
    ul.teaser-block .teaser-block-container .teaser-block-dropdown-container {
      padding-top: 0.375rem; }
      ul.teaser-block .teaser-block-container .teaser-block-dropdown-container .teaser-block-dropdown-content {
        height: auto;
        display: block; }
        ul.teaser-block .teaser-block-container .teaser-block-dropdown-container .teaser-block-dropdown-content .teaser-block-dropdown {
          background: #009fe3;
          color: #ffffff;
          font-size: 1rem;
          line-height: 2.1875rem;
          margin-bottom: 0.125rem; }
    @media only screen and (max-width: 47.9375rem) {
      ul.teaser-block .teaser-block-container .teaser-block-dropdown-container {
        display: none; } }

@keyframes teaser-block-dropdown-slide-in {
  100% {
    transform: translateX(0%); } }

@-webkit-keyframes teaser-block-dropdown-slide-in {
  100% {
    -webkit-transform: translateX(0%); } }

@keyframes teaser-block-dropdown-slide-out {
  0% {
    transform: translateX(0%); } }

@-webkit-keyframes teaser-block-dropdown-slide-out {
  0% {
    -webkit-transform: translateX(0%); } }

.callout-container {
  color: #25346d;
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  position: relative;
  margin-bottom: 4.1875rem !important; }
  .callout-container .callout-text {
    border: 0.125rem dashed #e1e0e1;
    border-bottom-left-radius: 0.375rem;
    border-top-left-radius: 0.375rem;
    border-top-right-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
    padding: 1.5rem 2.0625rem 1.9375rem 4.5rem; }
    .callout-container .callout-text p {
      margin: 0; }
    .callout-container .callout-text .callout-top-left {
      background: url("../../img/callout-top-left-background.png") no-repeat;
      height: 3.8125rem;
      left: 2.5rem;
      position: absolute;
      top: -1rem;
      width: 3.8125rem; }
    .callout-container .callout-text .callout-bottom-left {
      background: url("../../img/icon-bubble-packaging.gif") no-repeat;
      bottom: -2.0625rem;
      height: 2.1875rem;
      left: 4.375rem;
      position: absolute;
      width: 1.875rem; }
    @media only screen and (max-width: 62.4375rem) {
      .callout-container .callout-text .callout-top-left {
        left: 0.6875rem; }
      .callout-container .callout-text .callout-bottom-left {
        left: 3.125rem; } }

ul.teaser-block-subcategory li {
  padding: 0 0.75rem; }

ul.teaser-block-subcategory .teaser-block-subcategory-container {
  color: #ffffff;
  font-family: 'Montserrat', sans-serif;
  margin-bottom: 4.625rem; }
  ul.teaser-block-subcategory .teaser-block-subcategory-container a {
    text-decoration: none; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container a :hover .teaser-block-subcategory-icon {
      bottom: -0.4375rem;
      -webkit-transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      -o-transform: rotate(180deg); }
  ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-headline {
    background: #1d9dd9;
    font-size: 1rem;
    line-height: 3.3125rem;
    text-transform: uppercase;
    padding-left: 1.9375rem; }
  ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-headline-active {
    background: #676767; }
  ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container {
    position: relative; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container:hover .teaser-block-subcategory-icon {
      bottom: -0.4375rem;
      -webkit-transform: rotate(180deg);
      -moz-transform: rotate(180deg);
      -o-transform: rotate(180deg); }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container img {
      width: 100%; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container .teaser-block-subcategory-image_fading_effekt::after {
      content: '\A';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background: rgba(0, 0, 0, 0.4);
      opacity: 1;
      transition: all 4s;
      -webkit-transition: all 4s; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container .teaser-block-subcategory-image-overlay {
      max-height: 1.375rem;
      height: 1.375rem;
      position: absolute;
      top: -0.375rem;
      width: 100%;
      z-index: 100; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container .teaser-block-subcategory-icon {
      bottom: -1.1875rem;
      left: 40%;
      position: absolute;
      z-index: 100;
      padding: 0;
      -webkit-transition-duration: .2s;
      -moz-transition-duration: .2s;
      -o-transition-duration: .2s;
      transition-duration: .2s; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container .teaser-block-subcategory-active {
      bottom: -0.4375rem;
      left: 40%;
      position: absolute;
      z-index: 100;
      padding: 0; }
    ul.teaser-block-subcategory .teaser-block-subcategory-container .teaser-block-subcategory-image-container .image_fading_effekt {
      padding: 0; }
  ul.teaser-block-subcategory .teaser-block-subcategory-container figure {
    border-bottom: 1px solid #e7e5ef;
    margin: 0; }

.keywordlist-block {
  margin: 0 0 11.1875rem -0.25rem;
  max-width: 48.5625rem; }
  .keywordlist-block li {
    padding: 0 0.25rem 0.4375rem 0.25rem; }
    .keywordlist-block li .keywordlist-block-element {
      background: #f2f1f3;
      text-align: center; }
    .keywordlist-block li .keywordlist-block-element p {
      color: #009fe3;
      font-family: 'Montserrat', sans-serif;
      font-size: 0.8125rem;
      line-height: 2.4375rem;
      margin: 0;
      padding: 0;
      text-transform: uppercase; }

.textblock {
  margin-bottom: 2.6875rem; }

#contact-form {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.8125rem;
  padding-left: 2.5625rem; }
  #contact-form input[type="text"],
  #contact-form textarea {
    border: 0.3125rem solid #e5e5e4;
    padding: 0 1rem;
    height: 3.1875rem; }
  #contact-form textarea {
    padding: 1rem;
    height: 16.375rem; }
  #contact-form #contact-form-street,
  #contact-form #contact-form-city {
    padding-right: 0; }
  #contact-form #contact-form-required p {
    font-family: 'Raleway', sans-serif;
    font-size: 0.75rem;
    line-height: 1rem; }
  #contact-form button {
    width: 100%; }
  @media only screen and (max-width: 62.4375rem) {
    #contact-form #contact-form-street,
    #contact-form #contact-form-city {
      padding-right: 0.9375rem; } }

@media only screen and (max-width: 47.875rem) {
  #contact-form {
    padding-left: 0.9375rem; } }

#customer-service-container {
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  min-height: 29.3125rem; }
  #customer-service-container select {
    background: #ffffff;
    border: 0.3125rem solid #f4f4f4;
    font-size: 0.8125rem;
    height: 3.1875rem;
    max-width: 31.125rem; }
    #customer-service-container select#customer-service-select {
      -webkit-appearance: none;
      background: #ffffff url("../../img/customer-service-select-arrow.gif") no-repeat right; }
    #customer-service-container select#customer-service-select:focus {
      -webkit-appearance: none;
      background: #ffffff url("../../img/customer-service-select-arrow-focus.gif") no-repeat right; }
  #customer-service-container .customer-service-contact span {
    color: #009fe3 !important;
    text-transform: uppercase; }
  #customer-service-container .customer-service-contact p {
    font-family: 'Raleway', sans-serif;
    font-size: 1rem; }
    #customer-service-container .customer-service-contact p strong {
      color: #000000 !important;
      text-transform: none; }
    #customer-service-container .customer-service-contact p a {
      text-decoration: underline; }
  #customer-service-container .customer-service-contact.fade-in {
    opacity: 0;
    -webkit-animation: fadeIn ease-in 1;
    -moz-animation: fadeIn ease-in 1;
    animation: fadeIn ease-in 1;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-duration: .5s;
    -moz-animation-duration: .5s;
    animation-duration: .5s; }

#customer-service #main-content .content_right {
  background: url("../../img/customer-service-world-background.png") no-repeat bottom; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-moz-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.headline_icon {
  border-bottom: 0.0625rem solid #f4f4f4;
  border-top: 0.0625rem solid #f4f4f4;
  margin: 0 0 2.9375rem 0.5625rem;
  padding-left: 2rem; }
  .headline_icon .icon_container {
    height: 1.3125rem;
    float: left;
    width: 1.8125rem;
    margin-top: 1.125rem;
    margin-right: 0.9375rem; }

.video-gallery {
  font-family: 'Montserrat', sans-serif;
  font-size: 1rem;
  margin-bottom: 5.125rem; }
  .video-gallery .row {
    max-width: 41.875rem; }
  .video-gallery .video-gallery-title {
    padding-top: 0.3125rem; }
    .video-gallery .video-gallery-title .video-gallery-headline {
      padding-left: 0 !important; }
    .video-gallery .video-gallery-title img {
      margin: 0.625rem 0; }
  .video-gallery a {
    font-size: 1rem;
    margin-bottom: 0;
    padding: 0.4375rem 2rem;
    text-decoration: none; }
    .video-gallery a.brochure {
      text-transform: none; }

.top-bar-menu-icon-image {
  background: #25346d;
  display: inline-block;
  position: relative;
  padding: 1.625rem 0.9375rem;
  transition: 0.25s;
  cursor: pointer;
  user-select: none;
  opacity: .8; }
  .top-bar-menu-icon-image .navicon:before, .top-bar-menu-icon-image .navicon:after {
    transition: 0.25s; }
  .top-bar-menu-icon-image:hover {
    transition: 0.5s;
    opacity: 1; }
    .top-bar-menu-icon-image:hover .navicon:before, .top-bar-menu-icon-image:hover .navicon:after {
      transition: 0.25s; }
    .top-bar-menu-icon-image:hover .navicon:before {
      top: .825rem; }
    .top-bar-menu-icon-image:hover .navicon:after {
      top: -.825rem; }

.navicon {
  position: relative;
  width: 1.875rem;
  height: 0.25rem;
  background: #fff;
  transition: 0.5s;
  border-radius: 2.5rem; }
  .navicon:before, .navicon:after {
    display: block;
    content: "";
    height: 0.25rem;
    width: 1.875rem;
    background: #fff;
    position: absolute;
    z-index: -1;
    transition: 0.5s 0.25s;
    border-radius: 1rem; }
  .navicon:before {
    top: 0.5rem; }
  .navicon:after {
    top: -0.5rem; }
  .navicon a {
    color: #ffffff; }

.open:not(.steps) .navicon:before,
.open:not(.steps) .navicon:after {
  top: 0 !important; }

.open .navicon:before,
.open .navicon:after {
  transition: 0.5s; }

.open.x .navicon {
  background: transparent; }
  .open.x .navicon:before {
    transform: rotate(-45deg); }
  .open.x .navicon:after {
    transform: rotate(45deg); }

@font-face {
  font-family: 'Kite One';
  font-style: normal;
  font-weight: 400;
  src: local("Kite One"), local("KiteOne-Regular"), url(http://themes.googleusercontent.com/static/fonts/kiteone/v1/VNHoD96LpZ9rGZTwjozAOnYhjbSpvc47ee6xR_80Hnw.woff) format("woff"); }

@media only screen and (max-width: 62.4375rem) {
  #layerslider {
    margin-bottom: 0; }
  .tab-bar {
    margin-bottom: 1.25rem; }
  #main-content .content_right .large-12 {
    padding-left: 0.9375rem; }
  #logo {
    margin-bottom: 0; }
  .row #logo a img {
    padding-top: 0.9375rem !important;
    padding-bottom: 0 !important;
    padding-left: 1rem !important; }
  input#imprint-input[type="text"]:focus {
    width: 9.375rem;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0; }
  ul.inline-list {
    padding-top: 0.625rem; } }

ul {
  margin: 0 -1.25rem; }
  ul.navi_block a:hover {
    text-decoration: none; }
    ul.navi_block a:hover .navi_block_elem {
      background-color: #009fe3; }
      ul.navi_block a:hover .navi_block_elem .navi_block_image .navi_block_image_hover_overlay {
        background: rgba(37, 52, 109, 0.6); }
      ul.navi_block a:hover .navi_block_elem .navi_block_image .navi_block_image_overlay_forward_text_hover,
      ul.navi_block a:hover .navi_block_elem .navi_block_image .navi_block_image_overlay_forward_hover {
        opacity: 1; }
    ul.navi_block a:hover h2 {
      color: #ffffff; }
    ul.navi_block a:hover .navi_block_arrow {
      background: transparent url("../../img/home-nav-block-image-arrow-hover.png") no-repeat; }
  ul.navi_block li div {
    color: #000000; }
    ul.navi_block li div h2 {
      color: #009fe3;
      font-weight: 700;
      margin-bottom: 0.4375rem;
      padding-bottom: 0.3125rem;
      padding-top: 0; }
  ul.navi_block .navi_block_elem {
    background: #dad9d8;
    padding-bottom: 0.3125rem; }
    ul.navi_block .navi_block_elem .navi_block_image {
      background-size: 100% auto;
      width: 100%; }
      ul.navi_block .navi_block_elem .navi_block_image .navi_block_image_hover_overlay {
        position: absolute;
        padding-bottom: 94%;
        width: 100%; }
      ul.navi_block .navi_block_elem .navi_block_image .navi_block_image_overlay_forward_hover {
        background: url("../../img/home-nav-block-image-overlay-forward-hover.png") no-repeat center center;
        height: 3.75rem;
        left: 40.3%;
        opacity: 0;
        position: absolute;
        top: 30%;
        width: 3.75rem; }
      ul.navi_block .navi_block_elem .navi_block_image .navi_block_image_overlay_forward_text_hover {
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
        font-size: 0.8125rem;
        left: 38%;
        opacity: 0;
        position: absolute;
        text-transform: uppercase;
        top: 54%; }
    ul.navi_block .navi_block_elem .navi_block_arrow {
      background: transparent url("../../img/home-nav-block-image-arrow.png") no-repeat;
      bottom: 0;
      height: 12px;
      left: 17px;
      position: absolute !important;
      width: 29px;
      z-index: 100 !important; }
  ul.navi_block .block_text_container {
    padding: 1rem 1.5rem 1.5625rem 1.5rem; }
    ul.navi_block .block_text_container p {
      font-size: 0.8125rem;
      line-height: 1.0625rem; }
  @media only screen and (max-width: 62.4375rem) {
    ul.navi_block .block_text_container {
      padding: 0.625rem; } }

.image-galery {
  padding: 0 0.9375rem 0 2.5rem; }
  @media only screen and (max-width: 62.4375rem) {
    .image-galery {
      padding: 0 0.9375rem; } }

.g-recaptcha-outer {
  text-align: center;
  border-radius: 2px;
  background: #f9f9f9;
  border-style: solid;
  border-color: #ccc;
  border-width: 1px;
  border-bottom-width: 2px;
  margin-bottom: 0.625rem; }

.g-recaptcha-inner {
  width: 154px;
  height: 82px;
  overflow: hidden;
  margin: 0 auto; }

.g-recaptcha {
  position: relative;
  left: -2px;
  top: -1px; }

/*****************************************************************************
/* Folgende Anweisungen oben einfügen, wenn sie benöigt werden (vor custom)
/*****************************************************************************
//@import './foundation/components/_alert-boxes';
//@import './foundation/components/_breadcrumbs';
//@import './foundation/components/_button-groups';
//@import './foundation/components/_buttons';
//@import './foundation/components/_dropdown';
//@import './foundation/components/_dropdown-buttons';
//@import './foundation/components/_flex-video';
//@import './foundation/components/_icon-bar';
//@import './foundation/components/_joyride';
//@import './foundation/components/_keystrokes';
//@import './foundation/components/_magellan';
//@import './foundation/components/_pagination';
//@import './foundation/components/_panels';
//@import './foundation/components/_pricing-tables';
//@import './foundation/components/_progress-bars';
//@import './foundation/components/_range-slider';
//@import './foundation/components/_split-buttons';
//@import './foundation/components/_switches';
//@import './foundation/components/_thumbs';
//@import './foundation/components/_tooltips';
/*****************************************************************************/

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIl9mdW5jdGlvbnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19nbG9iYWwuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Jsb2NrLWdyaWQuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fY2xlYXJpbmcuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fbGFiZWxzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX29yYml0LnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zaWRlLW5hdi5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zdWItbmF2LnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL190YWJzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdHlwZS5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19vZmZjYW52YXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiY3VzdG9tLnNjc3MiLCJhZG1lci5zY3NzIiwibGF5ZXJzbGlkZXIuc2NzcyIsIm1lZGlhcG9vbC5zY3NzIiwidG9wLW5hdi5zY3NzIiwiY29udGFjdC1mb3JtLWxlZnQuc2NzcyIsInNpZGUtbmF2LnNjc3MiLCJwYWNrYWdpbmcuc2NzcyIsImljb24tbGlzdC5zY3NzIiwiaGFuZGxpbmctcHJvY2VkdXJlLnNjc3MiLCJpbGx1c3RyYXRpb24uc2NzcyIsInRlYXNlci5zY3NzIiwiY2FsbG91dC5zY3NzIiwidGVhc2VyLXN1YmNhdGVnb3J5LnNjc3MiLCJrZXl3b3JkbGlzdC5zY3NzIiwidGVzdGJsb2NrLnNjc3MiLCJjb250YWN0LWZvcm0uc2NzcyIsImN1c3RvbWVyLXNlcnZpY2Uuc2NzcyIsImhlYWRsaW5lLWljb24uc2NzcyIsInZpZGVvLWdhbGxlcnkuc2NzcyIsIm5hdmlnYXRpb24tdG9wLnNjc3MiLCJtZWRpYS1xdWVyaWVzLnNjc3MiLCJibG9ja19uYXZpZ2F0aW9uLnNjc3MiLCJpbWFnZS1nYWxlcnkuc2NzcyIsInJlY2FwdGNoYS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJfc2V0dGluZ3NcIjtcclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gSGllciB3ZXJkZW4gXCJiZW7DtnRpZ3RlISEhXCIgRXJ3ZWl0ZXJ1bmdlbiBpbmtsdWRpZXJ0XHJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZ3JpZCc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19hY2NvcmRpb24nO1xyXG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYmxvY2stZ3JpZCc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19jbGVhcmluZyc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19mb3Jtcyc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMnO1xyXG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fbGFiZWxzJztcclxuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX29yYml0JztcclxuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbCc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19zaWRlLW5hdic7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19zdWItbmF2JztcclxuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlcyc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL190YWJzJztcclxuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RvcC1iYXInO1xyXG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdHlwZSc7XHJcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19vZmZjYW52YXMnO1xyXG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdmlzaWJpbGl0eSc7XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gSW4gZGVyIEN1c3RvbSB3aXJkIGRlciBlaWdlbmUgQ1NTLUNvZGUgaW1wbGVtZW50aWVydCBcclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbkBpbXBvcnQgXCJjdXN0b21cIjtcclxuQGltcG9ydCBcImFkbWVyXCI7XHJcbkBpbXBvcnQgXCJsYXllcnNsaWRlclwiO1xyXG5AaW1wb3J0IFwibWVkaWFwb29sXCI7XHJcbkBpbXBvcnQgXCJ0b3AtbmF2XCI7XHJcbkBpbXBvcnQgXCJjb250YWN0LWZvcm0tbGVmdFwiO1xyXG5AaW1wb3J0IFwic2lkZS1uYXZcIjtcclxuQGltcG9ydCBcInBhY2thZ2luZ1wiO1xyXG5AaW1wb3J0IFwiaWNvbi1saXN0XCI7XHJcbkBpbXBvcnQgXCJoYW5kbGluZy1wcm9jZWR1cmVcIjtcclxuQGltcG9ydCBcImlsbHVzdHJhdGlvblwiO1xyXG5AaW1wb3J0IFwidGVhc2VyXCI7XHJcbkBpbXBvcnQgXCJjYWxsb3V0XCI7XHJcbkBpbXBvcnQgXCJ0ZWFzZXItc3ViY2F0ZWdvcnlcIjtcclxuQGltcG9ydCBcImtleXdvcmRsaXN0XCI7XHJcbkBpbXBvcnQgXCJ0ZXN0YmxvY2tcIjtcclxuQGltcG9ydCBcImNvbnRhY3QtZm9ybVwiO1xyXG5AaW1wb3J0IFwiY3VzdG9tZXItc2VydmljZVwiO1xyXG5AaW1wb3J0IFwiaGVhZGxpbmUtaWNvblwiO1xyXG5AaW1wb3J0IFwidmlkZW8tZ2FsbGVyeVwiO1xyXG5AaW1wb3J0IFwibmF2aWdhdGlvbi10b3BcIjtcclxuQGltcG9ydCBcIm1lZGlhLXF1ZXJpZXNcIjtcclxuQGltcG9ydCBcImJsb2NrX25hdmlnYXRpb25cIjtcclxuQGltcG9ydCBcImltYWdlLWdhbGVyeVwiO1xyXG5AaW1wb3J0IFwicmVjYXB0Y2hhXCI7XHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuLyogRm9sZ2VuZGUgQW53ZWlzdW5nZW4gb2JlbiBlaW5mw7xnZW4sIHdlbm4gc2llIGJlbsO2aWd0IHdlcmRlbiAodm9yIGN1c3RvbSlcclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2FsZXJ0LWJveGVzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYnJlYWRjcnVtYnMnO1xyXG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19idXR0b24tZ3JvdXBzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9ucyc7XHJcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZHJvcGRvd24tYnV0dG9ucyc7XHJcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2ZsZXgtdmlkZW8nO1xyXG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19pY29uLWJhcic7XHJcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2pveXJpZGUnO1xyXG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19rZXlzdHJva2VzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fbWFnZWxsYW4nO1xyXG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19wYWdpbmF0aW9uJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcGFuZWxzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcHJpY2luZy10YWJsZXMnO1xyXG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19wcm9ncmVzcy1iYXJzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcmFuZ2Utc2xpZGVyJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fc3BsaXQtYnV0dG9ucyc7XHJcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3N3aXRjaGVzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdGh1bWJzJztcclxuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9vbHRpcHMnO1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEhhdXB0ZmFyYmVuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyRtYWluQ29sb3JCbHVlOiAgICAgIzEyMzQ1NjtcclxuLy8kbWFpbkNvbG9yWWVsbG93OiAgICNmMWU2MDY7XHJcbiR3aGl0ZTogICAgICAgICAgICAgI2ZmZmZmZjtcclxuJGJsYWNrOiAgICAgICAgICAgICAjMDAwMDAwO1xyXG4kb3JhbmdlOiAgICAgICAgICAgICNmMzlkM2Q7XHJcbiR5ZWxsb3c6ICAgICAgICAgICAgI2ZmZjVjMjtcclxuJGxpZ2h0X2dyZXk6ICAgICAgICAjZjJmMmYyO1xyXG4kbWlkX2dyZXk6ICAgICAgICAgICM5ZmEwYTU7XHJcbiRkYXJrX2dyZXk6ICAgICAgICAgIzY2NjY2NjtcclxuJGJsdWU6XHRcdFx0XHQjMDA1OWE5O1xyXG4kZ3JlZW46XHRcdFx0XHQjOThjYjAwO1xyXG4kZGFya19yZWQ6ICAgICAgICAgICNkNDM0MzE7XHJcbiRtYWluQ29sb3JHcmVlbjpcdCRncmVlbjtcclxuJG1haW5HcmV5OiAjZGFkOWQ4O1xyXG4kbWFpblR1cnF1aXNlOiAjMDA5ZmUzO1xyXG4kbWFpbkNvbG9yR3JleTogI2IyYjJiMjtcclxuJGJvcmRlckNvbG9yOiAjZjRmNGY0O1xyXG4kaW1wcmludENvbG9yOiAjN2E3YTc5O1xyXG4kaW1wcmludENvbG9ySG92ZXI6ICMwMDQ5OWE7XHJcbiRpbXByaW50Qm9yZGVyQm90dG9tOiAjODk4NTg2O1xyXG4kbWFpbkNvbG9yQmx1ZTogIzI1MzQ2ZDtcclxuJGZvb3RlckFkcmVzc0NvbG9yOiAjOGM5NjljO1xyXG4kY29udGFjdEZvcm1MZWZ0OiAjZWVlZWVlO1xyXG4kc2lkZU5hdkhvdmVyQWN0aXZlOiAjNjc2NzY3O1xyXG4kYm9yZGVyQ29udGVudExlZnQ6ICNlMWUwZTE7XHJcbiRib3JkZXJJbGx1c3RyYXRpb246ICNlN2U1ZWY7XHJcblxyXG4kdGVhc2VySGVhZGxpbmVCYWNrZ3JvdW5kOiAjMWQ5ZGQ5O1xyXG4kdGVhc2VyQmxvY2tEcm9wZG93bjogIzhhZDBlNTtcclxuXHJcbiRoMkNvbG9yOiAjM2M5ZGQ3O1xyXG4ka2V5d29yZGxpc3RCYWNrZ3JvdW5kOiAjZjJmMWYzO1xyXG5cclxuJHRhYmxlQmFja2dyb3VuZExpZ2h0Qmx1ZTogI2U0ZWVmOTtcclxuJHRhYmxlQmFja2dyb3VuZERhcmtCbHVlOiAjYjNkM2VmO1xyXG5cclxuJGNvbnRhY3RGb3JtQm9yZGVyOiAjZTVlNWU0O1xyXG5cclxuJGZvb3RlckhvbWVJY29uQm9yZGVyQ29sb3I6ICNlM2UyZWI7XHJcbiRmb290ZXJTYWxlc0JvcmRlckJvdHRvbTogI2I0YjBjOTtcclxuJGZvb3RlckxvY2FsU2FsZXNCb3JkZXJCb3R0b206ICNiZmM0ZDA7XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFNjaHJpZnRcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEdyw7bDn2VuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4kZWxlbWVudF9hYnN0YW5kX3VudGVuICAgICAgICAgIDogICAzMHB4O1xyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBadW9yZG51bmcgZGVyIEZhcmJlbiB6dSBkZW4gZWluemVsbmVuIEJlcmVpY2hlblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuJGJhY2tncm91bmRfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAkd2hpdGU7XHJcblxyXG5cclxuJGJsb2NrX2JhY2tncm91bmQgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7ICAgICAgICAvLyBhbGxnZW1laW5lciBCTG9jayAoIHdpcmQgYmVpIGRpdmVyc2VuIEVsZW1lbnRlbiBnZW51dHp0KVxyXG4kdGV4dGZhcmJlX3N0YW5kYXJkICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XHJcbiRsaW5rX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR0ZXh0ZmFyYmVfc3RhbmRhcmQ7XHJcblxyXG5cclxuLy8gRm9vdGVyXHJcbiRmb290ZXJfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICRibHVlOyAgICAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgRm9vdGVyLUJMb2NrXHJcbiRmb290ZXJfaDEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAgICAvLyBUZXh0ZmFyYmUgSGF1cHTDvGJlcnNjaHJpZnRlbiBpbiBTaXRlbWFwXHJcbiRmb290ZXJfdGV4dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAgLy8gVGV4dGZhcmJlIG5vcm1hbGUgTGlua3MgaW4gU2l0ZW1hcFxyXG4kZm9vdGVyX3RleHRfaG92ZXJcdFx0XHRcdCAgICAgICAgICAgIDogICAkYmxhY2s7XHJcbiRmb290ZXJfaW1wcmludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAgLy8gVGV4dGZhcmJlIEFkcmVzc3plaWxlXHJcbiRmb290ZXJfdG9wbGluZV9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICRncmVlbjsgICAgICAgICAgICAvLyBSYWhtZW5mYXJiZSDDvGJlciBGb290ZXJcclxuJGZvb3Rlcl9taWRsaW5lX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICA6ICAgJG1pZF9ncmV5OyAgICAgICAgICAvLyBMaW5pZW5mYXJiZSB6d2lzY2hlbiBTaXRlbWFwIHVuZCBBZHJlc3NlXHJcblxyXG4vLyBLb250YWt0XHJcbiRrb250YWt0X2JhY2tncm91bmRjb2xvciAgICAgICAgICAgICAgICAgICAgOiAgICRibHVlO1xyXG4ka29udGFrdF9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XHJcbiRrb250YWt0X2xpbmtfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcclxuXHJcbi8vIE5ld3NcclxuJG5ld3NfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICA6ICAgJHdoaXRlO1xyXG4kbmV3c190ZXh0ICAgICAgICAgICAgICAgICAgICAgIDogICAkZGFya19ncmV5O1xyXG4kbmV3c19oZWFkbGluZV9jb2xvciAgICAgICAgICAgIDogICAkZGFya19ncmV5O1xyXG4kbmV3c19oZWFkbGluZV9ib3JkZXIgICAgICAgICAgIDogICAkd2hpdGU7XHJcbiRuZXdzX2RhdGVfYmFja2dyb3VuZGNvbG9yICAgICAgOiAgICR3aGl0ZTtcclxuJG5ld3NfZGF0ZV9jb2xvciAgICAgICAgICAgICAgICA6ICAgJGJsdWU7XHJcbiRuZXdzX3RpdGxlX2NvbG9yXHRcdFx0XHQ6XHQkZGFya19ncmV5O1xyXG4kbmV3c19zbGlkZXJfcHJldl9uZXh0X2J1dHRvbnMgIDogICAkYmx1ZTtcclxuXHJcbi8vIEZhY2Vib29rXHJcbiRmYWNlYm9va19uZXdzX2JhY2tncm91bmRfY29sb3IgICAgICAgICAgICAgOiAgICR3aGl0ZTtcclxuJGZhY2Vib29rX25ld3NfYm9yZGVyX2NvbG9yICAgICAgICAgICAgICAgICA6ICAgJGJsdWU7XHJcbiRmYWNlYm9va19uZXdzX2RhdGVfYmFja2dyb3VuZF9jb2xvciAgICAgICAgOiAgICRibHVlO1xyXG4kZmFjZWJvb2tfbmV3c19kYXRlX2NvbG9yICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XHJcblxyXG4vLyBIZWFkZXJcclxuJGhlYWRlcl9zdWJuYXZpX2JhY2tncm91bmRjb2xvciAgICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XHJcbiRoZWFkZXJfc3VibmF2aV9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICRtaWRfZ3JleTtcclxuJGJvcmRlcl9ib3R0b21faGVhZF9pbWFnZSAgICAgICAgICAgICAgICAgICA6ICAgJGdyZWVuOyAgICAvLyBMaW5pZSB1bnRlciBIZWFkaW1hZ2VcclxuXHJcbi8vIFNsaWRlciBTdGFydHNlaXRlXHJcbiRsYXllcnNsaWRlcl90ZXh0X2NvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcclxuJGxheWVyc2xpZGVyX2JveF9jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICAgcmdiYSgxMzksIDEzOSwgMTM5LCAwLjcpO1xyXG4kbGF5ZXJzbGlkZXJfYm94X2hlYWRsaW5lX2NvbG9yXHQgICAgICAgICAgICA6XHQkd2hpdGU7XHJcbiRsYXllcnNsaWRlcl9ib3hfdGV4dF9jb2xvciAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcclxuJGxheWVyc2xpZGVyX2JvcmRlciAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGdyZWVuO1xyXG5cclxuLy8gw5xiZXJzY2hyaWZ0ZW5cclxuJGNvbG9yX2gxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJG1haW5Db2xvckJsdWU7XHJcbiRjb2xvcl9oMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRibGFjaztcclxuJGNvbG9yX2gzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsYWNrO1xyXG4kY29sb3JfaDQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XHJcbiRjb2xvcl9oNSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRibGFjaztcclxuJGNvbG9yX2g2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGRhcmtfZ3JleTtcclxuJHVlYmVyc2NocmlmdF9mYXJiaWdfaGludGVyZ3J1bmQgICAgICAgICAgICAgOiAgICRibHVlO1xyXG4kdWViZXJzY2hyaWZ0X2ZhcmJpZ190ZXh0ICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XHJcbiRoMV9ib3JkZXJfYm90dG9tX2NvbG9yXHRcdFx0ICAgICAgICAgICAgOlx0JGJsdWU7XHJcblxyXG4vLyBMaXN0ZSAvLyBBa2tvcmRpb25cclxuJGxpc3RlX2JhY2tncm91bmRjb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XHJcbiRsaXN0ZV9oZWFkX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRibGFjaztcclxuJGxpc3RlX3RleHRfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xyXG4kbGlzdGVfdGV4dF9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XHJcblxyXG4vLyBCdXR0b25zXHJcbiRidXR0b25fYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICRtYWluVHVycXVpc2U7ICAgICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIGRlciBTdGFuZGFyZGJ1dHRvbnNcclxuJGJ1dHRvbl9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgIC8vIFRleHRmYXJiZSBkZXIgU3RhbmRhcmRidXR0b25zXHJcbiRidXR0b25faG92ZXJfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlOyAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBIb3Zlci1FZmZla3RcclxuJGJ1dHRvbl9ob3Zlcl9jb2xvclx0XHRcdFx0ICAgICAgICAgICAgOlx0JHdoaXRlO1xyXG5cclxuLy8gTGlua2xpc3RlIG1pdCBCSWxkXHJcbiRsaW5rbGlzdGVfYmFja2dyb3VuZFx0XHRcdCAgICAgICAgICAgIDpcdCRsaWdodF9ncmV5OyAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXMgQmxvY2tzXHJcbiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZFx0XHQgICAgICAgICAgICA6XHQkbGlnaHRfZ3JleTsgICAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rc1xyXG4kbGlua2xpc3RlX2xpbmtzX2hvdmVyX2JhY2tncm91bmQgICAgICAgICAgIDpcdCRtaWRfZ3JleTtcdFx0XHRcdC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rcyBiZWltIGhvdmVyblxyXG4kbGlua2xpc3RlX3VlYmVyc2NocmlmdF9jb2xvclx0ICAgICAgICAgICAgOlx0JGRhcmtfZ3JleTtcdFx0XHRcdC8vIEZhcmJlIGRlciDDnGJlcnNjaHJpZnRlblxyXG4kbGlua2xpc3RlX2xpbmtzX2NvbG9yXHRcdFx0ICAgICAgICAgICAgOlx0JGRhcmtfZ3JleTsgICAgICAgXHRcdC8vIFRleHRmYXJiZSBkZXIgZWluemVsbmVuIExpbmtzXHJcbiRsaW5rbGlzdGVfbGlua3NfaG92ZXJfY29sb3JcdCAgICAgICAgICAgIDpcdCR3aGl0ZTtcdFx0XHRcdC8vIFRleHRmYXJiZSBkZXIgZWluemVsbmVuIExpbmtzIGJlaW0gaG92ZXJuXHJcbiRidXR0b25faWNvbl9iYWNrZ3JvdW5kY29sb3IgICAgICAgICAgICAgICAgOiAgICRibHVlOyAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXIgU3RhbmRhcmRidXR0b25zXHJcbiRidXR0b25faWNvbl9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAvLyBUZXh0ZmFyYmUgZGVyIFN0YW5kYXJkYnV0dG9uc1xyXG4kYnV0dG9uX2ljb25faG92ZXJfYmFja2dyb3VuZGNvbG9yICAgICAgICAgIDogICAkbWlkX2dyZXk7ICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIEhvdmVyLUVmZmVrdFxyXG4kbGlua2xpc3RlX2xpbmtfYm9yZGVyX2JvdHRvbV9jb2xvclx0ICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XHJcblxyXG4vLyBMaW5rbGlzdGUgbWl0IEJJbGQgdW5kIEljb25cclxuJGxpbmtsaXN0ZV9pY29uX2xpbmtzX2JhY2tncm91bmRcdFx0XHQ6XHQkd2hpdGU7XHJcbiRsaW5rbGlzdGVfaWNvbl91ZWJlcnNjaHJpZnRfYmFja2dyb3VuZFx0ICAgIDpcdCRibHVlOyAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXMgQmxvY2tzXHJcbiRsaW5rbGlzdGVfaWNvbl9saW5rc19iYWNrZ3JvdW5kXHRcdCAgICA6XHQkbGlnaHRfZ3JleTsgICAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rc1xyXG4kbGlua2xpc3RlX2ljb25fbGlua3NfaG92ZXJfYmFja2dyb3VuZFx0ICAgIDpcdCRtaWRfZ3JleTtcdFx0XHRcdC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rcyBiZWltIGhvdmVyblxyXG4kbGlua2xpc3RlX2ljb25fdWViZXJzY2hyaWZ0X2NvbG9yXHQgICAgICAgIDpcdCR3aGl0ZTtcdFx0XHRcdC8vIEZhcmJlIGRlciDDnGJlcnNjaHJpZnRlblxyXG4kbGlua2xpc3RlX2ljb25fbGlua3NfY29sb3JcdFx0XHQgICAgICAgIDpcdCRkYXJrX2dyZXk7ICAgICAgIFx0XHQvLyBUZXh0ZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rc1xyXG4kbGlua2xpc3RlX2ljb25fbGlua3NfaG92ZXJfY29sb3JcdCAgICAgICAgOlx0JHdoaXRlO1x0XHRcdFx0Ly8gVGV4dGZhcmJlIGRlciBlaW56ZWxuZW4gTGlua3MgYmVpbSBob3Zlcm5cclxuJGxpbmtsaXN0ZV9pY29uX2xpbmtfYm9yZGVyX2JvdHRvbV9jb2xvclx0OiAgICRsaWdodF9ncmV5O1xyXG4kbGlua2xpc3RlX2ljb25fbGlua3NfaG92ZXJfY29sb3JfbWlkbGluZSAgIDogICAkd2hpdGU7XHJcblxyXG5cclxuLy8gU2lkZWJhciAtIEluZm9ybWF0aW9uZW5cclxuJHNpZGViYXJfaW5mb3JtYXRpb25lbl9iYWNrZ3JvdW5kICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XHJcbiRzaWRlYmFyX2luZm9ybWF0aW9uZW5fdGl0bGVfYmFja2dyb3VuZCAgICAgOiAgICRtaWRfZ3JleTtcclxuJHNpZGViYXJfaW5mb3JtYXRpb25lbl90aXRsZV9jb2xvciAgICAgICAgICA6ICAgJHdoaXRlO1xyXG4kc2lkZWJhcl9pbmZvcm1hdGlvbmVuX2JvcmRlcl9jb2xvciAgICAgICAgIDogICAkYmx1ZTtcclxuXHJcbi8vIE5hdmlhZ3Rpb24gZsO8ciBrbGVpbmUgQXVmbMO2c3VuZ2VuIC0ga2FubiBoaWVyIHVudGVyIFB1bmt0IDE4IC9jYS4gWmVpbGUgMTAyMCkgZ2VuYXVlciBkZWZpbmllcnQgd2VyZGVuXHJcbiRuYXZfY2FudmFzX3RhYl9iYWNrZ3JvdW5kICAgICAgICAgICAgICAgICAgOiAgICRibHVlOyAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgVGFiXHJcbiRuYXZfY2FudmFzX21lbnVfYmFja2dyb3VuZCAgICAgICAgICAgICAgICAgOiAgICRibHVlOyAgICAgIC8vICBIaW50ZXJncnVuZGZhcmJlIGZsaXAtb3V0XHJcbiRuYXZfY2FudmFzX3RhYl9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAgLy8gVGV4dGZhcmJlIFRhYlxyXG4kbmF2X2NhbnZhc19tZW51X2JhY2tncm91bmRfbGlzdCAgICAgICAgICAgIDogICAkbGlnaHRfZ3JleTtcclxuJG5hdl9jYW52YXNfbWVudV9jb2xvcl9saXN0ICAgICAgICAgICAgICAgICA6ICAgJGJsdWU7XHJcblxyXG5cclxuLy8gVGFic1xyXG4kdGFiX3RpdGxlX2JvcmRlci1jb2xvclx0XHRcdFx0XHRcdDpcdCRtaWRfZ3JleTtcdFx0XHQvLyBSYWhtZW5mYXJiZXIgZGVyIFRpdGVsXHJcbiR0YWJfY29udGVudF9ib3JkZXItY29sb3JcdFx0XHRcdFx0Olx0JG1pZF9ncmV5O1x0XHRcdC8vIFJhaG1lbmZhcmJlIGRlcyBDb250ZW50LUJsb2Nrc1xyXG4kdGFiX3RpdGxlX2JhY2tncm91bmQtY29sb3JcdFx0XHRcdFx0Olx0JGxpZ2h0X2dyZXk7XHRcdC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIG5pY2h0IGFrdGl2ZW4gVGFic1xyXG4kdGFiX3RpdGxlX2FjdGl2ZV9iYWNrZ3JvdW5kLWNvbG9yXHRcdFx0Olx0JHdoaXRlO1x0XHRcdFx0Ly8gSGludGVyZ3J1bmRmYXJiZSBkZXMgYWt0aXZlbiBUYWJzXHJcbiR0YWJfY29udGVudF9iYWNrZ3JvdW5kLWNvbG9yXHRcdFx0XHQ6XHQkd2hpdGU7XHRcdFx0XHQvLyBIaW50ZXJncnVuZGZhcmJlIGRlcyBha3RpdmVuIFRhYnNcclxuXHJcbi8vIEtvbnRha3Rmb3JtdWxhclxyXG4ka29udGFrdGZvcm1faW5wdXRfYm9yZGVyX2NvbG9yXHRcdFx0XHQ6XHQkZGFya19ncmV5O1xyXG4ka29udGFrdGZvcm1faW5wdXRfYmFja2dyb3VuZF9jb2xvclx0XHRcdDpcdCR3aGl0ZTtcclxuJGtvbnRha3Rmb3JtX2lucHV0X2FrdGl2X2JhY2tncm91bmRfY29sb3JcdDpcdCRsaWdodF9ncmV5O1xyXG5cclxuLy8gS29udGFrdFxyXG4ka29udGFrdF9iYWNrZ3JvdW5kX2NvbG9yICAgICAgIFx0XHRcdDogICAkYmx1ZTtcclxuJGtvbnRha3RfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xyXG4ka29udGFrdF9saW5rX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XHJcblxyXG4vLyBOYXZpZ2F0aW9uc2Jsb2NrIChCaWxkIMOcYmVyc2NocmlmdCB1bmQgVGV4dCAoSGFtbWVyIC0gU3RhcnRzZWl0ZSkpXHJcbiRuYXZpX2Jsb2NrX2NvbG9yXHRcdFx0XHRcdFx0XHQ6XHQkYmxhY2s7XHJcbiRuYXZpX2Jsb2NrX2JhY2tncm91bmRcdFx0XHRcdFx0XHQ6XHQkbWFpbkdyZXk7XHJcbiRuYXZpX2Jsb2NrX2NvbG9yX2hlYWRsaW5lXHRcdFx0XHRcdDpcdCRtYWluVHVycXVpc2U7XHJcbiRuYXZpX2Jsb2NrX2JvcmRlcl9ib3R0b21faGVhZGxpbmUgXHRcdFx0Olx0JHdoaXRlO1xyXG4kbmF2aV9ibG9ja19ib3JkZXJfdG9wX2hlYWRsaW5lXHRcdFx0ICAgIDpcdCRncmVlbjtcclxuXHJcbi8vIExpbmtlIE5hdmlnYXRpb25cclxuJHNpZGVuYXZfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGRhcmtfZ3JleTsgICAgICAgLy8gVGV4dGZhcmJlXHJcbiRzaWRlbmF2X2hvdmVyX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRzaWRlTmF2SG92ZXJBY3RpdmU7ICAgICAgICAgICAgLy8gIFRleHRmYXJiZSBob3ZlclxyXG4kc2lkZW5hdl9hY3RpdmVfY29sb3IgICAgICAgICAgICAgICAgICAgICAgIDogICAkc2lkZU5hdkhvdmVyQWN0aXZlOyAgICAgICAgICAgIC8vICBUZXh0ZmFyYmUgYWt0aXZlcyBFTGVtZW50XHJcbiRzaWRlbmF2X3RpdGxlX2JvcmRlcl9ib3R0b21fY29sb3IgICAgICAgICAgOiAgICRsaWdodF9ncmV5OyAgICAgIC8vIFJhaG1lbmZhcmJlIHVudGVyIFRpdGVsXHJcbiRzaWRlbmF2X2JvcmRlcl9ib3R0b21fY29sb3IgICAgICAgICAgICAgICAgOiAgICRsaWdodF9ncmV5OyAgICAgIC8vICBSYWhtZW4gendpc2NoZW4gZGVuIEVpbnRyw7ZnZW5cclxuJHNpZGVuYXZfYmFja2dyb3VuZF9jb2xvciAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXIgRWludHLDpGdlXHJcbiRzaWRlbmF2X2hvdmVyX2JhY2tncm91bmRfY29sb3IgICAgICAgICAgICAgOiAgICR3aGl0ZTtcclxuJHNpZGVuYXZfYWN0aXZlX2JhY2tncm91bmRfY29sb3IgICAgICAgICAgICA6ICAgJHdoaXRlO1xyXG5cclxuLy8gVG9wLU5hdmlnYXRpb25cclxuJHRvcGJhcl9hY3RpdmVfYW5kX2hvdmVyX2NvbG9yICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xyXG4kdG9wYmFyX2Ryb3Bkb3duX2NvbG9yICAgICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XHJcbiR0b3BiYXJfZHJvcGRvd25fYWN0aXZlX2FuZF9ob3Zlcl9iYWNrZ3JvdW5kX2NvbG9yICA6ICR3aGl0ZTtcclxuJHRvcGJhcl9kcm9wZG93bl9hY3RpdmVfYW5kX2hvdmVyX2NvbG9yICAgICA6ICAgJG1haW5UdXJxdWlzZTtcclxuJHRvcGJhcl9kcm9wZG93bl9ib3JkZXJfYm90dG9tX2NvbG9yICAgICAgICA6ICAgJGdyZWVuO1xyXG4vLyBEaWUgcmVzdGxpY2hlbiBWYXJpYWJsZW4genVyIEhhdXB0bmF2aWdhdGlvbiB3ZXJkZW4gdW50ZXIgUHVua3QgMzQgYW0gRW5kZSBkaWVzZXIgRGF0ZWkgZGVmaW5pZXJ0XHJcblxyXG4vLyBTY2huZWxsYW5mcmFnZVxyXG4kc2NobmVsbGFuZnJhZ2VfbGFiZWxfY29sb3IgICAgICAgICAgICAgICAgIDogICAkYmx1ZTtcclxuJHNjaG5lbGxhbmZyYWdlX2lucHV0X2JhY2tncm91bmRfY29sb3IgICAgICA6ICAgJHdoaXRlO1xyXG4kc2NobmVsbGFuZnJhZ2VfYm9yZGVyX2NvbG9yICAgICAgICAgICAgICAgIDogICAkYmx1ZTtcclxuJHNjaG5lbGxhbmZyYWdlX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsdWU7XHJcbiRzY2huZWxsYW5mcmFnZV9jb2xvcl9oMiAgICAgICAgICAgICAgICAgICAgOiAgICRibHVlO1xyXG4kc2NobmVsbGFuZnJhZ2VfYnV0dG9uX2JhY2tncm91bmRfY29sb3IgICAgIDogICAkd2hpdGU7XHJcbiRzY2huZWxsYW5mcmFnZV9idXR0b25fY29sb3IgICAgICAgICAgICAgICAgOiAgICRibHVlO1xyXG5cclxuLy8gTG9nby9MaW5rIFNsaWRlclxyXG4kbG9nb19saW5rX3NsaWRlcl9oZWFkbGluZVx0XHQ6XHQkZGFya19ncmV5O1x0XHRcdFx0Ly8gU2xpZGVyIGbDvHIgTG9nb3MgLSBGYXJiZSBkZXIgw5xiZXJzY2hyaWZ0XHJcbiRsb2dvX2xpbmtfc2xpZGVyX3VuZGVybGluZVx0XHQ6XHQkbGlnaHRfZ3JleTtcdFx0XHQvLyBTbGlkZXIgZsO8ciBMb2dvcyAtIEJvcmRlciB1bnRlciDDnGJlcnNjaHJpZnRcclxuXHJcbi8vIEJsb2NrIEVsZW1lbnRcclxuJGJsb2NrX2VsZW1fYmFja2dyb3VuZCAgICAgICA6ICR3aGl0ZTtcclxuJGJsb2NrX2VsZW1fYmFja2dyb3VuZF9ob3ZlciA6ICR3aGl0ZTtcclxuXHJcbi8vIFN1Y2hlcmdlYm5pc3NlXHJcbiRzZWFyY2hfcmVzdWx0c19ib3JkZXJfY29sb3I6ICRtaWRfZ3JleTtcclxuJHNlYXJjaF9yZXN1bHRzX2hpZ2hsaWdodF9jb2xvcjogJGxpZ2h0X2dyZXk7XHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFJhbmdlcyBmw7xyIGRpZSBNZWRpYS1RdWVyaWVzXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyRzbWFsbC1yYW5nZTogKDBlbSwgcmVtLWNhbGMoOTM3KSk7ICAvL21heC13aWR0aCA2NDBweCwgbW9iaWxlLW9ubHkgc3R5bGVzXHJcbi8vJG1lZGl1bS1yYW5nZTogKDBlbSwgcmVtLWNhbGMoOTk5KSk7ICAgLy8gbWluLXdpZHRoIDY0MXB4IGFuZCBtYXgtd2lkdGggMTAyNHB4XHJcbi8vJGxhcmdlLXJhbmdlOiAocmVtLWNhbGMoMTAwMCksIDkwZW0pOyAgICAvLyBtaW4td2lkdGggMTAyNHB4IGFuZCBtYXgtd2lkdGggMTQ0MHB4XHJcbi8vJHhsYXJnZS1yYW5nZTogKDkwLjA2M2VtLCAxMjBlbSk7ICAvL21pbi13aWR0aCAxNDQxcHggYW5kIG1heC13aWR0aCAxOTIwcHhcclxuLy8keHhsYXJnZS1yYW5nZTogKDEyMC4wNjNlbSk7ICAgICAgIC8vbWluLXdpZHRoIDE5MjFweFxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcblxyXG4vLyBUYWJsZSBvZiBDb250ZW50c1xyXG4vLyBGb3VuZGF0aW9uIFNldHRpbmdzXHJcbi8vXHJcbi8vIGEuIEJhc2VcclxuLy8gYi4gR3JpZFxyXG4vLyBjLiBHbG9iYWxcclxuLy8gZC4gTWVkaWEgUXVlcnkgUmFuZ2VzXHJcbi8vIGUuIFR5cG9ncmFwaHlcclxuLy8gMDEuIEFjY29yZGlvblxyXG4vLyAwMi4gQWxlcnQgQm94ZXNcclxuLy8gMDMuIEJsb2NrIEdyaWRcclxuLy8gMDQuIEJyZWFkY3J1bWJzXHJcbi8vIDA1LiBCdXR0b25zXHJcbi8vIDA2LiBCdXR0b24gR3JvdXBzXHJcbi8vIDA3LiBDbGVhcmluZ1xyXG4vLyAwOC4gRHJvcGRvd25cclxuLy8gMDkuIERyb3Bkb3duIEJ1dHRvbnNcclxuLy8gMTAuIEZsZXggVmlkZW9cclxuLy8gMTEuIEZvcm1zXHJcbi8vIDEyLiBJY29uIEJhclxyXG4vLyAxMy4gSW5saW5lIExpc3RzXHJcbi8vIDE0LiBKb3lyaWRlXHJcbi8vIDE1LiBLZXlzdHJva2VzXHJcbi8vIDE2LiBMYWJlbHNcclxuLy8gMTcuIE1hZ2VsbGFuXHJcbi8vIDE4LiBPZmYtY2FudmFzXHJcbi8vIDE5LiBPcmJpdFxyXG4vLyAyMC4gUGFnaW5hdGlvblxyXG4vLyAyMS4gUGFuZWxzXHJcbi8vIDIyLiBQcmljaW5nIFRhYmxlc1xyXG4vLyAyMy4gUHJvZ3Jlc3MgQmFyXHJcbi8vIDI0LiBSYW5nZSBTbGlkZXJcclxuLy8gMjUuIFJldmVhbFxyXG4vLyAyNi4gU2lkZSBOYXZcclxuLy8gMjcuIFNwbGl0IEJ1dHRvbnNcclxuLy8gMjguIFN1YiBOYXZcclxuLy8gMjkuIFN3aXRjaFxyXG4vLyAzMC4gVGFibGVzXHJcbi8vIDMxLiBUYWJzXHJcbi8vIDMyLiBUaHVtYm5haWxzXHJcbi8vIDMzLiBUb29sdGlwc1xyXG4vLyAzNC4gVG9wIEJhclxyXG4vLyAzNi4gVmlzaWJpbGl0eSBDbGFzc2VzXHJcblxyXG4vLyBhLiBCYXNlXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cclxuLy8gJHJlbS1iYXNlOiAxNnB4O1xyXG5cclxuLy8gQWxsb3dzIHRoZSB1c2Ugb2YgcmVtLWNhbGMoKSBvciBsb3dlci1ib3VuZCgpIGluIHlvdXIgc2V0dGluZ3NcclxuQGltcG9ydCAnX2Z1bmN0aW9ucyc7XHJcblxyXG4vLyBUaGUgZGVmYXVsdCBmb250LXNpemUgaXMgc2V0IHRvIDEwMCUgb2YgdGhlIGJyb3dzZXIgc3R5bGUgc2hlZXQgKHVzdWFsbHkgMTZweClcclxuLy8gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBicm93c2VyLWJhc2VkIHRleHQgem9vbSBvciB1c2VyLXNldCBkZWZhdWx0cy5cclxuXHJcbi8vIFNpbmNlIHRoZSB0eXBpY2FsIGRlZmF1bHQgYnJvd3NlciBmb250LXNpemUgaXMgMTZweCwgdGhhdCBtYWtlcyB0aGUgY2FsY3VsYXRpb24gZm9yIGdyaWQgc2l6ZS5cclxuLy8gSWYgeW91IHdhbnQgeW91ciBiYXNlIGZvbnQtc2l6ZSB0byBiZSBkaWZmZXJlbnQgYW5kIG5vdCBoYXZlIGl0IGFmZmVjdCB0aGUgZ3JpZCBicmVha3BvaW50cyxcclxuLy8gc2V0ICRyZW0tYmFzZSB0byAkYmFzZS1mb250LXNpemUgYW5kIG1ha2Ugc3VyZSAkYmFzZS1mb250LXNpemUgaXMgYSBweCB2YWx1ZS5cclxuLy8gJGJhc2UtZm9udC1zaXplOiAxMDAlO1xyXG5cclxuLy8gVGhlICRiYXNlLWZvbnQtc2l6ZSBpcyAxMDAlIHdoaWxlICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDE1MCVcclxuLy8gJGJhc2UtbGluZS1oZWlnaHQ6IDE1MCU7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdoZXRoZXIgb3Igbm90IENTUyBjbGFzc2VzIGNvbWUgdGhyb3VnaCBpbiB0aGUgZ2VtIGZpbGVzLlxyXG4kaW5jbHVkZS1odG1sLWNsYXNzZXM6IHRydWU7XHJcbi8vICRpbmNsdWRlLXByaW50LXN0eWxlczogdHJ1ZTtcclxuJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG5cclxuLy8gYi4gR3JpZFxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWdyaWQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG4vLyAkaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2U7XHJcblxyXG4vLyAkcm93LXdpZHRoOiByZW0tY2FsYygxMDAwKTtcclxuLy8gJHRvdGFsLWNvbHVtbnM6IDEyO1xyXG4vLyAkY29sdW1uLWd1dHRlcjogcmVtLWNhbGMoMzApO1xyXG5cclxuLy8gYy4gR2xvYmFsXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBkZWZpbmUgZGVmYXVsdCBmb250IHN0YWNrc1xyXG4vLyAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbi8vICRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XHJcbi8vICRmb250LWZhbWlseS1zZXJpZjogR2VvcmdpYSwgQ2FtYnJpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xyXG4vLyAkZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGRlZmluZSBkZWZhdWx0IGZvbnQgd2VpZ2h0c1xyXG4vLyAkZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbi8vICRmb250LXdlaWdodC1ib2xkOiBib2xkO1xyXG5cclxuLy8gJHdoaXRlICAgICAgIDogI0ZGRkZGRjtcclxuLy8gJGdob3N0ICAgICAgIDogI0ZBRkFGQTtcclxuLy8gJHNub3cgICAgICAgIDogI0Y5RjlGOTtcclxuLy8gJHZhcG9yICAgICAgIDogI0Y2RjZGNjtcclxuLy8gJHdoaXRlLXNtb2tlIDogI0Y1RjVGNTtcclxuLy8gJHNpbHZlciAgICAgIDogI0VGRUZFRjtcclxuLy8gJHNtb2tlICAgICAgIDogI0VFRUVFRTtcclxuLy8gJGdhaW5zYm9ybyAgIDogI0RERERERDtcclxuLy8gJGlyb24gICAgICAgIDogI0NDQ0NDQztcclxuLy8gJGJhc2UgICAgICAgIDogI0FBQUFBQTtcclxuLy8gJGFsdW1pbnVtICAgIDogIzk5OTk5OTtcclxuLy8gJGp1bWJvICAgICAgIDogIzg4ODg4ODtcclxuLy8gJG1vbnNvb24gICAgIDogIzc3Nzc3NztcclxuLy8gJHN0ZWVsICAgICAgIDogIzY2NjY2NjtcclxuLy8gJGNoYXJjb2FsICAgIDogIzU1NTU1NTtcclxuLy8gJHR1YXRhcmEgICAgIDogIzQ0NDQ0NDtcclxuLy8gJG9pbCAgICAgICAgIDogIzMzMzMzMztcclxuLy8gJGpldCAgICAgICAgIDogIzIyMjIyMjtcclxuLy8gJGJsYWNrICAgICAgIDogIzAwMDAwMDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XHJcbi8vICRwcmltYXJ5LWNvbG9yOiAjMDA4Q0JBO1xyXG4vLyAkc2Vjb25kYXJ5LWNvbG9yOiAjZTdlN2U3O1xyXG4vLyAkYWxlcnQtY29sb3I6ICNmMDQxMjQ7XHJcbi8vICRzdWNjZXNzLWNvbG9yOiAjNDNBQzZBO1xyXG4vLyAkd2FybmluZy1jb2xvcjogI2YwOGEyNDtcclxuLy8gJGluZm8tY29sb3I6ICNhMGQzZTg7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGdsb2JhbCBzdHlsZXNcclxuLy8gJGJvZHktYmc6ICR3aGl0ZTtcclxuLy8gJGJvZHktZm9udC1jb2xvcjogJGpldDtcclxuLy8gJGJvZHktZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xyXG4vLyAkYm9keS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJGJvZHktZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xyXG4vLyAkZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3NcclxuLy8gJHRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbi8vICRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0O1xyXG4vLyAkZGVmYXVsdC1mbG9hdDogbGVmdDtcclxuLy8gJGxhc3QtY2hpbGQtZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gbWFrZSBzdXJlIGJvcmRlciByYWRpdXMgbWF0Y2hlcyB1bmxlc3Mgd2Ugd2FudCBpdCBkaWZmZXJlbnQuXHJcbi8vICRnbG9iYWwtcmFkaXVzOiAzcHg7XHJcbi8vICRnbG9iYWwtcm91bmRlZDogMTAwMHB4O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaW5zZXQgc2hhZG93IHNoaW55IGVkZ2VzIGFuZCBkZXByZXNzaW9ucy5cclxuLy8gJHNoaW55LWVkZ2Utc2l6ZTogMCAxcHggMDtcclxuLy8gJHNoaW55LWVkZ2UtY29sb3I6IHJnYmEoJHdoaXRlLCAuNSk7XHJcbi8vICRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgkYmxhY2ssIC4yKTtcclxuXHJcbi8vIGQuIE1lZGlhIFF1ZXJ5IFJhbmdlc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4kc21hbGwtcmFuZ2U6ICgwZW0sIHJlbS1jYWxjKDk1NCkpO1xyXG4kbWVkaXVtLXJhbmdlOiAocmVtLWNhbGMoNzY3KSwgcmVtLWNhbGMoOTk5KSk7ICAgLy8gbWluLXdpZHRoIDY0MXB4IGFuZCBtYXgtd2lkdGggMTAyNHB4XHJcbiRsYXJnZS1yYW5nZTogKHJlbS1jYWxjKDEwMDApLCA5MGVtKTsgICAgLy8gbWluLXdpZHRoIDEwMjRweCBhbmQgbWF4LXdpZHRoIDE0NDBweFxyXG4vLyRtZWRpdW0tcmFuZ2U6ICg0MC4wNjI1ZW0sIHJlbS1jYWxjKDk5OSkpO1xyXG4vLyAkbGFyZ2UtcmFuZ2U6ICg2NC4wNjI1ZW0sIDkwZW0pO1xyXG4vLyRsYXJnZS1yYW5nZTogKHJlbS1jYWxjKDEwMDApLCA2NC42MjVlbSk7XHJcbi8vICR4bGFyZ2UtcmFuZ2U6ICg5MC4wNjI1ZW0sIDEyMGVtKTtcclxuLy8gJHh4bGFyZ2UtcmFuZ2U6ICgxMjAuMDYyNWVtLCA5OTk5OTk5OWVtKTtcclxuXHJcbi8vICRzY3JlZW46IFwib25seSBzY3JlZW5cIjtcclxuXHJcbi8vICRsYW5kc2NhcGU6IFwiI3skc2NyZWVufSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpXCI7XHJcbi8vICRwb3J0cmFpdDogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVwiO1xyXG5cclxuLy8gJHNtYWxsLXVwOiAkc2NyZWVuO1xyXG4vLyAkc21hbGwtb25seTogXCIjeyRzY3JlZW59IGFuZCAobWF4LXdpZHRoOiAje3VwcGVyLWJvdW5kKCRzbWFsbC1yYW5nZSl9KVwiO1xyXG5cclxuLy8gJG1lZGl1bS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KVwiO1xyXG4vLyAkbWVkaXVtLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCI7XHJcblxyXG4vLyAkbGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KVwiO1xyXG4vLyAkbGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCI7XHJcblxyXG4vLyAkeGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pXCI7XHJcbi8vICR4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIjtcclxuXHJcbi8vICR4eGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KVwiO1xyXG4vLyAkeHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCI7XHJcblxyXG4vLyBMZWdhY3lcclxuLy8gJHNtYWxsOiAkbWVkaXVtLXVwO1xyXG4vLyAkbWVkaXVtOiAkbWVkaXVtLXVwO1xyXG4vLyAkbGFyZ2U6ICRsYXJnZS11cDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIGFzIGN1cnNvcnMgdmFsdWVzIGZvciBlbmFibGluZyB0aGUgb3B0aW9uIG9mIGhhdmluZyBjdXN0b20gY3Vyc29ycyBpbiB0aGUgd2hvbGUgc2l0ZSdzIHN0eWxlc2hlZXRcclxuLy8gJGN1cnNvci1jcm9zc2hhaXItdmFsdWU6IGNyb3NzaGFpcjtcclxuLy8gJGN1cnNvci1kZWZhdWx0LXZhbHVlOiBkZWZhdWx0O1xyXG4vLyAkY3Vyc29yLWRpc2FibGVkLXZhbHVlOiBub3QtYWxsb3dlZDtcclxuLy8gJGN1cnNvci1wb2ludGVyLXZhbHVlOiBwb2ludGVyO1xyXG4vLyAkY3Vyc29yLWhlbHAtdmFsdWU6IGhlbHA7XHJcbi8vICRjdXJzb3ItdGV4dC12YWx1ZTogdGV4dDtcclxuXHJcbi8vIGUuIFR5cG9ncmFwaHlcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC10eXBlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xyXG4vLyAkaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuLy8gJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XHJcbi8vICRoZWFkZXItZm9udC1jb2xvcjogJGpldDtcclxuLy8gJGhlYWRlci1saW5lLWhlaWdodDogMS40O1xyXG4vLyAkaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtO1xyXG4vLyAkaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtO1xyXG4vLyAkaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzaXplc1xyXG4gJGgxLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xyXG4kaDItZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbi8vICRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KTtcclxuJGg0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xyXG4vLyAkaDUtZm9udC1zaXplOiByZW0tY2FsYygxOCk7XHJcbi8vICRoNi1mb250LXNpemU6IDFyZW07XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgc2l6ZSByZWR1Y3Rpb24gb24gc21hbGwgc2NyZWVuc1xyXG4vLyAkaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKTtcclxuICRoMi1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMCk7XHJcbi8vICRoMy1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSk7XHJcbi8vICRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSk7XHJcbi8vICRoNS1mb250LXJlZHVjdGlvbjogMDtcclxuLy8gJGg2LWZvbnQtcmVkdWN0aW9uOiAwO1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCBob3cgc3ViaGVhZGVycyBhcmUgc3R5bGVkLlxyXG4vLyAkc3ViaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQ7XHJcbi8vICRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpO1xyXG4vLyAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkc3ViaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtO1xyXG4vLyAkc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtO1xyXG5cclxuLy8gQSBnZW5lcmFsIDxzbWFsbD4gc3R5bGluZ1xyXG4vLyAkc21hbGwtZm9udC1zaXplOiA2MCU7XHJcbi8vICRzbWFsbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xyXG4vLyAkcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4vLyAkcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbTtcclxuLy8gJHBhcmFncmFwaC1saW5lLWhlaWdodDogMS42O1xyXG4vLyAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuLy8gJHBhcmFncmFwaC1hc2lkZS1saW5lLWhlaWdodDogMS4zNTtcclxuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlOiBpdGFsaWM7XHJcbi8vICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSA8Y29kZT4gdGFnc1xyXG4vLyAkY29kZS1jb2xvcjogJG9pbDtcclxuLy8gJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbi8vICRjb2RlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpO1xyXG4vLyAkY29kZS1ib3JkZXItc2l6ZTogMXB4O1xyXG4vLyAkY29kZS1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpO1xyXG4vLyAkY29kZS1wYWRkaW5nOiByZW0tY2FsYygyKSByZW0tY2FsYyg1KSByZW0tY2FsYygxKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXHJcbi8vICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4vLyAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcclxuLy8gJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuLy8gJGFuY2hvci1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcclxuLy8gJGhyLWJvcmRlci13aWR0aDogMXB4O1xyXG4vLyAkaHItYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcclxuLy8gJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXHJcbi8vICRsaXN0LWZvbnQtZmFtaWx5OiAkcGFyYWdyYXBoLWZvbnQtZmFtaWx5O1xyXG4vLyAkbGlzdC1mb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplO1xyXG4vLyAkbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcclxuLy8gJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xyXG4vLyAkbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcclxuLy8gJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbTtcclxuLy8gJGxpc3Qtb3JkZXJlZC1zaWRlLW1hcmdpbjogMS40cmVtO1xyXG4vLyAkbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ6IDA7XHJcbi8vICRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKTtcclxuLy8gJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTogLjNyZW07XHJcbi8vICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGJsb2NrcXVvdGVzXHJcbi8vICRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcclxuLy8gJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcclxuLy8gJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJGdhaW5zYm9ybztcclxuLy8gJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuLy8gJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDIzJSk7XHJcbi8vICRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yO1xyXG5cclxuLy8gQWNyb255bSBzdHlsZXNcclxuLy8gJGFjcm9ueW0tdW5kZXJsaW5lOiAxcHggZG90dGVkICRnYWluc2Jvcm87XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBwYWRkaW5nIGFuZCBtYXJnaW5cclxuLy8gJG1pY3JvZm9ybWF0LXBhZGRpbmc6IHJlbS1jYWxjKDEwIDEyKTtcclxuLy8gJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcclxuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4O1xyXG4vLyAkbWljcm9mb3JtYXQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGZ1bGwgbmFtZSBmb250IHN0eWxlc1xyXG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xyXG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdW1tYXJ5IGZvbnQgc3R5bGVzXHJcbi8vICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBwYWRkaW5nXHJcbi8vICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSk7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgZm9udCBzdHlsZXNcclxuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xyXG4vLyAkbWljcm9mb3JtYXQtYWJici1mb250LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4vLyAwMS4gQWNjb3JkaW9uXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nOiByZW0tY2FsYygxNik7XHJcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjogJHNpbHZlcjtcclxuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC01JSk7XHJcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I6IHNjYWxlLWNvbG9yKCRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTMlKTtcclxuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I6ICRqZXQ7XHJcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuXHJcbi8vICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAoJGNvbHVtbi1ndXR0ZXIvMik7XHJcbi8vICRhY2NvcmRpb24tY29udGVudC1hY3RpdmUtYmctY29sb3I6ICR3aGl0ZTtcclxuXHJcbi8vIDAyLiBBbGVydCBCb3hlc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWFsZXJ0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWxlcnQgcGFkZGluZy5cclxuLy8gJGFsZXJ0LXBhZGRpbmctdG9wOiByZW0tY2FsYygxNCk7XHJcbi8vICRhbGVydC1wYWRkaW5nLWRlZmF1bHQtZmxvYXQ6ICRhbGVydC1wYWRkaW5nLXRvcDtcclxuLy8gJGFsZXJ0LXBhZGRpbmctb3Bwb3NpdGUtZGlyZWN0aW9uOiAkYWxlcnQtcGFkZGluZy10b3AgKyByZW0tY2FsYygxMCk7XHJcbi8vICRhbGVydC1wYWRkaW5nLWJvdHRvbTogJGFsZXJ0LXBhZGRpbmctdG9wO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZS5cclxuLy8gJGFsZXJ0LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkYWxlcnQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbi8vICRhbGVydC1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRhbGVydC1mb250LWNvbG9yLWFsdDogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTY2JSk7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyBmb3IgY2xvc2UgaG92ZXIgZWZmZWN0LlxyXG4vLyAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yOiAtMTQlO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cclxuLy8gJGFsZXJ0LWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICRhbGVydC1ib3JkZXItd2lkdGg6IDFweDtcclxuLy8gJGFsZXJ0LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6ICRhbGVydC1mdW5jdGlvbi1mYWN0b3IpO1xyXG4vLyAkYWxlcnQtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMjApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25zXHJcbi8vICRhbGVydC1jbG9zZS1jb2xvcjogJG9pbDtcclxuLy8gJGFsZXJ0LWNsb3NlLXRvcDogNTAlO1xyXG4vLyAkYWxlcnQtY2xvc2UtcG9zaXRpb246IHJlbS1jYWxjKDQpO1xyXG4vLyAkYWxlcnQtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygyMik7XHJcbi8vICRhbGVydC1jbG9zZS1vcGFjaXR5OiAuMztcclxuLy8gJGFsZXJ0LWNsb3NlLW9wYWNpdHktaG92ZXI6IC41O1xyXG4vLyAkYWxlcnQtY2xvc2UtcGFkZGluZzogOXB4IDZweCA0cHg7XHJcbi8vICRhbGVydC1jbG9zZS1iYWNrZ3JvdW5kOiBpbmhlcml0O1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBib3JkZXIgcmFkaXVzXHJcbi8vICRhbGVydC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gJGFsZXJ0LXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zO1xyXG4vLyAkYWxlcnQtdHJhbnNpdGlvbi1lYXNlOiBlYXNlLW91dDtcclxuXHJcbi8vIDAzLiBCbG9jayBHcmlkXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcbi8vICRpbmNsdWRlLXhsLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiBmYWxzZTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJsb2NrIGdyaWQgZWxlbWVudHMgcGVyIHJvd1xyXG4vLyAkYmxvY2stZ3JpZC1lbGVtZW50czogMTI7XHJcbi8vICRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogcmVtLWNhbGMoMjApO1xyXG5cclxuLy8gJGFsaWduLWJsb2NrLWdyaWQtdG8tZ3JpZDogZmFsc2U7XHJcbi8vIEBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHskYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmc6ICRjb2x1bW4tZ3V0dGVyO31cclxuXHJcbi8vIEVuYWJsZXMgbWVkaWEgcXVlcmllcyBmb3IgYmxvY2stZ3JpZCBjbGFzc2VzLiBTZXQgdG8gZmFsc2UgaWYgd3JpdGluZyBzZW1hbnRpYyBIVE1MLlxyXG4vLyAkYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzOiB0cnVlO1xyXG5cclxuLy8gMDQuIEJyZWFkY3J1bWJzXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyLlxyXG4vLyAkY3J1bWItYmc6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IDU1JSk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBwYWRkaW5nIGFyb3VuZCB0aGUgYnJlYWRjcnVtYnMuXHJcbi8vICRjcnVtYi1wYWRkaW5nOiByZW0tY2FsYyg5IDE0IDkpO1xyXG4vLyAkY3J1bWItc2lkZS1wYWRkaW5nOiByZW0tY2FsYygxMik7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzLlxyXG4vLyAkY3J1bWItZnVuY3Rpb24tZmFjdG9yOiAtMTAlO1xyXG4vLyAkY3J1bWItYm9yZGVyLXNpemU6IDFweDtcclxuLy8gJGNydW1iLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICRjcnVtYi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjcnVtYi1iZywgJGxpZ2h0bmVzczogJGNydW1iLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICRjcnVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB2YXJpb3VzIHRleHQgc3R5bGVzIGZvciBicmVhZGNydW1icy5cclxuLy8gJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xyXG4vLyAkY3J1bWItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbi8vICRjcnVtYi1mb250LWNvbG9yLWN1cnJlbnQ6ICRvaWw7XHJcbi8vICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAkYWx1bWludW07XHJcbi8vICRjcnVtYi1mb250LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4vLyAkY3J1bWItbGluay1kZWNvcjogdW5kZXJsaW5lO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHNsYXNoIGJldHdlZW4gYnJlYWRjcnVtYnNcclxuLy8gJGNydW1iLXNsYXNoLWNvbG9yOiAkYmFzZTtcclxuLy8gJGNydW1iLXNsYXNoOiBcIi9cIjtcclxuXHJcbi8vIDA1LiBCdXR0b25zXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zLlxyXG4vLyAkYnV0dG9uLXRueTogcmVtLWNhbGMoMTApO1xyXG4vLyAkYnV0dG9uLXNtbDogcmVtLWNhbGMoMTQpO1xyXG4vLyAkYnV0dG9uLW1lZDogcmVtLWNhbGMoMTYpO1xyXG4vLyAkYnV0dG9uLWxyZzogcmVtLWNhbGMoMTgpO1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGlzcGxheSBwcm9wZXJ0eS5cclxuLy8gJGJ1dHRvbi1kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbi8vICRidXR0b24tbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIHRleHQgc3R5bGVzLlxyXG4vLyAkYnV0dG9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuLy8gJGJ1dHRvbi1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRidXR0b24tZm9udC1jb2xvci1hbHQ6ICRvaWw7XHJcbi8vICRidXR0b24tZm9udC10bnk6IHJlbS1jYWxjKDExKTtcclxuLy8gJGJ1dHRvbi1mb250LXNtbDogcmVtLWNhbGMoMTMpO1xyXG4vLyAkYnV0dG9uLWZvbnQtbWVkOiByZW0tY2FsYygxNik7XHJcbi8vICRidXR0b24tZm9udC1scmc6IHJlbS1jYWxjKDIwKTtcclxuLy8gJGJ1dHRvbi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXI7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGhvdmVyIGVmZmVjdHMuXHJcbi8vICRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAtMjAlO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIGJvcmRlciBzdHlsZXMuXHJcbi8vICRidXR0b24tYm9yZGVyLXdpZHRoOiAwO1xyXG4vLyAkYnV0dG9uLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICRidXR0b24tYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4vLyAkYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICRidXR0b24tYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWJnLWhvdmVyO1xyXG4vLyAkc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xyXG4vLyAkc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyO1xyXG4vLyAkc3VjY2Vzcy1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzdWNjZXNzLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICRzdWNjZXNzLWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlcjtcclxuLy8gJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICRhbGVydC1idXR0b24tYm9yZGVyLWNvbG9yOiAkYWxlcnQtYnV0dG9uLWJnLWhvdmVyO1xyXG4vLyAkd2FybmluZy1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCR3YXJuaW5nLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3I6ICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3ZlcjtcclxuLy8gJGluZm8tYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkaW5mby1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xyXG4vLyAkaW5mby1idXR0b24tYm9yZGVyLWNvbG9yOiAkaW5mby1idXR0b24tYmctaG92ZXI7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS5cclxuLy8gJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4vLyAkYnV0dG9uLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgZGVmYXVsdCBvcGFjaXR5IGFuZCBjdXJzb3IgZm9yIGRpc2FibGVkIGJ1dHRvbnMuXHJcbi8vICRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTogLjc7XHJcbi8vICRidXR0b24tZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XHJcblxyXG4vLyAwNi4gQnV0dG9uIEdyb3Vwc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBTZXRzIHRoZSBtYXJnaW4gZm9yIHRoZSByaWdodCBzaWRlIGJ5IGRlZmF1bHQsIGFuZCB0aGUgbGVmdCBtYXJnaW4gaWYgcmlnaHQtdG8tbGVmdCBkaXJlY3Rpb24gaXMgdXNlZFxyXG4vLyAkYnV0dG9uLWJhci1tYXJnaW4tb3Bwb3NpdGU6IHJlbS1jYWxjKDEwKTtcclxuLy8gJGJ1dHRvbi1ncm91cC1ib3JkZXItd2lkdGg6IDFweDtcclxuXHJcbi8vIDA3LiBDbGVhcmluZ1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWNsZWFyaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIGJhY2tncm91bmQgY29sb3JzIGZvciBwYXJ0cyBvZiBDbGVhcmluZy5cclxuLy8gJGNsZWFyaW5nLWJnOiAkb2lsO1xyXG4vLyAkY2xlYXJpbmctY2FwdGlvbi1iZzogJGNsZWFyaW5nLWJnO1xyXG4vLyAkY2xlYXJpbmctY2Fyb3VzZWwtYmc6IHJnYmEoNTEsNTEsNTEsMC44KTtcclxuLy8gJGNsZWFyaW5nLWltZy1iZzogJGNsZWFyaW5nLWJnO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25cclxuLy8gJGNsZWFyaW5nLWNsb3NlLWNvbG9yOiAkaXJvbjtcclxuLy8gJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHg7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGFycm93c1xyXG4vLyAkY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweDtcclxuLy8gJGNsZWFyaW5nLWFycm93LWNvbG9yOiAkY2xlYXJpbmctY2xvc2UtY29sb3I7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcclxuLy8gJGNsZWFyaW5nLWNhcHRpb24tZm9udC1jb2xvcjogJGlyb247XHJcbi8vICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtc2l6ZTogLjg3NWVtO1xyXG4vLyAkY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHRoZSBpbWFnZSBhbmQgY2Fyb3VzZWwgaGVpZ2h0IGFuZCBzdHlsZVxyXG4vLyAkY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JTtcclxuLy8gJGNsZWFyaW5nLWNhcm91c2VsLWhlaWdodDogMTIwcHg7XHJcbi8vICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi13aWR0aDogMTIwcHg7XHJcbi8vICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KTtcclxuXHJcbi8vIDA4LiBEcm9wZG93blxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWRyb3Bkb3duLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyBoZWlnaHQgYW5kIHdpZHRoIHN0eWxlcy5cclxuLy8gJGYtZHJvcGRvd24tbWF4LXdpZHRoOiAyMDBweDtcclxuLy8gJGYtZHJvcGRvd24taGVpZ2h0OiBhdXRvO1xyXG4vLyAkZi1kcm9wZG93bi1tYXgtaGVpZ2h0OiBub25lO1xyXG5cclxuLy8gVXNlZCBmb3IgYm90dG9tIHBvc2l0aW9uXHJcbi8vICRmLWRyb3Bkb3duLW1hcmdpbi10b3A6IDJweDtcclxuXHJcbi8vIFVzZWQgZm9yIHJpZ2h0IHBvc2l0aW9uXHJcbi8vICRmLWRyb3Bkb3duLW1hcmdpbi1sZWZ0OiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wO1xyXG5cclxuLy8gVXNlZCBmb3IgbGVmdCBwb3NpdGlvblxyXG4vLyAkZi1kcm9wZG93bi1tYXJnaW4tcmlnaHQ6ICRmLWRyb3Bkb3duLW1hcmdpbi10b3A7XHJcblxyXG4vLyBVc2VkIGZvciB0b3AgcG9zaXRpb25cclxuLy8gJGYtZHJvcGRvd24tbWFyZ2luLWJvdHRvbTogJGYtZHJvcGRvd24tbWFyZ2luLXRvcDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgY29sb3JcclxuLy8gJGYtZHJvcGRvd24tYmc6ICR3aGl0ZTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYm9yZGVyIHN0eWxlcyBmb3IgZHJvcGRvd25zLlxyXG4vLyAkZi1kcm9wZG93bi1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkZi1kcm9wZG93bi1ib3JkZXItd2lkdGg6IDFweDtcclxuLy8gJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSB0cmlhbmdsZSBwaXAuXHJcbi8vICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemU6IDZweDtcclxuLy8gJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3I6ICR3aGl0ZTtcclxuLy8gJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ6IDEwcHg7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBzdHlsZXMgZm9yIHRoZSBsaXN0IGVsZW1lbnRzLlxyXG4vLyAkZi1kcm9wZG93bi1saXN0LXN0eWxlOiBub25lO1xyXG4vLyAkZi1kcm9wZG93bi1mb250LWNvbG9yOiAkY2hhcmNvYWw7XHJcbi8vICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkZi1kcm9wZG93bi1saXN0LXBhZGRpbmc6IHJlbS1jYWxjKDUsIDEwKTtcclxuLy8gJGYtZHJvcGRvd24tbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE4KTtcclxuLy8gJGYtZHJvcGRvd24tbGlzdC1ob3Zlci1iZzogJHNtb2tlO1xyXG4vLyAkZHJvcGRvd24tbW9iaWxlLWRlZmF1bHQtZmxvYXQ6IDA7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGhhcyBjdXN0b20gY29udGVudC5cclxuLy8gJGYtZHJvcGRvd24tY29udGVudC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcblxyXG4vLyBEZWZhdWx0IHJhZGl1cyBmb3IgZHJvcGRvd24uXHJcbi8vICRmLWRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG5cclxuLy8gMDkuIERyb3Bkb3duIEJ1dHRvbnNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgY29sb3Igb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yOiAkd2hpdGU7XHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yLWFsdDogJG9pbDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIHNpemUgb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXHJcbi8vICRidXR0b24tcGlwLXRueTogcmVtLWNhbGMoNik7XHJcbi8vICRidXR0b24tcGlwLXNtbDogcmVtLWNhbGMoNyk7XHJcbi8vICRidXR0b24tcGlwLW1lZDogcmVtLWNhbGMoOSk7XHJcbi8vICRidXR0b24tcGlwLWxyZzogcmVtLWNhbGMoMTEpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRpbnkgZHJvcGRvd24gYnV0dG9uc1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctdG55OiAkYnV0dG9uLXBpcC10bnkgKiA3O1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXRueTogJGJ1dHRvbi1waXAtdG55O1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS10bnk6ICRidXR0b24tcGlwLXRueSAqIDM7XHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC10bnk6ICgtJGJ1dHRvbi1waXAtdG55IC8gMikgKyByZW0tY2FsYygxKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBzbWFsbCBkcm9wZG93biBidXR0b25zXHJcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDc7XHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtc21sOiAkYnV0dG9uLXBpcC1zbWw7XHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXNtbDogJGJ1dHRvbi1waXAtc21sICogMztcclxuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXNtbDogKC0kYnV0dG9uLXBpcC1zbWwgLyAyKSArIHJlbS1jYWxjKDEpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIG1lZGl1bSBkcm9wZG93biBidXR0b25zXHJcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDYgKyByZW0tY2FsYygzKTtcclxuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpO1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDIuNTtcclxuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLW1lZDogKC0kYnV0dG9uLXBpcC1tZWQgLyAyKSArIHJlbS1jYWxjKDIpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxhcmdlIGRyb3Bkb3duIGJ1dHRvbnNcclxuLy8gJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogNSArIHJlbS1jYWxjKDMpO1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNik7XHJcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLWxyZzogJGJ1dHRvbi1waXAtbHJnICogMi41O1xyXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtbHJnOiAoLSRidXR0b24tcGlwLWxyZyAvIDIpICsgcmVtLWNhbGMoMyk7XHJcblxyXG4vLyAxMC4gRmxleCBWaWRlb1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmlkZW8gY29udGFpbmVyIHBhZGRpbmcgYW5kIG1hcmdpbnNcclxuLy8gJGZsZXgtdmlkZW8tcGFkZGluZy10b3A6IHJlbS1jYWxjKDI1KTtcclxuLy8gJGZsZXgtdmlkZW8tcGFkZGluZy1ib3R0b206IDY3LjUlO1xyXG4vLyAkZmxleC12aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdpZGVzY3JlZW4gYm90dG9tIHBhZGRpbmdcclxuLy8gJGZsZXgtdmlkZW8td2lkZXNjcmVlbi1wYWRkaW5nLWJvdHRvbTogNTYuMzQlO1xyXG5cclxuLy8gMTEuIEZvcm1zXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhc2UgZm9yIGxvdHMgb2YgZm9ybSBzcGFjaW5nIGFuZCBwb3NpdGlvbmluZyBzdHlsZXNcclxuLy8gJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHMgaW4gZGlmZmVyZW50IHdheXNcclxuLy8gJGZvcm0tbGFiZWwtcG9pbnRlcjogcG9pbnRlcjtcclxuLy8gJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbi8vICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS41O1xyXG4vLyAkZm9ybS1sYWJlbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkYmxhY2ssICRsaWdodG5lc3M6IDMwJSk7XHJcbi8vICRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuLy8gJGZvcm0tbGFiZWwtYm90dG9tLW1hcmdpbjogMDtcclxuLy8gJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4vLyAkaW5wdXQtZm9udC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcclxuLy8gJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkaW5wdXQtYmctY29sb3I6ICR3aGl0ZTtcclxuLy8gJGlucHV0LWZvY3VzLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yJSk7XHJcbi8vICRpbnB1dC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSk7XHJcbi8vICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTQwJSk7XHJcbi8vICRpbnB1dC1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHg7XHJcbi8vICRpbnB1dC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gJGlucHV0LWRpc2FibGVkLWJnOiAkZ2FpbnNib3JvO1xyXG4vLyAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XHJcbi8vICRpbnB1dC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpO1xyXG4vLyAkaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdDogZmFsc2U7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cclxuLy8gJGZpZWxkc2V0LWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICRmaWVsZHNldC1ib3JkZXItd2lkdGg6IDFweDtcclxuLy8gJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcclxuLy8gJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcclxuLy8gJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxlZ2VuZHMgd2hlbiB5b3UgdXNlIHRoZW1cclxuLy8gJGxlZ2VuZC1iZzogJHdoaXRlO1xyXG4vLyAkbGVnZW5kLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcclxuLy8gJGlucHV0LXByZWZpeC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpO1xyXG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKTtcclxuLy8gJGlucHV0LXByZWZpeC1ib3JkZXItc2l6ZTogMXB4O1xyXG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZDtcclxuLy8gJGlucHV0LXByZWZpeC1vdmVyZmxvdzogaGlkZGVuO1xyXG4vLyAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3I6ICRvaWw7XHJcbi8vICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHNldHRpbmcgdG8gdHVybiBvbi9vZmYgSFRNTDUgbnVtYmVyIHNwaW5uZXJzICh0aGUgdXAvZG93biBhcnJvd3MpXHJcbi8vICRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGVycm9yIHN0YXRlcyBmb3IgaW5wdXRzIGFuZCBsYWJlbHNcclxuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZzogcmVtLWNhbGMoNiA5IDkpO1xyXG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A6IC0xcHg7XHJcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljO1xyXG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWJnLWNvbG9yOiAkYWxlcnQtY29sb3I7XHJcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAkb2lsO1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIGdsb3dpbmcgZWZmZWN0IG9mIGlucHV0cyB3aGVuIGZvY3VzZWRcclxuLy8gJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogLjQ1cztcclxuLy8gJGdsb3dpbmctZWZmZWN0LWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xyXG5cclxuLy8gU2VsZWN0IHZhcmlhYmxlc1xyXG4vLyAkc2VsZWN0LWJnLWNvbG9yOiAkZ2hvc3Q7XHJcbi8vICRzZWxlY3QtaG92ZXItYmctY29sb3I6IHNjYWxlLWNvbG9yKCRzZWxlY3QtYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSk7XHJcblxyXG5cclxuLy8gMTIuIEljb24gQmFyXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgaWNvbi1iYXIgYW5kIGl0ZW1zXHJcbi8vICRpY29uLWJhci1iZzogJG9pbDtcclxuLy8gJGljb24tYmFyLWZvbnQtY29sb3I6ICR3aGl0ZTtcclxuLy8gJGljb24tYmFyLWZvbnQtY29sb3ItaG92ZXI6ICRpY29uLWJhci1mb250LWNvbG9yO1xyXG4vLyAkaWNvbi1iYXItZm9udC1zaXplOiAxcmVtO1xyXG4vLyAkaWNvbi1iYXItaG92ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4vLyAkaWNvbi1iYXItaWNvbi1jb2xvcjogJHdoaXRlO1xyXG4vLyAkaWNvbi1iYXItaWNvbi1jb2xvci1ob3ZlcjogJGljb24tYmFyLWljb24tY29sb3I7XHJcbi8vICRpY29uLWJhci1pY29uLXNpemU6IDEuODc1cmVtO1xyXG4vLyAkaWNvbi1iYXItaW1hZ2Utd2lkdGg6IDEuODc1cmVtO1xyXG4vLyAkaWNvbi1iYXItaW1hZ2UtaGVpZ2h0OiAxLjg3NXJlbTtcclxuLy8gJGljb24tYmFyLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbi8vICRpY29uLWJhci1pdGVtLXBhZGRpbmc6IDEuMjVyZW07XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgZGVmYXVsdCBvcGFjaXR5IGFuZCBjdXJzb3IgZm9yIGRpc2FibGVkIGljb25zLlxyXG4vLyAkaWNvbi1iYXItZGlzYWJsZWQtb3BhY2l0eTogLjc7XHJcblxyXG4vLyAxMy4gSW5saW5lIExpc3RzXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtaW5saW5lLWxpc3QtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXHJcbi8vICRpbmxpbmUtbGlzdC10b3AtbWFyZ2luOiAwO1xyXG4vLyAkaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luOiAwO1xyXG4vLyAkaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpO1xyXG4vLyAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW46IHJlbS1jYWxjKC0yMik7XHJcbi8vICRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LWxpc3QtbWFyZ2luOiByZW0tY2FsYygyMik7XHJcblxyXG4vLyAkaW5saW5lLWxpc3QtcGFkZGluZzogMDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cclxuLy8gJGlubGluZS1saXN0LW92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXHJcbi8vICRpbmxpbmUtbGlzdC1kaXNwbGF5OiBibG9jaztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXHJcbi8vICRpbmxpbmUtbGlzdC1jaGlsZHJlbi1kaXNwbGF5OiBibG9jaztcclxuXHJcbi8vIDE0LiBKb3lyaWRlXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBDb250cm9sbGluZyBkZWZhdWx0IEpveXJpZGUgc3R5bGVzXHJcbi8vICRqb3lyaWRlLXRpcC1iZzogJG9pbDtcclxuLy8gJGpveXJpZGUtdGlwLWRlZmF1bHQtd2lkdGg6IDMwMHB4O1xyXG4vLyAkam95cmlkZS10aXAtcGFkZGluZzogcmVtLWNhbGMoMTggMjAgMjQpO1xyXG4vLyAkam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggJGNoYXJjb2FsO1xyXG4vLyAkam95cmlkZS10aXAtcmFkaXVzOiA0cHg7XHJcbi8vICRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ6IDIycHg7XHJcblxyXG4vLyBIZXJlLCB3ZSdyZSBzZXR0aW5nIHRoZSB0aXAgZm9udCBzdHlsZXNcclxuLy8gJGpveXJpZGUtdGlwLWZvbnQtY29sb3I6ICR3aGl0ZTtcclxuLy8gJGpveXJpZGUtdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkam95cmlkZS10aXAtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyBUaGlzIGNoYW5nZXMgdGhlIG51YiBzaXplXHJcbi8vICRqb3lyaWRlLXRpcC1udWItc2l6ZTogMTBweDtcclxuXHJcbi8vIFRoaXMgYWRqdXN0cyB0aGUgc3R5bGVzIGZvciB0aGUgdGltZXIgd2hlbiBpdHMgZW5hYmxlZFxyXG4vLyAkam95cmlkZS10aXAtdGltZXItd2lkdGg6IDUwcHg7XHJcbi8vICRqb3lyaWRlLXRpcC10aW1lci1oZWlnaHQ6IDNweDtcclxuLy8gJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yOiAkc3RlZWw7XHJcblxyXG4vLyBUaGlzIGNoYW5nZXMgdXAgdGhlIHN0eWxlcyBmb3IgdGhlIGNsb3NlIGJ1dHRvblxyXG4vLyAkam95cmlkZS10aXAtY2xvc2UtY29sb3I6ICRtb25zb29uO1xyXG4vLyAkam95cmlkZS10aXAtY2xvc2Utc2l6ZTogMjRweDtcclxuLy8gJGpveXJpZGUtdGlwLWNsb3NlLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuXHJcbi8vIFdoZW4gSm95cmlkZSBpcyBmaWxsaW5nIHRoZSBzY3JlZW4sIHdlIHVzZSB0aGlzIHN0eWxlIGZvciB0aGUgYmdcclxuLy8gJGpveXJpZGUtc2NyZWVuZmlsbDogcmdiYSgwLDAsMCwwLjUpO1xyXG5cclxuLy8gMTUuIEtleXN0cm9rZXNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC1rZXlzdHJva2UtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZXMuXHJcbi8vICRrZXlzdHJva2UtZm9udDogXCJDb25zb2xhc1wiLCBcIk1lbmxvXCIsIFwiQ291cmllclwiLCBtb25vc3BhY2U7XHJcbi8vICRrZXlzdHJva2UtZm9udC1zaXplOiBpbmhlcml0O1xyXG4vLyAka2V5c3Ryb2tlLWZvbnQtY29sb3I6ICRqZXQ7XHJcbi8vICRrZXlzdHJva2UtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcclxuLy8gJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3I6IC03JTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wga2V5c3Ryb2tlIHBhZGRpbmcuXHJcbi8vICRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHN0eWxlcy5cclxuLy8gJGtleXN0cm9rZS1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbi8vICRrZXlzdHJva2UtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gJGtleXN0cm9rZS1ib3JkZXItd2lkdGg6IDFweDtcclxuLy8gJGtleXN0cm9rZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRrZXlzdHJva2UtYmcsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKTtcclxuLy8gJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMTYuIExhYmVsc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWxhYmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzXHJcbi8vICRsYWJlbC1wYWRkaW5nOiByZW0tY2FsYyg0IDggNCk7XHJcbi8vICRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbCB0ZXh0XHJcbi8vICRsYWJlbC1mb250LXNpemluZzogcmVtLWNhbGMoMTEpO1xyXG4vLyAkbGFiZWwtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbi8vICRsYWJlbC1mb250LWNvbG9yOiAkb2lsO1xyXG4vLyAkbGFiZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcclxuLy8gJGxhYmVsLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuXHJcbi8vIDE3LiBNYWdlbGxhblxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW1hZ2VsbGFuLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vICRtYWdlbGxhbi1iZzogJHdoaXRlO1xyXG4vLyAkbWFnZWxsYW4tcGFkZGluZzogMTBweDtcclxuXHJcbi8vIDE4LiBPZmYtY2FudmFzXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vIE9mZiBDYW52YXMgVGFiIEJhciBWYXJpYWJsZXNcclxuLy8gJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vICR0YWJiYXItYmc6ICRvaWw7XHJcbiAgICR0YWJiYXItYmc6ICRuYXZfY2FudmFzX21lbnVfYmFja2dyb3VuZDtcclxuLy8gJHRhYmJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KTtcclxuLy8gJHRhYmJhci1pY29uLXdpZHRoOiAkdGFiYmFyLWhlaWdodDtcclxuLy8gJHRhYmJhci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQ7XHJcbi8vICR0YWJiYXItY29sb3I6ICR3aGl0ZTtcclxuLy8gJHRhYmJhci1taWRkbGUtcGFkZGluZzogMCByZW0tY2FsYygxMCk7XHJcblxyXG4vLyBPZmYgQ2FudmFzIERpdmlkZXIgU3R5bGVzXHJcbi8vICR0YWJiYXItbGVmdC1zZWN0aW9uLWJvcmRlcjogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpO1xyXG4vLyAkdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyOiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XHJcblxyXG5cclxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIEhlYWRlcnNcclxuLy8gJHRhYmJhci1oZWFkZXItY29sb3I6ICR3aGl0ZTtcclxuLy8gJHRhYmJhci1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJHRhYmJhci1oZWFkZXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xyXG4vLyAkdGFiYmFyLWhlYWRlci1tYXJnaW46IDA7XHJcblxyXG4vLyBPZmYgQ2FudmFzIE1lbnUgVmFyaWFibGVzXHJcbi8vICRvZmYtY2FudmFzLXdpZHRoOiByZW0tY2FsYygyNTApO1xyXG4kb2ZmLWNhbnZhcy1iZzogJG5hdl9jYW52YXNfbWVudV9iYWNrZ3JvdW5kO1xyXG4vLyAkb2ZmLWNhbnZhcy1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTMwJSk7XHJcbi8vICRvZmYtY2FudmFzLWJnLWFjdGl2ZTogc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTMwJSk7XHJcblxyXG4vLyBPZmYgQ2FudmFzIE1lbnUgTGlzdCBWYXJpYWJsZXNcclxuLy8gJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZzogLjNyZW0gcmVtLWNhbGMoMTUpO1xyXG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1jb2xvcjogJGFsdW1pbnVtO1xyXG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuLy8gJG9mZi1jYW52YXMtbGFiZWwtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xyXG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1iZzogJHR1YXRhcmE7XHJcbi8vICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKTtcclxuLy8gJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuLy8gJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luOjA7XHJcbi8vICRvZmYtY2FudmFzLWxpbmstcGFkZGluZzogcmVtLWNhbGMoMTAsIDE1KTtcclxuLy8gJG9mZi1jYW52YXMtbGluay1jb2xvcjogcmdiYSgkd2hpdGUsIC43KTtcclxuLy8gJG9mZi1jYW52YXMtbGluay1ib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmcsICRsaWdodG5lc3M6IC0yNSUpO1xyXG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWJnOiAkd2hpdGU7XHJcbi8vICRvZmYtY2FudmFzLWJhY2stYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLXRvcDtcclxuLy8gJG9mZi1jYW52YXMtYmFjay1ib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tO1xyXG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJnOiBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1iYWNrLWJnLCAkbGlnaHRuZXNzOiAtMzAlKTtcclxuLy8gJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSk7XHJcbi8vICRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuXHJcbi8vIE9mZiBDYW52YXMgTWVudSBJY29uIFZhcmlhYmxlc1xyXG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjogJHdoaXRlO1xyXG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1ob3Zlcjogc2NhbGUtY29sb3IoJHRhYmJhci1tZW51LWljb24tY29sb3IsICRsaWdodG5lc3M6IC0zMCUpO1xyXG5cclxuLy8gJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDM1KTtcclxuLy8gJHRhYmJhci1tZW51LWljb24td2lkdGg6ICR0YWJiYXItaWNvbi13aWR0aDtcclxuLy8gJHRhYmJhci1tZW51LWljb24taGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcclxuLy8gJHRhYmJhci1tZW51LWljb24tcGFkZGluZzogMDtcclxuXHJcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24td2lkdGg6IHJlbS1jYWxjKDE2KTtcclxuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0OiBmYWxzZTtcclxuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi10b3A6IGZhbHNlO1xyXG4vLyAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzczogMXB4O1xyXG4vLyAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcDogNnB4O1xyXG5cclxuLy8gT2ZmIENhbnZhcyBCYWNrLUxpbmsgT3ZlcmxheVxyXG4gJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XHJcbiAkb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjogcG9pbnRlcjtcclxuICRvZmYtY2FudmFzLW92ZXJsYXktYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpLCA0cHggMCA0cHggcmdiYSgkYmxhY2ssIC41KTtcclxuICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC4yKTtcclxuICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkd2hpdGUsIC4wNSk7XHJcblxyXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xyXG4gJG1lbnUtc2xpZGU6IFwidHJhbnNmb3JtIDUwMG1zIGVhc2VcIjtcclxuXHJcbi8vIDE5LiBPcmJpdFxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBjYXB0aW9uIHN0eWxlc1xyXG4vLyAkb3JiaXQtY29udGFpbmVyLWJnOiBub25lO1xyXG4vLyAkb3JiaXQtY2FwdGlvbi1iZzogcmdiYSg1MSw1MSw1MSwgLjgpO1xyXG4vLyAkb3JiaXQtY2FwdGlvbi1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkb3JiaXQtY2FwdGlvbi1wb3NpdGlvbjogXCJib3R0b21cIjsgLy8gU3VwcG9ydGVkIHZhbHVlczogXCJib3R0b21cIiwgXCJ1bmRlclwiXHJcbi8vICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDEwIDE0KTtcclxuLy8gJG9yYml0LWNhcHRpb24taGVpZ2h0OiBhdXRvO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGxlZnQvcmlnaHQgbmF2IHN0eWxlc1xyXG4vLyAkb3JiaXQtbmF2LWJnOiB0cmFuc3BhcmVudDtcclxuLy8gJG9yYml0LW5hdi1iZy1ob3ZlcjogcmdiYSgwLDAsMCwwLjMpO1xyXG4vLyAkb3JiaXQtbmF2LWFycm93LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI6ICR3aGl0ZTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSB0aW1lciBzdHlsZXNcclxuLy8gJG9yYml0LXRpbWVyLWJnOiByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XHJcbi8vICRvcmJpdC10aW1lci1zaG93LXByb2dyZXNzLWJhcjogdHJ1ZTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBidWxsZXQgbmF2IHN0eWxlc1xyXG4kb3JiaXQtYnVsbGV0LW5hdi1jb2xvcjogJHdoaXRlO1xyXG4kb3JiaXQtYnVsbGV0LW5hdi1jb2xvci1hY3RpdmU6ICR5ZWxsb3c7XHJcbiRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYygxMyk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbHMgdGhlIHN0eWxlIG9mIHNsaWRlIG51bWJlcnNcclxuLy8gJG9yYml0LXNsaWRlLW51bWJlci1iZzogcmdiYSgwLDAsMCwwKTtcclxuLy8gJG9yYml0LXNsaWRlLW51bWJlci1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRvcmJpdC1zbGlkZS1udW1iZXItcGFkZGluZzogcmVtLWNhbGMoNSk7XHJcblxyXG4vLyBHcmFjZWZ1bCBMb2FkaW5nIFdyYXBwZXIgYW5kIHByZWxvYWRlclxyXG4vLyAkd3JhcHBlci1jbGFzczogXCJzbGlkZXNob3ctd3JhcHBlclwiO1xyXG4vLyAkcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiO1xyXG5cclxuLy8gSGlkZSBjb250cm9scyBvbiBzbWFsbFxyXG4vLyAkb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsOiB0cnVlO1xyXG4vLyAkb3JiaXQtYnVsbGV0LWhpZGUtZm9yLXNtYWxsOiB0cnVlO1xyXG4vLyAkb3JiaXQtdGltZXItaGlkZS1mb3Itc21hbGw6IHRydWU7XHJcblxyXG4vLyAyMC4gUGFnaW5hdGlvblxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1wYWdpbmF0aW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwYWdpbmF0aW9uIGNvbnRhaW5lclxyXG4vLyAkcGFnaW5hdGlvbi1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcclxuLy8gJHBhZ2luYXRpb24tbWFyZ2luOiByZW0tY2FsYygtNSk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBsaXN0LWl0ZW0gcHJvcGVydGllc1xyXG4vLyAkcGFnaW5hdGlvbi1saS1mbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbi8vICRwYWdpbmF0aW9uLWxpLWhlaWdodDogcmVtLWNhbGMoMjQpO1xyXG4vLyAkcGFnaW5hdGlvbi1saS1mb250LWNvbG9yOiAkamV0O1xyXG4vLyAkcGFnaW5hdGlvbi1saS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuLy8gJHBhZ2luYXRpb24tbGktbWFyZ2luOiByZW0tY2FsYyg1KTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSBmb3IgdGhlIHBhZ2luYXRpb24gYW5jaG9yIGxpbmtzXHJcbi8vICRwYWdpbmF0aW9uLWxpbmstcGFkOiByZW0tY2FsYygxIDEwIDEpO1xyXG4vLyAkcGFnaW5hdGlvbi1saW5rLWZvbnQtY29sb3I6ICRhbHVtaW51bTtcclxuLy8gJHBhZ2luYXRpb24tbGluay1hY3RpdmUtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTEwJSk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgZm9yIGRpc2FibGVkIGFuY2hvciBsaW5rc1xyXG4vLyAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWN1cnNvcjogZGVmYXVsdDtcclxuLy8gJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1mb250LWNvbG9yOiAkYWx1bWludW07XHJcbi8vICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtYmctYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSBmb3IgY3VycmVudGx5IHNlbGVjdGVkIGFuY2hvciBsaW5rc1xyXG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LWNvbG9yOiAkd2hpdGU7XHJcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1jdXJzb3I6IGRlZmF1bHQ7XHJcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1hY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuLy8gMjEuIFBhbmVsc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLXBhbmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgc3R5bGVzXHJcbi8vICRwYW5lbC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpO1xyXG4vLyAkcGFuZWwtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gJHBhbmVsLWJvcmRlci1zaXplOiAxcHg7XHJcbi8vICRjYWxsb3V0LXBhbmVsLWJnOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogOTQlKTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzICUgdG8gY29udHJvbCBob3cgbXVjaCB3ZSBkYXJrZW4gdGhpbmdzIG9uIGhvdmVyXHJcbi8vICRwYW5lbC1mdW5jdGlvbi1mYWN0b3I6IC0xMSU7XHJcbi8vICRwYW5lbC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwYW5lbC1iZywgJGxpZ2h0bmVzczogJHBhbmVsLWZ1bmN0aW9uLWZhY3Rvcik7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgaW5uZXIgcGFkZGluZyBhbmQgYm90dG9tIG1hcmdpblxyXG4vLyAkcGFuZWwtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4vLyAkcGFuZWwtcGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCBkZWZhdWx0IGZvbnQgY29sb3JzXHJcbi8vICRwYW5lbC1mb250LWNvbG9yOiAkb2lsO1xyXG4vLyAkcGFuZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcclxuXHJcbi8vICRwYW5lbC1oZWFkZXItYWRqdXN0OiB0cnVlO1xyXG4vLyAkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuLy8gJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XHJcblxyXG4vLyAyMi4gUHJpY2luZyBUYWJsZXNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC1wcmljaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBjb2xvclxyXG4vLyAkcHJpY2UtdGFibGUtYm9yZGVyOiBzb2xpZCAxcHggJGdhaW5zYm9ybztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvdHRvbSBtYXJnaW4gb2YgdGhlIHByaWNpbmcgdGFibGVcclxuLy8gJHByaWNlLXRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSB0aXRsZSBzdHlsZXNcclxuLy8gJHByaWNlLXRpdGxlLWJnOiAkb2lsO1xyXG4vLyAkcHJpY2UtdGl0bGUtcGFkZGluZzogcmVtLWNhbGMoMTUgMjApO1xyXG4vLyAkcHJpY2UtdGl0bGUtYWxpZ246IGNlbnRlcjtcclxuLy8gJHByaWNlLXRpdGxlLWNvbG9yOiAkc21va2U7XHJcbi8vICRwcmljZS10aXRsZS13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbi8vICRwcmljZS10aXRsZS1zaXplOiByZW0tY2FsYygxNik7XHJcbi8vICRwcmljZS10aXRsZS1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgcHJpY2Ugc3R5bGVzXHJcbi8vICRwcmljZS1tb25leS1iZzogJHZhcG9yO1xyXG4vLyAkcHJpY2UtbW9uZXktcGFkZGluZzogcmVtLWNhbGMoMTUgMjApO1xyXG4vLyAkcHJpY2UtbW9uZXktYWxpZ246IGNlbnRlcjtcclxuLy8gJHByaWNlLW1vbmV5LWNvbG9yOiAkb2lsO1xyXG4vLyAkcHJpY2UtbW9uZXktd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkcHJpY2UtbW9uZXktc2l6ZTogcmVtLWNhbGMoMzIpO1xyXG4vLyAkcHJpY2UtbW9uZXktZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG5cclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXNcclxuLy8gJHByaWNlLWJnOiAkd2hpdGU7XHJcbi8vICRwcmljZS1kZXNjLWNvbG9yOiAkbW9uc29vbjtcclxuLy8gJHByaWNlLWRlc2MtcGFkZGluZzogcmVtLWNhbGMoMTUpO1xyXG4vLyAkcHJpY2UtZGVzYy1hbGlnbjogY2VudGVyO1xyXG4vLyAkcHJpY2UtZGVzYy1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuLy8gJHByaWNlLWRlc2Mtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkcHJpY2UtZGVzYy1saW5lLWhlaWdodDogMS40O1xyXG4vLyAkcHJpY2UtZGVzYy1ib3R0b20tYm9yZGVyOiBkb3R0ZWQgMXB4ICRnYWluc2Jvcm87XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGlzdCBpdGVtIHN0eWxlc1xyXG4vLyAkcHJpY2UtaXRlbS1jb2xvcjogJG9pbDtcclxuLy8gJHByaWNlLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMTUpO1xyXG4vLyAkcHJpY2UtaXRlbS1hbGlnbjogY2VudGVyO1xyXG4vLyAkcHJpY2UtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuLy8gJHByaWNlLWl0ZW0td2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xyXG4vLyAkcHJpY2UtaXRlbS1ib3R0b20tYm9yZGVyOiBkb3R0ZWQgMXB4ICRnYWluc2Jvcm87XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgQ1RBIGFyZWEgc3R5bGVzXHJcbi8vICRwcmljZS1jdGEtYmc6ICR3aGl0ZTtcclxuLy8gJHByaWNlLWN0YS1hbGlnbjogY2VudGVyO1xyXG4vLyAkcHJpY2UtY3RhLXBhZGRpbmc6IHJlbS1jYWxjKDIwIDIwIDApO1xyXG5cclxuLy8gMjMuIFByb2dyZXNzIEJhclxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgcHJvZ3Jlc3MgYmFyIGhlaWdodFxyXG4vLyAkcHJvZ3Jlc3MtYmFyLWhlaWdodDogcmVtLWNhbGMoMjUpO1xyXG4vLyAkcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkdmFwb3I7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xyXG4vLyAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAyMCUpO1xyXG4vLyAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1zaXplOiAxcHg7XHJcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuLy8gJHByb2dyZXNzLWJhci1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtYXJnaW4gJiBwYWRkaW5nXHJcbi8vICRwcm9ncmVzcy1iYXItbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbWV0ZXIgY29sb3JzXHJcbi8vICRwcm9ncmVzcy1tZXRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbi8vICRwcm9ncmVzcy1tZXRlci1zZWNvbmRhcnktY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbi8vICRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcclxuLy8gJHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yOiAkYWxlcnQtY29sb3I7XHJcblxyXG4vLyAyNC4gUmFuZ2UgU2xpZGVyXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtcmFuZ2Utc2xpZGVyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFRoZXNlIHZhcmlhYmVscyBkZWZpbmUgdGhlIHNsaWRlciBiYXIgc3R5bGVzXHJcbi8vICRyYW5nZS1zbGlkZXItYmFyLXdpZHRoOiAxMDAlO1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDE2KTtcclxuXHJcbi8vICRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci13aWR0aDogMXB4O1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm87XHJcbi8vICRyYW5nZS1zbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gJHJhbmdlLXNsaWRlci1yb3VuZDogJGdsb2JhbC1yb3VuZGVkO1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1iZy1jb2xvcjogJGdob3N0O1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50LWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMSUpO1xyXG5cclxuLy8gVmVydGljYWwgYmFyIHN0eWxlc1xyXG4vLyAkcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci13aWR0aDogcmVtLWNhbGMoMTYpO1xyXG4vLyAkcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDIwMCk7XHJcblxyXG4vLyBUaGVzZSB2YXJpYWJlbHMgZGVmaW5lIHRoZSBzbGlkZXIgaGFuZGxlIHN0eWxlc1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS13aWR0aDogcmVtLWNhbGMoMzIpO1xyXG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcG9zaXRpb24tdG9wOiByZW0tY2FsYygtNSk7XHJcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXdpZHRoOiAxcHg7XHJcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1jb2xvcjogbm9uZTtcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYmctaG92ZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTIlKTtcclxuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuLy8gJHJhbmdlLXNsaWRlci1kaXNhYmxlZC1vcGFjaXR5OiAuNztcclxuLy8gJHJhbmdlLXNsaWRlci1kaXNhYmxlZC1jdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQtdmFsdWU7XHJcblxyXG4vLyAyNS4gUmV2ZWFsXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgcmV2ZWFsIG92ZXJsYXkuXHJcbi8vICRyZXZlYWwtb3ZlcmxheS1iZzogcmdiYSgkYmxhY2ssIC40NSk7XHJcbi8vICRyZXZlYWwtb3ZlcmxheS1iZy1vbGQ6ICRibGFjaztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgbW9kYWwgaXRzZWxmLlxyXG4vLyAkcmV2ZWFsLW1vZGFsLWJnOiAkd2hpdGU7XHJcbi8vICRyZXZlYWwtcG9zaXRpb24tdG9wOiByZW0tY2FsYygxMDApO1xyXG4vLyAkcmV2ZWFsLWRlZmF1bHQtd2lkdGg6IDgwJTtcclxuLy8gJHJldmVhbC1tYXgtd2lkdGg6ICRyb3ctd2lkdGg7XHJcbi8vICRyZXZlYWwtbW9kYWwtcGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG4vLyAkcmV2ZWFsLWJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLC40KTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcmV2ZWFsIGNsb3NlIGJ1dHRvblxyXG4vLyAkcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xyXG4vLyAkcmV2ZWFsLWNsb3NlLXRvcDogcmVtLWNhbGMoMTApO1xyXG4vLyAkcmV2ZWFsLWNsb3NlLXNpZGU6IHJlbS1jYWxjKDIyKTtcclxuLy8gJHJldmVhbC1jbG9zZS1jb2xvcjogJGJhc2U7XHJcbi8vICRyZXZlYWwtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgZGVmYXVsdCByYWRpdXMgdXNlZCB0aHJvdWdob3V0IHRoZSBjb3JlLlxyXG4vLyAkcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbi8vICRyZXZlYWwtcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtb2RhbCBib3JkZXJcclxuLy8gJHJldmVhbC1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkcmV2ZWFsLWJvcmRlci13aWR0aDogMXB4O1xyXG4vLyAkcmV2ZWFsLWJvcmRlci1jb2xvcjogJHN0ZWVsO1xyXG5cclxuLy8gJHJldmVhbC1tb2RhbC1jbGFzczogXCJyZXZlYWwtbW9kYWxcIjtcclxuLy8gJGNsb3NlLXJldmVhbC1tb2RhbC1jbGFzczogXCJjbG9zZS1yZXZlYWwtbW9kYWxcIjtcclxuXHJcbi8vIDI2LiBTaWRlIE5hdlxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHBhZGRpbmcuXHJcbi8vICRzaWRlLW5hdi1wYWRkaW5nOiByZW0tY2FsYygxNCAwKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpc3Qgc3R5bGVzLlxyXG4vLyAkc2lkZS1uYXYtbGlzdC10eXBlOiBub25lO1xyXG4vLyAkc2lkZS1uYXYtbGlzdC1wb3NpdGlvbjogb3V0c2lkZTtcclxuLy8gJHNpZGUtbmF2LWxpc3QtbWFyZ2luOiByZW0tY2FsYygwIDAgNyAwKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpbmsgc3R5bGVzLlxyXG4kc2lkZS1uYXYtbGluay1jb2xvcjogJG1pZF9ncmV5O1xyXG4kc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcclxuJHNpZGUtbmF2LWxpbmstY29sb3ItaG92ZXI6ICR3aGl0ZTtcclxuLy8kc2lkZS1uYXYtbGluay1iZy1ob3ZlcjogaHNsYSgwLCAwLCAwLCAuMDI1KTtcclxuLy8gJHNpZGUtbmF2LWxpbmstbWFyZ2luOiAwO1xyXG4vLyRzaWRlLW5hdi1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDEwIDAgMTAgMCk7XHJcbi8vJHNpZGUtbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4vLyAkc2lkZS1uYXYtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbi8vICRzaWRlLW5hdi1mb250LXdlaWdodC1hY3RpdmU6ICRzaWRlLW5hdi1mb250LXdlaWdodDtcclxuLy8gJHNpZGUtbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuLy8gJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGluZyBzdHlsZXMuXHJcbi8vICRzaWRlLW5hdi1oZWFkaW5nLWNvbG9yOiAkc2lkZS1uYXYtbGluay1jb2xvcjtcclxuLy8gJHNpZGUtbmF2LWhlYWRpbmctZm9udC1zaXplOiAkc2lkZS1uYXYtZm9udC1zaXplO1xyXG4vLyAkc2lkZS1uYXYtaGVhZGluZy1mb250LXdlaWdodDogYm9sZDtcclxuLy8gJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcclxuIC8vJHNpZGUtbmF2LWRpdmlkZXItc2l6ZTogMXB4O1xyXG4gLy8kc2lkZS1uYXYtZGl2aWRlci1zdHlsZTogc29saWQ7XHJcbiAvLyRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IDEwJSk7XHJcblxyXG4vLyAyNy4gU3BsaXQgQnV0dG9uc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBkaWZmZXJlbnQgc2hhcmVkIHN0eWxlcyBmb3IgU3BsaXQgQnV0dG9uc1xyXG4vLyAkc3BsaXQtYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogMTAlO1xyXG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1jb2xvcjogJHdoaXRlO1xyXG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1jb2xvci1hbHQ6ICRvaWw7XHJcbi8vICRzcGxpdC1idXR0b24tYWN0aXZlLWJnLXRpbnQ6IHJnYmEoMCwwLDAsMC4xKTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRpbnkgc3BsaXQgYnV0dG9uc1xyXG4vLyAkc3BsaXQtYnV0dG9uLXBhZGRpbmctdG55OiAkYnV0dG9uLXBpcC10bnkgKiAxMDtcclxuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTogJGJ1dHRvbi1waXAtdG55ICogNjtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS10bnk6ICRidXR0b24tcGlwLXRueTtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtdG9wLXRueTogJGJ1dHRvbi1waXAtdG55ICogMjtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk6IHJlbS1jYWxjKC02KTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHNtYWxsIHNwbGl0IGJ1dHRvbnNcclxuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogMTA7XHJcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDY7XHJcbi8vICRzcGxpdC1idXR0b24tcGlwLXNpemUtc21sOiAkYnV0dG9uLXBpcC1zbWw7XHJcbi8vICRzcGxpdC1idXR0b24tcGlwLXRvcC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDEuNTtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1zbWw6IHJlbS1jYWxjKC02KTtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1lZGl1bSBzcGxpdCBidXR0b25zXHJcbi8vICRzcGxpdC1idXR0b24tcGFkZGluZy1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDk7XHJcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDUuNTtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpO1xyXG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiAxLjU7XHJcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbWVkOiByZW0tY2FsYygtNik7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsYXJnZSBzcGxpdCBidXR0b25zXHJcbi8vICRzcGxpdC1idXR0b24tcGFkZGluZy1scmc6ICRidXR0b24tcGlwLWxyZyAqIDg7XHJcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1scmc6ICRidXR0b24tcGlwLWxyZyAqIDU7XHJcbi8vICRzcGxpdC1idXR0b24tcGlwLXNpemUtbHJnOiAkYnV0dG9uLXBpcC1scmcgLSByZW0tY2FsYyg2KTtcclxuLy8gJHNwbGl0LWJ1dHRvbi1waXAtdG9wLWxyZzogJGJ1dHRvbi1waXAtbHJnICsgcmVtLWNhbGMoNSk7XHJcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbHJnOiByZW0tY2FsYygtNik7XHJcblxyXG4vLyAyOC4gU3ViIE5hdlxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBtYXJnaW4gYW5kIHBhZGRpbmdcclxuLy8gJHN1Yi1uYXYtbGlzdC1tYXJnaW46IHJlbS1jYWxjKC00IDAgMTgpO1xyXG4vLyAkc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRlZmluaXRpb25cclxuLy8gJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4vLyAkc3ViLW5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuLy8gJHN1Yi1uYXYtZm9udC1jb2xvcjogJGFsdW1pbnVtO1xyXG4vLyAkc3ViLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJHN1Yi1uYXYtdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4vLyAkc3ViLW5hdi1wYWRkaW5nOiByZW0tY2FsYygzIDE2KTtcclxuLy8gJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4O1xyXG4vLyAkc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMjUlKTtcclxuXHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYWN0aXZlIGl0ZW0gc3R5bGVzXHJcblxyXG4vLyAkc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbi8vICRzdWItbmF2LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3I7XHJcbi8vICRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuLy8gJHN1Yi1uYXYtYWN0aXZlLWNvbG9yOiAkd2hpdGU7XHJcbi8vICRzdWItbmF2LWFjdGl2ZS1wYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nO1xyXG4vLyAkc3ViLW5hdi1hY3RpdmUtY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuLy8gJHN1Yi1uYXYtaXRlbS1kaXZpZGVyOiBcIlwiO1xyXG4vLyAkc3ViLW5hdi1pdGVtLWRpdmlkZXItbWFyZ2luOiByZW0tY2FsYygxMik7XHJcblxyXG4vLyAyOS4gU3dpdGNoXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBDb250cm9sbGluZyBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lclxyXG4vLyAkc3dpdGNoLWJnOiAkZ2FpbnNib3JvO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN3aXRjaCBoZWlnaHRzIGZvciBvdXIgZGVmYXVsdCBjbGFzc2VzXHJcbi8vICRzd2l0Y2gtaGVpZ2h0LXRueTogMS41cmVtO1xyXG4vLyAkc3dpdGNoLWhlaWdodC1zbWw6IDEuNzVyZW07XHJcbi8vICRzd2l0Y2gtaGVpZ2h0LW1lZDogMnJlbTtcclxuLy8gJHN3aXRjaC1oZWlnaHQtbHJnOiAyLjVyZW07XHJcbi8vICRzd2l0Y2gtYm90dG9tLW1hcmdpbjogMS41cmVtO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBzd2l0Y2gtcGFkZGxlXHJcbi8vICRzd2l0Y2gtcGFkZGxlLWJnOiAkd2hpdGU7XHJcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQ6IC4xNXM7XHJcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tZWFzZTogZWFzZS1vdXQ7XHJcbi8vICRzd2l0Y2gtYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcbi8vIDMwLiBUYWJsZXNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xyXG4vLyAkdGFibGUtYmc6ICR3aGl0ZTtcclxuLy8gJHRhYmxlLWV2ZW4tcm93LWJnOiAkc25vdztcclxuXHJcbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGNlbGwgYm9yZGVyIHN0eWxlXHJcbi8vICR0YWJsZS1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4vLyAkdGFibGUtYm9yZGVyLXNpemU6IDFweDtcclxuLy8gJHRhYmxlLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcclxuXHJcbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXHJcbi8vICR0YWJsZS1oZWFkLWJnOiAkd2hpdGUtc21va2U7XHJcbi8vICR0YWJsZS1oZWFkLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkdGFibGUtaGVhZC1mb250LWNvbG9yOiAkamV0O1xyXG4vLyAkdGFibGUtaGVhZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XHJcbi8vICR0YWJsZS1oZWFkLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgZm9vdCBzdHlsZXNcclxuLy8gJHRhYmxlLWZvb3QtYmc6ICR0YWJsZS1oZWFkLWJnO1xyXG4vLyAkdGFibGUtZm9vdC1mb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZTtcclxuLy8gJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcclxuLy8gJHRhYmxlLWZvb3QtZm9udC13ZWlnaHQ6ICR0YWJsZS1oZWFkLWZvbnQtd2VpZ2h0O1xyXG4vLyAkdGFibGUtZm9vdC1wYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nO1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCB0aGUgY2FwdGlvblxyXG4vLyB0YWJsZS1jYXB0aW9uLWJnOiB0cmFuc3BhcmVudDtcclxuLy8gJHRhYmxlLWNhcHRpb24tZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcclxuLy8gJHRhYmxlLWNhcHRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbi8vICR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCB0aGUgcm93IHBhZGRpbmcgYW5kIGZvbnQgc3R5bGVzXHJcbi8vICR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCk7XHJcbi8vICR0YWJsZS1yb3ctZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbi8vICR0YWJsZS1yb3ctZm9udC1jb2xvcjogJGpldDtcclxuLy8gJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XHJcblxyXG4vLyBUaGVzZSBhcmUgZm9yIGNvbnRyb2xsaW5nIHRoZSBsYXlvdXQsIGRpc3BsYXkgYW5kIG1hcmdpbiBvZiB0YWJsZXNcclxuLy8gJHRhYmxlLWxheW91dDogYXV0bztcclxuLy8gJHRhYmxlLWRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbi8vICR0YWJsZS1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XHJcblxyXG5cclxuLy8gMzEuIFRhYnNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC10YWJzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vICR0YWJzLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpO1xyXG4vLyAkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yOiAkc2lsdmVyO1xyXG4vLyAkdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHdoaXRlO1xyXG4vLyAkdGFicy1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNiUpO1xyXG4vLyAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtY29sb3I6ICRqZXQ7XHJcbi8vICR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWZvbnQtY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjtcclxuLy8gJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuLy8gJHRhYnMtbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcblxyXG4vLyAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcclxuLy8gJHRhYnMtY29udGVudC1wYWRkaW5nOiAoJGNvbHVtbi1ndXR0ZXIvMik7XHJcblxyXG4vLyAkdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b206IDEuMjVyZW07XHJcblxyXG4vLyAzMi4gVGh1bWJuYWlsc1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcblxyXG4vLyAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcclxuLy8gJHRodW1iLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbi8vICR0aHVtYi1ib3JkZXItd2lkdGg6IDRweDtcclxuLy8gJHRodW1iLWJvcmRlci1jb2xvcjogJHdoaXRlO1xyXG4vLyAkdGh1bWItYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLC4yKTtcclxuLy8gJHRodW1iLWJveC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsMC41KTtcclxuXHJcbi8vIFJhZGl1cyBhbmQgdHJhbnNpdGlvbiBzcGVlZCBmb3IgdGh1bWJzXHJcbi8vICR0aHVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4vLyAkdGh1bWItdHJhbnNpdGlvbi1zcGVlZDogMjAwbXM7XHJcblxyXG4vLyAzMy4gVG9vbHRpcHNcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG5cclxuLy8gJGluY2x1ZGUtaHRtbC10b29sdGlwLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcclxuXHJcbi8vICRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGlyb247XHJcbi8vICRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJGhhcy10aXAtZm9udC1jb2xvcjogJG9pbDtcclxuLy8gJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSk7XHJcbi8vICRoYXMtdGlwLWZvbnQtY29sb3ItaG92ZXI6ICRwcmltYXJ5LWNvbG9yO1xyXG4vLyAkaGFzLXRpcC1jdXJzb3ItdHlwZTogaGVscDtcclxuXHJcbi8vICR0b29sdGlwLXBhZGRpbmc6IHJlbS1jYWxjKDEyKTtcclxuLy8gJHRvb2x0aXAtYmc6ICRvaWw7XHJcbi8vICR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4vLyAkdG9vbHRpcC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcclxuLy8gJHRvb2x0aXAtZm9udC1jb2xvcjogJHdoaXRlO1xyXG4vLyAkdG9vbHRpcC1saW5lLWhlaWdodDogMS4zO1xyXG4vLyAkdG9vbHRpcC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDEwKTtcclxuLy8gJHRvb2x0aXAtY2xvc2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XHJcbi8vICR0b29sdGlwLWNsb3NlLWZvbnQtY29sb3I6ICRtb25zb29uO1xyXG4vLyAkdG9vbHRpcC1mb250LXNpemUtc21sOiByZW0tY2FsYygxNCk7XHJcbi8vICR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbi8vICR0b29sdGlwLXJvdW5kZWQ6ICRnbG9iYWwtcm91bmRlZDtcclxuLy8gJHRvb2x0aXAtcGlwLXNpemU6IDVweDtcclxuLy8gJHRvb2x0aXAtbWF4LXdpZHRoOiAzMDBweDtcclxuXHJcbi8vIDM0LiBUb3AgQmFyXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtdG9wLWJhci1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcblxyXG4vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhclxyXG4kdG9wYmFyLWJnLWNvbG9yOiAkYmx1ZTtcclxuJHRvcGJhci1iZzogJGJsdWU7XHJcblxyXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxyXG4vLyAkdG9wYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpO1xyXG4vLyAkdG9wYmFyLW1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4vLyBDb250cm9sbGluZyB0aGUgc3R5bGVzIGZvciB0aGUgdGl0bGUgaW4gdGhlIHRvcCBiYXJcclxuJHRvcGJhci10aXRsZS13ZWlnaHQ6IGJvbGQ7XHJcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcblxyXG4vLyBTZXQgdGhlIGxpbmsgY29sb3JzIGFuZCBzdHlsZXMgZm9yIHRvcC1sZXZlbCBuYXZcclxuJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGU7XHJcbiR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogJGJsdWU7XHJcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICRibHVlO1xyXG4kdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyOiAkYmx1ZTtcclxuJHRvcGJhci1saW5rLXdlaWdodDogYm9sZDtcclxuXHJcbi8vICR0b3BiYXItbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuLy8gJHRvcGJhci1saW5rLWhvdmVyLWxpZ2h0bmVzczogLTEwJTsgLy8gRGFya2VuIGJ5IDEwJVxyXG4kdG9wYmFyLWxpbmstYmc6ICR0b3BiYXItYmc7XHJcbiR0b3BiYXItbGluay1iZy1ob3ZlcjogJHdoaXRlO1xyXG4kdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICR0b3BiYXItYmc7XHJcbiR0b3BiYXItbGluay1iZy1hY3RpdmU6ICR3aGl0ZTtcclxuJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3ZlcjogJHdoaXRlO1xyXG4vLyAkdG9wYmFyLWxpbmstZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4kdG9wYmFyLWxpbmstdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbi8vICR0b3BiYXItbGluay1wYWRkaW5nOiAoJHRvcGJhci1oZWlnaHQgLyAzKTtcclxuLy8gJHRvcGJhci1iYWNrLWxpbmstc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4vLyAkdG9wYmFyLWxpbmstZHJvcGRvd24tcGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG4vLyAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU6IC43NXJlbTtcclxuLy8gJHRvcGJhci1idXR0b24tdG9wOiA3cHg7XHJcblxyXG5cclxuLy8gU3R5bGUgdGhlIHRvcCBiYXIgZHJvcGRvd24gZWxlbWVudHNcclxuXHJcbiR0b3BiYXItZHJvcGRvd24tYmc6ICRncmVlbjtcclxuXHJcbiR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjogJHdoaXRlO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3ItaG92ZXI6ICRibHVlO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc6ICRibHVlO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXI6ICRsaWdodF9ncmV5O1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstd2VpZ2h0OiBib2xkO1xyXG5cclxuLy8gJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4O1xyXG4vLyAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1jb2xvcjogJHdoaXRlO1xyXG4vLyAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogLjQ7XHJcblxyXG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWNvbG9yOiAkbW9uc29vbjtcclxuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKTtcclxuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1iZzogJG9pbDtcclxuXHJcbi8vIFRvcCBtZW51IGljb24gc3R5bGVzXHJcbi8vICR0b3BiYXItbWVudS1saW5rLXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4vLyAkdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuLy8gJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuLy8gJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICR3aGl0ZTtcclxuLy8gJHRvcGJhci1tZW51LWljb24tY29sb3I6ICR3aGl0ZTtcclxuLy8gJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDogJGp1bWJvO1xyXG4vLyAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkOiAkanVtYm87XHJcbi8vICR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uOiAkb3Bwb3NpdGUtZGlyZWN0aW9uOyAvLyBDaGFuZ2UgdG8gJGRlZmF1bHQtZmxvYXQgZm9yIGEgbGVmdCBtZW51IGljb25cclxuXHJcbi8vIFRyYW5zaXRpb25zIGFuZCBicmVha3BvaW50IHN0eWxlc1xyXG4kdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zO1xyXG4vLyBVc2luZyByZW0tY2FsYyBmb3IgdGhlIGJlbG93IGJyZWFrcG9pbnQgY2F1c2VzIGlzc3VlcyB3aXRoIHRvcCBiYXJcclxuLy8gJHRvcGJhci1icmVha3BvaW50OiAje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfTsgLy8gQ2hhbmdlIHRvIDk5OTlweCBmb3IgYWx3YXlzIG1vYmlsZSBsYXlvdXRcclxuLy8gJHRvcGJhci1tZWRpYS1xdWVyeTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHRvcGJhci1icmVha3BvaW50KX0pXCI7XHJcblxyXG4vLyBUb3AtYmFyIGlucHV0IHN0eWxlc1xyXG4vLyAkdG9wYmFyLWlucHV0LWhlaWdodDogcmVtLWNhbGMoMjgpO1xyXG5cclxuLy8gRGl2aWRlciBTdHlsZXNcclxuLy8gJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpO1xyXG4vLyAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IC01MCUpO1xyXG5cclxuLy8gU3RpY2t5IENsYXNzXHJcbi8vICR0b3BiYXItc3RpY2t5LWNsYXNzOiBcIi5zdGlja3lcIjtcclxuICR0b3BiYXItYXJyb3dzOiBmYWxzZTsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSB0cmlhbmdsZSBpY29uIGZyb20gdGhlIG1lbnUgaXRlbVxyXG4gJHRvcGJhci1kcm9wZG93bi1hcnJvd3M6IGZhbHNlOyAvL1NldCBmYWxzZSB0byByZW1vdmUgdGhlIFxcMDBiYiA+PiB0ZXh0IGZyb20gZHJvcGRvd24gc3VibmF2aWdhdGlvbiBsaS8vXHJcblxyXG4vLyAzNi4gVmlzaWJpbGl0eSBDbGFzc2VzXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuXHJcbi8vICRpbmNsdWRlLWh0bWwtdmlzaWJpbGl0eS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XHJcbi8vICRpbmNsdWRlLWFjY2Vzc2liaWxpdHktY2xhc3NlczogdHJ1ZTtcclxuLy8gJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xyXG4vLyAkaW5jbHVkZS1sZWdhY3ktdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbi8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cclxuJHJlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xyXG5cclxuLy8gSU1QT1JUIE9OQ0VcclxuLy8gV2UgdXNlIHRoaXMgdG8gcHJldmVudCBzdHlsZXMgZnJvbSBiZWluZyBsb2FkZWQgbXVsdGlwbGUgdGltZXMgZm9yIGNvbXBvbmVudHMgdGhhdCByZWx5IG9uIG90aGVyIGNvbXBvbmVudHMuXHJcbiRtb2R1bGVzOiAoKSAhZGVmYXVsdDtcclxuXHJcbkBtaXhpbiBleHBvcnRzKCRuYW1lKSB7XHJcbiAgLy8gSW1wb3J0IGZyb20gZ2xvYmFsIHNjb3BlXHJcbiAgJG1vZHVsZXM6ICRtb2R1bGVzICFnbG9iYWw7XHJcbiAgLy8gQ2hlY2sgaWYgYSBtb2R1bGUgaXMgYWxyZWFkeSBvbiB0aGUgbGlzdFxyXG4gICRtb2R1bGVfaW5kZXg6IGluZGV4KCRtb2R1bGVzLCAkbmFtZSk7XHJcbiAgQGlmICgoJG1vZHVsZV9pbmRleCA9PSBudWxsKSBvciAoJG1vZHVsZV9pbmRleCA9PSBmYWxzZSkpIHtcclxuICAgICRtb2R1bGVzOiBhcHBlbmQoJG1vZHVsZXMsICRuYW1lKSAhZ2xvYmFsO1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vL1xyXG4vLyBAZnVuY3Rpb25zXHJcbi8vXHJcblxyXG5cclxuLy8gUkFOR0VTXHJcbi8vIFdlIHVzZSB0aGVzZSBmdW5jdGlvbnMgdG8gZGVmaW5lIHJhbmdlcyBmb3IgdmFyaW91cyB0aGluZ3MsIGxpa2UgbWVkaWEgcXVlcmllcy5cclxuQGZ1bmN0aW9uIGxvd2VyLWJvdW5kKCRyYW5nZSkge1xyXG4gIEBpZiBsZW5ndGgoJHJhbmdlKSA8PSAwIHtcclxuICAgIEByZXR1cm4gMDtcclxuICB9XHJcbiAgQHJldHVybiBudGgoJHJhbmdlLCAxKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIHVwcGVyLWJvdW5kKCRyYW5nZSkge1xyXG4gIEBpZiBsZW5ndGgoJHJhbmdlKSA8IDIge1xyXG4gICAgQHJldHVybiA5OTk5OTk5OTk5OTk7XHJcbiAgfVxyXG4gIEByZXR1cm4gbnRoKCRyYW5nZSwgMik7XHJcbn1cclxuXHJcbi8vIFNUUklQIFVOSVRcclxuLy8gSXQgc3RyaXBzIHRoZSB1bml0IG9mIG1lYXN1cmUgYW5kIHJldHVybnMgaXRcclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xyXG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xyXG59XHJcblxyXG4vLyBURVhUIElOUFVUIFRZUEVTXHJcblxyXG5AZnVuY3Rpb24gdGV4dC1pbnB1dHMoICR0eXBlczogYWxsLCAkc2VsZWN0b3I6IGlucHV0ICkge1xyXG5cclxuICAkcmV0dXJuOiAoKTtcclxuXHJcbiAgJGFsbC10ZXh0LWlucHV0LXR5cGVzOlxyXG4gICAgdGV4dFxyXG4gICAgcGFzc3dvcmRcclxuICAgIGRhdGVcclxuICAgIGRhdGV0aW1lXHJcbiAgICBkYXRldGltZS1sb2NhbFxyXG4gICAgbW9udGhcclxuICAgIHdlZWtcclxuICAgIGVtYWlsXHJcbiAgICBudW1iZXJcclxuICAgIHNlYXJjaFxyXG4gICAgdGVsXHJcbiAgICB0aW1lXHJcbiAgICB1cmxcclxuICAgIGNvbG9yXHJcbiAgICB0ZXh0YXJlYTtcclxuXHJcbiAgQGlmICR0eXBlcyA9PSBhbGwgeyAkdHlwZXM6ICRhbGwtdGV4dC1pbnB1dC10eXBlczsgfVxyXG5cclxuICBAZWFjaCAkdHlwZSBpbiAkdHlwZXMge1xyXG4gICAgQGlmICR0eXBlID09IHRleHRhcmVhIHtcclxuICAgICAgQGlmICRzZWxlY3RvciA9PSBpbnB1dCB7XHJcbiAgICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIHVucXVvdGUoJyN7JHR5cGV9JyksIGNvbW1hKVxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgdW5xdW90ZSgnI3skdHlwZX0jeyRzZWxlY3Rvcn0nKSwgY29tbWEpXHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgdW5xdW90ZSgnI3skc2VsZWN0b3J9W3R5cGU9XCIjeyR0eXBlfVwiXScpLCBjb21tYSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gICAgQHJldHVybiAkcmV0dXJuO1xyXG5cclxufVxyXG5cclxuLy8gQ09OVkVSVCBUTyBSRU1cclxuQGZ1bmN0aW9uIGNvbnZlcnQtdG8tcmVtKCR2YWx1ZSwgJGJhc2UtdmFsdWU6ICRyZW0tYmFzZSkge1xyXG4gICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkgKiAxcmVtO1xyXG4gIEBpZiAoJHZhbHVlID09IDByZW0pIHsgJHZhbHVlOiAwOyB9IC8vIFR1cm4gMHJlbSBpbnRvIDBcclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGRhdGEoJGF0dHIpIHtcclxuICBAaWYgJG5hbWVzcGFjZSB7XHJcbiAgICBAcmV0dXJuICdbZGF0YS0nICsgJG5hbWVzcGFjZSArICctJyArICRhdHRyICsgJ10nO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAnW2RhdGEtJyArICRhdHRyICsgJ10nO1xyXG59XHJcblxyXG4vLyBSRU0gQ0FMQ1xyXG5cclxuLy8gTmV3IFN5bnRheCwgYWxsb3dzIHRvIG9wdGlvbmFsbHkgY2FsY3VsYXRlIG9uIGEgZGlmZmVyZW50IGJhc2UgdmFsdWUgdG8gY291bnRlciBjb21wb3VuZGluZyBlZmZlY3Qgb2YgcmVtJ3MuXHJcbi8vIENhbGwgd2l0aCAxLCAyLCAzIG9yIDQgcGFyYW1ldGVycywgJ3B4JyBpcyBub3QgcmVxdWlyZWQgYnV0IHN1cHBvcnRlZDpcclxuLy9cclxuLy8gICByZW0tY2FsYygxMCAyMCAzMHB4IDQwKTtcclxuLy9cclxuLy8gU3BhY2UgZGVsaW1pdGVkLCBpZiB5b3Ugd2FudCB0byBkZWxpbWl0IHVzaW5nIGNvbW1hJ3MsIHdyYXAgaXQgaW4gYW5vdGhlciBwYWlyIG9mIGJyYWNrZXRzXHJcbi8vXHJcbi8vICAgcmVtLWNhbGMoKDEwLCAyMCwgMzAsIDQwcHgpKTtcclxuLy9cclxuLy8gT3B0aW9uYWxseSBjYWxsIHdpdGggYSBkaWZmZXJlbnQgYmFzZSAoZWc6IDhweCkgdG8gY2FsY3VsYXRlIHJlbS5cclxuLy9cclxuLy8gICByZW0tY2FsYygxNnB4IDMycHggNDhweCwgOHB4KTtcclxuLy9cclxuLy8gSWYgeW91IHJlcXVpcmUgdG8gY29tbWEgc2VwYXJhdGUgeW91ciBsaXN0XHJcbi8vXHJcbi8vICAgcmVtLWNhbGMoKDE2cHgsIDMycHgsIDQ4KSwgOHB4KTtcclxuXHJcbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XHJcbiAgJG1heDogbGVuZ3RoKCR2YWx1ZXMpO1xyXG5cclxuICBAaWYgJG1heCA9PSAxIHsgQHJldHVybiBjb252ZXJ0LXRvLXJlbShudGgoJHZhbHVlcywgMSksICRiYXNlLXZhbHVlKTsgfVxyXG5cclxuICAkcmVtVmFsdWVzOiAoKTtcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgge1xyXG4gICAgJHJlbVZhbHVlczogYXBwZW5kKCRyZW1WYWx1ZXMsIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlLXZhbHVlKSk7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHJlbVZhbHVlcztcclxufVxyXG5cclxuLy8gT0xEIEVNIENBTENcclxuLy8gRGVwcmVjYXRlZDogV2UnbGwgZHJvcCBzdXBwb3J0IGZvciB0aGlzIGluIDUuMS4wLCB1c2UgcmVtLWNhbGMoKVxyXG5AZnVuY3Rpb24gZW1DYWxjKCR2YWx1ZXMpIHtcclxuICBAcmV0dXJuIHJlbS1jYWxjKCR2YWx1ZXMpO1xyXG59XHJcblxyXG4vLyBPTEQgRU0gQ0FMQ1xyXG4vLyBEZXByZWNhdGVkOiBXZSdsbCBkcm9wIHN1cHBvcnQgZm9yIHRoaXMgaW4gNS4xLjAsIHVzZSByZW0tY2FsYygpXHJcbkBmdW5jdGlvbiBlbS1jYWxjKCR2YWx1ZXMpIHtcclxuICBAcmV0dXJuIHJlbS1jYWxjKCR2YWx1ZXMpO1xyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuXHJcbi8vXHJcbi8vIEB2YXJpYWJsZXNcclxuLy9cclxuJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcclxuJGluY2x1ZGUteGwtaHRtbC1ncmlkLWNsYXNzZXM6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuJHJvdy13aWR0aDogcmVtLWNhbGMoMTAwMCkgIWRlZmF1bHQ7XHJcbiR0b3RhbC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcclxuXHJcbiRsYXN0LWNoaWxkLWZsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uICFkZWZhdWx0O1xyXG5cclxuLy9cclxuLy8gR3JpZCBGdW5jdGlvbnNcclxuLy9cclxuXHJcbi8vIERlcHJlY2F0ZWQ6IFdlJ2xsIGRyb3Agc3VwcG9ydCBmb3IgdGhpcyBpbiA1LjEsIHVzZSBncmlkLWNhbGMoKVxyXG5AZnVuY3Rpb24gZ3JpZENhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucykge1xyXG4gIEB3YXJuIFwiZ3JpZENhbGMoKSBpcyBkZXByZWNhdGVkLCB1c2UgZ3JpZC1jYWxjKClcIjtcclxuICBAcmV0dXJuIGdyaWQtY2FsYygkY29sTnVtYmVyLCAkdG90YWxDb2x1bW5zKTtcclxufVxyXG5cclxuLy8gQEZVTkNUSU9OXHJcbi8vICRjb2xOdW1iZXIgLSBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXHJcbi8vICR0b3RhbENvbHVtbnMgLSBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXHJcbkBmdW5jdGlvbiBncmlkLWNhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucykge1xyXG4gICRyZXN1bHQ6IHBlcmNlbnRhZ2UoKCRjb2xOdW1iZXIgLyAkdG90YWxDb2x1bW5zKSk7XHJcbiAgQGlmICRyZXN1bHQgPT0gMCUgeyAkcmVzdWx0OiAwOyB9XHJcbiAgQHJldHVybiAkcmVzdWx0O1xyXG59XHJcblxyXG4vL1xyXG4vLyBAbWl4aW5zXHJcbi8vXHJcblxyXG4vLyBGb3IgY3JlYXRpbmcgY29udGFpbmVyLCBuZXN0ZWQsIGFuZCBjb2xsYXBzZWQgcm93cy5cclxuLy9cclxuLy9cclxuLy8gJGJlaGF2aW9yIC0gQW55IHNwZWNpYWwgYmVoYXZpb3IgZm9yIHRoaXMgcm93PyBEZWZhdWx0OiBmYWxzZS4gT3B0aW9uczogbmVzdCwgY29sbGFwc2UsIG5lc3QtY29sbGFwc2UsIGZhbHNlLlxyXG5AbWl4aW4gZ3JpZC1yb3coJGJlaGF2aW9yOiBmYWxzZSkge1xyXG5cclxuICAvLyB1c2UgQGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7IHRvIGluY2x1ZGUgYSBuZXN0ZWQgcm93XHJcbiAgQGlmICRiZWhhdmlvciA9PSBuZXN0IHtcclxuICAgIG1hcmdpbjogMCAoLSgkY29sdW1uLWd1dHRlci8yKSk7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcblxyXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhjb2xsYXBzZSk7IHRvIGNvbGxhcHNlZCBhIGNvbnRhaW5lciByb3cgbWFyZ2luc1xyXG4gIEBlbHNlIGlmICRiZWhhdmlvciA9PSBjb2xsYXBzZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhuZXN0LWNvbGxhcHNlKTsgdG8gY29sbGFwc2Ugb3V0ZXIgbWFyZ2lucyBvbiBhIG5lc3RlZCByb3dcclxuICBAZWxzZSBpZiAkYmVoYXZpb3IgPT0gbmVzdC1jb2xsYXBzZSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcblxyXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdzsgdG8gdXNlIGEgY29udGFpbmVyIHJvd1xyXG4gIEBlbHNlIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAkcm93LXdpZHRoO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAvLyBDbGVhcmZpeCBmb3IgYWxsIHJvd3NcclxuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xyXG59XHJcblxyXG4vLyBDcmVhdGVzIGEgY29sdW1uLCBzaG91bGQgYmUgdXNlZCBpbnNpZGUgb2YgYSBtZWRpYSBxdWVyeSB0byBjb250cm9sIGxheW91dHNcclxuLy9cclxuLy8gJGNvbHVtbnMgLSBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhpcyBzaG91bGQgYmVcclxuLy8gJGxhc3QtY29sdW1uIC0gSXMgdGhpcyB0aGUgbGFzdCBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxyXG4vLyAkY2VudGVyIC0gQ2VudGVyIHRoZXNlIGNvbHVtbnM/IERlZmF1bHQ6IGZhbHNlLlxyXG4vLyAkb2Zmc2V0IC0gIyBvZiBjb2x1bW5zIHRvIG9mZnNldC4gRGVmYXVsdDogZmFsc2UuXHJcbi8vICRwdXNoIC0gIyBvZiBjb2x1bW5zIHRvIHB1c2guIERlZmF1bHQ6IGZhbHNlLlxyXG4vLyAkcHVsbCAtICMgb2YgY29sdW1ucyB0byBwdWxsLiBEZWZhdWx0OiBmYWxzZS5cclxuLy8gJGNvbGxhcHNlIC0gR2V0IHJpZCBvZiBndXR0ZXIgcGFkZGluZyBvbiBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxyXG4vLyAkZmxvYXQgLSBTaG91bGQgdGhpcyBmbG9hdD8gRGVmYXVsdDogdHJ1ZS4gT3B0aW9uczogdHJ1ZSwgZmFsc2UsIGxlZnQsIHJpZ2h0LlxyXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXHJcbiAgJGNvbHVtbnM6ZmFsc2UsXHJcbiAgJGxhc3QtY29sdW1uOmZhbHNlLFxyXG4gICRjZW50ZXI6ZmFsc2UsXHJcbiAgJG9mZnNldDpmYWxzZSxcclxuICAkcHVzaDpmYWxzZSxcclxuICAkcHVsbDpmYWxzZSxcclxuICAkY29sbGFwc2U6ZmFsc2UsXHJcbiAgJGZsb2F0OnRydWUsXHJcbiAgJHBvc2l0aW9uOmZhbHNlKSB7XHJcblxyXG4gIC8vIElmIHBvc2l0aW9uZWQgZm9yIGRlZmF1bHQgLmNvbHVtbiwgaW5jbHVkZSByZWxhdGl2ZSBwb3NpdGlvblxyXG4gIC8vIHB1c2ggYW5kIHB1bGwgcmVxdWlyZSBwb3NpdGlvbiBzZXRcclxuICBAaWYgJHBvc2l0aW9uIG9yICRwdXNoIG9yICRwdWxsIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gIC8vIElmIGNvbGxhcHNlZCwgZ2V0IHJpZCBvZiBndXR0ZXIgcGFkZGluZ1xyXG4gIEBpZiAkY29sbGFwc2Uge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcblxyXG4gIC8vIEd1dHRlciBwYWRkaW5nIHdoZW5ldmVyIGEgY29sdW1uIGlzbid0IHNldCB0byBjb2xsYXBzZVxyXG4gIC8vICh1c2UgJGNvbGxhcHNlOm51bGwgdG8gZG8gbm90aGluZylcclxuICBAZWxzZSBpZiAkY29sbGFwc2UgPT0gZmFsc2Uge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAoJGNvbHVtbi1ndXR0ZXIgLyAyKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICgkY29sdW1uLWd1dHRlciAvIDIpO1xyXG4gIH1cclxuXHJcbiAgLy8gSWYgYSBjb2x1bW4gbnVtYmVyIGlzIGdpdmVuLCBjYWxjdWxhdGUgd2lkdGhcclxuICBAaWYgJGNvbHVtbnMge1xyXG4gICAgd2lkdGg6IGdyaWQtY2FsYygkY29sdW1ucywgJHRvdGFsLWNvbHVtbnMpO1xyXG5cclxuICAgIC8vIElmIGxhc3QgY29sdW1uLCBmbG9hdCBuYXR1cmFsbHkgaW5zdGVhZCBvZiB0byB0aGUgcmlnaHRcclxuICAgIEBpZiAkbGFzdC1jb2x1bW4geyBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjsgfVxyXG4gIH1cclxuXHJcbiAgLy8gU291cmNlIE9yZGVyaW5nLCBhZGRzIGxlZnQvcmlnaHQgZGVwZW5kaW5nIG9uIHdoaWNoIHlvdSB1c2UuXHJcbiAgQGlmICRwdXNoIHsgI3skZGVmYXVsdC1mbG9hdH06IGdyaWQtY2FsYygkcHVzaCwgJHRvdGFsLWNvbHVtbnMpOyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvOyB9XHJcbiAgQGlmICRwdWxsIHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogZ3JpZC1jYWxjKCRwdWxsLCAkdG90YWwtY29sdW1ucyk7ICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvOyB9XHJcblxyXG4gIEBpZiAkZmxvYXQge1xyXG4gICAgQGlmICRmbG9hdCA9PSBsZWZ0IG9yICRmbG9hdCA9PSB0cnVlIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XHJcbiAgICBAZWxzZSBpZiAkZmxvYXQgPT0gcmlnaHQgeyBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjsgfVxyXG4gICAgQGVsc2UgeyBmbG9hdDogbm9uZTsgfVxyXG4gIH1cclxuXHJcbiAgLy8gSWYgY2VudGVyZWQsIGdldCByaWQgb2YgZmxvYXQgYW5kIGFkZCBhcHByb3ByaWF0ZSBtYXJnaW5zXHJcbiAgQGlmICRjZW50ZXIge1xyXG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xyXG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICB9XHJcblxyXG4gIC8vIElmIG9mZnNldCwgY2FsY3VsYXRlIGFwcHJvcHJpYXRlIG1hcmdpbnNcclxuICBAaWYgJG9mZnNldCB7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogZ3JpZC1jYWxjKCRvZmZzZXQsICR0b3RhbC1jb2x1bW5zKSAhaW1wb3J0YW50OyB9XHJcblxyXG59XHJcblxyXG4vLyBDcmVhdGUgcHJlc2VudGF0aW9uYWwgY2xhc3NlcyBmb3IgZ3JpZFxyXG4vL1xyXG4vLyAkc2l6ZSAtIE5hbWUgb2YgY2xhc3MgdG8gdXNlLCBpLmUuIFwibGFyZ2VcIiB3aWxsIGdlbmVyYXRlIC5sYXJnZS0xLCAubGFyZ2UtMiwgZXRjLlxyXG5AbWl4aW4gZ3JpZC1odG1sLWNsYXNzZXMoJHNpemUpIHtcclxuXHJcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xyXG4gICAgLiN7JHNpemV9LXB1c2gtI3skaX0ge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XHJcbiAgICB9XHJcbiAgICAuI3skc2l6ZX0tcHVsbC0jeyRpfSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb2x1bW4sXHJcbiAgLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczpmYWxzZSwgJHBvc2l0aW9uOnRydWUpOyB9XHJcblxyXG5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIHtcclxuICAgIC4jeyRzaXplfS0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxyXG4gIH1cclxuXHJcbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xyXG4gICAgLiN7JHNpemV9LW9mZnNldC0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRvZmZzZXQ6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpOyB9XHJcbiAgfVxyXG5cclxuICAuI3skc2l6ZX0tcmVzZXQtb3JkZXIge1xyXG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcclxuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkLFxyXG4gIC5jb2x1bW5zLiN7JHNpemV9LWNlbnRlcmVkIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNlbnRlcjp0cnVlLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxyXG5cclxuICAuY29sdW1uLiN7JHNpemV9LXVuY2VudGVyZWQsXHJcbiAgLmNvbHVtbnMuI3skc2l6ZX0tdW5jZW50ZXJlZCB7XHJcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcclxuICB9XHJcblxyXG4gIC8vIEZpZ2h0aW5nIFtjbGFzcyo9XCJjb2x1bW5cIl0gKyBbY2xhc3MqPVwiY29sdW1uXCJdOmxhc3QtY2hpbGRcclxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkOmxhc3QtY2hpbGQsXHJcbiAgLmNvbHVtbnMuI3skc2l6ZX0tY2VudGVyZWQ6bGFzdC1jaGlsZHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLy8gRmlnaHRpbmcgLmNvbHVtbi48cHJldmlvdXMtc2l6ZT4tY2VudGVyZWQ6bGFzdC1jaGlsZFxyXG4gIC5jb2x1bW4uI3skc2l6ZX0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkLFxyXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQ6bGFzdC1jaGlsZCB7XHJcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgfVxyXG5cclxuICAuY29sdW1uLiN7JHNpemV9LXVuY2VudGVyZWQub3Bwb3NpdGUsXHJcbiAgLmNvbHVtbnMuI3skc2l6ZX0tdW5jZW50ZXJlZC5vcHBvc2l0ZSB7XHJcbiAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcclxuICB9XHJcblxyXG5cdC5yb3cge1xyXG5cdFx0Ji4jeyRzaXplfS1jb2xsYXBzZSB7XHJcblx0XHRcdD4gLmNvbHVtbixcclxuXHRcdFx0PiAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2xsYXBzZTp0cnVlLCAkZmxvYXQ6ZmFsc2UpOyB9XHJcblxyXG5cdFx0XHQucm93IHttYXJnaW4tbGVmdDowOyBtYXJnaW4tcmlnaHQ6MDt9XHJcblx0XHR9XHJcblx0XHQmLiN7JHNpemV9LXVuY29sbGFwc2Uge1xyXG5cdFx0XHQ+IC5jb2x1bW4sXHJcblx0XHRcdD4gLmNvbHVtbnMge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwiZ3JpZFwiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzIHtcclxuICAgIC5yb3cge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuXHJcbiAgICAgICYuY29sbGFwc2Uge1xyXG4gICAgICAgICA+IC5jb2x1bW4sXHJcbiAgICAgICAgID4gLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sbGFwc2U6dHJ1ZSwgJGZsb2F0OmZhbHNlKTsgfVxyXG5cclxuICAgICAgICAucm93IHttYXJnaW4tbGVmdDowOyBtYXJnaW4tcmlnaHQ6MDt9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5yb3cgeyBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6bmVzdCk7XHJcbiAgICAgICAgJi5jb2xsYXBzZSB7IEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjpuZXN0LWNvbGxhcHNlKTsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbHVtbixcclxuICAgIC5jb2x1bW5zIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnM6JHRvdGFsLWNvbHVtbnMpOyB9XHJcblxyXG4gICAgW2NsYXNzKj1cImNvbHVtblwiXSArIFtjbGFzcyo9XCJjb2x1bW5cIl06bGFzdC1jaGlsZCB7IGZsb2F0OiAkbGFzdC1jaGlsZC1mbG9hdDsgfVxyXG4gICAgW2NsYXNzKj1cImNvbHVtblwiXSArIFtjbGFzcyo9XCJjb2x1bW5cIl0uZW5kIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XHJcblxyXG4gICAgQG1lZGlhICN7JHNtYWxsLXVwfSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnNtYWxsKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOm1lZGl1bSk7XHJcbiAgICAgIC8vIE9sZCBwdXNoIGFuZCBwdWxsIGNsYXNzZXNcclxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xyXG4gICAgICAgIC5wdXNoLSN7JGl9IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdXNoOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnB1bGwtI3skaX0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1bGw6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOmxhcmdlKTtcclxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xyXG4gICAgICAgIC5wdXNoLSN7JGl9IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdXNoOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnB1bGwtI3skaX0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1bGw6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgJGluY2x1ZGUteGwtaHRtbC1ncmlkLWNsYXNzZXMge1xyXG4gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTp4bGFyZ2UpO1xyXG4gICAgfVxyXG4gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eHhsYXJnZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuLy8gQlVHRklYOiBJbXBvcnQgZXhpc3RpZXJ0IG5pY2h0XHJcbi8vIEBpbXBvcnQgJy4uL19mdW5jdGlvbnMnO1xyXG4vL1xyXG4vLyBGb3VuZGF0aW9uIFZhcmlhYmxlc1xyXG4vL1xyXG5cclxuLy8gRGF0YSBhdHRyaWJ1dGUgbmFtZXNwYWNlXHJcbi8vIHN0eWxlcyBnZXQgYXBwbGllZCB0byBbZGF0YS1teXNpdGUtcGx1Z2luXSwgZXRjXHJcbiRuYW1lc3BhY2U6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlIGRlZmF1bHQgZm9udC1zaXplIGlzIHNldCB0byAxMDAlIG9mIHRoZSBicm93c2VyIHN0eWxlIHNoZWV0ICh1c3VhbGx5IDE2cHgpXHJcbi8vIGZvciBjb21wYXRpYmlsaXR5IHdpdGggYnJvd3Nlci1iYXNlZCB0ZXh0IHpvb20gb3IgdXNlci1zZXQgZGVmYXVsdHMuXHJcblxyXG4vLyBTaW5jZSB0aGUgdHlwaWNhbCBkZWZhdWx0IGJyb3dzZXIgZm9udC1zaXplIGlzIDE2cHgsIHRoYXQgbWFrZXMgdGhlIGNhbGN1bGF0aW9uIGZvciBncmlkIHNpemUuXHJcbi8vIElmIHlvdSB3YW50IHlvdXIgYmFzZSBmb250LXNpemUgdG8gYmUgZGlmZmVyZW50IGFuZCBub3QgaGF2ZSBpdCBhZmZlY3QgdGhlIGdyaWQgYnJlYWtwb2ludHMsXHJcbi8vIHNldCAkcmVtLWJhc2UgdG8gJGJhc2UtZm9udC1zaXplIGFuZCBtYWtlIHN1cmUgJGJhc2UtZm9udC1zaXplIGlzIGEgcHggdmFsdWUuXHJcbiRiYXNlLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcclxuXHJcbi8vICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDI0cHggd2hpbGUgJGJhc2UtZm9udC1zaXplIGlzIDE2cHhcclxuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcclxuXHJcbi8vXHJcbi8vIEdsb2JhbCBGb3VuZGF0aW9uIE1peGluc1xyXG4vL1xyXG5cclxuLy8gQG1peGluc1xyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGJvcmRlciByYWRpdXMuXHJcbi8vICRyYWRpdXMgLSBEZWZhdWx0OiAkZ2xvYmFsLXJhZGl1cyB8fCA0cHhcclxuQG1peGluIHJhZGl1cygkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XHJcbiAgQGlmICRyYWRpdXMge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuICB9XHJcbn1cclxuXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIGVxdWFsIHNpZGUgYm9yZGVyIHJhZGl1cyBvbiBlbGVtZW50cy5cclxuLy8gJHNpZGUgLSBPcHRpb25zOiBsZWZ0LCByaWdodCwgdG9wLCBib3R0b21cclxuQG1peGluIHNpZGUtcmFkaXVzKCRzaWRlLCAkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XHJcbiAgQGlmICgkc2lkZSA9PSBsZWZ0IG9yICRzaWRlID09IHJpZ2h0KSB7XHJcbiAgICAtd2Via2l0LWJvcmRlci1ib3R0b20tI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcclxuICAgIGJvcmRlci1ib3R0b20tI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgYm9yZGVyLXRvcC0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAtd2Via2l0LSN7JHNpZGV9LWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gICAgLXdlYmtpdC0jeyRzaWRlfS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICBib3JkZXItI3skc2lkZX0tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XHJcbiAgICBib3JkZXItI3skc2lkZX0tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQG1peGluc1xyXG4vL1xyXG4vLyBXZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB3ZSBoYXZlIGluc2V0IHNoYWRvd3MgZWRnZXMuXHJcbi8vICRhY3RpdmUgLSBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxyXG5AbWl4aW4gaW5zZXQtc2hhZG93KCRhY3RpdmU6dHJ1ZSkge1xyXG4gIGJveC1zaGFkb3c6ICRzaGlueS1lZGdlLXNpemUgJHNoaW55LWVkZ2UtY29sb3IgaW5zZXQ7XHJcblxyXG4gIEBpZiAkYWN0aXZlIHsgJjphY3RpdmUge1xyXG4gICAgYm94LXNoYWRvdzogJHNoaW55LWVkZ2Utc2l6ZSAkc2hpbnktZWRnZS1hY3RpdmUtY29sb3IgaW5zZXQ7IH0gfVxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCB0cmFuc2l0aW9ucyB0byBlbGVtZW50c1xyXG4vLyAkcHJvcGVydHkgLSBEZWZhdWx0OiBhbGwsIE9wdGlvbnM6IGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtdHJhbnNpdGlvbnMvI2FuaW1hdGFibGUtcHJvcGVydGllc1xyXG4vLyAkc3BlZWQgLSBEZWZhdWx0OiAzMDBtc1xyXG4vLyAkZWFzZSAtIERlZmF1bHQ6ZWFzZS1vdXQsIE9wdGlvbnM6IGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvdC90cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbi9cclxuQG1peGluIHNpbmdsZS10cmFuc2l0aW9uKCRwcm9wZXJ0eTphbGwsICRzcGVlZDozMDBtcywgJGVhc2U6ZWFzZS1vdXQpIHtcclxuICB0cmFuc2l0aW9uOiAkcHJvcGVydHkgJHNwZWVkICRlYXNlO1xyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBib3gtc2l6aW5nIGFjcm9zcyBicm93c2VyIHByZWZpeGVzXHJcbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlOmJvcmRlci1ib3gpIHtcclxuICAtd2Via2l0LWJveC1zaXppbmc6ICR0eXBlOyAvLyBBbmRyb2lkIDwgMi4zLCBpT1MgPCA0XHJcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkdHlwZTtcclxuICAgICAgICAgIGJveC1zaXppbmc6ICR0eXBlOyAvLyBDaHJvbWUsIElFIDgrLCBPcGVyYSwgU2FmYXJpIDUuMVxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBpc29zY2VsZXMgdHJpYW5nbGVzXHJcbi8vICR0cmlhbmdsZS1zaXplIC0gVXNlZCB0byBzZXQgYm9yZGVyLXNpemUuIE5vIGRlZmF1bHQsIHNldCBhIHB4IG9yIGVtIHNpemUuXHJcbi8vICR0cmlhbmdsZS1jb2xvciAtIFVzZWQgdG8gc2V0IGJvcmRlci1jb2xvciB3aGljaCBtYWtlcyB1cCB0cmlhbmdsZS4gTm8gZGVmYXVsdFxyXG4vLyAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gVXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggZGlyZWN0aW9uIHRyaWFuZ2xlIHBvaW50cy4gT3B0aW9uczogdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0XHJcbkBtaXhpbiBjc3MtdHJpYW5nbGUoJHRyaWFuZ2xlLXNpemUsICR0cmlhbmdsZS1jb2xvciwgJHRyaWFuZ2xlLWRpcmVjdGlvbikge1xyXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBoZWlnaHQ6IDA7XHJcbiAgd2lkdGg6IDA7XHJcbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHRvcCkge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcclxuICB9XHJcbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGJvdHRvbSkge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcclxuICB9XHJcbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xyXG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xyXG4gIH1cclxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIHRoZSBpY29uIHdpdGggdGhyZWUgbGluZXMgYWthIHRoZSBoYW1idXJnZXIgaWNvbiwgdGhlIG1lbnUtaWNvbiBvciB0aGUgbmF2aWNvblxyXG4vLyAkd2lkdGggLSBXaWR0aCBvZiBoYW1idXJnZXIgaWNvbiBpbiByZW1cclxuLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cclxuLy8gJHRvcCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgdmVydGljYWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cclxuLy8gJHRoaWNrbmVzcyAtIHRoaWNrbmVzcyBvZiBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4XHJcbi8vICRnYXAgLSBzcGFjaW5nIGJldHdlZW4gdGhlIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcclxuLy8gJGNvbG9yIC0gaWNvbiBjb2xvclxyXG4vLyAkaG92ZXItY29sb3IgLSBpY29uIGNvbG9yIGR1cmluZyBob3ZlclxyXG4vLyAkb2ZmY2FudmFzIC0gU2V0IHRvIHRydWUgb2YgQGluY2x1ZGUgaW4gb2ZmY2FudmFzXHJcbkBtaXhpbiBoYW1idXJnZXIoJHdpZHRoLCAkbGVmdCwgJHRvcCwgJHRoaWNrbmVzcywgJGdhcCwgJGNvbG9yLCAkaG92ZXItY29sb3IsICRvZmZjYW52YXMpIHtcclxuICBzcGFuOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgQGlmICRvZmZjYW52YXMge1xyXG4gICAgICBAaWYgJHRvcCB7XHJcbiAgICAgICAgdG9wOiAkdG9wO1xyXG4gICAgICB9XHJcbiAgICAgIEBlbHNlIHtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAoLSR3aWR0aC8yKTtcclxuICAgICAgfVxyXG4gICAgICBAaWYgJGxlZnQge1xyXG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xyXG4gICAgICB9XHJcbiAgICAgIEBlbHNlIHtcclxuICAgICAgICBsZWZ0OiAoJHRhYmJhci1tZW51LWljb24td2lkdGggLSAkd2lkdGgpLzI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgbWFyZ2luLXRvcDogLSgkd2lkdGgvMik7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgIH1cclxuXHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAwIDAgMCAkdGhpY2tuZXNzICRjb2xvcixcclxuICAgICAgMCAkZ2FwICsgJHRoaWNrbmVzcyAwICR0aGlja25lc3MgJGNvbG9yLFxyXG4gICAgICAwICgyICogJGdhcCArIDIqJHRoaWNrbmVzcykgMCAkdGhpY2tuZXNzICRjb2xvcjtcclxuICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgfVxyXG4gIHNwYW46aG92ZXI6YWZ0ZXIge1xyXG4gICAgYm94LXNoYWRvdzpcclxuICAgICAgMCAwIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3IsXHJcbiAgICAgIDAgJGdhcCArICR0aGlja25lc3MgMCAkdGhpY2tuZXNzICRob3Zlci1jb2xvcixcclxuICAgICAgMCAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBkbyBjbGVhciBmbG9hdHNcclxuQG1peGluIGNsZWFyZml4IHtcclxuICAmOmJlZm9yZSwgJjphZnRlciB7IGNvbnRlbnQ6IFwiIFwiOyBkaXNwbGF5OiB0YWJsZTsgfVxyXG4gICY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBhIGdsb3dpbmcgZWZmZWN0IHRvIGJsb2NrIGVsZW1lbnRzXHJcbi8vICRzZWxlY3RvciAtIFVzZWQgZm9yIHNlbGVjdG9yIHN0YXRlLiBEZWZhdWx0OiBmb2N1cywgT3B0aW9uczogaG92ZXIsIGFjdGl2ZSwgdmlzaXRlZFxyXG4vLyAkZmFkZS10aW1lIC0gRGVmYXVsdDogMzAwbXNcclxuLy8gJGdsb3dpbmctZWZmZWN0LWNvbG9yIC0gRGVmYXVsdDogZmFkZS1vdXQoJHByaW1hcnktY29sb3IsIC4yNSlcclxuQG1peGluIGJsb2NrLWdsb3dpbmctZWZmZWN0KCRzZWxlY3Rvcjpmb2N1cywgJGZhZGUtdGltZTozMDBtcywgJGdsb3dpbmctZWZmZWN0LWNvbG9yOmZhZGUtb3V0KCRwcmltYXJ5LWNvbG9yLCAuMjUpKSB7XHJcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkZmFkZS10aW1lLCBib3JkZXItY29sb3IgJGZhZGUtdGltZSBlYXNlLWluLW91dDtcclxuXHJcbiAgJjojeyRzZWxlY3Rvcn0ge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkZ2xvd2luZy1lZmZlY3QtY29sb3I7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgdG8gdHJhbnNsYXRlIGVsZW1lbnRzIGluIDJEXHJcbi8vICRob3Jpem9udGFsOiBEZWZhdWx0OiAwXHJcbi8vICR2ZXJ0aWNhbDogRGVmYXVsdDogMFxyXG5AbWl4aW4gdHJhbnNsYXRlMmQoJGhvcml6b250YWw6MCwgJHZlcnRpY2FsOjApIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkaG9yaXpvbnRhbCwgJHZlcnRpY2FsKVxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgYWNjZXNzaWJsZS5cclxuLy8gQHNlZSBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XHJcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XHJcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDFweDtcclxufVxyXG5cclxuLy8gQG1peGluc1xyXG4vL1xyXG4vLyBUdXJucyBvZmYgdGhlIGVsZW1lbnQtaW52aXNpYmxlIGVmZmVjdC5cclxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XHJcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xyXG4gIGhlaWdodDogYXV0bztcclxuICB3aWR0aDogYXV0bztcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBjbGlwOiBhdXRvO1xyXG59XHJcblxyXG4kd2hpdGUgICAgICAgICA6ICNGRkZGRkYgIWRlZmF1bHQ7XHJcbiRnaG9zdCAgICAgICAgIDogI0ZBRkFGQSAhZGVmYXVsdDtcclxuJHNub3cgICAgICAgICAgOiAjRjlGOUY5ICFkZWZhdWx0O1xyXG4kdmFwb3IgICAgICAgICA6ICNGNkY2RjYgIWRlZmF1bHQ7XHJcbiR3aGl0ZS1zbW9rZSAgIDogI0Y1RjVGNSAhZGVmYXVsdDtcclxuJHNpbHZlciAgICAgICAgOiAjRUZFRkVGICFkZWZhdWx0O1xyXG4kc21va2UgICAgICAgICA6ICNFRUVFRUUgIWRlZmF1bHQ7XHJcbiRnYWluc2Jvcm8gICAgIDogI0RERERERCAhZGVmYXVsdDtcclxuJGlyb24gICAgICAgICAgOiAjQ0NDQ0NDICFkZWZhdWx0O1xyXG4kYmFzZSAgICAgICAgICA6ICNBQUFBQUEgIWRlZmF1bHQ7XHJcbiRhbHVtaW51bSAgICAgIDogIzk5OTk5OSAhZGVmYXVsdDtcclxuJGp1bWJvICAgICAgICAgOiAjODg4ODg4ICFkZWZhdWx0O1xyXG4kbW9uc29vbiAgICAgICA6ICM3Nzc3NzcgIWRlZmF1bHQ7XHJcbiRzdGVlbCAgICAgICAgIDogIzY2NjY2NiAhZGVmYXVsdDtcclxuJGNoYXJjb2FsICAgICAgOiAjNTU1NTU1ICFkZWZhdWx0O1xyXG4kdHVhdGFyYSAgICAgICA6ICM0NDQ0NDQgIWRlZmF1bHQ7XHJcbiRvaWwgICAgICAgICAgIDogIzMzMzMzMyAhZGVmYXVsdDtcclxuJGpldCAgICAgICAgICAgOiAjMjIyMjIyICFkZWZhdWx0O1xyXG4kYmxhY2sgICAgICAgICA6ICMwMDAwMDAgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgYXMgZGVmYXVsdCBjb2xvcnMgdGhyb3VnaG91dFxyXG4kcHJpbWFyeS1jb2xvcjogIzAwOENCQSAhZGVmYXVsdDsgICAvLyBib25kaS1ibHVlXHJcbiRzZWNvbmRhcnktY29sb3I6ICNlN2U3ZTcgIWRlZmF1bHQ7IC8vIHdoaXRlLWxpbGFjXHJcbiRhbGVydC1jb2xvcjogI2YwNDEyNCAhZGVmYXVsdDsgICAgIC8vIGNpbm5hYmFyXHJcbiRzdWNjZXNzLWNvbG9yOiAjNDNBQzZBICFkZWZhdWx0OyAgIC8vIHNlYS1ncmVlblxyXG4kd2FybmluZy1jb2xvcjogI2YwOGEyNCAhZGVmYXVsdDsgICAvLyBjYXJyb3RcclxuJGluZm8tY29sb3I6ICNhMGQzZTggIWRlZmF1bHQ7ICAgICAgLy8gY29ybmZsb3dlclxyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGRlZmluZSBkZWZhdWx0IGZvbnQgc3RhY2tzXHJcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBDYW1icmlhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gZGVmaW5lIGRlZmF1bHQgZm9udCB3ZWlnaHRzXHJcbiRmb250LXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcclxuJGZvbnQtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGdsb2JhbCBzdHlsZXNcclxuJGJvZHktYmc6ICNmZmYgIWRlZmF1bHQ7XHJcbiRib2R5LWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XHJcbiRib2R5LWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGJvZHktZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgZm9udC1zbW9vdGhpbmdcclxuJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRleHQgZGlyZWN0aW9uIHNldHRpbmdzXHJcbiR0ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xyXG4kZGVmYXVsdC1mbG9hdDogbGVmdCAhZGVmYXVsdDtcclxuJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQgIWRlZmF1bHQ7XHJcbkBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gbHRyIHtcclxuICAkZGVmYXVsdC1mbG9hdDogbGVmdDtcclxuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodDtcclxufSBAZWxzZSB7XHJcbiAgJGRlZmF1bHQtZmxvYXQ6IHJpZ2h0O1xyXG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGxlZnQ7XHJcbn1cclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHN1cmUgYm9yZGVyIHJhZGl1cyBtYXRjaGVzIHVubGVzcyB3ZSB3YW50IGl0IGRpZmZlcmVudC5cclxuJGdsb2JhbC1yYWRpdXM6IDNweCAhZGVmYXVsdDtcclxuJGdsb2JhbC1yb3VuZGVkOiAxMDAwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBpbnNldCBzaGFkb3cgc2hpbnkgZWRnZXMgYW5kIGRlcHJlc3Npb25zLlxyXG4kc2hpbnktZWRnZS1zaXplOiAwIDFweCAwICFkZWZhdWx0O1xyXG4kc2hpbnktZWRnZS1jb2xvcjogcmdiYSgjZmZmLCAuNSkgIWRlZmF1bHQ7XHJcbiRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgjMDAwLCAuMikgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdoZXRoZXIgb3Igbm90IENTUyBjbGFzc2VzIGNvbWUgdGhyb3VnaCBpbiB0aGUgZ2VtIGZpbGVzLlxyXG4kaW5jbHVkZS1odG1sLWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XHJcbiRpbmNsdWRlLXByaW50LXN0eWxlczogdHJ1ZSAhZGVmYXVsdDtcclxuJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcclxuXHJcbi8vIE1lZGlhIFF1ZXJ5IFJhbmdlc1xyXG4kc21hbGwtcmFuZ2U6ICgwLCA0MGVtKSAhZGVmYXVsdDtcclxuJG1lZGl1bS1yYW5nZTogKDQwLjA2MjVlbSwgNjRlbSkgIWRlZmF1bHQ7XHJcbiRsYXJnZS1yYW5nZTogKDY0LjA2MjVlbSwgOTBlbSkgIWRlZmF1bHQ7XHJcbiR4bGFyZ2UtcmFuZ2U6ICg5MC4wNjI1ZW0sIDEyMGVtKSAhZGVmYXVsdDtcclxuJHh4bGFyZ2UtcmFuZ2U6ICgxMjAuMDYyNWVtLCA5OTk5OTk5OWVtKSAhZGVmYXVsdDtcclxuXHJcblxyXG4kc2NyZWVuOiBcIm9ubHkgc2NyZWVuXCIgIWRlZmF1bHQ7XHJcblxyXG4kbGFuZHNjYXBlOiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiICFkZWZhdWx0O1xyXG4kcG9ydHJhaXQ6IFwiI3skc2NyZWVufSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdClcIiAhZGVmYXVsdDtcclxuXHJcbiRzbWFsbC11cDogJHNjcmVlbiAhZGVmYXVsdDtcclxuJHNtYWxsLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1heC13aWR0aDogI3t1cHBlci1ib3VuZCgkc21hbGwtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcclxuXHJcbiRtZWRpdW0tdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIiAhZGVmYXVsdDtcclxuJG1lZGl1bS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KVwiICFkZWZhdWx0O1xyXG5cclxuJGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcclxuJGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xyXG5cclxuJHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xyXG4keGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XHJcblxyXG4keHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcclxuJHh4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xyXG5cclxuLy8gTGVnYWN5XHJcbiRzbWFsbDogJG1lZGl1bS11cDtcclxuJG1lZGl1bTogJG1lZGl1bS11cDtcclxuJGxhcmdlOiAkbGFyZ2UtdXA7XHJcblxyXG5cclxuLy9XZSB1c2UgdGhpcyBhcyBjdXJzb3JzIHZhbHVlcyBmb3IgZW5hYmxpbmcgdGhlIG9wdGlvbiBvZiBoYXZpbmcgY3VzdG9tIGN1cnNvcnMgaW4gdGhlIHdob2xlIHNpdGUncyBzdHlsZXNoZWV0XHJcbiRjdXJzb3ItYXV0by12YWx1ZTogYXV0byAhZGVmYXVsdDtcclxuJGN1cnNvci1jcm9zc2hhaXItdmFsdWU6IGNyb3NzaGFpciAhZGVmYXVsdDtcclxuJGN1cnNvci1kZWZhdWx0LXZhbHVlOiBkZWZhdWx0ICFkZWZhdWx0O1xyXG4kY3Vyc29yLWRpc2FibGVkLXZhbHVlOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcclxuJGN1cnNvci1wb2ludGVyLXZhbHVlOiBwb2ludGVyICFkZWZhdWx0O1xyXG4kY3Vyc29yLWhlbHAtdmFsdWU6IGhlbHAgIWRlZmF1bHQ7XHJcbiRjdXJzb3ItdGV4dC12YWx1ZTogdGV4dCAhZGVmYXVsdDtcclxuXHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwiZ2xvYmFsXCIpIHtcclxuXHJcbiAgLy8gTWV0YSBzdHlsZXMgYXJlIGluY2x1ZGVkIGluIGFsbCBidWlsZHMsIGFzIHRoZXkgYXJlIGEgZGVwZW5kYW5jeSBvZiB0aGUgSmF2YXNjcmlwdC5cclxuICAvLyBVc2VkIHRvIHByb3ZpZGUgbWVkaWEgcXVlcnkgdmFsdWVzIGZvciBqYXZhc2NyaXB0IGNvbXBvbmVudHMuXHJcbiAgLy8gRm9yd2FyZCBzbGFzaCBwbGFjZWQgYXJvdW5kIGV2ZXJ5dGhpbmcgdG8gY29udmluY2UgUGhhbnRvbUpTIHRvIHJlYWQgdGhlIHZhbHVlLlxyXG5cclxuICBtZXRhLmZvdW5kYXRpb24tdmVyc2lvbiB7XHJcbiAgICBmb250LWZhbWlseTogXCIve3tWRVJTSU9OfX0vXCI7XHJcbiAgfVxyXG5cclxuICBtZXRhLmZvdW5kYXRpb24tbXEtc21hbGwge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkc21hbGwtdXApICsgXCIvXCI7XHJcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJHNtYWxsLXJhbmdlKTtcclxuICB9XHJcblxyXG4gIG1ldGEuZm91bmRhdGlvbi1tcS1zbWFsbC1vbmx5IHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHNtYWxsLW9ubHkpICsgXCIvXCI7XHJcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJHNtYWxsLXJhbmdlKTtcclxuICB9XHJcblxyXG4gIG1ldGEuZm91bmRhdGlvbi1tcS1tZWRpdW0ge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbWVkaXVtLXVwKSArIFwiL1wiO1xyXG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpO1xyXG4gIH1cclxuXHJcbiAgbWV0YS5mb3VuZGF0aW9uLW1xLW1lZGl1bS1vbmx5IHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJG1lZGl1bS1vbmx5KSArIFwiL1wiO1xyXG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpO1xyXG4gIH1cclxuXHJcbiAgbWV0YS5mb3VuZGF0aW9uLW1xLWxhcmdlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJGxhcmdlLXVwKSArIFwiL1wiO1xyXG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XHJcbiAgfVxyXG5cclxuICBtZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Utb25seSB7XHJcbiAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRsYXJnZS1vbmx5KSArIFwiL1wiO1xyXG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XHJcbiAgfVxyXG5cclxuICBtZXRhLmZvdW5kYXRpb24tbXEteGxhcmdlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHhsYXJnZS11cCkgKyBcIi9cIjtcclxuICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKTtcclxuICB9XHJcblxyXG4gIG1ldGEuZm91bmRhdGlvbi1tcS14bGFyZ2Utb25seSB7XHJcbiAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4bGFyZ2Utb25seSkgKyBcIi9cIjtcclxuICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKTtcclxuICB9XHJcblxyXG4gIG1ldGEuZm91bmRhdGlvbi1tcS14eGxhcmdlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHh4bGFyZ2UtdXApICsgXCIvXCI7XHJcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpO1xyXG4gIH1cclxuXHJcbiAgbWV0YS5mb3VuZGF0aW9uLWRhdGEtYXR0cmlidXRlLW5hbWVzcGFjZSB7XHJcbiAgICBmb250LWZhbWlseTogI3skbmFtZXNwYWNlfTtcclxuICB9XHJcblxyXG4gIEBpZiAkaW5jbHVkZS1odG1sLWdsb2JhbC1jbGFzc2VzIHtcclxuXHJcbiAgICAvLyBNdXN0IGJlIDEwMCUgZm9yIG9mZiBjYW52YXMgdG8gd29ya1xyXG4gICAgaHRtbCwgYm9keSB7IGhlaWdodDogMTAwJTsgfVxyXG5cclxuICAgIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXHJcbiAgICBodG1sIHtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIH1cclxuICAgICosXHJcbiAgICAqOmJlZm9yZSxcclxuICAgICo6YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGluaGVyaXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGh0bWwsXHJcbiAgICBib2R5IHsgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IH1cclxuXHJcbiAgICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXHJcbiAgICBib2R5IHtcclxuICAgICAgYmFja2dyb3VuZDogJGJvZHktYmc7XHJcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4gICAgICBjdXJzb3I6ICRjdXJzb3ItYXV0by12YWx1ZTtcclxuICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4gICAgICBmb250LXN0eWxlOiAkYm9keS1mb250LXN0eWxlO1xyXG4gICAgICBmb250LXdlaWdodDogJGJvZHktZm9udC13ZWlnaHQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDsgLy8gU2V0IHRvICRiYXNlLWxpbmUtaGVpZ2h0IHRvIHRha2Ugb24gYnJvd3NlciBkZWZhdWx0IG9mIDE1MCVcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gIGE6aG92ZXIgeyBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTsgfVxyXG5cclxuICAgIC8vIEdyaWQgRGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcclxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyB9XHJcblxyXG4gICAgaW1nIHsgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxyXG5cclxuICAgICNtYXBfY2FudmFzLFxyXG4gICAgLm1hcF9jYW52YXMsXHJcbiAgICAubXFhLWRpc3BsYXkge1xyXG4gICAgICBpbWcsXHJcbiAgICAgIGVtYmVkLFxyXG4gICAgICBvYmplY3QgeyBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIE1pc2NlbGxhbmVvdXMgdXNlZnVsIEhUTUwgY2xhc3Nlc1xyXG4gICAgLmxlZnQgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XHJcbiAgICAucmlnaHQgeyBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxyXG4gICAgLmNsZWFyZml4IHsgQGluY2x1ZGUgY2xlYXJmaXg7IH1cclxuXHJcbiAgICAvLyBIaWRlIHZpc3VhbGx5IGFuZCBmcm9tIHNjcmVlbiByZWFkZXJzXHJcbiAgICAuaGlkZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxyXG4gICAgLmludmlzaWJsZSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxyXG5cclxuICAgIC8vIEZvbnQgc21vb3RoaW5nXHJcbiAgICAvLyBBbnRpYWxpYXNlZCBmb250IHNtb290aGluZyB3b3JrcyBiZXN0IGZvciBsaWdodCB0ZXh0IG9uIGEgZGFyayBiYWNrZ3JvdW5kLlxyXG4gICAgLy8gQXBwbHkgdG8gc2luZ2xlIGVsZW1lbnRzIGluc3RlYWQgb2YgZ2xvYmFsbHkgdG8gYm9keS5cclxuICAgIC8vIE5vdGUgdGhpcyBvbmx5IGFwcGxpZXMgdG8gd2Via2l0LWJhc2VkIGRlc2t0b3AgYnJvd3NlcnMgYW5kIEZpcmVmb3ggMjUgKGFuZCBsYXRlcikgb24gdGhlIE1hYy5cclxuICAgIC5hbnRpYWxpYXNlZCB7IC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XHJcblxyXG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxyXG4gICAgaW1nIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vXHJcbiAgICAvLyBHbG9iYWwgcmVzZXRzIGZvciBmb3Jtc1xyXG4gICAgLy9cclxuXHJcbiAgICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcclxuICAgIHRleHRhcmVhIHsgaGVpZ2h0OiBhdXRvOyBtaW4taGVpZ2h0OiA1MHB4OyB9XHJcblxyXG4gICAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgMTAwJSB3aWR0aCBieSBkZWZhdWx0XHJcbiAgICBzZWxlY3QgeyB3aWR0aDogMTAwJTsgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcblxyXG4kaW5jbHVkZS1odG1sLWFjY29yZGlvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3I6ICRzaWx2ZXIgIWRlZmF1bHQ7XHJcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xyXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSkgIWRlZmF1bHQ7XHJcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xyXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XHJcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcblxyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpICFkZWZhdWx0O1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gIE1peGluOiBhY2NvcmRpb24tY29udGFpbmVyKClcclxuLy8gIERlY3JpcHRpb246IFJlc3BvbnNpYmxlIGZvciB0aGUgY29udGFpbmVyIGNvbXBvbmVudCBvZiBhY2NvcmRpb25zLCBnZW5lcmF0aW5nIHN0eWxlcyByZWxhdGluZyB0byBhIG1hcmdpbiBvZiB6ZXJvIGFuZCBhIGNsZWFyZml4XHJcbi8vICBFeHBsaWNpdCBEZXBlbmRlbmNpZXM6IGEgY2xlYXJmaXggbWl4aW4gKmlzKiBkZWZpbmVkLlxyXG4vLyAgSW1wbGljaXQgRGVwZW5kZW5jaWVzOiBOb25lXHJcblxyXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lcigpIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4vLyAgTWl4aW46IGFjY29yZGlvbi1uYXZpZ2F0aW9uKCAkYmcsICRob3Zlci1iZywgJGFjdGl2ZS1iZywgJHBhZGRpbmcsICRhY3RpdmVfY2xhc3MsICAkZm9udC1jb2xvciwgJGZvbnQtc2l6ZSwgJGZvbnQtZmFtaWx5KSB7XHJcbi8vICAgIEBwYXJhbXMgJGJnLWNvbG9yOiBbIGNvbG9yIG9yIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgbmF2aWdhdGlvbiBlbGVtZW50XHJcbi8vICAgIEBwYXJhbXMgJGhvdmVyLWJnLWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnQgd2hlbiBob3ZlcmVkXHJcbi8vICAgIEBwYXJhbXMgJGFjdGl2ZS1iZyBbIGNvbG9yIG9yIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgbmF2aWdhdGlvbiBlbGVtZW50IHdoZW4gY2xpY2tlZCBhbmQgbm90IHJlbGVhc2VkLlxyXG4vLyAgICBAcGFyYW1zICRhY3RpdmVfY2xhc3MgWyBzdHJpbmcgXTogU3BlY2lmeSB0aGUgY2xhc3MgbmFtZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2Ygd2hpY2ggYWNjb3JkaW9uIHRhYiBzaG91bGQgYmUgdmlzaWJsZVxyXG4vLyAgICBAcGFyYW1zICRmb250LWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IENvbG9yIG9mIHRoZSBmb250IGZvciBhY2NvcmRpb25cclxuLy8gICAgQHBhcmFtcyAkZm9udC1zaXplIFsgbnVtYmVyIF06IFNwZWNpZml5IHRoZSBmb250LXNpemUgb2YgdGhlIHRleHQgaW5zaWRlIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnRcclxuLy8gICAgQHBhcmFtcyAkZm9udC1mYW1pbHkgWyBzdHJpbmcgXTogU3BlY2lmeSB0aGUgZm9udCBmYW1pbHkgZm9yIHRoZSB0ZXh0IG9mIHRoZSBuYXZpZ2F0aW9uIG9mIHRoZSBhY2NvcmlvblxyXG5cclxuQG1peGluIGFjY29yZGlvbi1uYXZpZ2F0aW9uKCAkYmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvciwgJGhvdmVyLWJnOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24taG92ZXItYmctY29sb3IsICRhY3RpdmUtYmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3IsICRwYWRkaW5nOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZywgJGFjdGl2ZV9jbGFzczogJ2FjdGl2ZScsICAkZm9udC1jb2xvcjogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3IsICRmb250LXNpemU6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUsICRmb250LWZhbWlseTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5ICkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICBAaWYgdHlwZS1vZigkYWN0aXZlX2NsYXNzKSAhPSBcInN0cmluZ1wiIHtcclxuICAgIEB3YXJuIFwiYCN7JGFjdGl2ZV9jbGFzc31gIGlzbid0IGEgdmFsaWQgc3RyaW5nLiBBIHZhbGlkIHN0cmluZyBpcyBuZWVkZWQgdG8gY29ycmVjdGx5IGJlIGludGVycG9sYXRlZCBhcyBhIENTUyBjbGFzcy4gQ1NTIGNsYXNzZXMgY2Fubm90IHN0YXJ0IHdpdGggYSBudW1iZXIgb3IgY29uc2lzdCBvZiBvbmx5IG51bWJlcnMuIENTUyB3aWxsIG5vdCBiZSBnZW5lcmF0ZWQgZm9yIHRoZSBhY3RpdmUgc3RhdGUgb2YgdGhpcyBuYXZpZ2F0aW9uIGNvbXBvbmVudC5cIlxyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICAmLiN7ICRhY3RpdmVfY2xhc3MgfSA+IGEge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWJnO1xyXG4gICAgfVxyXG4gIH1cclxuICA+IGEge1xyXG4gICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgY29sb3I6ICRmb250LWNvbG9yO1xyXG4gICAgQGlmIHR5cGUtb2YoJHBhZGRpbmcpICE9IG51bWJlciB7XHJcbiAgICAgIEB3YXJuIFwiYCN7JHBhZGRpbmd9YCB3YXMgcmVhZCBhcyAje3R5cGUtb2YoJHBhZGRpbmcpfVwiO1xyXG4gICAgICBAaWYgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmcgIT0gbnVsbCB7XHJcbiAgICAgICAgQHdhcm4gXCIjeyRwYWRkaW5nfSB3YXMgcmVhZCBhcyBhICN7dHlwZS1vZigkcGFkZGluZyl9XCI7XHJcbiAgICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIGlzbid0IGEgdmFsaWQgbnVtYmVyLiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZyAoI3skYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZ30pIHdpbGwgYmUgdXNlZCBpbnN0ZWFkLilcIjtcclxuICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZztcclxuICAgICAgfVxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIGlzbid0IGEgdmFsaWQgbnVtYmVyIGFuZCAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZyBpcyBtaXNzaW5nLiBBIHZhbHVlIG9mIGBudWxsYCBpcyByZXR1cm5lZCB0byBub3Qgb3V0cHV0IGFuIGludmFsaWQgdmFsdWUgZm9yIHBhZGRpbmdcIjtcclxuICAgICAgICBwYWRkaW5nOiBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gICAgfVxyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xyXG4gICAgQGlmIHR5cGUtb2YoJGZvbnQtc2l6ZSkgIT0gbnVtYmVyIHtcclxuICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgd2FzIHJlYWQgYXMgYSAje3R5cGUtb2YoJGZvbnQtc2l6ZSl9XCI7XHJcbiAgICAgIEBpZiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplICE9IG51bGwge1xyXG4gICAgICAgIEB3YXJuIFwiYCN7JGZvbnQtc2l6ZX1gIGlzIG5vdCBhIHZhbGlkIG51bWJlci4gVGhlIHZhbHVlIG9mICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgd2lsbCBiZSB1c2VkIGluc3RlYWQgKCN7JGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZX0pLlwiO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcclxuICAgICAgfVxyXG4gICAgICBAZWxzZXtcclxuICAgICAgICBAd2FybiBcImAjeyRmb250LXNpemV9YCBpcyBub3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgaXMgbm90IGRlZmluZWQuIEEgdmFsdWUgb2YgYG51bGxgIHdpbGwgYmUgcmV0dXJuZWQgdG8gbm90IGdlbmVyYXRlIGFuIGludmFsaWQgdmFsdWUgZm9yIGZvbnQtc2l6ZS5cIjtcclxuICAgICAgICBmb250LXNpemU6IG51bGw7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItYmc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyAgTWl4aW46IGFjY29yZGlvbi1jb250ZW50KCRiZywgJHBhZGRpbmcsICRhY3RpdmUtY2xhc3MpXHJcbi8vICAgIEBwYXJhbXMgJHBhZGRpbmcgWyBudW1iZXIgXTogUGFkZGluZyBmb3IgdGhlIGNvbnRlbnQgb2YgdGhlIGNvbnRhaW5lclxyXG4vLyAgICBAcGFyYW1zICRiZyBbIGNvbG9yICBdOiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgY29udGVudCB3aGVuIGl0J3MgdmlzaWJsZVxyXG4vLyAgICBAcGFyYW1zICRhY3RpdmVfY2xhc3MgWyBzdHJpbmcgXTogQ2xhc3MgbmFtZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2Ygd2hpY2ggYWNjb3JkaW9uIHRhYiBzaG91bGQgYmUgdmlzaWJsZS5cclxuXHJcbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCgkYmc6ICRhY2NvcmRpb24tY29udGVudC1hY3RpdmUtYmctY29sb3IsICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZywgJGFjdGl2ZV9jbGFzczogJ2FjdGl2ZScpIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIEBpZiB0eXBlLW9mKCRwYWRkaW5nKSAhPSBcIm51bWJlclwiIHtcclxuICAgIEB3YXJuIFwiI3skcGFkZGluZ30gd2FzIHJlYWQgYXMgYSAje3R5cGUtb2YoJHBhZGRpbmcpfVwiO1xyXG4gICAgQGlmICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nICE9IG51bGwge1xyXG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIuICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIHVzZWQgaW5zdGVhZFwiO1xyXG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZztcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIGlzIG5vdCBkZWZpbmVkLiBBIHZhbHVlIG9mIGBudWxsYCBpcyByZXR1cm5lZCB0byBub3Qgb3V0cHV0IGFuIGludmFsaWQgdmFsdWUgZm9yIHBhZGRpbmcuXCI7XHJcbiAgICAgIHBhZGRpbmc6IG51bGw7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB9XHJcblxyXG4gIEBpZiB0eXBlLW9mKCRhY3RpdmVfY2xhc3MpICE9IFwic3RyaW5nXCIge1xyXG4gICAgQHdhcm4gXCJgI3skYWN0aXZlX2NsYXNzfWAgaXNuJ3QgYSB2YWxpZCBzdHJpbmcuIEEgdmFsaWQgc3RyaW5nIGlzIG5lZWRlZCB0byBjb3JyZWN0bHkgYmUgaW50ZXJwb2xhdGVkIGFzIGEgQ1NTIGNsYXNzLiBDU1MgY2xhc3NlcyBjYW5ub3Qgc3RhcnQgd2l0aCBhIG51bWJlciBvciBjb25zaXN0IG9mIG9ubHkgbnVtYmVycy4gQ1NTIHdpbGwgbm90IGJlIGdlbmVyYXRlZCBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGUgY29udGVudC4gXCJcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgJi4jeyRhY3RpdmVfY2xhc3N9IHtcclxuICAgICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJhY2NvcmRpb25cIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLWFjY29yZGlvbi1jbGFzc2VzIHtcclxuICAgIC5hY2NvcmRpb24ge1xyXG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uLCBkZCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICYuYWN0aXZlID4gYSB7IGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I7IH1cclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xyXG4gICAgICAgICAgY29sb3I6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWNvbG9yO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplO1xyXG4gICAgICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc7XHJcbiAgICAgICAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOyB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC5jb250ZW50IHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZztcclxuICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuXHJcbi8vXHJcbi8vIEJsb2NrIEdyaWQgVmFyaWFibGVzXHJcbi8vXHJcbiRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcbiRpbmNsdWRlLXhsLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiBmYWxzZSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJsb2NrIGdyaWQgZWxlbWVudHMgcGVyIHJvd1xyXG4kYmxvY2stZ3JpZC1lbGVtZW50czogMTIgIWRlZmF1bHQ7XHJcbiRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xyXG5cclxuJGFsaWduLWJsb2NrLWdyaWQtdG8tZ3JpZDogZmFsc2UgIWRlZmF1bHQ7XHJcbkBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcclxuICAkYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmc6ICRjb2x1bW4tZ3V0dGVyO1xyXG59XHJcblxyXG4vLyBFbmFibGVzIG1lZGlhIHF1ZXJpZXMgZm9yIGJsb2NrLWdyaWQgY2xhc3Nlcy4gU2V0IHRvIGZhbHNlIGlmIHdyaXRpbmcgc2VtYW50aWMgSFRNTC5cclxuJGJsb2NrLWdyaWQtbWVkaWEtcXVlcmllczogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vXHJcbi8vIEJsb2NrIEdyaWQgTWl4aW5zXHJcbi8vXHJcblxyXG4vLyBDcmVhdGUgYSBjdXN0b20gYmxvY2sgZ3JpZFxyXG4vL1xyXG4vLyAkcGVyLXJvdyAtICMgb2YgaXRlbXMgdG8gZGlzcGxheSBwZXIgcm93LiBEZWZhdWx0OiBmYWxzZS5cclxuLy8gJHNwYWNpbmcgLSAjIG9mIGVtcyB0byB1c2UgYXMgcGFkZGluZyBvbiBlYWNoIGJsb2NrIGl0ZW0uIERlZmF1bHQ6IHJlbS1jYWxjKDIwKS5cclxuLy8gJGluY2x1ZGUtc3BhY2luZyAtIEFkZHMgcGFkZGluZyB0byBvdXIgbGlzdCBpdGVtLiBEZWZhdWx0OiB0cnVlLlxyXG4vLyAkYmFzZS1zdHlsZSAtIEFwcGx5IGEgYmFzZSBzdHlsZSB0byBibG9jayBncmlkLiBEZWZhdWx0OiB0cnVlLlxyXG5AbWl4aW4gYmxvY2stZ3JpZChcclxuICAkcGVyLXJvdzpmYWxzZSxcclxuICAkc3BhY2luZzokYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmcsXHJcbiAgJGluY2x1ZGUtc3BhY2luZzp0cnVlLFxyXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcclxuXHJcbiAgQGlmICRiYXNlLXN0eWxlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIEBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIG1hcmdpbjogMCAoLSRzcGFjaW5nLzIpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG4gICAgPiBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgQGlmICRpbmNsdWRlLXNwYWNpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgKCRzcGFjaW5nLzIpICRzcGFjaW5nO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaWYgJHBlci1yb3cge1xyXG4gICAgPiBsaSB7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIEBpZiAkaW5jbHVkZS1zcGFjaW5nIHtcclxuICAgICAgICBwYWRkaW5nOiAwICgkc3BhY2luZy8yKSAkc3BhY2luZztcclxuICAgICAgfVxyXG4gICAgICB3aWR0aDogMTAwJS8kcGVyLXJvdztcclxuXHJcbiAgICAgICY6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cclxuICAgICAgJjpudGgtb2YtdHlwZSgjeyRwZXItcm93fW4rMSkgeyBjbGVhcjogYm90aDsgfVxyXG4gICAgICBAaWYgJGFsaWduLWJsb2NrLWdyaWQtdG8tZ3JpZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1hbGlnbmVkKCRwZXItcm93LCAkc3BhY2luZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBibG9jay1ncmlkLWFsaWduZWQoJHBlci1yb3csICRzcGFjaW5nKSB7XHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XHJcbiAgICBAaWYgJHBlci1yb3cgPj0gJGkge1xyXG4gICAgICAkZ3JpZC1jb2x1bW46ICcrJyArICRpO1xyXG4gICAgICBAaWYgJHBlci1yb3cgPT0gJGkge1xyXG4gICAgICAgICRncmlkLWNvbHVtbjogJyc7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtb2YtdHlwZSgjeyRwZXItcm93fW4je3VucXVvdGUoJGdyaWQtY29sdW1uKX0pIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICgkc3BhY2luZyAtICgoJHNwYWNpbmcgLyAkcGVyLXJvdykgKiAoJHBlci1yb3cgLSAoJGkgLSAxKSkpKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJHNwYWNpbmcgLSAoKCRzcGFjaW5nIC8gJHBlci1yb3cpICogJGkpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gR2VuZXJhdGUgcHJlc2VudGF0aW9uYWwgbWFya3VwIGZvciBibG9jayBncmlkLlxyXG4vL1xyXG4vLyAkc2l6ZSAtIE5hbWUgb2YgY2xhc3MgdG8gdXNlLCBpLmUuIFwibGFyZ2VcIiB3aWxsIGdlbmVyYXRlIC5sYXJnZS1ibG9jay1ncmlkLTEsIC5sYXJnZS1ibG9jay1ncmlkLTIsIGV0Yy5cclxuQG1peGluIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplLCAkaW5jbHVkZS1zcGFjaW5nKSB7XHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XHJcbiAgICAuI3skc2l6ZX0tYmxvY2stZ3JpZC0jeygkaSl9IHtcclxuICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZCgkaSwgJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nLCAkaW5jbHVkZS1zcGFjaW5nLCBmYWxzZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwiYmxvY2stZ3JpZFwiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzIHtcclxuXHJcbiAgICBbY2xhc3MqPVwiYmxvY2stZ3JpZC1cIl0geyBAaW5jbHVkZSBibG9jay1ncmlkOyB9XHJcblxyXG4gICAgQGlmICRibG9jay1ncmlkLW1lZGlhLXF1ZXJpZXMge1xyXG4gICAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcclxuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpzbWFsbCwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcclxuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTptZWRpdW0sICRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcclxuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpsYXJnZSwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAkaW5jbHVkZS14bC1odG1sLWJsb2NrLWdyaWQtY2xhc3NlcyB7XHJcbiAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eGxhcmdlLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTp4eGxhcmdlLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG5AaW1wb3J0ICdnbG9iYWwnO1xyXG5cclxuLy9cclxuLy8gQHZhcmlhYmxlc1xyXG4vL1xyXG4kaW5jbHVkZS1odG1sLWNsZWFyaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIGJhY2tncm91bmQgY29sb3JzIGZvciBwYXJ0cyBvZiBDbGVhcmluZy5cclxuJGNsZWFyaW5nLWJnOiAkb2lsICFkZWZhdWx0O1xyXG4kY2xlYXJpbmctY2FwdGlvbi1iZzogJGNsZWFyaW5nLWJnICFkZWZhdWx0O1xyXG4kY2xlYXJpbmctY2Fyb3VzZWwtYmc6IHJnYmEoNTEsNTEsNTEsMC44KSAhZGVmYXVsdDtcclxuJGNsZWFyaW5nLWltZy1iZzogJGNsZWFyaW5nLWJnICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25cclxuJGNsZWFyaW5nLWNsb3NlLWNvbG9yOiAkaXJvbiAhZGVmYXVsdDtcclxuJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGFycm93c1xyXG4kY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweCAhZGVmYXVsdDtcclxuJGNsZWFyaW5nLWFycm93LWNvbG9yOiAkY2xlYXJpbmctY2xvc2UtY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcclxuJGNsZWFyaW5nLWNhcHRpb24tZm9udC1jb2xvcjogJGlyb24gIWRlZmF1bHQ7XHJcbiRjbGVhcmluZy1jYXB0aW9uLWZvbnQtc2l6ZTogLjg3NWVtICFkZWZhdWx0O1xyXG4kY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHRoZSBpbWFnZSBhbmQgY2Fyb3VzZWwgaGVpZ2h0IGFuZCBzdHlsZVxyXG4kY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JSAhZGVmYXVsdDtcclxuJGNsZWFyaW5nLWNhcm91c2VsLWhlaWdodDogMTIwcHggIWRlZmF1bHQ7XHJcbiRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi13aWR0aDogMTIwcHggIWRlZmF1bHQ7XHJcbiRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KSAhZGVmYXVsdDtcclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJjbGVhcmluZ1wiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlcyB7XHJcbiAgICAvLyBXZSBkZWNpZGVkIHRvIG5vdCBjcmVhdGUgYSBtaXhpbiBmb3IgQ2xlYXJpbmcgYmVjYXVzZSBpdCByZWxpZXNcclxuICAgIC8vIG9uIHByZWRlZmluZWQgY2xhc3NlcyBhbmQgc3RydWN0dXJlIHRvIHdvcmsgcHJvcGVybHkuXHJcbiAgICAvLyBUaGUgdmFyaWFibGVzIGFib3ZlIHNob3VsZCBnaXZlIGVub3VnaCBjb250cm9sLlxyXG5cclxuICAgIC8qIENsZWFyaW5nIFN0eWxlcyAqL1xyXG4gICAgLmNsZWFyaW5nLXRodW1icywgI3tkYXRhKCdjbGVhcmluZycpfSB7XHJcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmW2NsYXNzKj1cImJsb2NrLWdyaWQtXCJdIGxpIHtcclxuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jbGVhcmluZy1ibGFja291dCB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjbGVhcmluZy1iZztcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHotaW5kZXg6IDk5ODtcclxuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcblxyXG4gICAgICAuY2xlYXJpbmctY2xvc2UgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jbGVhcmluZy1jb250YWluZXIge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiA5OTg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNsZWFyaW5nLXRvdWNoLWxhYmVsIHtcclxuICAgICAgY29sb3I6ICRiYXNlO1xyXG4gICAgICBmb250LXNpemU6IC42ZW07XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgIH1cclxuXHJcbiAgICAudmlzaWJsZS1pbWcge1xyXG4gICAgICBoZWlnaHQ6IDk1JTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBAaWYgJGRlZmF1bHQtZmxvYXQgPT0gbGVmdCB7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcclxuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcclxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSk7XHJcbiAgICAgICAgfTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jbGVhcmluZy1jYXB0aW9uIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWNhcHRpb24tYmc7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgY29sb3I6ICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGNsZWFyaW5nLWNhcHRpb24tZm9udC1zaXplO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nOiAkY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jbGVhcmluZy1jbG9zZSB7XHJcbiAgICAgIGNvbG9yOiAkY2xlYXJpbmctY2xvc2UtY29sb3I7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogJGNsZWFyaW5nLWNsb3NlLXNpemU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgei1pbmRleDogOTk5O1xyXG5cclxuICAgICAgJjpob3ZlcixcclxuICAgICAgJjpmb2N1cyB7IGNvbG9yOiAkaXJvbjsgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciB7IGhlaWdodDogMTAwJTtcclxuICAgICAgLmNhcm91c2VsID4gdWwgeyBkaXNwbGF5OiBub25lOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSWYgeW91IHdhbnQgdG8gc2hvdyBhIGxpZ2h0Ym94LCBidXQgb25seSBoYXZlIGEgc2luZ2xlIGltYWdlIGNvbWUgdGhyb3VnaCBhcyB0aGUgdGh1bWJuYWlsXHJcbiAgICAuY2xlYXJpbmctZmVhdHVyZSBsaSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICYuY2xlYXJpbmctZmVhdHVyZWQtaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIExhcmdlIHNjcmVlbiBvdmVycmlkZXNcclxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcclxuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldixcclxuICAgICAgLmNsZWFyaW5nLW1haW4tbmV4dCB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgIGJvcmRlcjogc29saWQgJGNsZWFyaW5nLWFycm93LXNpemU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAmOmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldiB7XHJcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiA1cHg7XHJcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tY29sb3I6ICRjbGVhcmluZy1hcnJvdy1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmNsZWFyaW5nLW1haW4tbmV4dCB7XHJcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcclxuICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogJGNsZWFyaW5nLWFycm93LWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldi5kaXNhYmxlZCxcclxuICAgICAgLmNsZWFyaW5nLW1haW4tbmV4dC5kaXNhYmxlZCB7IG9wYWNpdHk6IC4zOyB9XHJcblxyXG4gICAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIge1xyXG5cclxuICAgICAgICAuY2Fyb3VzZWwge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWNhcm91c2VsLWJnO1xyXG4gICAgICAgICAgaGVpZ2h0OiAkY2xlYXJpbmctY2Fyb3VzZWwtaGVpZ2h0O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcclxuICAgICAgICAgICAgICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XHJcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcclxuICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAkY2xlYXJpbmctY2Fyb3VzZWwtdGh1bWItd2lkdGg7XHJcblxyXG4gICAgICAgICAgICAgICYuZml4LWhlaWdodCB7XHJcbiAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIGEudGgge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgJi52aXNpYmxlIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgICAgICAgICAgICY6aG92ZXIgeyBvcGFjaXR5OiAuODsgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudmlzaWJsZS1pbWcge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWltZy1iZztcclxuICAgICAgICAgIGhlaWdodDogJGNsZWFyaW5nLWFjdGl2ZS1pbWctaGVpZ2h0O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jbGVhcmluZy1jbG9zZSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuQGltcG9ydCAnYnV0dG9ucyc7XHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcbiRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhc2UgZm9yIGxvdHMgb2YgZm9ybSBzcGFjaW5nIGFuZCBwb3NpdGlvbmluZyBzdHlsZXNcclxuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHMgaW4gZGlmZmVyZW50IHdheXNcclxuJGZvcm0tbGFiZWwtcG9pbnRlcjogcG9pbnRlciAhZGVmYXVsdDtcclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XHJcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS41ICFkZWZhdWx0O1xyXG4kZm9ybS1sYWJlbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkYmxhY2ssICRsaWdodG5lc3M6IDMwJSkgIWRlZmF1bHQ7XHJcbiRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhZGVmYXVsdDtcclxuJGZvcm0tbGFiZWwtYm90dG9tLW1hcmdpbjogMCAhZGVmYXVsdDtcclxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xyXG4kaW5wdXQtZm9udC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KSAhZGVmYXVsdDtcclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xyXG4kaW5wdXQtYmctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJGlucHV0LWZvY3VzLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yJSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTQwJSkgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcclxuJGlucHV0LWRpc2FibGVkLWJnOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xyXG4kaW5wdXQtZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWUgIWRlZmF1bHQ7XHJcbiRpbnB1dC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xyXG4kaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdDogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cclxuJGZpZWxkc2V0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XHJcbiRmaWVsZHNldC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcclxuJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxlZ2VuZHMgd2hlbiB5b3UgdXNlIHRoZW1cclxuJGxlZ2VuZC1iZzogJHdoaXRlICFkZWZhdWx0O1xyXG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcclxuJGlucHV0LXByZWZpeC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKSAhZGVmYXVsdDtcclxuJGlucHV0LXByZWZpeC1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZCAhZGVmYXVsdDtcclxuJGlucHV0LXByZWZpeC1vdmVyZmxvdzogdmlzaWJsZSAhZGVmYXVsdDtcclxuJGlucHV0LXByZWZpeC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xyXG4kaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyBzZXR0aW5nIHRvIHR1cm4gb24vb2ZmIEhUTUw1IG51bWJlciBzcGlubmVycyAodGhlIHVwL2Rvd24gYXJyb3dzKVxyXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBlcnJvciBzdGF0ZXMgZm9yIGlucHV0cyBhbmQgbGFiZWxzXHJcbiRpbnB1dC1lcnJvci1tZXNzYWdlLXBhZGRpbmc6IHJlbS1jYWxjKDYgOSA5KSAhZGVmYXVsdDtcclxuJGlucHV0LWVycm9yLW1lc3NhZ2UtdG9wOiAtMXB4ICFkZWZhdWx0O1xyXG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcclxuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcclxuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xyXG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1iZy1jb2xvcjogJGFsZXJ0LWNvbG9yICFkZWZhdWx0O1xyXG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yLWFsdDogJG9pbCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBnbG93aW5nIGVmZmVjdCBvZiBpbnB1dHMgd2hlbiBmb2N1c2VkXHJcbiRnbG93aW5nLWVmZmVjdC1mYWRlLXRpbWU6IC40NXMgIWRlZmF1bHQ7XHJcbiRnbG93aW5nLWVmZmVjdC1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcclxuXHJcbi8vIFNlbGVjdCB2YXJpYWJsZXNcclxuJHNlbGVjdC1iZy1jb2xvcjogJGdob3N0ICFkZWZhdWx0O1xyXG4kc2VsZWN0LWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkc2VsZWN0LWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpICFkZWZhdWx0O1xyXG5cclxuLy9cclxuLy8gQE1JWElOU1xyXG4vL1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gZ2l2ZSB1cyBmb3JtIHN0eWxlcyBmb3Igcm93cyBpbnNpZGUgb2YgZm9ybXNcclxuQG1peGluIGZvcm0tcm93LWJhc2Uge1xyXG4gIC5yb3cgeyBtYXJnaW46IDAgKCgtJGZvcm0tc3BhY2luZykgLyAyKTtcclxuXHJcbiAgICAuY29sdW1uLFxyXG4gICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwICgkZm9ybS1zcGFjaW5nIC8gMik7IH1cclxuXHJcbiAgICAvLyBVc2UgdGhpcyB0byBjb2xsYXBzZSB0aGUgbWFyZ2lucyBvZiBhIGZvcm0gcm93XHJcbiAgICAmLmNvbGxhcHNlIHsgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgLmNvbHVtbixcclxuICAgICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwOyB9XHJcbiAgICAgIGlucHV0IHtcclxuICAgICAgICBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcbiAgaW5wdXQuY29sdW1uLFxyXG4gIGlucHV0LmNvbHVtbnMsXHJcbiAgdGV4dGFyZWEuY29sdW1uLFxyXG4gIHRleHRhcmVhLmNvbHVtbnMgeyBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAoJGZvcm0tc3BhY2luZyAvIDIpOyB9XHJcbn1cclxuXHJcbi8vIEBNSVhJTlxyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnaXZlIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzIHRoZWlyIHN0eWxlXHJcbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZy1jb2xvcjtcclxuICBib3JkZXI6IHtcclxuICAgIHN0eWxlOiAkaW5wdXQtYm9yZGVyLXN0eWxlO1xyXG4gICAgd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XHJcbiAgICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcclxuICB9XHJcbiAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3c7XHJcbiAgY29sb3I6ICRpbnB1dC1mb250LWNvbG9yO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XHJcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xyXG4gIGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XHJcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xyXG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XHJcbiAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0IHtcclxuICAgIEBpbmNsdWRlIGJsb2NrLWdsb3dpbmctZWZmZWN0KGZvY3VzLCAkZ2xvd2luZy1lZmZlY3QtZmFkZS10aW1lLCAkZ2xvd2luZy1lZmZlY3QtY29sb3IpO1xyXG4gIH1cclxuICAvLyBCYXNpYyBmb2N1cyBzdHlsZXNcclxuICAmOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1mb2N1cy1iZy1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgfVxyXG4gIC8vIERpc2JhbGVkIFN0eWxlc1xyXG4gICY6ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xyXG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xyXG4gIH1cclxuXHJcbiAgLy8gRGlzYWJsZWQgYmFja2dyb3VuZCBpbnB1dCBiYWNrZ3JvdW5kIGNvbG9yXHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgJltyZWFkb25seV0sXHJcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xyXG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xyXG4gIH1cclxufVxyXG5cclxuLy8gQE1JWElOXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBmb3JtIGxhYmVsc1xyXG4vL1xyXG4vLyAkYWxpZ25tZW50IC0gQWxpZ25tZW50IG9wdGlvbnMuIERlZmF1bHQ6IGZhbHNlLiBPcHRpb25zOiBbcmlnaHQsIGlubGluZSwgZmFsc2VdXHJcbi8vICRiYXNlLXN0eWxlIC0gQ29udHJvbCB3aGV0aGVyIG9yIG5vdCB0aGUgYmFzZSBzdHlsZXMgY29tZSB0aHJvdWdoLiBEZWZhdWx0OiB0cnVlLlxyXG5AbWl4aW4gZm9ybS1sYWJlbCgkYWxpZ25tZW50OmZhbHNlLCAkYmFzZS1zdHlsZTp0cnVlKSB7XHJcblxyXG4gIC8vIENvbnRyb2wgd2hldGhlciBvciBub3QgdGhlIGJhc2Ugc3R5bGVzIGNvbWUgdGhyb3VnaC5cclxuICBAaWYgJGJhc2Utc3R5bGUge1xyXG4gICAgY29sb3I6ICRmb3JtLWxhYmVsLWZvbnQtY29sb3I7XHJcbiAgICBjdXJzb3I6ICRmb3JtLWxhYmVsLXBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtYm90dG9tLW1hcmdpbjtcclxuICB9XHJcblxyXG4gIC8vIEFsaWdubWVudCBvcHRpb25zXHJcbiAgQGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xyXG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH1cclxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGlubGluZSB7XHJcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nIDA7XHJcbiAgICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpIDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcG9zdGZpeC9wcmVmaXggZm9ybSBMYWJlbHNcclxuQG1peGluIHByZWZpeC1wb3N0Zml4LWJhc2Uge1xyXG4gIGJvcmRlci1zdHlsZTogJGlucHV0LXByZWZpeC1ib3JkZXItdHlwZTtcclxuICBib3JkZXItd2lkdGg6ICRpbnB1dC1wcmVmaXgtYm9yZGVyLXNpemU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XHJcbiAgaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcclxuICBsaW5lLWhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XHJcbiAgb3ZlcmZsb3c6ICRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c7XHJcbiAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4vLyBATUlYSU5cclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHByZWZpeCBsYWJlbCBzdHlsZXNcclxuLy8gJGJnIC0gRGVmYXVsdDokaW5wdXQtcHJlZml4LWJnIHx8IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcclxuLy8gJGlzLWJ1dHRvbiAtIFRvZ2dsZSBwb3NpdGlvbiBzZXR0aW5ncyBpZiBwcmVmaXggaXMgYSBidXR0b24uIERlZmF1bHQ6ZmFsc2VcclxuLy9cclxuQG1peGluIHByZWZpeCgkYmc6JGlucHV0LXByZWZpeC1iZywgJGJvcmRlcjokaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvciwgJGlzLWJ1dHRvbjpmYWxzZSkge1xyXG5cclxuICBAaWYgJGJnIHtcclxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xyXG4gICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IG5vbmU7XHJcblxyXG4gICAgLy8gQ29udHJvbCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiBiYWNrZ3JvdW5kIGJyaWdodG5lc3NcclxuICAgIEBpZiAkYmctbGlnaHRuZXNzID4gNzAlIG9yICRiZyA9PSB5ZWxsb3cgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yOyB9XHJcbiAgICBAZWxzZSB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OyB9XHJcbiAgfVxyXG5cclxuICBAaWYgJGJvcmRlciB7XHJcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XHJcbiAgfVxyXG5cclxuICBAaWYgJGlzLWJ1dHRvbiB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xyXG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcblxyXG59XHJcblxyXG4vLyBATUlYSU5cclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHBvc3RmaXggbGFiZWwgc3R5bGVzXHJcbi8vICRiZyAtIERlZmF1bHQ6JGlucHV0LXByZWZpeC1iZyB8fCBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XHJcbi8vICRpcy1idXR0b24gLSBUb2dnbGUgcG9zaXRpb24gc2V0dGluZ3MgaWYgcHJlZml4IGlzIGEgYnV0dG9uLiBEZWZhdWx0OiBmYWxzZVxyXG5AbWl4aW4gcG9zdGZpeCgkYmc6JGlucHV0LXByZWZpeC1iZywgJGJvcmRlcjokaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvciwgJGlzLWJ1dHRvbjpmYWxzZSkge1xyXG5cclxuICBAaWYgJGJnIHtcclxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xyXG4gICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiBub25lO1xyXG5cclxuICAgIC8vIENvbnRyb2wgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gYmFja2dyb3VuZCBicmlnaHRuZXNzXHJcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA+IDcwJSAgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3I7IH1cclxuICAgIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ7IH1cclxuICB9XHJcblxyXG4gIEBpZiAkYm9yZGVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcclxuICB9XHJcblxyXG4gIEBpZiAkaXMtYnV0dG9uIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHN0eWxlIGZpZWxkc2V0c1xyXG5AbWl4aW4gZmllbGRzZXQge1xyXG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlci13aWR0aCAkZmllbGRzZXQtYm9yZGVyLXN0eWxlICRmaWVsZHNldC1ib3JkZXItY29sb3I7XHJcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xyXG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xyXG5cclxuICAvLyBhbmQgbGVnZW5kIHN0eWxlc1xyXG4gIGxlZ2VuZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbGVnZW5kLWJnO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XHJcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKC0zKTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcclxuICB9XHJcbn1cclxuXHJcbi8vIEBNSVhJTlxyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjb250cm9sIGJvcmRlciBhbmQgYmFja2dyb3VuZCBjb2xvciBvZiBlcnJvciBpbnB1dHNcclxuLy8gJGNvbG9yIC0gRGVmYXVsdDogJGFsZXJ0LWNvbG9yIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxyXG5AbWl4aW4gZm9ybS1lcnJvci1jb2xvcigkY29sb3I6JGFsZXJ0LWNvbG9yKSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIC4xKTtcclxuICBib3JkZXItY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgLy8gR28gYmFjayB0byBub3JtYWwgb24gZm9jdXNcclxuICAmOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1mb2N1cy1iZy1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi8vIEBNSVhJTlxyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBzaW1wbGUgbWl4aW4gdG8gc3R5bGUgbGFiZWxzIGZvciBlcnJvciBpbnB1dHNcclxuLy8gJGNvbG9yIC0gRGVmYXVsdDokYWxlcnQtY29sb3IuIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcclxuQG1peGluIGZvcm0tbGFiZWwtZXJyb3ItY29sb3IoJGNvbG9yOiRhbGVydC1jb2xvcikgeyBjb2xvcjogJGNvbG9yOyB9XHJcblxyXG4vLyBATUlYSU5cclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGVycm9yIG1lc3NhZ2Ugc3R5bGVzXHJcbi8vICRiZyAtIERlZmF1bHQ6ICRhbGVydC1jb2xvciAoRm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcclxuQG1peGluIGZvcm0tZXJyb3ItbWVzc2FnZSgkYmc6JGlucHV0LWVycm9yLW1lc3NhZ2UtYmctY29sb3IpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc2l6ZTtcclxuICBmb250LXN0eWxlOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXN0eWxlO1xyXG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDtcclxuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xyXG4gIG1hcmdpbi10b3A6ICRpbnB1dC1lcnJvci1tZXNzYWdlLXRvcDtcclxuICBwYWRkaW5nOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1wYWRkaW5nO1xyXG5cclxuICAvLyBXZSBjYW4gY29udHJvbCB0aGUgdGV4dCBjb2xvciBiYXNlZCBvbiB0aGUgYnJpZ2h0bmVzcyBvZiB0aGUgYmFja2dyb3VuZC5cclxuICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcclxuICBiYWNrZ3JvdW5kOiAkYmc7XHJcbiAgQGlmICRiZy1saWdodG5lc3MgPCA3MCUgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOyB9XHJcbiAgQGVsc2UgeyBjb2xvcjogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvci1hbHQ7IH1cclxufVxyXG5cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgc2VsZWN0IGVsZW1lbnRzXHJcbkBtaXhpbiBmb3JtLXNlbGVjdCAge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmctY29sb3I7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuXHJcbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcclxuICAmOjotbXMtZXhwYW5kIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAvLyBUaGUgY3VzdG9tIGFycm93IGhhcyBzb21lIGZha2UgaG9yaXpvbnRhbCBwYWRkaW5nIHNvIHdlIGNhbiBhbGlnbiBpdFxyXG4gIC8vIGZyb20gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIGVsZW1lbnQgd2l0aG91dCByZWx5aW5nIG9uIENTUzNcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRDBpTVRKd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU1qUndlQ0lnYUdWcFoyaDBQU0l6Y0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0EySURNaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lEWWdNeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BIQnZiSGxuYjI0Z2NHOXBiblJ6UFNJMUxqazVNaXd3SURJdU9Ua3lMRE1nTFRBdU1EQTRMREFnSWk4K1BDOXpkbWMrKTtcclxuXHJcbiAgLy8gV2UgY2FuIHNhZmVseSB1c2UgbGVmdG1vc3QgYW5kIHJpZ2h0bW9zdCBub3dcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcsIDAlLCAxMDAlKSBjZW50ZXI7XHJcblxyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYm9yZGVyOiB7XHJcbiAgICBzdHlsZTogJGlucHV0LWJvcmRlci1zdHlsZTtcclxuICAgIHdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xyXG4gICAgY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG4gIGNvbG9yOiAkaW5wdXQtZm9udC1jb2xvcjtcclxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMik7XHJcbiAgQGluY2x1ZGUgcmFkaXVzKDApO1xyXG4gICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRnbG9iYWwtcmFkaXVzKTsgfVxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1ob3Zlci1iZy1jb2xvcjtcclxuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcclxuICB9XHJcbiAgLy8gRGlzYWJsZWQgU3R5bGVzXHJcbiAgJjpkaXNhYmxlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XHJcbiAgICBjdXJzb3I6ICRpbnB1dC1kaXNhYmxlZC1jdXJzb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byB0dXJuIG9uL29mZiBIVE1MNSBudW1iZXIgc3Bpbm5lcnNcclxuQG1peGluIGh0bWw1bnVtYmVyKCRicm93c2VyLCAkb246dHJ1ZSkge1xyXG4gIEBpZiAkb249PWZhbHNlIHtcclxuICAgICAgQGlmICRicm93c2VyPT13ZWJraXQge1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH0gQGVsc2UgaWYgJGJyb3dzZXI9PW1veiB7XHJcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XHJcbiAgICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJmb3JtXCIpIHtcclxuICBAaWYgJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXMge1xyXG4gICAgLyogU3RhbmRhcmQgRm9ybXMgKi9cclxuICAgIGZvcm0geyBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nOyB9XHJcblxyXG4gICAgLyogVXNpbmcgZm9ybXMgd2l0aGluIHJvd3MsIHdlIG5lZWQgdG8gc2V0IHNvbWUgZGVmYXVsdHMgKi9cclxuICAgIGZvcm0gLnJvdyB7IEBpbmNsdWRlIGZvcm0tcm93LWJhc2U7IH1cclxuXHJcbiAgICAvKiBMYWJlbCBTdHlsZXMgKi9cclxuICAgIGxhYmVsIHsgQGluY2x1ZGUgZm9ybS1sYWJlbDtcclxuICAgICAgJi5yaWdodCB7IEBpbmNsdWRlIGZvcm0tbGFiZWwocmlnaHQsIGZhbHNlKTsgfVxyXG4gICAgICAmLmlubGluZSB7IEBpbmNsdWRlIGZvcm0tbGFiZWwoaW5saW5lLCBmYWxzZSk7IH1cclxuICAgICAgLyogU3R5bGVzIGZvciByZXF1aXJlZCBpbnB1dHMgKi9cclxuICAgICAgc21hbGwge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm07XHJcbiAgICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRmb3JtLWxhYmVsLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDE1JSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBBdHRhY2ggZWxlbWVudHMgdG8gdGhlIGJlZ2lubmluZyBvciBlbmQgb2YgYW4gaW5wdXQgKi9cclxuICAgIC5wcmVmaXgsXHJcbiAgICAucG9zdGZpeCB7IEBpbmNsdWRlIHByZWZpeC1wb3N0Zml4LWJhc2U7IH1cclxuXHJcbiAgICAvKiBBZGp1c3QgcGFkZGluZywgYWxpZ25tZW50IGFuZCByYWRpdXMgaWYgcHJlL3Bvc3QgZWxlbWVudCBpcyBhIGJ1dHRvbiAqL1xyXG4gICAgLnBvc3RmaXguYnV0dG9uIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoZmFsc2UsIGZhbHNlKTsgQGluY2x1ZGUgcG9zdGZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XHJcbiAgICAucHJlZml4LmJ1dHRvbiB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKGZhbHNlLCBmYWxzZSk7IEBpbmNsdWRlIHByZWZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XHJcblxyXG4gICAgLnByZWZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XHJcbiAgICAucG9zdGZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cclxuICAgIC5wcmVmaXguYnV0dG9uLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yb3VuZCk7IH1cclxuICAgIC5wb3N0Zml4LmJ1dHRvbi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yb3VuZCk7IH1cclxuXHJcbiAgICAvKiBTZXBhcmF0ZSBwcmVmaXggYW5kIHBvc3RmaXggc3R5bGVzIHdoZW4gb24gc3BhbiBvciBsYWJlbCBzbyBidXR0b25zIGtlZXAgdGhlaXIgb3duICovXHJcbiAgICBzcGFuLnByZWZpeCwgbGFiZWwucHJlZml4IHsgQGluY2x1ZGUgcHJlZml4KCk7IH1cclxuICAgIHNwYW4ucG9zdGZpeCwgbGFiZWwucG9zdGZpeCB7IEBpbmNsdWRlIHBvc3RmaXgoKTsgfVxyXG5cclxuICAgIC8qIFdlIHVzZSB0aGlzIHRvIGdldCBiYXNpYyBzdHlsaW5nIG9uIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzICovXHJcbiAgICAje3RleHQtaW5wdXRzKGFsbCwgJ2lucHV0Jyl9IHtcclxuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcclxuICAgICAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0ID09IGZhbHNlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGxpbmVhciwgYmFja2dyb3VuZCAwLjE1cyBsaW5lYXI7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xyXG4gICAgICB9XHJcbiAgICAgICYucmFkaXVzIHtcclxuICAgICAgICBAaW5jbHVkZSByYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIC5yb3cge1xyXG4gICAgICAgIC5wcmVmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSB7XHJcbiAgICAgICAgICBpbnB1dCxcclxuICAgICAgICAgIHRleHRhcmVhLFxyXG4gICAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cclxuICAgICAgICAgIC5wcmVmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJhZGl1cyk7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBvc3RmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSB7XHJcbiAgICAgICAgICBpbnB1dCxcclxuICAgICAgICAgIHRleHRhcmVhLFxyXG4gICAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XHJcbiAgICAgICAgICAucG9zdGZpeCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yYWRpdXMpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wcmVmaXgtcm91bmQucm93LmNvbGxhcHNlIHtcclxuICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgICAgdGV4dGFyZWEsXHJcbiAgICAgICAgICBzZWxlY3QsXHJcbiAgICAgICAgICBidXR0b24geyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRidXR0b24tcm91bmQpOyB9XHJcbiAgICAgICAgICAucHJlZml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yb3VuZCk7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBvc3RmaXgtcm91bmQucm93LmNvbGxhcHNlIHtcclxuICAgICAgICAgIGlucHV0LFxyXG4gICAgICAgICAgdGV4dGFyZWEsXHJcbiAgICAgICAgICBzZWxlY3QsXHJcbiAgICAgICAgICBidXR0b24geyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJvdW5kKTsgfVxyXG4gICAgICAgICAgLnBvc3RmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRidXR0b24tcm91bmQpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFJlc3BlY3QgZW5mb3JjZWQgYW1vdW50IG9mIHJvd3MgZm9yIHRleHRhcmVhICovXHJcbiAgICB0ZXh0YXJlYVtyb3dzXSB7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcblx0LyogTm90IGFsbG93IHJlc2l6ZSBvdXQgb2YgcGFyZW50ICovXHJcblx0dGV4dGFyZWEge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcbiAgICAvKiBBZGQgaGVpZ2h0IHZhbHVlIGZvciBzZWxlY3QgZWxlbWVudHMgdG8gbWF0Y2ggdGV4dCBpbnB1dCBoZWlnaHQgKi9cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xyXG4gICAgICBoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xyXG4gICAgICAmW211bHRpcGxlXSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogQWRqdXN0IG1hcmdpbiBmb3IgZm9ybSBlbGVtZW50cyBiZWxvdyAqL1xyXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nIDA7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkZm9ybS1zcGFjaW5nICogLjU7XHJcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZm9ybS1zcGFjaW5nO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLyogTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGggKi9cclxuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcclxuICAgICAgd2lkdGg6MTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBIVE1MNSBOdW1iZXIgc3Bpbm5lcnMgc2V0dGluZ3MgKi9cclxuICAgIGlucHV0W3R5cGU9bnVtYmVyXSB7XHJcbiAgICAgIEBpbmNsdWRlIGh0bWw1bnVtYmVyKG1veiwgJGlucHV0LW51bWJlci1zcGlubmVycylcclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICAgICAgQGluY2x1ZGUgaHRtbDVudW1iZXIod2Via2l0LCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBXZSBhZGQgYmFzaWMgZmllbGRzZXQgc3R5bGluZyAqL1xyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICBAaW5jbHVkZSBmaWVsZHNldDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBFcnJvciBIYW5kbGluZyAqL1xyXG5cclxuICAgICN7ZGF0YSgnYWJpZGUnKX0ge1xyXG4gICAgICAuZXJyb3Igc21hbGwuZXJyb3IsIC5lcnJvciBzcGFuLmVycm9yLCBzcGFuLmVycm9yLCBzbWFsbC5lcnJvciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xyXG4gICAgICB9XHJcbiAgICAgIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgfVxyXG5cclxuICAgIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHtcclxuICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIC5lcnJvciB7XHJcbiAgICAgIGlucHV0LFxyXG4gICAgICB0ZXh0YXJlYSxcclxuICAgICAgc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbiAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZ1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsYWJlbCxcclxuICAgICAgbGFiZWwuZXJyb3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtZXJyb3ItY29sb3I7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNtYWxsLmVycm9yIHtcclxuICAgICAgICBAaW5jbHVkZSBmb3JtLWVycm9yLW1lc3NhZ2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gbGFiZWwge1xyXG4gICAgICAgID4gc21hbGwge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogNjAlO1xyXG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzcGFuLmVycm9yLW1lc3NhZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQuZXJyb3IsXHJcbiAgICB0ZXh0YXJlYS5lcnJvcixcclxuICAgIHNlbGVjdC5lcnJvciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICBsYWJlbC5lcnJvciB7IEBpbmNsdWRlIGZvcm0tbGFiZWwtZXJyb3ItY29sb3I7IH1cclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG5AaW1wb3J0ICdnbG9iYWwnO1xyXG5cclxuLy9cclxuLy8gQHZhcmlhYmxlc1xyXG4vL1xyXG4kaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucy5cclxuJGJ1dHRvbi10bnk6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1zbWw6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1tZWQ6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1scmc6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRpc3BsYXkgcHJvcGVydHkuXHJcbiRidXR0b24tZGlzcGxheTogaW5saW5lLWJsb2NrICFkZWZhdWx0O1xyXG4kYnV0dG9uLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiB0ZXh0IHN0eWxlcy5cclxuJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcbiRidXR0b24tZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xyXG4kYnV0dG9uLWZvbnQtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xyXG4kYnV0dG9uLWZvbnQtdG55OiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XHJcbiRidXR0b24tZm9udC1zbWw6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcclxuJGJ1dHRvbi1mb250LW1lZDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG4kYnV0dG9uLWZvbnQtbHJnOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XHJcbiRidXR0b24tZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiRidXR0b24tZm9udC1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBob3ZlciBlZmZlY3RzLlxyXG4kYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogLTIwJSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiBib3JkZXIgc3R5bGVzLlxyXG4kYnV0dG9uLWJvcmRlci13aWR0aDogMCAhZGVmYXVsdDtcclxuJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJGJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xyXG4kYnV0dG9uLWJvcmRlci1jb2xvcjogJGJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcclxuJHNlY29uZGFyeS1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcclxuJHNlY29uZGFyeS1idXR0b24tYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcclxuJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xyXG4kc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yOiAkc3VjY2Vzcy1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XHJcbiRhbGVydC1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRhbGVydC1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xyXG4kYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcjogJGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcclxuJHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkd2FybmluZy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xyXG4kd2FybmluZy1idXR0b24tYm9yZGVyLWNvbG9yOiAkd2FybmluZy1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XHJcbiRpbmZvLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGluZm8tY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcclxuJGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcjogJGluZm8tYnV0dG9uLWJnLWhvdmVyICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXHJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcclxuJGJ1dHRvbi1yb3VuZDogJGdsb2JhbC1yb3VuZGVkICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBidXR0b25zLlxyXG4kYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk6IC43ICFkZWZhdWx0O1xyXG4kYnV0dG9uLWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vXHJcbi8vIEBNSVhJTlxyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IGJ1dHRvbiBiYXNlLlxyXG4vL1xyXG4vLyAkc3R5bGUgLSBTZXRzIGJhc2Ugc3R5bGVzLiBDYW4gYmUgc2V0IHRvIGZhbHNlLiBEZWZhdWx0OiB0cnVlLlxyXG4vLyAkZGlzcGxheSAtIFVzZWQgdG8gY29udHJvbCBkaXNwbGF5IHByb3BlcnR5LiBEZWZhdWx0OiAkYnV0dG9uLWRpc3BsYXkgfHwgaW5saW5lLWJsb2NrXHJcblxyXG5AbWl4aW4gYnV0dG9uLWJhc2UoJHN0eWxlOnRydWUsICRkaXNwbGF5OiRidXR0b24tZGlzcGxheSkge1xyXG4gIEBpZiAkc3R5bGUge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czowO1xyXG4gICAgYm9yZGVyLXN0eWxlOiAkYnV0dG9uLWJvcmRlci1zdHlsZTtcclxuICAgIGJvcmRlci13aWR0aDogJGJ1dHRvbi1ib3JkZXItd2lkdGg7XHJcbiAgICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xyXG4gICAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgbWFyZ2luOiAwIDAgJGJ1dHRvbi1tYXJnaW4tYm90dG9tO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogJGJ1dHRvbi1mb250LWFsaWduO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICBAaWYgJGRpc3BsYXkgeyBkaXNwbGF5OiAkZGlzcGxheTsgfVxyXG59XHJcblxyXG4vLyBATUlYSU5cclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGJ1dHRvbiBzaXplIHN0eWxlc1xyXG4vL1xyXG4vLyAkcGFkZGluZyAtIFVzZWQgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucyBEZWZhdWx0OiAkYnV0dG9uLW1lZCB8fD0gcmVtLWNhbGMoMTIpXHJcbi8vICRmdWxsLXdpZHRoIC0gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoIC0gRGVmYXVsdDogZmFsc2VcclxuXHJcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLW1lZCwgJGZ1bGwtd2lkdGg6ZmFsc2UpIHtcclxuXHJcbiAgLy8gV2UgY29udHJvbCB3aGljaCBwYWRkaW5nIHN0eWxlcyBjb21lIHRocm91Z2gsXHJcbiAgLy8gdGhlc2UgY2FuIGJlIHR1cm5lZCBvZmYgYnkgc2V0dGluZyAkcGFkZGluZzpmYWxzZVxyXG4gIEBpZiAkcGFkZGluZyB7XHJcbiAgICBwYWRkaW5nOiAkcGFkZGluZyAoJHBhZGRpbmcgKiAyKSAoJHBhZGRpbmcgKyByZW0tY2FsYygxKSkgKCRwYWRkaW5nICogMik7XHJcbiAgICAvLyBXZSBjb250cm9sIHRoZSBmb250LXNpemUgYmFzZWQgb24gbWl4aW4gaW5wdXQuXHJcbiAgICBAaWYgICAgICAkcGFkZGluZyA9PSAkYnV0dG9uLW1lZCB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LW1lZDsgfVxyXG4gICAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gJGJ1dHRvbi10bnkgeyBmb250LXNpemU6ICRidXR0b24tZm9udC10bnk7IH1cclxuICAgIEBlbHNlIGlmICRwYWRkaW5nID09ICRidXR0b24tc21sIHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc21sOyB9XHJcbiAgICBAZWxzZSBpZiAkcGFkZGluZyA9PSAkYnV0dG9uLWxyZyB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LWxyZzsgfVxyXG4gIH1cclxuXHJcbiAgLy8gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoLlxyXG4gIEBpZiAkZnVsbC13aWR0aCB7XHJcbiAgICAvLyBXZSBzdGlsbCBuZWVkIHRvIGNoZWNrIGlmICRwYWRkaW5nIGlzIHNldC5cclxuICAgIEBpZiAkcGFkZGluZyB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZyArIHJlbS1jYWxjKDEpO1xyXG4gICAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XHJcbiAgICB9IEBlbHNlIGlmICRwYWRkaW5nID09IGZhbHNlIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206MDtcclxuICAgICAgcGFkZGluZy10b3A6MDtcclxuICAgIH1cclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEBNSVhJTlxyXG4vL1xyXG4vLyB3ZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIGJ1dHRvbiBob3ZlciBhbmQgYm9yZGVyIGNvbG9yc1xyXG5cclxuLy8gQE1JWElOXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBidXR0b24gY29sb3Igc3R5bGVzXHJcbi8vXHJcbi8vICRiZyAtIEJhY2tncm91bmQgY29sb3IuIFdlIGNhbiBzZXQgJGJnOmZhbHNlIGZvciBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQuIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yLlxyXG4vLyAkcmFkaXVzIC0gSWYgdHJ1ZSwgc2V0IHRvIGJ1dHRvbiByYWRpdXMgd2hpY2ggaXMgJGJ1dHRvbi1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6IGZhbHNlXHJcbi8vICRkaXNhYmxlZCAtIFdlIGNhbiBzZXQgJGRpc2FibGVkOnRydWUgdG8gY3JlYXRlIGEgZGlzYWJsZWQgdHJhbnNwYXJlbnQgYnV0dG9uLiBEZWZhdWx0OiBmYWxzZVxyXG4vLyAkYmctaG92ZXIgLSBCdXR0b24gSG92ZXIgQmFja2dyb3VuZCBDb2xvci4gRGVmYXVsdDogJGJ1dHRvbi1iZy1ob3ZlclxyXG4vLyAkYm9yZGVyLWNvbG9yIC0gQnV0dG9uIEJvcmRlciBDb2xvci4gRGVmYXVsdDogJGJ1dHRvbi1ib3JkZXItY29sb3JcclxuQG1peGluIGJ1dHRvbi1zdHlsZSgkYmc6JGJ1dHRvbi1iZy1jb2xvciwgJHJhZGl1czpmYWxzZSwgJGRpc2FibGVkOmZhbHNlLCAkYmctaG92ZXI6bnVsbCwgJGJvcmRlci1jb2xvcjpudWxsKSB7XHJcblxyXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBzdHlsZXMgYXJlIHVzZWQsXHJcbiAgLy8gdGhlc2UgY2FuIGJlIHJlbW92ZWQgYnkgc2V0dGluZyAkYmc6ZmFsc2VcclxuICBAaWYgJGJnIHtcclxuXHJcbiAgICBAaWYgJGJnLWhvdmVyID09IG51bGwge1xyXG4gICAgICAkYmctaG92ZXI6IGlmKCRiZyA9PSAkYnV0dG9uLWJnLWNvbG9yLCAkYnV0dG9uLWJnLWhvdmVyLCBzY2FsZS1jb2xvcigkYmcsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRib3JkZXItY29sb3IgPT0gbnVsbCB7XHJcbiAgICAgICRib3JkZXItY29sb3I6IGlmKCRiZyA9PSAkYnV0dG9uLWJnLWNvbG9yLCAkYnV0dG9uLWJvcmRlci1jb2xvciwgc2NhbGUtY29sb3IoJGJnLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoaXMgZmluZCB0aGUgbGlnaHRuZXNzIHBlcmNlbnRhZ2Ugb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXHJcbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcclxuICAgICRiZy1ob3Zlci1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmctaG92ZXIpO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcclxuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogJGJnLWhvdmVyOyB9XHJcblxyXG4gICAgLy8gV2UgY29udHJvbCB0aGUgdGV4dCBjb2xvciBmb3IgeW91IGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxyXG4gICAgY29sb3I6IGlmKCRiZy1saWdodG5lc3MgPiA3MCUsICRidXR0b24tZm9udC1jb2xvci1hbHQsICRidXR0b24tZm9udC1jb2xvcik7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogaWYoJGJnLWhvdmVyLWxpZ2h0bmVzcyA+IDcwJSwgJGJ1dHRvbi1mb250LWNvbG9yLWFsdCwgJGJ1dHRvbi1mb250LWNvbG9yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFdlIGNhbiBzZXQgJGRpc2FibGVkOnRydWUgdG8gY3JlYXRlIGEgZGlzYWJsZWQgdHJhbnNwYXJlbnQgYnV0dG9uLlxyXG4gIEBpZiAkZGlzYWJsZWQge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGN1cnNvcjogJGJ1dHRvbi1kaXNhYmxlZC1jdXJzb3I7XHJcbiAgICBvcGFjaXR5OiAkYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRiZzsgfVxyXG4gIH1cclxuXHJcbiAgLy8gV2UgY2FuIGNvbnRyb2wgaG93IG11Y2ggYnV0dG9uIHJhZGl1cyBpcyB1c2VkLlxyXG4gIEBpZiAkcmFkaXVzID09IHRydWUgeyBAaW5jbHVkZSByYWRpdXMoJGJ1dHRvbi1yYWRpdXMpOyB9XHJcbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxyXG5cclxufVxyXG5cclxuLy8gQE1JWElOXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHF1aWNrbHkgY3JlYXRlIGJ1dHRvbnMgd2l0aCBhIHNpbmdsZSBtaXhpbi4gQXMgQGphcmVkaGFyZHkgcHV0cyBpdCwgXCJ0aGUga2l0Y2hlbiBzaW5rIG1peGluXCJcclxuLy9cclxuLy8gJHBhZGRpbmcgLSBVc2VkIHRvIGJ1aWxkIHBhZGRpbmcgZm9yIGJ1dHRvbnMgRGVmYXVsdDogJGJ1dHRvbi1tZWQgfHw9IHJlbS1jYWxjKDEyKVxyXG4vLyAkYmcgLSBQcmltYXJ5IGNvbG9yIHNldCBpbiBzZXR0aW5ncyBmaWxlLiBEZWZhdWx0OiAkYnV0dG9uLWJnLlxyXG4vLyAkcmFkaXVzIC0gSWYgdHJ1ZSwgc2V0IHRvIGJ1dHRvbiByYWRpdXMgd2hpY2ggaXMgJGdsb2JhbC1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6ZmFsc2UuXHJcbi8vICRmdWxsLXdpZHRoIC0gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoLiBEZWZhdWx0OmZhbHNlLlxyXG4vLyAkZGlzYWJsZWQgLSBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi4gRGVmYXVsdDpmYWxzZS5cclxuLy8gJGlzLXByZWZpeCAtIE5vdCB1c2VkPyBEZWZhdWx0OmZhbHNlLlxyXG4vLyAkYmctaG92ZXIgLSBCdXR0b24gSG92ZXIgQ29sb3IgLSBEZWZhdWx0IG51bGwgLSBzZWUgYnV0dG9uLXN0eWxlIG1peGluXHJcbi8vICRib3JkZXItY29sb3IgLSBCdXR0b24gQm9yZGVyIENvbG9yIC0gRGVmYXVsdCBudWxsIC0gc2VlIGJ1dHRvbi1zdHlsZSBtaXhpblxyXG4vLyAkdHJhbnNpdGlvbiAtIFdlIGNhbiBjb250cm9sIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGJhY2tncm91bmQtY29sb3IgdHJhbnNpdGlvbiBwcm9wZXJ0eSAtIERlZmF1bHQ6dHJ1ZS5cclxuQG1peGluIGJ1dHRvbigkcGFkZGluZzokYnV0dG9uLW1lZCwgJGJnOiRidXR0b24tYmctY29sb3IsICRyYWRpdXM6ZmFsc2UsICRmdWxsLXdpZHRoOmZhbHNlLCAkZGlzYWJsZWQ6ZmFsc2UsICRpcy1wcmVmaXg6ZmFsc2UsICRiZy1ob3ZlcjpudWxsLCAkYm9yZGVyLWNvbG9yOm51bGwsICR0cmFuc2l0aW9uOiB0cnVlKSB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcsICRmdWxsLXdpZHRoKTtcclxuICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnLCAkcmFkaXVzLCAkZGlzYWJsZWQsICRiZy1ob3ZlciwgJGJvcmRlci1jb2xvcik7XHJcblxyXG4gIEBpZiAkdHJhbnNpdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yKTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwiYnV0dG9uXCIpIHtcclxuICBAaWYgJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlcyB7XHJcblxyXG4gICAgLy8gRGVmYXVsdCBzdHlsZXMgYXBwbGllZCBvdXRzaWRlIG9mIG1lZGlhIHF1ZXJ5XHJcbiAgICBidXR0b24sIC5idXR0b24ge1xyXG4gICAgICBAaW5jbHVkZSBidXR0b24tYmFzZTtcclxuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemU7XHJcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xyXG5cclxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktY29sb3IsICRiZy1ob3Zlcjokc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XHJcbiAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc3VjY2Vzcy1jb2xvciwgJGJnLWhvdmVyOiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxyXG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGFsZXJ0LWNvbG9yLCAkYmctaG92ZXI6JGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cclxuICAgICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiR3YXJuaW5nLWNvbG9yLCAkYmctaG92ZXI6JHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XHJcbiAgICAgICYuaW5mbyAgICAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvciwgJGJnLWhvdmVyOiRpbmZvLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokaW5mby1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxyXG5cclxuICAgICAgJi5sYXJnZSAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLWxyZyk7IH1cclxuICAgICAgJi5zbWFsbCAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLXNtbCk7IH1cclxuICAgICAgJi50aW55ICAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLXRueSk7IH1cclxuICAgICAgJi5leHBhbmQgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzpudWxsLCAkZnVsbC13aWR0aDp0cnVlKTsgfVxyXG5cclxuICAgICAgJi5sZWZ0LWFsaWduICB7IHRleHQtYWxpZ246IGxlZnQ7IHRleHQtaW5kZW50OiByZW0tY2FsYygxMik7IH1cclxuICAgICAgJi5yaWdodC1hbGlnbiB7IHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMik7IH1cclxuXHJcbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzpmYWxzZSwgJHJhZGl1czp0cnVlKTsgfVxyXG4gICAgICAmLnJvdW5kICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6ZmFsc2UsICRyYWRpdXM6JGJ1dHRvbi1yb3VuZCk7IH1cclxuXHJcbiAgICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYnV0dG9uLWJnLWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRidXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGJ1dHRvbi1ib3JkZXItY29sb3IpO1xyXG4gICAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cclxuICAgICAgICAmLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxyXG4gICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3ZlcjokYWxlcnQtYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRhbGVydC1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxyXG4gICAgICAgICYud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XHJcbiAgICAgICAgJi5pbmZvIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3ZlcjokaW5mby1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vZmlyZWZveCAycHggZml4XHJcbiAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge2JvcmRlcjowOyBwYWRkaW5nOjA7fVxyXG5cclxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcclxuICAgICAgYnV0dG9uLCAuYnV0dG9uIHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b24tYmFzZSgkc3R5bGU6ZmFsc2UsICRkaXNwbGF5OmlubGluZS1ibG9jayk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6ZmFsc2UsICRmdWxsLXdpZHRoOmZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcbiRpbmNsdWRlLWh0bWwtaW5saW5lLWxpc3QtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXHJcbiRpbmxpbmUtbGlzdC10b3AtbWFyZ2luOiAwICFkZWZhdWx0O1xyXG4kaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luOiAwICFkZWZhdWx0O1xyXG4kaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpICFkZWZhdWx0O1xyXG4kaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW46IHJlbS1jYWxjKC0yMikgIWRlZmF1bHQ7XHJcbiRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LWxpc3QtbWFyZ2luOiByZW0tY2FsYygyMikgIWRlZmF1bHQ7XHJcblxyXG4kaW5saW5lLWxpc3QtcGFkZGluZzogMCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cclxuJGlubGluZS1saXN0LW92ZXJmbG93OiBoaWRkZW4gIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXHJcbiRpbmxpbmUtbGlzdC1kaXNwbGF5OiBibG9jayAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXHJcbiRpbmxpbmUtbGlzdC1jaGlsZHJlbi1kaXNwbGF5OiBibG9jayAhZGVmYXVsdDtcclxuXHJcbi8vXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGlubGluZSBsaXN0c1xyXG5AbWl4aW4gaW5saW5lLWxpc3Qge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW47XHJcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW47XHJcbiAgbWFyZ2luOiAkaW5saW5lLWxpc3QtdG9wLW1hcmdpbiBhdXRvICRpbmxpbmUtbGlzdC1ib3R0b20tbWFyZ2luIGF1dG87XHJcbiAgb3ZlcmZsb3c6ICRpbmxpbmUtbGlzdC1vdmVyZmxvdztcclxuICBwYWRkaW5nOiAkaW5saW5lLWxpc3QtcGFkZGluZztcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBkaXNwbGF5OiAkaW5saW5lLWxpc3QtZGlzcGxheTtcclxuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LWxpc3QtbWFyZ2luO1xyXG4gICAgPiAqIHsgZGlzcGxheTogJGlubGluZS1saXN0LWNoaWxkcmVuLWRpc3BsYXk7IH1cclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJpbmxpbmUtbGlzdFwiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtaW5saW5lLWxpc3QtY2xhc3NlcyB7XHJcbiAgICAuaW5saW5lLWxpc3Qge1xyXG4gICAgICBAaW5jbHVkZSBpbmxpbmUtbGlzdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcbiRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHNcclxuJGxhYmVsLXBhZGRpbmc6IHJlbS1jYWxjKDQgOCA0KSAhZGVmYXVsdDtcclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsIHRleHRcclxuJGxhYmVsLWZvbnQtc2l6aW5nOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XHJcbiRsYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJGxhYmVsLWZvbnQtY29sb3I6ICRvaWwgIWRlZmF1bHQ7XHJcbiRsYWJlbC1mb250LWNvbG9yLWFsdDogJHdoaXRlICFkZWZhdWx0O1xyXG4kbGFiZWwtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG5cclxuLy9cclxuLy8gQG1peGluc1xyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IGxhYmVsIGJhc2UuXHJcbkBtaXhpbiBsYWJlbC1iYXNlIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1mYW1pbHk6ICRsYWJlbC1mb250LWZhbWlseTtcclxuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIG1hcmdpbi1ib3R0b206IGF1dG87XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLy8gQG1peGluc1xyXG4vL1xyXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgbGFiZWwgc2l6ZSBzdHlsZXMuXHJcbi8vICRwYWRkaW5nIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgcGFkZGluZy4gRGVmYXVsdDogJGxhYmVsLXBhZGRpbmcgfHwgcmVtLWNhbGMoNCA4IDQpICFkZWZhdWx0XHJcbi8vICR0ZXh0LXNpemUgLSBVc2VkIHRvIGRldGVybWluZSBsYWJlbCB0ZXh0LXNpemUuIERlZmF1bHQ6ICR0ZXh0LXNpemUgZm91bmQgaW4gc2V0dGluZ3NcclxuQG1peGluIGxhYmVsLXNpemUoJHBhZGRpbmc6JGxhYmVsLXBhZGRpbmcsICR0ZXh0LXNpemU6JGxhYmVsLWZvbnQtc2l6aW5nKSB7XHJcbiAgQGlmICRwYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cclxuICBAaWYgJHRleHQtc2l6ZSB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZTsgfVxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzdHlsZXMuXHJcbi8vICRiZyAtIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxyXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWUsIHNldHMgcmFkaXVzIHRvICRnbG9iYWwtcmFkaXVzIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxyXG5AbWl4aW4gbGFiZWwtc3R5bGUoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XHJcblxyXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBjb2xvciBjb21lcyB0aHJvdWdoXHJcbiAgQGlmICRiZyB7XHJcblxyXG4gICAgLy8gVGhpcyBmaW5kIHRoZSBsaWdodG5lc3MgcGVyY2VudGFnZSBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cclxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcclxuXHJcbiAgICAvLyBXZSBjb250cm9sIHRoZSB0ZXh0IGNvbG9yIGZvciB5b3UgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXHJcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA8IDcwJSB7IGNvbG9yOiAkbGFiZWwtZm9udC1jb2xvci1hbHQ7IH1cclxuICAgIEBlbHNlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yOyB9XHJcbiAgfVxyXG5cclxuICAvLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSByYWRpdXMgb24gbGFiZWxzLlxyXG4gIEBpZiAkcmFkaXVzID09IHRydWUgeyBAaW5jbHVkZSByYWRpdXMoJGxhYmVsLXJhZGl1cyk7IH1cclxuICBAZWxzZSBpZiAkcmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRyYWRpdXMpOyB9XHJcblxyXG59XHJcblxyXG4vLyBAbWl4aW5zXHJcbi8vXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBjbG9zZSBidXR0b25zIHRvIGFsZXJ0c1xyXG4vLyAkcGFkZGluZyAtIERlZmF1bHQ6ICRsYWJlbC1wYWRkaW5nLFxyXG4vLyAkdGV4dC1zaXplIC0gRGVmYXVsdDogJGxhYmVsLWZvbnQtc2l6aW5nLFxyXG4vLyAkYmcgLSBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvcihmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxyXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWUgd2hpY2ggc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXHJcbkBtaXhpbiBsYWJlbCgkcGFkZGluZzokbGFiZWwtcGFkZGluZywgJHRleHQtc2l6ZTokbGFiZWwtZm9udC1zaXppbmcsICRiZzokcHJpbWFyeS1jb2xvciwgJHJhZGl1czpmYWxzZSkge1xyXG5cclxuICBAaW5jbHVkZSBsYWJlbC1iYXNlO1xyXG4gIEBpbmNsdWRlIGxhYmVsLXNpemUoJHBhZGRpbmcsICR0ZXh0LXNpemUpO1xyXG4gIEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRiZywgJHJhZGl1cyk7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJsYWJlbFwiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlcyB7XHJcbiAgICAubGFiZWwge1xyXG4gICAgICBAaW5jbHVkZSBsYWJlbC1iYXNlO1xyXG4gICAgICBAaW5jbHVkZSBsYWJlbC1zaXplO1xyXG4gICAgICBAaW5jbHVkZSBsYWJlbC1zdHlsZTtcclxuXHJcbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsIHRydWUpOyB9XHJcbiAgICAgICYucm91bmQgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZShmYWxzZSwgJHJhZGl1czoxMDAwcHgpOyB9XHJcblxyXG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRhbGVydC1jb2xvcik7IH1cclxuICAgICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkd2FybmluZy1jb2xvcik7IH1cclxuICAgICAgJi5zdWNjZXNzICAgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkc3VjY2Vzcy1jb2xvcik7IH1cclxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yKTsgfVxyXG4gICAgICAmLmluZm8gICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRpbmZvLWNvbG9yKTsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcblxyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcbiRpbmNsdWRlLWh0bWwtb3JiaXQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGNhcHRpb24gc3R5bGVzXHJcbiRvcmJpdC1jb250YWluZXItYmc6IG5vbmUgIWRlZmF1bHQ7XHJcbiRvcmJpdC1jYXB0aW9uLWJnOiByZ2JhKDUxLDUxLDUxLCAuOCkgIWRlZmF1bHQ7XHJcbiRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJG9yYml0LWNhcHRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XHJcbiRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uOiBcImJvdHRvbVwiICFkZWZhdWx0OyAvLyBTdXBwb3J0ZWQgdmFsdWVzOiBcImJvdHRvbVwiLCBcInVuZGVyXCJcclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpICFkZWZhdWx0O1xyXG4kb3JiaXQtY2FwdGlvbi1oZWlnaHQ6IGF1dG8gIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGVmdC9yaWdodCBuYXYgc3R5bGVzXHJcbiRvcmJpdC1uYXYtYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xyXG4kb3JiaXQtbmF2LWJnLWhvdmVyOiByZ2JhKDAsMCwwLDAuMykgIWRlZmF1bHQ7XHJcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpbWVyIHN0eWxlc1xyXG4kb3JiaXQtdGltZXItYmc6IHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAhZGVmYXVsdDtcclxuJG9yYml0LXRpbWVyLXNob3ctcHJvZ3Jlc3MtYmFyOiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJ1bGxldCBuYXYgc3R5bGVzXHJcbiRvcmJpdC1idWxsZXQtbmF2LWNvbG9yOiAkaXJvbiAhZGVmYXVsdDtcclxuJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlOiAkYWx1bWludW0gIWRlZmF1bHQ7XHJcbiRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYyg5KSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyB0aGUgc3R5bGUgb2Ygc2xpZGUgbnVtYmVyc1xyXG4kb3JiaXQtc2xpZGUtbnVtYmVyLWJnOiByZ2JhKDAsMCwwLDApICFkZWZhdWx0O1xyXG4kb3JiaXQtc2xpZGUtbnVtYmVyLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcclxuXHJcbi8vIEdyYWNlZnVsIExvYWRpbmcgV3JhcHBlciBhbmQgcHJlbG9hZGVyXHJcbiR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCIgIWRlZmF1bHQ7XHJcbiRwcmVsb2FkZXItY2xhc3M6IFwicHJlbG9hZGVyXCIgIWRlZmF1bHQ7XHJcblxyXG4vLyBIaWRlIGNvbnRyb2xzIG9uIHNtYWxsXHJcbiRvcmJpdC1uYXYtaGlkZS1mb3Itc21hbGw6IHRydWUgIWRlZmF1bHQ7XHJcbiRvcmJpdC1idWxsZXQtaGlkZS1mb3Itc21hbGw6IHRydWUgIWRlZmF1bHQ7XHJcbiRvcmJpdC10aW1lci1oaWRlLWZvci1zbWFsbDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwib3JiaXRcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXMge1xyXG5cclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICB9XHJcbiAgICAgIHRvIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGUge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICAgIH1cclxuICAgICAgdG8ge1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogT3JiaXQgR3JhY2VmdWwgTG9hZGluZyAqL1xyXG4gICAgLiN7JHdyYXBwZXItY2xhc3N9IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIC8vIFByZXZlbnQgYnVsbGV0cyBzaG93aW5nIGJlZm9yZSAub3JiaXQtY29udGFpbmVyIGlzIGxvYWRlZFxyXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIC8vIEhpZGUgYWxsIGxpc3QgaXRlbXNcclxuICAgICAgICBsaSxcclxuICAgICAgICBsaSAub3JiaXQtY2FwdGlvbiB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAgICAgLy8gLi4uZXhjZXB0IGZvciB0aGUgZmlyc3Qgb25lXHJcbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAub3JiaXQtY29udGFpbmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgIC8vIFNob3cgaW1hZ2VzIHdoZW4gLm9yYml0LWNvbnRhaW5lciBpcyBsb2FkZWRcclxuICAgICAgICBsaSB7IGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHsgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm9yYml0LWJ1bGxldHMgbGkge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gT3JiaXQgcHJlbG9hZGVyXHJcbiAgICAgIC4jeyRwcmVsb2FkZXItY2xhc3N9IHtcclxuICAgICAgICBAaW5jbHVkZSByYWRpdXMoMTAwMHB4KTtcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XHJcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hhcmNvYWwgJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgM3B4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICAub3JiaXQtY29udGFpbmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJG9yYml0LWNvbnRhaW5lci1iZztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLy8gUHJldmVudHMgaW1hZ2VzIChhbmQgY2FwdGlvbnMpIGZyb20gZGlzYXBwZWFyaW5nIGFmdGVyIGZpcnN0IHJvdGF0aW9uIG9uIENocm9tZSBmb3IgQW5kcm9pZFxyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuXHJcbiAgICAgICAgaW1nIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgfVxyXG5cclxuICAgICAgICA+ICoge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLm9yYml0LWNhcHRpb24ge1xyXG4gICAgICAgICAgICBAaWYgJG9yYml0LWNhcHRpb24tcG9zaXRpb24gPT0gXCJib3R0b21cIiB7XHJcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgfSBAZWxzZSBpZiAkb3JiaXQtY2FwdGlvbi1wb3NpdGlvbiA9PSBcInVuZGVyXCIge1xyXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmc7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkb3JiaXQtY2FwdGlvbi1mb250LWNvbG9yO1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTtcclxuICAgICAgICAgICAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcclxuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkb3JiaXQtc2xpZGUtbnVtYmVyLWJnO1xyXG4gICAgICAgIGNvbG9yOiAkb3JiaXQtc2xpZGUtbnVtYmVyLWZvbnQtY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBzcGFuIHsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nO31cclxuICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5vcmJpdC10aW1lciB7XHJcbiAgICAgICAgaGVpZ2h0OiA2cHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTJweDtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcclxuXHJcbiAgICAgICAgLm9yYml0LXByb2dyZXNzIHtcclxuICAgICAgICAgIEBpZiAkb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtdGltZXItYmc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICByaWdodDogMjBweDtcclxuICAgICAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gUGxheSBidXR0b25cclxuICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgICAgIGJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTFweDtcclxuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBQYXVzZSBidXR0b25cclxuICAgICAgICAmLnBhdXNlZCB7XHJcbiAgICAgICAgICAmID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcclxuICAgICAgICAgICAgYm9yZGVyOiBpbnNldCA4cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTFweDtcclxuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTRweDtcclxuXHJcbiAgICAgICAgICAgICYuZGFyayB7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRvaWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcblxyXG5cclxuICAgICAgJjpob3ZlciAub3JiaXQtdGltZXIgPiBzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cclxuXHJcbiAgICAgIC8vIExldCdzIGdldCB0aG9zZSBjb250cm9scyB0byBiZSByaWdodCBpbiB0aGUgY2VudGVyIG9uIGVhY2ggc2lkZVxyXG4gICAgICAub3JiaXQtcHJldixcclxuICAgICAgLm9yYml0LW5leHQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1uYXYtYmc7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGhlaWdodDogNjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHggIWltcG9ydGFudDtcclxuICAgICAgICB0b3A6IDQ1JTtcclxuICAgICAgICB3aWR0aDogMzZweDtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtbmF2LWJnLWhvdmVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgYm9yZGVyOiBpbnNldCAxMHB4O1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5vcmJpdC1wcmV2IHsgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhvdmVyID4gc3BhbiB7XHJcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLm9yYml0LW5leHQgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xyXG4gICAgICAgICYgPiBzcGFuIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yO1xyXG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcclxuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLTRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciA+IHNwYW4ge1xyXG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5vcmJpdC1idWxsZXRzLWNvbnRhaW5lciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxyXG4gICAgLm9yYml0LWJ1bGxldHMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRvcDogMTBweDtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkb3JiaXQtYnVsbGV0LW5hdi1jb2xvcjtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIC8vIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtcmFkaXVzO1xyXG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA2cHg7XHJcbiAgICAgICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtcmFkaXVzO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByYWRpdXMoMTAwMHB4KTtcclxuXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7IH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50b3VjaCB7XHJcbiAgICAgIC5vcmJpdC1jb250YWluZXIge1xyXG4gICAgICAgIC5vcmJpdC1wcmV2LFxyXG4gICAgICAgIC5vcmJpdC1uZXh0IHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAub3JiaXQtYnVsbGV0cyB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG5cclxuICAgICAgLnRvdWNoIHtcclxuICAgICAgICAub3JiaXQtY29udGFpbmVyIHtcclxuICAgICAgICAgIC5vcmJpdC1wcmV2LFxyXG4gICAgICAgICAgLm9yYml0LW5leHQgeyBkaXNwbGF5OiBpbmhlcml0OyB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3JiaXQtYnVsbGV0cyB7IGRpc3BsYXk6IGJsb2NrOyB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcclxuICAgICAgLm9yYml0LXN0YWNrLW9uLXNtYWxsIHtcclxuICAgICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKiB7XHJcbiAgICAgICAgICBtYXJnaW46MCAgIWltcG9ydGFudDtcclxuICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcmJpdC1zbGlkZS1udW1iZXIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAkb3JiaXQtdGltZXItaGlkZS1mb3Itc21hbGwge1xyXG4gICAgICAgICAub3JiaXQtdGltZXJ7ZGlzcGxheTogbm9uZTt9XHJcbiAgICAgIH1cclxuICAgICAgQGlmICRvcmJpdC1uYXYtaGlkZS1mb3Itc21hbGwge1xyXG4gICAgICAgICAub3JiaXQtbmV4dCwub3JiaXQtcHJldntkaXNwbGF5OiBub25lO31cclxuICAgICAgfVxyXG4gICAgICBAaWYgJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbCB7XHJcbiAgICAgICAgIC5vcmJpdC1idWxsZXRze2Rpc3BsYXk6IG5vbmU7fVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuQGltcG9ydCAnZ3JpZCc7XHJcblxyXG4vL1xyXG4vLyBAbmFtZSBfcmV2ZWFsLnNjc3NcclxuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3NcclxuLy9cclxuXHJcbiRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgcmV2ZWFsIG92ZXJsYXkuXHJcbiRyZXZlYWwtb3ZlcmxheS1iZzogcmdiYSgkYmxhY2ssIC40NSkgIWRlZmF1bHQ7XHJcbiRyZXZlYWwtb3ZlcmxheS1iZy1vbGQ6ICRibGFjayAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgbW9kYWwgaXRzZWxmLlxyXG4kcmV2ZWFsLW1vZGFsLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiRyZXZlYWwtcG9zaXRpb24tdG9wOiByZW0tY2FsYygxMDApICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWRlZmF1bHQtd2lkdGg6IDgwJSAhZGVmYXVsdDtcclxuJHJldmVhbC1tYXgtd2lkdGg6ICRyb3ctd2lkdGggIWRlZmF1bHQ7XHJcbiRyZXZlYWwtbW9kYWwtcGFkZGluZzogcmVtLWNhbGMoMzApICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLC40KSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcmV2ZWFsIGNsb3NlIGJ1dHRvblxyXG4kcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDApICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWNsb3NlLXRvcDogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWNsb3NlLXNpZGU6IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcclxuJHJldmVhbC1jbG9zZS1jb2xvcjogJGJhc2UgIWRlZmF1bHQ7XHJcbiRyZXZlYWwtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgZGVmYXVsdCByYWRpdXMgdXNlZCB0aHJvdWdob3V0IHRoZSBjb3JlLlxyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XHJcbiRyZXZlYWwtcm91bmQ6ICRnbG9iYWwtcm91bmRlZCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtb2RhbCBib3JkZXJcclxuJHJldmVhbC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xyXG4kcmV2ZWFsLWJvcmRlci1jb2xvcjogJHN0ZWVsICFkZWZhdWx0O1xyXG5cclxuJHJldmVhbC1tb2RhbC1jbGFzczogXCJyZXZlYWwtbW9kYWxcIiAhZGVmYXVsdDtcclxuJGNsb3NlLXJldmVhbC1tb2RhbC1jbGFzczogXCJjbG9zZS1yZXZlYWwtbW9kYWxcIiAhZGVmYXVsdDtcclxuXHJcbi8vIFNldCBiYXNlIHotaW5kZXhcclxuJHotaW5kZXgtYmFzZTogMTAwNTtcclxuXHJcbi8vXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgcmV2ZWFsIGJhY2tncm91bmQgb3ZlcmxheSBzdHlsZXNcclxuQG1peGluIHJldmVhbC1iZyggJGluY2x1ZGUtei1pbmRleC12YWx1ZTogdHJ1ZSApIHtcclxuICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7IC8vIGFsbG93cyBtb2RhbCBiYWNrZ3JvdW5kIHRvIGV4dGVuZCBiZXlvbmQgd2luZG93IHBvc2l0aW9uXHJcbiAgYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJnLW9sZDsgLy8gQXV0b3ByZWZpeGVyIHNob3VsZCBiZSB1c2VkIHRvIGF2b2lkIHN1Y2ggdmFyaWFibGVzIG5lZWRlZCB3aGVuIEZvdW5kYXRpb24gZm9yIFNpdGVzIGNhbiBkbyBzbyBpbiB0aGUgbmVhciBmdXR1cmUuXHJcbiAgYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJnO1xyXG4gIGJvdHRvbTogMDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiBpZiggJGluY2x1ZGUtei1pbmRleC12YWx1ZSwgJHotaW5kZXgtYmFzZSAtIDEsIGF1dG8gKTtcclxuICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcclxufVxyXG5cclxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBzdHJ1Y3R1cmUgb2YgYSByZXZlYWwgbW9kYWxcclxuLy9cclxuLy8gJGJhc2Utc3R5bGUgLSBQcm92aWRlcyByZXZlYWwgYmFzZSBzdHlsZXMsIGNhbiBiZSBzZXQgdG8gZmFsc2UgdG8gb3ZlcnJpZGUuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXHJcbi8vICR3aWR0aCAtIFNldHMgcmV2ZWFsIHdpZHRoIERlZmF1bHQ6ICRyZXZlYWwtZGVmYXVsdC13aWR0aCB8fCA4MCVcclxuLy9cclxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlKCAkYmFzZS1zdHlsZTogdHJ1ZSwgJHdpZHRoOiRyZXZlYWwtZGVmYXVsdC13aWR0aCwgJG1heC13aWR0aDokcmV2ZWFsLW1heC13aWR0aCwgJGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzKSB7XHJcbiAgQGlmICRiYXNlLXN0eWxlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDowO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAkei1pbmRleC1iYXNlO1xyXG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcblxyXG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcclxuICAgICAgbWluLWhlaWdodDoxMDB2aDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cclxuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHsgbWluLXdpZHRoOiAwOyB9XHJcblxyXG4gICAgLy8gR2V0IHJpZCBvZiBtYXJnaW4gZnJvbSBmaXJzdCBhbmQgbGFzdCBlbGVtZW50IGluc2lkZSBtb2RhbFxyXG4gICAgPiA6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XHJcblxyXG4gICAgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxuICB9XHJcblxyXG4gIEBpZiAkd2lkdGgge1xyXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSByZXZlYWwgbW9kYWwgZGVmYXVsdHNcclxuLy9cclxuLy8gJGJnIC0gU2V0cyBiYWNrZ3JvdW5kIGNvbG9yIG9mIHJldmVhbCBtb2RhbC4gRGVmYXVsdDogJHJldmVhbC1tb2RhbC1iZyB8fCAkd2hpdGVcclxuLy8gJHBhZGRpbmcgLSBQYWRkaW5nIHRvIGFwcGx5IHRvIHJldmVhbCBtb2RhbC4gRGVmYXVsdDogJHJldmVhbC1tb2RhbC1wYWRkaW5nLlxyXG4vLyAkYm9yZGVyIC0gQ2hvb3NlIHdoZXRoZXIgcmV2ZWFsIHVzZXMgYSBib3JkZXIuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXHJcbi8vICRib3JkZXItc3R5bGUgLSBTZXQgcmV2ZWFsIGJvcmRlciBzdHlsZS4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItc3R5bGUgfHwgc29saWRcclxuLy8gJGJvcmRlci13aWR0aCAtIFdpZHRoIG9mIGJvcmRlciAoaS5lLiAxcHgpLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci13aWR0aC5cclxuLy8gJGJvcmRlci1jb2xvciAtIENvbG9yIG9mIGJvcmRlci4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItY29sb3IuXHJcbi8vICRib3gtc2hhZG93IC0gQ2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2VcclxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBtb2RhbCByYWRpdXMgd2hpY2ggaXMgJGdsb2JhbC1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6IGZhbHNlXHJcbi8vICR0b3Atb2Zmc2V0IC0gRGVmYXVsdDogJHJldmVhbC1wb3NpdGlvbi10b3AgfHwgNTBweFxyXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXN0eWxlKFxyXG4gICRiZzpmYWxzZSxcclxuICAkcGFkZGluZzpmYWxzZSxcclxuICAkYm9yZGVyOmZhbHNlLFxyXG4gICRib3JkZXItc3R5bGU6JHJldmVhbC1ib3JkZXItc3R5bGUsXHJcbiAgJGJvcmRlci13aWR0aDokcmV2ZWFsLWJvcmRlci13aWR0aCxcclxuICAkYm9yZGVyLWNvbG9yOiRyZXZlYWwtYm9yZGVyLWNvbG9yLFxyXG4gICRib3gtc2hhZG93OmZhbHNlLFxyXG4gICRyYWRpdXM6ZmFsc2UsXHJcbiAgJHRvcC1vZmZzZXQ6ZmFsc2UpIHtcclxuXHJcbiAgQGlmICRiZyB7IGJhY2tncm91bmQtY29sb3I6ICRiZzsgfVxyXG4gIEBpZiAkcGFkZGluZyAhPSBmYWxzZSB7IHBhZGRpbmc6ICRwYWRkaW5nOyB9XHJcblxyXG4gIEBpZiAkYm9yZGVyIHsgYm9yZGVyOiAkYm9yZGVyLXN0eWxlICRib3JkZXItd2lkdGggJGJvcmRlci1jb2xvcjsgfVxyXG5cclxuICAvLyBXZSBjYW4gY2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy5cclxuICBAaWYgJGJveC1zaGFkb3cge1xyXG4gICAgYm94LXNoYWRvdzogJHJldmVhbC1ib3gtc2hhZG93O1xyXG4gIH1cclxuXHJcbiAgLy8gV2UgY2FuIGNvbnRyb2wgaG93IG11Y2ggcmFkaXVzIGlzIHVzZWQgb24gdGhlIG1vZGFsXHJcbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkcmV2ZWFsLXJhZGl1cyk7IH1cclxuICBAZWxzZSBpZiAkcmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRyYWRpdXMpOyB9XHJcblxyXG4gIEBpZiAkdG9wLW9mZnNldCB7XHJcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgICAgIHRvcDogJHRvcC1vZmZzZXQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgYSBjbG9zZSBidXR0b24gZm9yIHRoZSByZXZlYWwgbW9kYWxcclxuLy9cclxuLy8gJGNvbG9yIC0gRGVmYXVsdDogJHJldmVhbC1jbG9zZS1jb2xvciB8fCAkYmFzZVxyXG5AbWl4aW4gcmV2ZWFsLWNsb3NlKCRjb2xvcjokcmV2ZWFsLWNsb3NlLWNvbG9yKSB7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcclxuICBmb250LXNpemU6ICRyZXZlYWwtY2xvc2UtZm9udC1zaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiAkcmV2ZWFsLWNsb3NlLXdlaWdodDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAkcmV2ZWFsLWNsb3NlLXRvcDtcclxuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkcmV2ZWFsLWNsb3NlLXNpZGU7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJyZXZlYWxcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLXJldmVhbC1jbGFzc2VzIHtcclxuXHJcbiAgICAvLyBSZXZlYWwgTW9kYWxzXHJcbiAgICAucmV2ZWFsLW1vZGFsLWJnIHsgQGluY2x1ZGUgcmV2ZWFsLWJnOyB9XHJcblxyXG4gICAgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xyXG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcclxuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKFxyXG4gICAgICAgICRiZzokcmV2ZWFsLW1vZGFsLWJnLFxyXG4gICAgICAgICRwYWRkaW5nOiRyZXZlYWwtbW9kYWwtcGFkZGluZyxcclxuICAgICAgICAkYm9yZGVyOnRydWUsXHJcbiAgICAgICAgJGJveC1zaGFkb3c6dHJ1ZSxcclxuICAgICAgICAkcmFkaXVzOmZhbHNlLFxyXG4gICAgICAgICR0b3Atb2Zmc2V0OiRyZXZlYWwtcG9zaXRpb24tdG9wXHJcbiAgICAgICk7XHJcblxyXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1zdHlsZSgkcmFkaXVzOnRydWUpOyB9XHJcbiAgICAgICYucm91bmQgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRyYWRpdXM6JHJldmVhbC1yb3VuZCk7IH1cclxuICAgICAgJi5jb2xsYXBzZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1zdHlsZSgkcGFkZGluZzowKTsgfVxyXG4gICAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDMwJSk7IH1cclxuICAgICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA0MCUpOyB9XHJcbiAgICAgICYubWVkaXVtICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA2MCUpOyB9XHJcbiAgICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgNzAlKTsgfVxyXG4gICAgICAmLnhsYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA5NSUpOyB9XHJcbiAgICAgICYuZnVsbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDEwMCUpO1xyXG4gICAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgbGVmdDowO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWluLWhlaWdodDoxMDB2aDtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gTW9kYWxzIHB1c2hlZCB0byBiYWNrXHJcbiAgICAgICYudG9iYWNrIHtcclxuICAgICAgICB6LWluZGV4OiAkei1pbmRleC1iYXNlIC0gMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLiN7JGNsb3NlLXJldmVhbC1tb2RhbC1jbGFzc30geyBAaW5jbHVkZSByZXZlYWwtY2xvc2U7IH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG5AaW1wb3J0ICdnbG9iYWwnO1xyXG5cclxuLy9cclxuLy8gQHZhcmlhYmxlc1xyXG4vL1xyXG5cclxuJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBwYWRkaW5nLlxyXG4kc2lkZS1uYXYtcGFkZGluZzogcmVtLWNhbGMoMTQgMCkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaXN0IHN0eWxlcy5cclxuJHNpZGUtbmF2LWxpc3QtdHlwZTogbm9uZSAhZGVmYXVsdDtcclxuJHNpZGUtbmF2LWxpc3QtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDcgMCkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaW5rIHN0eWxlcy5cclxuJHNpZGUtbmF2LWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU6IHNjYWxlLWNvbG9yKCRzaWRlLW5hdi1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAzMCUpICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtbGluay1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHNpZGUtbmF2LWxpbmstY29sb3IsICRsaWdodG5lc3M6IDMwJSkgIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1saW5rLWJnLWhvdmVyOiBoc2xhKDAsIDAsIDAsIC4wMjUpICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtbGluay1tYXJnaW46IDAgIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDcgMTQpICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJHNpZGUtbmF2LWZvbnQtd2VpZ2h0LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtZm9udC1mYW1pbHktYWN0aXZlOiAkc2lkZS1uYXYtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkaW5nIHN0eWxlcy5cclxuJHNpZGUtbmF2LWhlYWRpbmctY29sb3I6ICRzaWRlLW5hdi1saW5rLWNvbG9yICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU6ICRzaWRlLW5hdi1mb250LXNpemUgIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xyXG4kc2lkZS1uYXYtaGVhZGluZy10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xyXG4kc2lkZS1uYXYtZGl2aWRlci1zaXplOiAxcHggIWRlZmF1bHQ7XHJcbiRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcclxuJHNpZGUtbmF2LWRpdmlkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogMTAlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vL1xyXG4vLyBAbWl4aW5zXHJcbi8vXHJcblxyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHNpZGUtbmF2XHJcbi8vXHJcbi8vICRkaXZpZGVyLWNvbG9yIC0gQm9yZGVyIGNvbG9yIG9mIGRpdmlkZXIuIERlZmF1bHQ6ICRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yLlxyXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIG5hdiBpdGVtcy4gRGVmYXVsdDogJHNpZGUtbmF2LWZvbnQtc2l6ZS5cclxuLy8gJGxpbmstY29sb3IgLSBDb2xvciBvZiBuYXZpZ2F0aW9uIGxpbmtzLiBEZWZhdWx0OiAkc2lkZS1uYXYtbGluay1jb2xvci5cclxuLy8gJGxpbmstY29sb3ItaG92ZXIgLSBDb2xvciBvZiBuYXZpZ2F0aW9uIGxpbmtzIHdoZW4gaG92ZXJlZC4gRGVmYXVsdDogJHNpZGUtbmF2LWxpbmstY29sb3ItaG92ZXIuXHJcbkBtaXhpbiBzaWRlLW5hdihcclxuICAkZGl2aWRlci1jb2xvcjokc2lkZS1uYXYtZGl2aWRlci1jb2xvcixcclxuICAkZm9udC1zaXplOiRzaWRlLW5hdi1mb250LXNpemUsXHJcbiAgJGxpbmstY29sb3I6JHNpZGUtbmF2LWxpbmstY29sb3IsXHJcbiAgJGxpbmstY29sb3ItYWN0aXZlOiRzaWRlLW5hdi1saW5rLWNvbG9yLWFjdGl2ZSxcclxuICAkbGluay1jb2xvci1ob3Zlcjokc2lkZS1uYXYtbGluay1jb2xvci1ob3ZlcixcclxuICAkbGluay1iZy1ob3Zlcjokc2lkZS1uYXYtbGluay1iZy1ob3Zlcikge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtZmFtaWx5OiAkc2lkZS1uYXYtZm9udC1mYW1pbHk7XHJcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJHNpZGUtbmF2LWxpc3QtcG9zaXRpb247XHJcbiAgbGlzdC1zdHlsZS10eXBlOiAkc2lkZS1uYXYtbGlzdC10eXBlO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAkc2lkZS1uYXYtcGFkZGluZztcclxuXHJcbiAgbGkge1xyXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRzaWRlLW5hdi1mb250LXdlaWdodDtcclxuICAgIG1hcmdpbjogJHNpZGUtbmF2LWxpc3QtbWFyZ2luO1xyXG5cclxuICAgIGE6bm90KC5idXR0b24pIHtcclxuICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luOiAkc2lkZS1uYXYtbGluay1tYXJnaW47XHJcbiAgICAgIHBhZGRpbmc6ICRzaWRlLW5hdi1saW5rLXBhZGRpbmc7XHJcbiAgICAgICY6aG92ZXIsXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWJnLWhvdmVyO1xyXG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1ob3ZlcjtcclxuICAgICAgfVxyXG4gICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLWFjdGl2ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYWN0aXZlID4gYTpmaXJzdC1jaGlsZDpub3QoLmJ1dHRvbikge1xyXG4gICAgICBjb2xvcjogJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlO1xyXG4gICAgICBmb250LWZhbWlseTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTtcclxuICAgICAgZm9udC13ZWlnaHQ6ICRzaWRlLW5hdi1mb250LXdlaWdodC1hY3RpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXZpZGVyIHtcclxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRpdmlkZXItY29sb3I7XHJcbiAgICAgIGJvcmRlci10b3A6ICRzaWRlLW5hdi1kaXZpZGVyLXNpemUgJHNpZGUtbmF2LWRpdmlkZXItc3R5bGU7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmhlYWRpbmcge1xyXG4gICAgICBjb2xvcjogJHNpZGUtbmF2LWhlYWRpbmctY29sb3I7XHJcbiAgICAgIGZvbnQ6IHtcclxuICAgICAgICBzaXplOiAkc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU7XHJcbiAgICAgICAgd2VpZ2h0OiAkc2lkZS1uYXYtaGVhZGluZy1mb250LXdlaWdodDtcclxuICAgICAgfVxyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwic2lkZS1uYXZcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcclxuICAgIC5zaWRlLW5hdiB7QGluY2x1ZGUgc2lkZS1uYXY7fVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcblxyXG4vL1xyXG4vLyBAbmFtZSBfc3ViLW5hdi5zY3NzXHJcbi8vIEBkZXBlbmRlbmNpZXMgX2dsb2JhbC5zY3NzXHJcbi8vXHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcblxyXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBtYXJnaW4gYW5kIHBhZGRpbmdcclxuJHN1Yi1uYXYtbGlzdC1tYXJnaW46IHJlbS1jYWxjKC00IDAgMTgpICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRlZmluaXRpb25cclxuJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcclxuJHN1Yi1uYXYtZm9udC1jb2xvcjogJGFsdW1pbnVtICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJHN1Yi1uYXYtdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1wYWRkaW5nOiByZW0tY2FsYygzIDE2KSAhZGVmYXVsdDtcclxuJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMjUlKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYWN0aXZlIGl0ZW0gc3R5bGVzXHJcblxyXG4kc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiRzdWItbmF2LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcclxuJHN1Yi1uYXYtYWN0aXZlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiRzdWItbmF2LWFjdGl2ZS1wYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1hY3RpdmUtY3Vyc29yOiBkZWZhdWx0ICFkZWZhdWx0O1xyXG5cclxuJHN1Yi1uYXYtaXRlbS1kaXZpZGVyOiBcIlwiICFkZWZhdWx0O1xyXG4kc3ViLW5hdi1pdGVtLWRpdmlkZXItbWFyZ2luOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XHJcblxyXG4vL1xyXG4vLyBAbWl4aW5zXHJcbi8vXHJcblxyXG5cclxuLy8gQ3JlYXRlIGEgc3ViLW5hdiBpdGVtXHJcbi8vXHJcbi8vICRmb250LWNvbG9yIC0gRm9udCBjb2xvci4gRGVmYXVsdDogJHN1Yi1uYXYtZm9udC1jb2xvci5cclxuLy8gJGZvbnQtc2l6ZSAtIEZvbnQgc2l6ZS4gRGVmYXVsdDogJHN1Yi1uYXYtZm9udC1zaXplLlxyXG4vLyAkYWN0aXZlLWJnIC0gQmFja2dyb3VuZCBvZiBhY3RpdmUgbmF2IGl0ZW0uIERlZmF1bHQ6ICRzdWItbmF2LWFjdGl2ZS1iZy5cclxuLy8gJGFjdGl2ZS1iZy1ob3ZlciAtIEJhY2tncm91bmQgb2YgYWN0aXZlIG5hdiBpdGVtLCB3aGVuIGhvdmVyZWQuIERlZmF1bHQ6ICRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlci5cclxuQG1peGluIHN1Yi1uYXYoXHJcbiAgJGZvbnQtY29sb3I6ICRzdWItbmF2LWZvbnQtY29sb3IsXHJcbiAgJGZvbnQtc2l6ZTogJHN1Yi1uYXYtZm9udC1zaXplLFxyXG4gICRhY3RpdmUtYmc6ICRzdWItbmF2LWFjdGl2ZS1iZyxcclxuICAkYWN0aXZlLWJnLWhvdmVyOiAkc3ViLW5hdi1hY3RpdmUtYmctaG92ZXIpIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46ICRzdWItbmF2LWxpc3QtbWFyZ2luO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZy10b3A6ICRzdWItbmF2LWxpc3QtcGFkZGluZy10b3A7XHJcbiAgd2lkdGg6IGF1dG87XHJcblxyXG4gIGR0IHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICBkdCxcclxuICBkZCxcclxuICBsaSB7XHJcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XHJcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICBmb250LWZhbWlseTogJHN1Yi1uYXYtZm9udC1mYW1pbHk7XHJcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbiAgICBmb250LXdlaWdodDogJHN1Yi1uYXYtZm9udC13ZWlnaHQ7XHJcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKDE2KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yO1xyXG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246ICRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjtcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3RpdmUgYSB7XHJcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygkc3ViLW5hdi1ib3JkZXItcmFkaXVzKTtcclxuICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1iZztcclxuICAgICAgY29sb3I6ICRzdWItbmF2LWFjdGl2ZS1jb2xvcjtcclxuICAgICAgY3Vyc29yOiAkc3ViLW5hdi1hY3RpdmUtY3Vyc29yO1xyXG4gICAgICBmb250LXdlaWdodDogJHN1Yi1uYXYtYWN0aXZlLWZvbnQtd2VpZ2h0O1xyXG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1hY3RpdmUtcGFkZGluZztcclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtYmctaG92ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaWYgJHN1Yi1uYXYtaXRlbS1kaXZpZGVyICE9IFwiXCIge1xyXG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCIjeyRzdWItbmF2LWl0ZW0tZGl2aWRlcn1cIjtcclxuICAgICAgICBtYXJnaW46IDAgJHN1Yi1uYXYtaXRlbS1kaXZpZGVyLW1hcmdpbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwic3ViLW5hdlwiKSB7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXMge1xyXG4gICAgLnN1Yi1uYXYgeyBAaW5jbHVkZSBzdWItbmF2OyB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuXHJcbi8vXHJcbi8vIEBuYW1lIF90YWJsZXMuc2Nzc1xyXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xyXG4vL1xyXG5cclxuLy9cclxuLy8gQHZhcmlhYmxlc1xyXG4vL1xyXG5cclxuJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xyXG4kdGFibGUtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRhYmxlLWV2ZW4tcm93LWJnOiAkc25vdyAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGNlbGwgYm9yZGVyIHN0eWxlXHJcbiR0YWJsZS1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kdGFibGUtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcclxuJHRhYmxlLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXHJcbiR0YWJsZS1oZWFkLWJnOiAkd2hpdGUtc21va2UgIWRlZmF1bHQ7XHJcbiR0YWJsZS1oZWFkLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xyXG4kdGFibGUtaGVhZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XHJcbiR0YWJsZS1oZWFkLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgZm9vdCBzdHlsZXNcclxuJHRhYmxlLWZvb3QtYmc6ICR0YWJsZS1oZWFkLWJnICFkZWZhdWx0O1xyXG4kdGFibGUtZm9vdC1mb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZSAhZGVmYXVsdDtcclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvciAhZGVmYXVsdDtcclxuJHRhYmxlLWZvb3QtZm9udC13ZWlnaHQ6ICR0YWJsZS1oZWFkLWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xyXG4kdGFibGUtZm9vdC1wYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCB0aGUgY2FwdGlvblxyXG4kdGFibGUtY2FwdGlvbi1iZzogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XHJcbiR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3IgIWRlZmF1bHQ7XHJcbiR0YWJsZS1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG4kdGFibGUtY2FwdGlvbi1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcclxuXHJcbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHJvdyBwYWRkaW5nIGFuZCBmb250IHN0eWxlc1xyXG4kdGFibGUtcm93LXBhZGRpbmc6IHJlbS1jYWxjKDkgMTApICFkZWZhdWx0O1xyXG4kdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xyXG4kdGFibGUtcm93LWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XHJcbiR0YWJsZS1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlc2UgYXJlIGZvciBjb250cm9sbGluZyB0aGUgbGF5b3V0LCBkaXNwbGF5IGFuZCBtYXJnaW4gb2YgdGFibGVzXHJcbiR0YWJsZS1sYXlvdXQ6IGF1dG8gIWRlZmF1bHQ7XHJcbiR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsICFkZWZhdWx0O1xyXG4kdGFibGUtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vXHJcbi8vIEBtaXhpbnNcclxuLy9cclxuXHJcbkBtaXhpbiB0YWJsZSB7XHJcbiAgYmFja2dyb3VuZDogJHRhYmxlLWJnO1xyXG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci1zdHlsZSAkdGFibGUtYm9yZGVyLXNpemUgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICBtYXJnaW4tYm90dG9tOiAkdGFibGUtbWFyZ2luLWJvdHRvbTtcclxuICB0YWJsZS1sYXlvdXQ6ICR0YWJsZS1sYXlvdXQ7XHJcblxyXG4gIGNhcHRpb24ge1xyXG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWNhcHRpb24tYmc7XHJcbiAgICBjb2xvcjogJHRhYmxlLWNhcHRpb24tZm9udC1jb2xvcjtcclxuICAgIGZvbnQ6IHtcclxuICAgICAgc2l6ZTogJHRhYmxlLWNhcHRpb24tZm9udC1zaXplO1xyXG4gICAgICB3ZWlnaHQ6ICR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGhlYWQge1xyXG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmc7XHJcblxyXG4gICAgdHIge1xyXG4gICAgICB0aCxcclxuICAgICAgdGQge1xyXG4gICAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZC1mb250LXdlaWdodDtcclxuICAgICAgICBwYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0Zm9vdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iZztcclxuXHJcbiAgICB0ciB7XHJcbiAgICAgIHRoLFxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiAkdGFibGUtZm9vdC1mb250LXNpemU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICR0YWJsZS1mb290LWZvbnQtd2VpZ2h0O1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1mb290LXBhZGRpbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRyIHtcclxuICAgIHRoLFxyXG4gICAgdGQge1xyXG4gICAgICBjb2xvcjogJHRhYmxlLXJvdy1mb250LWNvbG9yO1xyXG4gICAgICBmb250LXNpemU6ICR0YWJsZS1yb3ctZm9udC1zaXplO1xyXG4gICAgICBwYWRkaW5nOiAkdGFibGUtcm93LXBhZGRpbmc7XHJcbiAgICAgIHRleHQtYWxpZ246ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgfVxyXG5cclxuICAgICYuZXZlbixcclxuICAgICYuYWx0LFxyXG4gICAgJjpudGgtb2YtdHlwZShldmVuKSB7IGJhY2tncm91bmQ6ICR0YWJsZS1ldmVuLXJvdy1iZzsgfVxyXG4gIH1cclxuXHJcbiAgdGhlYWQgdHIgdGgsXHJcbiAgdGZvb3QgdHIgdGgsXHJcbiAgdGZvb3QgdHIgdGQsXHJcbiAgdGJvZHkgdHIgdGgsXHJcbiAgdGJvZHkgdHIgdGQsXHJcbiAgdHIgdGQgeyBkaXNwbGF5OiAkdGFibGUtZGlzcGxheTsgbGluZS1oZWlnaHQ6ICR0YWJsZS1saW5lLWhlaWdodDsgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyhcInRhYmxlXCIpIHtcclxuICBAaWYgJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzIHtcclxuICAgIHRhYmxlIHtcclxuICAgICAgQGluY2x1ZGUgdGFibGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuQGltcG9ydCAnZ3JpZCc7XHJcblxyXG4vL1xyXG4vLyBAdmFyaWFibGVzXHJcbi8vXHJcblxyXG4kaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuJHRhYnMtbmF2aWdhdGlvbi1wYWRkaW5nOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XHJcbiR0YWJzLW5hdmlnYXRpb24tYmctY29sb3I6ICRzaWx2ZXIgIWRlZmF1bHQ7XHJcbiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0YWJzLW5hdmlnYXRpb24taG92ZXItYmctY29sb3I6IHNjYWxlLWNvbG9yKCR0YWJzLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC02JSkgIWRlZmF1bHQ7XHJcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcclxuJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yICFkZWZhdWx0O1xyXG4kdGFicy1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG4kdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuXHJcbiR0YWJzLWNvbnRlbnQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpICFkZWZhdWx0O1xyXG4kdGFicy1jb250ZW50LXBhZGRpbmc6ICgkY29sdW1uLWd1dHRlci8yKSAhZGVmYXVsdDtcclxuXHJcbiR0YWJzLXZlcnRpY2FsLW5hdmlnYXRpb24tbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhZGVmYXVsdDtcclxuXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJ0YWJcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlcyB7XHJcbiAgICAudGFicyB7XHJcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICBkZCwgLnRhYi10aXRsZSB7XHJcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcclxuICAgICAgICAgIHBhZGRpbmc6ICR0YWJzLW5hdmlnYXRpb24tcGFkZGluZyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmcgKiAyO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHtcclxuICAgICAgICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSBhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHtcclxuICAgICAgICAgICAgY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29sb3I6JHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnJhZGl1cyB7XHJcbiAgICAgICAgZGQ6Zmlyc3QtY2hpbGQsIC50YWI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgYSB7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkZ2xvYmFsLXJhZGl1cyk7IH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZGQ6bGFzdC1jaGlsZCwgLnRhYjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkZ2xvYmFsLXJhZGl1cyk7IH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi52ZXJ0aWNhbCB7XHJcbiAgICAgICAgZGQsIC50YWItdGl0bGUge1xyXG4gICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWJzLWNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgPiAuY29udGVudCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICAgICAgcGFkZGluZzogJHRhYnMtY29udGVudC1wYWRkaW5nIDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgJi5hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IG5vbmU7IH1cclxuICAgICAgICAmLmNvbnRhaW5lZCB7IHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZzsgfVxyXG4gICAgICB9XHJcbiAgICAgICYudmVydGljYWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgID4gLmNvbnRlbnQgeyBwYWRkaW5nOiAwICR0YWJzLWNvbnRlbnQtcGFkZGluZzsgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgICAgIC50YWJzIHtcclxuICAgICAgICAmLnZlcnRpY2FsIHtcclxuICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcclxuICAgICAgICAgIG1hcmdpbjogMCAwICR0YWJzLXZlcnRpY2FsLW5hdmlnYXRpb24tbWFyZ2luLWJvdHRvbTtcclxuICAgICAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnRhYnMtY29udGVudCB7XHJcbiAgICAgICAgJi52ZXJ0aWNhbCB7XHJcbiAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XHJcbiAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC0xcHg7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcclxuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDFyZW07XHJcbiAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm5vLWpzIHtcclxuICAgICAgLnRhYnMtY29udGVudCA+IC5jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcbkBpbXBvcnQgJ2dyaWQnO1xyXG5AaW1wb3J0ICdidXR0b25zJztcclxuQGltcG9ydCAnZm9ybXMnO1xyXG5cclxuLy9cclxuLy8gVG9wIEJhciBWYXJpYWJsZXNcclxuLy9cclxuJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcclxuXHJcbi8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyXHJcbiR0b3BiYXItYmctY29sb3I6ICRvaWwgIWRlZmF1bHQ7XHJcbiR0b3BiYXItYmc6ICR0b3BiYXItYmctY29sb3IgIWRlZmF1bHQ7XHJcblxyXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxyXG4kdG9wYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpICFkZWZhdWx0O1xyXG4kdG9wYmFyLW1hcmdpbi1ib3R0b206IDAgIWRlZmF1bHQ7XHJcblxyXG4vLyBDb250cm9sbGluZyB0aGUgc3R5bGVzIGZvciB0aGUgdGl0bGUgaW4gdGhlIHRvcCBiYXJcclxuJHRvcGJhci10aXRsZS13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNykgIWRlZmF1bHQ7XHJcblxyXG4vLyBTZXQgdGhlIGxpbmsgY29sb3JzIGFuZCBzdHlsZXMgZm9yIHRvcC1sZXZlbCBuYXZcclxuJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xyXG4kdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xyXG4kdG9wYmFyLWxpbmstaG92ZXItbGlnaHRuZXNzOiAtMTAlICFkZWZhdWx0OyAvLyBEYXJrZW4gYnkgMTAlXHJcbiR0b3BiYXItbGluay1iZzogJHRvcGJhci1iZyAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLWJnLWhvdmVyOiAkb2lsICFkZWZhdWx0O1xyXG4kdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICRjaGFyY29hbCAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLWJnLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XHJcbiR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xyXG4kdG9wYmFyLWxpbmstcGFkZGluZzogKCR0b3BiYXItaGVpZ2h0IC8gMykgIWRlZmF1bHQ7XHJcbiR0b3BiYXItYmFjay1saW5rLXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcclxuJHRvcGJhci1saW5rLWRyb3Bkb3duLXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuJHRvcGJhci1idXR0b24tZm9udC1zaXplOiAuNzVyZW0gIWRlZmF1bHQ7XHJcbiR0b3BiYXItYnV0dG9uLXRvcDogN3B4ICFkZWZhdWx0O1xyXG5cclxuLy8gU3R5bGUgdGhlIHRvcCBiYXIgZHJvcGRvd24gZWxlbWVudHNcclxuJHRvcGJhci1kcm9wZG93bi1iZzogJG9pbCAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvci1ob3ZlcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyICFkZWZhdWx0O1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc6ICRvaWwgIWRlZmF1bHQ7XHJcbiR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlcjogJG9pbCAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4ICFkZWZhdWx0O1xyXG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xyXG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogLjQgIWRlZmF1bHQ7XHJcblxyXG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWNvbG9yOiAkbW9uc29vbiAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcclxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1iZzogJG9pbCAhZGVmYXVsdDtcclxuXHJcbi8vIFRvcCBtZW51IGljb24gc3R5bGVzXHJcbiR0b3BiYXItbWVudS1saW5rLXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xyXG4kdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcclxuJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRvcGJhci1tZW51LWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDogJGp1bWJvICFkZWZhdWx0O1xyXG4kdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkOiAkanVtYm8gIWRlZmF1bHQ7XHJcbiR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uOiAkb3Bwb3NpdGUtZGlyZWN0aW9uICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gJGRlZmF1bHQtZmxvYXQgZm9yIGEgbGVmdCBtZW51IGljb25cclxuXHJcbi8vIFRyYW5zaXRpb25zIGFuZCBicmVha3BvaW50IHN0eWxlc1xyXG4kdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zICFkZWZhdWx0O1xyXG4vLyBVc2luZyByZW0tY2FsYyBmb3IgdGhlIGJlbG93IGJyZWFrcG9pbnQgY2F1c2VzIGlzc3VlcyB3aXRoIHRvcCBiYXJcclxuJHRvcGJhci1icmVha3BvaW50OiAje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSAhZGVmYXVsdDsgLy8gQ2hhbmdlIHRvIDk5OTlweCBmb3IgYWx3YXlzIG1vYmlsZSBsYXlvdXRcclxuJHRvcGJhci1tZWRpYS1xdWVyeTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHRvcGJhci1icmVha3BvaW50KX0pXCI7XHJcblxyXG4vLyBUb3AtYmFyIGlucHV0IHN0eWxlc1xyXG4kdG9wYmFyLWlucHV0LWhlaWdodDogcmVtLWNhbGMoMjgpICFkZWZhdWx0O1xyXG5cclxuLy8gRGl2aWRlciBTdHlsZXNcclxuJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpICFkZWZhdWx0O1xyXG4kdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IC01MCUpICFkZWZhdWx0O1xyXG5cclxuLy8gU3RpY2t5IENsYXNzXHJcbiR0b3BiYXItc3RpY2t5LWNsYXNzOiBcIi5zdGlja3lcIiAhZGVmYXVsdDtcclxuJHRvcGJhci1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgdHJpYW5nbGUgaWNvbiBmcm9tIHRoZSBtZW51IGl0ZW1cclxuJHRvcGJhci1kcm9wZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgXFwwMGJiID4+IHRleHQgZnJvbSBkcm9wZG93biBzdWJuYXZpZ2F0aW9uIGxpXHJcblxyXG4vLyBBY2Nlc3NpYmlsaXR5IG1peGlucyBmb3IgaGlkaW5nIGFuZCBzaG93aW5nIHRoZSBtZW51IGRyb3Bkb3duIGl0ZW1zXHJcbkBtaXhpbiB0b3BiYXItaGlkZS1kcm9wZG93biB7XHJcbiAgLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4gYnkgZGVmYXVsdCwgYnV0IHZpc2libGUgd2hlbiBmb2N1c2VkLlxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlKCk7XHJcbn1cclxuXHJcbkBtaXhpbiB0b3BiYXItc2hvdy1kcm9wZG93biB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmKCk7XHJcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IC8vIFJlc2V0IHRoZSBwb3NpdGlvbiBmcm9tIHN0YXRpYyB0byBhYnNvbHV0ZVxyXG59XHJcblxyXG5AaW5jbHVkZSBleHBvcnRzKFwidG9wLWJhclwiKSB7XHJcblxyXG4gIEBpZiAkaW5jbHVkZS1odG1sLXRvcC1iYXItY2xhc3NlcyB7XHJcblxyXG4gICAgLy8gVXNlZCB0byBwcm92aWRlIG1lZGlhIHF1ZXJ5IHZhbHVlcyBmb3IgamF2YXNjcmlwdCBjb21wb25lbnRzLlxyXG4gICAgLy8gVGhpcyBjbGFzcyBpcyBnZW5lcmF0ZWQgZGVzcGl0ZSB0aGUgdmFsdWUgb2YgJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXNcclxuICAgIC8vIHRvIGVuc3VyZSB3aWR0aCBjYWxjdWxhdGlvbnMgd29yayBjb3JyZWN0bHkuXHJcbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtdG9wYmFyIHtcclxuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkdG9wYmFyLW1lZGlhLXF1ZXJ5KSArIFwiL1wiO1xyXG4gICAgICB3aWR0aDogJHRvcGJhci1icmVha3BvaW50O1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFdyYXBwZWQgYXJvdW5kIC50b3AtYmFyIHRvIGNvbnRhaW4gdG8gZ3JpZCB3aWR0aCAqL1xyXG4gICAgLmNvbnRhaW4tdG8tZ3JpZCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnO1xyXG5cclxuICAgICAgLnRvcC1iYXIgeyBtYXJnaW4tYm90dG9tOiAkdG9wYmFyLW1hcmdpbi1ib3R0b207IH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBXcmFwcGVkIGFyb3VuZCAudG9wLWJhciB0byBtYWtlIGl0IHN0aWNrIHRvIHRoZSB0b3BcclxuICAgIC5maXhlZCB7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xyXG5cclxuICAgICAgJi5leHBhbmRlZDpub3QoLnRvcC1iYXIpIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAudGl0bGUtYXJlYSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBFbnN1cmUgeW91IGNhbiBzY3JvbGwgdGhlIG1lbnUgb24gc21hbGwgc2NyZWVuc1xyXG4gICAgICAgIC50b3AtYmFyLXNlY3Rpb24ge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogJHRvcGJhci1oZWlnaHQ7XHJcbiAgICAgICAgICB6LWluZGV4OiA5ODtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG9wLWJhciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XHJcbiAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJHRvcGJhci1tYXJnaW4tYm90dG9tO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAvLyBUb3BiYXIgR2xvYmFsIGxpc3QgU3R5bGVzXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5yb3cgeyBtYXgtd2lkdGg6IG5vbmU7IH1cclxuXHJcbiAgICAgIGZvcm0sXHJcbiAgICAgIGlucHV0IHsgbWFyZ2luLWJvdHRvbTogMDsgfVxyXG5cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1idXR0b24tZm9udC1zaXplO1xyXG4gICAgICAgIGhlaWdodDogJHRvcGJhci1pbnB1dC1oZWlnaHQ7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4zNXJlbTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogLjM1cmVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYnV0dG9uLCBidXR0b24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1idXR0b24tZm9udC1zaXplO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4zNXJlbSArIHJlbS1jYWxjKDEpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAuMzVyZW0gKyByZW0tY2FsYygxKTtcclxuICAgICAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLy8gdG9wOiAtMXB4O1xyXG5cclxuICAgICAgICAvLyBDb3JyZWN0cyBhIHNsaWdodCBtaXNhbGlnbm1lbnQgd2hlbiBwdXQgbmV4dCB0byBhbiBpbnB1dCBmaWVsZFxyXG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IC0xcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBUaXRsZSBBcmVhXHJcbiAgICAgIC50aXRsZS1hcmVhIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAubmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XHJcbiAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgLy8gQGlmICR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uID09ICRkZWZhdWx0LWZsb2F0IHtmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjt9XHJcblxyXG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBwLCBzcGFuIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci10aXRsZS1mb250LXNpemU7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci10aXRsZS13ZWlnaHQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBNZW51IHRvZ2dsZSBidXR0b24gb24gc21hbGwgZGV2aWNlc1xyXG4gICAgICAudG9nZ2xlLXRvcGJhciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICN7JHRvcGJhci1tZW51LWljb24tcG9zaXRpb259OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbWVudS1saW5rLWZvbnQtc2l6ZTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLW1lbnUtbGluay13ZWlnaHQ7XHJcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xyXG4gICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBBZGRpbmcgdGhlIGNsYXNzIFwibWVudS1pY29uXCIgd2lsbCBhZGQgdGhlIDMtbGluZSBpY29uIHBlb3BsZSBsb3ZlIGFuZCBhZG9yZS5cclxuICAgICAgICAmLm1lbnUtaWNvbiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTZweDtcclxuICAgICAgICAgIHRvcDogNTAlO1xyXG5cclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XHJcbiAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC01OHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLW1lbnUtbGluay1jb2xvcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzNHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZytyZW0tY2FsYygyNSkgMCAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJiB7XHJcbiAgICAgICAgICAgICAgLy8gQGluY2x1ZGUgaGFtYnVyZ2VyIGljb25cclxuICAgICAgICAgICAgICAvL1xyXG4gICAgICAgICAgICAgIC8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgaWNvbiB3aXRoIHRocmVlIGxpbmVzIGFrYSB0aGUgaGFtYnVyZ2VyIGljb24sIHRoZSBtZW51LWljb24gb3IgdGhlIG5hdmljb25cclxuICAgICAgICAgICAgICAvLyAkd2lkdGggLSBXaWR0aCBvZiBoYW1idXJnZXIgaWNvblxyXG4gICAgICAgICAgICAgIC8vICRsZWZ0IC0gSWYgZmFsc2UsIGljb24gd2lsbCBiZSBjZW50ZXJlZCBob3Jpem9udGFsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtXHJcbiAgICAgICAgICAgICAgLy8gJHRvcCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgdmVydGljYWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cclxuICAgICAgICAgICAgICAvLyAkdGhpY2tuZXNzIC0gdGhpY2tuZXNzIG9mIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcclxuICAgICAgICAgICAgICAvLyAkZ2FwIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4XHJcbiAgICAgICAgICAgICAgLy8gJGNvbG9yIC0gaWNvbiBjb2xvclxyXG4gICAgICAgICAgICAgIC8vICRob3Zlci1jb2xvciAtIGljb24gY29sb3IgZHVyaW5nIGhvdmVyLCBoZXJlIGl0IGlzbid0IHNldCBiL2MgaXQgd291bGQgb3ZlcnJpZGUgJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZFxyXG4gICAgICAgICAgICAgIC8vICRvZmZjYW52YXMgLSBTZXQgdG8gZmFsc2Ugb2YgQGluY2x1ZGUgaW4gdG9wYmFyXHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaGFtYnVyZ2VyKDE2cHgsIGZhbHNlLCAwLCAxcHgsIDZweCwgJHRvcGJhci1tZW51LWljb24tY29sb3IsIFwiXCIsIGZhbHNlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gQ2hhbmdlIHRoaW5ncyB1cCB3aGVuIHRoZSB0b3AtYmFyIGlzIGV4cGFuZGVkXHJcbiAgICAgICYuZXhwYW5kZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuXHJcbiAgICAgICAgLnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnOyB9XHJcblxyXG4gICAgICAgIC50b2dnbGUtdG9wYmFyIHtcclxuICAgICAgICAgIGEgeyBjb2xvcjogJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDtcclxuICAgICAgc3Bhbjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIC8vIFNoaCwgZG9uJ3QgdGVsbCwgYnV0IGJveC1zaGFkb3dzIGNyZWF0ZSB0aGUgbWVudSBpY29uIDopXHJcbiAgICAgICAgICAgICAgLy8gQ2hhbmdlIHRoZSBjb2xvciBvZiB0aGUgYmFycyB3aGVuIHRoZSBtZW51IGlzIGV4cGFuZGVkLCB1c2luZyBnaXZlbiB0aGlja25lc3MgZnJvbSBoYW1idXJnZXIoKSBhYm92ZVxyXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDAgN3B4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMCAxNHB4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSaWdodCBhbmQgTGVmdCBOYXZpZ2F0aW9uIHRoYXQgc3RhY2tlZCBieSBkZWZhdWx0XHJcbiAgICAudG9wLWJhci1zZWN0aW9uIHtcclxuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKCRkZWZhdWx0LWZsb2F0LCAkdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQpO1xyXG5cclxuICAgICAgdWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHJlbS1iYXNlO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmRpdmlkZXIsXHJcbiAgICAgIFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcclxuICAgICAgICBib3JkZXItdG9wOiAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdWwgbGkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tYmc7XHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdG9wYmFyLWxpbmstZm9udC1mYW1pbHk7XHJcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbGluay1mb250LXNpemU7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1saW5rLXdlaWdodDtcclxuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xyXG4gICAgICAgICAgcGFkZGluZzogMTJweCAwIDEycHggMDtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLWxpbmstdGV4dC10cmFuc2Zvcm07XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAmLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1saW5rLWZvbnQtc2l6ZTtcclxuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogJHRvcGJhci1saW5rLXBhZGRpbmc7XHJcbiAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5idXR0b24uc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yKTsgfVxyXG4gICAgICAgICAgJi5idXR0b24uc3VjY2VzcyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IpOyB9XHJcbiAgICAgICAgICAmLmJ1dHRvbi5hbGVydCB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGFsZXJ0LWNvbG9yKTsgfVxyXG4gICAgICAgICAgJi5idXR0b24ud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IpOyB9XHJcbiAgICAgICAgICAmLmJ1dHRvbi5pbmZvIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvcik7IH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gYnV0dG9uIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1saW5rLWZvbnQtc2l6ZTtcclxuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xyXG4gICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IpO1xyXG5cclxuICAgICAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yKTsgfVxyXG4gICAgICAgICAgJi5zdWNjZXNzIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc3VjY2Vzcy1jb2xvcik7IH1cclxuICAgICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvcik7IH1cclxuICAgICAgICAgICYud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IpOyB9XHJcbiAgICAgICAgICAmLmluZm8geyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRpbmZvLWNvbG9yKTsgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQXBwbHkgdGhlIGhvdmVyIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xyXG4gICAgICAgICY6aG92ZXI6bm90KC5oYXMtZm9ybSkgPiBhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBBcHBseSB0aGUgYWN0aXZlIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xyXG4gICAgICAgICYuYWN0aXZlID4gYSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xyXG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3ZlcjtcclxuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBBZGQgc29tZSBleHRyYSBwYWRkaW5nIGZvciBsaXN0IGl0ZW1zIGNvbnRhaW5zIGJ1dHRvbnNcclxuICAgICAgLmhhcy1mb3JtIHsgcGFkZGluZzogJHRvcGJhci1saW5rLXBhZGRpbmc7IH1cclxuXHJcbiAgICAgIC8vIFN0eWxpbmcgZm9yIGxpc3QgaXRlbXMgdGhhdCBoYXZlIGEgZHJvcGRvd24gd2l0aGluIHRoZW0uXHJcbiAgICAgIC5oYXMtZHJvcGRvd24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaWYgKCR0b3BiYXItYXJyb3dzKSB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemUsIHJnYmEoJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3IsICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhKSwgJGRlZmF1bHQtZmxvYXQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplIC8gMikgLSAyO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tb3ZlZCB7IHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICA+IC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPiBhOmFmdGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIFN0eWxpbmcgZWxlbWVudHMgaW5zaWRlIG9mIGRyb3Bkb3duc1xyXG4gICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgICAgICBAaW5jbHVkZSB0b3BiYXItaGlkZS1kcm9wZG93bigpO1xyXG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItZHJvcGRvd24tbGluay13ZWlnaHQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgICAgJi5wYXJlbnQtbGluayB7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbGluay13ZWlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLnRpdGxlIGg1LCAmLnBhcmVudC1saW5rIHtcclxuICAgICAgICAgICAgLy8gQmFjayBCdXR0b25cclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJhY2stbGluay1zaXplO1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAoJHRvcGJhci1oZWlnaHQgLyAyKTtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDpub25lOyB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYuaGFzLWZvcm0geyBwYWRkaW5nOiA4cHggJHRvcGJhci1saW5rLXBhZGRpbmc7IH1cclxuICAgICAgICAgIC5idXR0b24sIGJ1dHRvbiB7IHRvcDogYXV0bzsgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I7XHJcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC1zaXplO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC13ZWlnaHQ7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogOHB4ICR0b3BiYXItbGluay1wYWRkaW5nIDJweDtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qcy1nZW5lcmF0ZWQgeyBkaXNwbGF5OiBibG9jazsgfVxyXG5cclxuXHJcbiAgICAvLyBUb3AgQmFyIHN0eWxlcyBpbnRlbmRlZCBmb3Igc2NyZWVuIHNpemVzIGFib3ZlIHRoZSBicmVha3BvaW50LlxyXG4gICAgQG1lZGlhICN7JHRvcGJhci1tZWRpYS1xdWVyeX0ge1xyXG4gICAgICAudG9wLWJhciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuXHJcbiAgICAgICAgLnRvZ2dsZS10b3BiYXIgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgICAgIC50aXRsZS1hcmVhIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XHJcbiAgICAgICAgLm5hbWUgaDEgYSxcclxuICAgICAgICAubmFtZSBoMiBhLFxyXG4gICAgICAgIC5uYW1lIGgzIGEsXHJcbiAgICAgICAgLm5hbWUgaDQgYSxcclxuICAgICAgICAubmFtZSBoNSBhLFxyXG4gICAgICAgIC5uYW1lIGg2IGEgeyB3aWR0aDogYXV0bzsgfVxyXG5cclxuICAgICAgICBpbnB1dCxcclxuICAgICAgICAuYnV0dG9uLFxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1pbnB1dC1oZWlnaHQ7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6ICgoJHRvcGJhci1oZWlnaHQgLSAkdG9wYmFyLWlucHV0LWhlaWdodCkgLyAyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZXhwYW5kZWQgeyBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnOyB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5jb250YWluLXRvLWdyaWQgLnRvcC1iYXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICR0b3BiYXItbWFyZ2luLWJvdHRvbTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC50b3AtYmFyLXNlY3Rpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKG5vbmUsMCwwKTtcclxuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgICAgICAgICAuanMtZ2VuZXJhdGVkIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgJi5ob3ZlciB7XHJcbiAgICAgICAgICAgID4gYTpub3QoLmJ1dHRvbikge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgICAgICBAaWYgKCR0b3BiYXItbGluay1iZy1ob3Zlcikge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOm5vdCguaGFzLWZvcm0pIHtcclxuICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZztcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYuYWN0aXZlOm5vdCguaGFzLWZvcm0pIHtcclxuICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XHJcbiAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGFzLWRyb3Bkb3duIHtcclxuICAgICAgICAgIEBpZigkdG9wYmFyLWFycm93cykge1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmcgKyAkdG9wYmFyLWxpbmstZHJvcGRvd24tcGFkZGluZyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemUsIHJnYmEoJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3IsICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhKSwgdG9wKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZSAvIDIpO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAoJHRvcGJhci1oZWlnaHQgLyAyKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLm1vdmVkIHsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICA+IC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICYuaG92ZXIsICYubm90LWNsaWNrOmhvdmVyIHtcclxuICAgICAgICAgICAgPiAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gYTpmb2N1cyArIC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmRyb3Bkb3duIGxpLmhhcy1kcm9wZG93biB7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWRyb3Bkb3duLWFycm93cykge1xyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwYmJcIjtcclxuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcclxuICAgICAgICAgICAgICAgICAgdG9wOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgIHRvcDogYXV0bztcclxuXHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZztcclxuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4ICR0b3BiYXItbGluay1wYWRkaW5nO1xyXG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bm90KC5oYXMtZm9ybSk6bm90KC5hY3RpdmUpIHtcclxuICAgICAgICAgICAgICA+IGE6bm90KC5idXR0b24pIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3I7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAmOmhvdmVyID4gYTpub3QoLmJ1dHRvbikge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1saW5rLWJnLWNvbG9yLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1kcm9wZG93bi1saW5rLWJnLWhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWJnO1xyXG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIFNlY29uZCBMZXZlbCBEcm9wZG93bnNcclxuICAgICAgICAgICAgLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTAwJTtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gdWwgPiAuZGl2aWRlcixcclxuICAgICAgICA+IHVsID4gW3JvbGU9XCJzZXBhcmF0b3JcIl0ge1xyXG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItZGl2aWRlci1ib3JkZXItYm90dG9tO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgICBjbGVhcjogbm9uZTtcclxuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcbiAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oYXMtZm9ybSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmc7XHJcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xyXG4gICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFBvc2l0aW9uIG92ZXJyaWRlcyBmb3IgdWwucmlnaHQgYW5kIHVsLmxlZnRcclxuICAgICAgICAuI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSB7XHJcbiAgICAgICAgICBsaSAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcclxuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcclxuXHJcbiAgICAgICAgICAgIGxpIC5kcm9wZG93biB7ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwMCU7IH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLiN7JGRlZmF1bHQtZmxvYXR9IHtcclxuICAgICAgICAgIGxpIC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XHJcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xyXG5cclxuICAgICAgICAgICAgbGkgLmRyb3Bkb3duIHsgI3skZGVmYXVsdC1mbG9hdH06IDEwMCU7IH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIERlZ3JhZGUgZ3JhY2VmdWxseSB3aGVuIEphdmFzY3JpcHQgaXMgZGlzYWJsZWQuIERpc3BsYXlzIGRyb3Bkb3duIGFuZCBjaGFuZ2VzXHJcbiAgICAgIC8vIGJhY2tncm91bmQgJiB0ZXh0IGNvbG9yIG9uIGhvdmVyLlxyXG4gICAgICAubm8tanMgLnRvcC1iYXItc2VjdGlvbiB7XHJcbiAgICAgICAgdWwgbGkge1xyXG4gICAgICAgICAgLy8gQXBwbHkgdGhlIGhvdmVyIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xyXG4gICAgICAgICAgJjpob3ZlciA+IGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XHJcbiAgICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcclxuICAgICAgICAgICY6YWN0aXZlID4gYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhhcy1kcm9wZG93biB7XHJcbiAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgPiAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gYTpmb2N1cyArIC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCkge1xyXG4gICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvcC1iYXItc2VjdGlvbiB7XHJcbiAgICAgIC5oYXMtZHJvcGRvd24ubW92ZWQgPiAuZHJvcGRvd24ge1xyXG4gICAgICAgIGNsaXA6aW5pdGlhbDtcclxuICAgICAgfVxyXG4gICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgIGNsaXA6aW5pdGlhbDtcclxuICAgICAgfVxyXG4gICAgICAvLyBUaGlzIHdhcyBuZWVkZWQgYXMgcGFyZW50IHVsJ3MgaGFkIHBhZGRpbmcsIHdoaWNoIHRoZSBjbGlwOiB3YXMgYWxsb3dpbmcgY29udGVudCB0byBwZWFrIHRocm91Z2hcclxuICAgICAgLmhhcy1kcm9wZG93bjpub3QoLm1vdmVkKSA+IHVsIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MCkge1xyXG4gICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvcC1iYXItc2VjdGlvbiB7XHJcbiAgICAgIC5oYXMtZHJvcGRvd24ubW92ZWQgPiAuZHJvcGRvd24ge1xyXG4gICAgICAgIGNsaXA6aW5pdGlhbDtcclxuICAgICAgfVxyXG4gICAgICAuZHJvcGRvd24ge1xyXG4gICAgICAgIGNsaXA6aW5pdGlhbDtcclxuICAgICAgfVxyXG4gICAgICAvLyBUaGlzIHdhcyBuZWVkZWQgYXMgcGFyZW50IHVsJ3MgaGFkIHBhZGRpbmcsIHdoaWNoIHRoZSBjbGlwOiB3YXMgYWxsb3dpbmcgY29udGVudCB0byBwZWFrIHRocm91Z2hcclxuICAgICAgLmhhcy1kcm9wZG93bjpub3QoLm1vdmVkKSA+IHVsIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxyXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXHJcbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxyXG5cclxuQGltcG9ydCAnZ2xvYmFsJztcclxuXHJcbiRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXNcclxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XHJcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XHJcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xyXG4kaGVhZGVyLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XHJcbiRoZWFkZXItbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcclxuJGhlYWRlci10b3AtbWFyZ2luOiAuMnJlbSAhZGVmYXVsdDtcclxuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcclxuJGgxLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDQpICFkZWZhdWx0O1xyXG4kaDItZm9udC1zaXplOiByZW0tY2FsYygzNykgIWRlZmF1bHQ7XHJcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KSAhZGVmYXVsdDtcclxuJGg0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpICFkZWZhdWx0O1xyXG4kaDUtZm9udC1zaXplOiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XHJcbiRoNi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgc2l6ZSByZWR1Y3Rpb24gb24gc21hbGwgc2NyZWVuc1xyXG4kaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcclxuJGgyLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XHJcbiRoMy1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XHJcbiRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XHJcbiRoNS1mb250LXJlZHVjdGlvbjogMCAhZGVmYXVsdDtcclxuJGg2LWZvbnQtcmVkdWN0aW9uOiAwICFkZWZhdWx0O1xyXG5cclxuLy8gVGhlc2UgY29udHJvbCBob3cgc3ViaGVhZGVycyBhcmUgc3R5bGVkLlxyXG4kc3ViaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XHJcbiRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xyXG4kc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtICFkZWZhdWx0O1xyXG5cclxuLy8gQSBnZW5lcmFsIDxzbWFsbD4gc3R5bGluZ1xyXG4kc21hbGwtZm9udC1zaXplOiA2MCUgIWRlZmF1bHQ7XHJcbiRzbWFsbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xyXG4kcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1saW5lLWhlaWdodDogMS42ICFkZWZhdWx0O1xyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1saW5lLWhlaWdodDogMS4zNSAhZGVmYXVsdDtcclxuJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XHJcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSA8Y29kZT4gdGFnc1xyXG4kY29kZS1jb2xvcjogJG9pbCAhZGVmYXVsdDtcclxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XHJcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xyXG4kY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpICFkZWZhdWx0O1xyXG4kY29kZS1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xyXG4kY29kZS1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xyXG4kY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpICFkZWZhdWx0O1xyXG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyKSByZW0tY2FsYyg1KSByZW0tY2FsYygxKSAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcclxuJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcclxuJGFuY2hvci1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcclxuJGhyLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xyXG4kaHItYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcclxuJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcclxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXHJcbiRsaXN0LWZvbnQtZmFtaWx5OiAkcGFyYWdyYXBoLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xyXG4kbGlzdC1mb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplICFkZWZhdWx0O1xyXG4kbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodCAhZGVmYXVsdDtcclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xyXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbSAhZGVmYXVsdDtcclxuJGxpc3Qtb3JkZXJlZC1zaWRlLW1hcmdpbjogMS40cmVtICFkZWZhdWx0O1xyXG4kbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ6IDAgIWRlZmF1bHQ7XHJcbiRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcclxuJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTogLjNyZW0gIWRlZmF1bHQ7XHJcbiRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGJsb2NrcXVvdGVzXHJcbiRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcclxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcclxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJGdhaW5zYm9ybyAhZGVmYXVsdDtcclxuJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcclxuJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDIzJSkgIWRlZmF1bHQ7XHJcbiRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yICFkZWZhdWx0O1xyXG5cclxuLy8gQWNyb255bSBzdHlsZXNcclxuJGFjcm9ueW0tdW5kZXJsaW5lOiAxcHggZG90dGVkICRnYWluc2Jvcm8gIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBwYWRkaW5nIGFuZCBtYXJnaW5cclxuJG1pY3JvZm9ybWF0LXBhZGRpbmc6IHJlbS1jYWxjKDEwIDEyKSAhZGVmYXVsdDtcclxuJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApICFkZWZhdWx0O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcclxuJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xyXG4kbWljcm9mb3JtYXQtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcclxuJG1pY3JvZm9ybWF0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGZ1bGwgbmFtZSBmb250IHN0eWxlc1xyXG4kbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xyXG4kbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdW1tYXJ5IGZvbnQgc3R5bGVzXHJcbiRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBwYWRkaW5nXHJcbiRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgZm9udCBzdHlsZXNcclxuJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xyXG4kbWljcm9mb3JtYXQtYWJici1mb250LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XHJcblxyXG4vLyBUZXh0IGFsaWdubWVudCBjbGFzcyBuYW1lc1xyXG4kYWxpZ24tY2xhc3MtbmFtZXM6XHJcbiAgc21hbGwtb25seSxcclxuICBzbWFsbCxcclxuICBtZWRpdW0tb25seSxcclxuICBtZWRpdW0sXHJcbiAgbGFyZ2Utb25seSxcclxuICBsYXJnZSxcclxuICB4bGFyZ2Utb25seSxcclxuICB4bGFyZ2UsXHJcbiAgeHhsYXJnZS1vbmx5LFxyXG4gIHh4bGFyZ2U7XHJcblxyXG4vLyBUZXh0IGFsaWdubWVudCBicmVha3BvaW50c1xyXG4kYWxpZ24tY2xhc3MtYnJlYWtwb2ludHM6XHJcbiAgJHNtYWxsLW9ubHksXHJcbiAgJHNtYWxsLXVwLFxyXG4gICRtZWRpdW0tb25seSxcclxuICAkbWVkaXVtLXVwLFxyXG4gICRsYXJnZS1vbmx5LFxyXG4gICRsYXJnZS11cCxcclxuICAkeGxhcmdlLW9ubHksXHJcbiAgJHhsYXJnZS11cCxcclxuICAkeHhsYXJnZS1vbmx5LFxyXG4gICR4eGxhcmdlLXVwO1xyXG5cclxuLy8gR2VuZXJhdGVzIHRleHQgYWxpZ24gYW5kIGp1c3RpZnkgY2xhc3Nlc1xyXG5AbWl4aW4gYWxpZ24tY2xhc3Nlc3tcclxuICAudGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XHJcbiAgLnRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cclxuICAudGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cclxuICAudGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRhbGlnbi1jbGFzcy1uYW1lcykge1xyXG4gICAgQG1lZGlhICN7KG50aCgkYWxpZ24tY2xhc3MtYnJlYWtwb2ludHMsICRpKSl9IHtcclxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtbGVmdCB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxyXG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxyXG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cclxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9cclxuLy8gVHlwb2dyYXBoeSBQbGFjZWhvbGRlcnNcclxuLy9cclxuXHJcbi8vIFRoZXNlIHdpbGwgdGhyb3cgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGlmIHVzZWQgd2l0aGluIGEgbWVkaWEgcXVlcnkuXHJcbkBtaXhpbiBsZWFkIHtcclxuICBmb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplICsgcmVtLWNhbGMoMy41KTtcclxuICBsaW5lLWhlaWdodDogMS42O1xyXG59XHJcblxyXG5AbWl4aW4gc3ViaGVhZGVyIHtcclxuICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJHN1YmhlYWRlci1mb250LWNvbG9yO1xyXG4gIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xyXG4gIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItdG9wLW1hcmdpbjtcclxuICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW47XHJcbn1cclxuQGluY2x1ZGUgZXhwb3J0cyhcInR5cGVcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLXR5cGUtY2xhc3NlcyB7XHJcbiAgICAvLyBSZXNwb25zaXZlIFRleHQgYWxpZ25tZW50XHJcbiAgICBAaW5jbHVkZSBhbGlnbi1jbGFzc2VzO1xyXG5cclxuICAgIC8qIFR5cG9ncmFwaHkgcmVzZXRzICovXHJcbiAgICBkaXYsXHJcbiAgICBkbCxcclxuICAgIGR0LFxyXG4gICAgZGQsXHJcbiAgICB1bCxcclxuICAgIG9sLFxyXG4gICAgbGksXHJcbiAgICBoMSxcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCxcclxuICAgIGg1LFxyXG4gICAgaDYsXHJcbiAgICBwcmUsXHJcbiAgICBmb3JtLFxyXG4gICAgcCxcclxuICAgIGJsb2NrcXVvdGUsXHJcbiAgICB0aCxcclxuICAgIHRkIHtcclxuICAgICAgbWFyZ2luOjA7XHJcbiAgICAgIHBhZGRpbmc6MDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBEZWZhdWx0IExpbmsgU3R5bGVzICovXHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRhbmNob3ItZm9udC1jb2xvcjtcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGFuY2hvci1mb250LWNvbG9yLWhvdmVyO1xyXG4gICAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XHJcbiAgICAgICAgXHR0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaW1nIHsgYm9yZGVyOm5vbmU7IH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBEZWZhdWx0IHBhcmFncmFwaCBzdHlsZXMgKi9cclxuICAgIHAge1xyXG4gICAgICBmb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcclxuICAgICAgZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZTtcclxuICAgICAgZm9udC13ZWlnaHQ6ICRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiAgICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xyXG5cclxuICAgICAgJi5sZWFkIHsgQGluY2x1ZGUgbGVhZDsgfVxyXG5cclxuICAgICAgJiBhc2lkZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc2l6ZTtcclxuICAgICAgICBmb250LXN0eWxlOiAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBEZWZhdWx0IGhlYWRlciBzdHlsZXMgKi9cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICBjb2xvcjogJGhlYWRlci1mb250LWNvbG9yO1xyXG4gICAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcclxuICAgICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xyXG4gICAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcclxuICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZS1oZWlnaHQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItYm90dG9tLW1hcmdpbjtcclxuICAgICAgbWFyZ2luLXRvcDogJGhlYWRlci10b3AtbWFyZ2luO1xyXG4gICAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcclxuXHJcbiAgICAgIHNtYWxsIHtcclxuICAgICAgICBjb2xvcjogJHNtYWxsLWZvbnQtY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDEgeyBmb250LXNpemU6ICRoMS1mb250LXNpemUgLSAkaDEtZm9udC1yZWR1Y3Rpb247IH1cclxuICAgIGgyIHsgZm9udC1zaXplOiAkaDItZm9udC1zaXplIC0gJGgyLWZvbnQtcmVkdWN0aW9uOyB9XHJcbiAgICBoMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZSAtICRoMy1mb250LXJlZHVjdGlvbjsgfVxyXG4gICAgaDQgeyBmb250LXNpemU6ICRoNC1mb250LXNpemUgLSAkaDQtZm9udC1yZWR1Y3Rpb247IH1cclxuICAgIGg1IHsgZm9udC1zaXplOiAkaDUtZm9udC1zaXplIC0gJGg1LWZvbnQtcmVkdWN0aW9uOyB9XHJcbiAgICBoNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZSAtICRoNi1mb250LXJlZHVjdGlvbjsgfVxyXG5cclxuICAgIC5zdWJoZWFkZXIgeyBAaW5jbHVkZSBzdWJoZWFkZXI7IH1cclxuXHJcbiAgICBociB7XHJcbiAgICAgIGJvcmRlcjogJGhyLWJvcmRlci1zdHlsZSAkaHItYm9yZGVyLWNvbG9yO1xyXG4gICAgICBib3JkZXItd2lkdGg6ICRoci1ib3JkZXItd2lkdGggMCAwO1xyXG4gICAgICBjbGVhcjogYm90aDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICBtYXJnaW46ICRoci1tYXJnaW4gMCAoJGhyLW1hcmdpbiAtIHJlbS1jYWxjKCRoci1ib3JkZXItd2lkdGgpKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBIZWxwZnVsIFR5cG9ncmFwaHkgRGVmYXVsdHMgKi9cclxuICAgIGVtLFxyXG4gICAgaSB7XHJcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3Ryb25nLFxyXG4gICAgYiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcclxuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgc21hbGwge1xyXG4gICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgfVxyXG5cclxuICAgIGNvZGUge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItY29sb3I6ICRjb2RlLWJvcmRlci1jb2xvcjtcclxuICAgICAgYm9yZGVyLXN0eWxlOiAkY29kZS1ib3JkZXItc3R5bGU7XHJcbiAgICAgIGJvcmRlci13aWR0aDogJGNvZGUtYm9yZGVyLXNpemU7XHJcbiAgICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcclxuICAgICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xyXG4gICAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XHJcbiAgICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgLyogTGlzdHMgKi9cclxuICAgIHVsLFxyXG4gICAgb2wsXHJcbiAgICBkbCB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkbGlzdC1mb250LWZhbWlseTtcclxuICAgICAgZm9udC1zaXplOiAkbGlzdC1mb250LXNpemU7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5lLWhlaWdodDtcclxuICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xyXG4gICAgICAmLm5vLWJ1bGxldCB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgdWwsXHJcbiAgICAgICAgICBvbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBVbm9yZGVyZWQgTGlzdHMgKi9cclxuICAgIHVsIHtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHVsLFxyXG4gICAgICAgIG9sIHtcclxuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuc3F1YXJlLFxyXG4gICAgICAmLmNpcmNsZSxcclxuICAgICAgJi5kaXNjIHtcclxuICAgICAgICBsaSB1bCB7IGxpc3Qtc3R5bGU6IGluaGVyaXQ7IH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zcXVhcmUgeyBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjt9XHJcbiAgICAgICYuY2lyY2xlIHsgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxyXG4gICAgICAmLmRpc2MgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxyXG4gICAgICAmLm5vLWJ1bGxldCB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBPcmRlcmVkIExpc3RzICovXHJcbiAgICBvbCB7XHJcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtb3JkZXJlZC1zaWRlLW1hcmdpbjtcclxuICAgICAgbGkge1xyXG4gICAgICAgIHVsLFxyXG4gICAgICAgIG9sIHtcclxuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogRGVmaW5pdGlvbiBMaXN0cyAqL1xyXG4gICAgZGwge1xyXG4gICAgICBkdCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTtcclxuICAgICAgICBmb250LXdlaWdodDogJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0O1xyXG4gICAgICB9XHJcbiAgICAgIGRkIHsgbWFyZ2luLWJvdHRvbTogJGRlZmluaXRpb24tbGlzdC1tYXJnaW4tYm90dG9tOyB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogQWJicmV2aWF0aW9ucyAqL1xyXG4gICAgYWJicixcclxuICAgIGFjcm9ueW0ge1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBmb250LXNpemU6IDkwJTtcclxuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiAgICAgIGN1cnNvcjogJGN1cnNvci1oZWxwLXZhbHVlO1xyXG4gICAgfVxyXG4gICAgYWJiciB7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAmW3RpdGxlXSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFjcm9ueW0tdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogQmxvY2txdW90ZXMgKi9cclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiAgICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XHJcbiAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xyXG5cclxuICAgICAgY2l0ZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtc2l6ZTtcclxuICAgICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSxcclxuICAgICAgICBhOnZpc2l0ZWQge1xyXG4gICAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGJsb2NrcXVvdGUsXHJcbiAgICBibG9ja3F1b3RlIHAge1xyXG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcclxuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWZvbnQtY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgLyogTWljcm9mb3JtYXRzICovXHJcbiAgICAudmNhcmQge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogJG1pY3JvZm9ybWF0LW1hcmdpbjtcclxuICAgICAgYm9yZGVyOiAkbWljcm9mb3JtYXQtYm9yZGVyLXdpZHRoICRtaWNyb2Zvcm1hdC1ib3JkZXItc3R5bGUgJG1pY3JvZm9ybWF0LWJvcmRlci1jb2xvcjtcclxuICAgICAgcGFkZGluZzogJG1pY3JvZm9ybWF0LXBhZGRpbmc7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICAgIC5mbiB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDtcclxuICAgICAgICBmb250LXNpemU6ICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXNpemU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudmV2ZW50IHtcclxuICAgICAgLnN1bW1hcnkgeyBmb250LXdlaWdodDogJG1pY3JvZm9ybWF0LXN1bW1hcnktZm9udC13ZWlnaHQ7IH1cclxuXHJcbiAgICAgIGFiYnIge1xyXG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbWljcm9mb3JtYXQtYWJici1mb250LXdlaWdodDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogJG1pY3JvZm9ybWF0LWFiYnItcGFkZGluZztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYgeyBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDsgfVxyXG4gICAgICBoMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTsgfVxyXG4gICAgICBoMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxyXG4gICAgICBoMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZTsgfVxyXG4gICAgICBoNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTsgfVxyXG4gICAgICBoNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxyXG4gICAgICBoNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZTsgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcclxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxyXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcclxuXHJcbkBpbXBvcnQgJ2dsb2JhbCc7XHJcbkBpbXBvcnQgJ3R5cGUnO1xyXG5cclxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIFZhcmlhYmxlc1xyXG4kaW5jbHVkZS1odG1sLW9mZi1jYW52YXMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xyXG5cclxuJHRhYmJhci1iZzogJG9pbCAhZGVmYXVsdDtcclxuJHRhYmJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KSAhZGVmYXVsdDtcclxuJHRhYmJhci1pY29uLXdpZHRoOiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcclxuJHRhYmJhci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XHJcbiR0YWJiYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRhYmJhci1taWRkbGUtcGFkZGluZzogMCByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XHJcblxyXG4vLyBPZmYgQ2FudmFzIERpdmlkZXIgU3R5bGVzXHJcbiR0YWJiYXItbGVmdC1zZWN0aW9uLWJvcmRlcjogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpICFkZWZhdWx0O1xyXG4kdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyOiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XHJcblxyXG5cclxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIEhlYWRlcnNcclxuJHRhYmJhci1oZWFkZXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcclxuJHRhYmJhci1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJHRhYmJhci1oZWFkZXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xyXG4kdGFiYmFyLWhlYWRlci1tYXJnaW46IDAgIWRlZmF1bHQ7XHJcblxyXG4vLyBPZmYgQ2FudmFzIE1lbnUgVmFyaWFibGVzXHJcbiRvZmYtY2FudmFzLXdpZHRoOiByZW0tY2FsYygyNTApICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1iZzogJG9pbCAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtYmctaG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1iZy1hY3RpdmU6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xyXG5cclxuLy8gT2ZmIENhbnZhcyBNZW51IExpc3QgVmFyaWFibGVzXHJcbiRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc6IC4zcmVtIHJlbS1jYWxjKDE1KSAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtbGFiZWwtY29sb3I6ICRhbHVtaW51bSAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtbGFiZWwtYmc6ICR0dWF0YXJhICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSkgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b206IG5vbmUgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWxhYmVsLW1hcmdpbjowICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDEwLCAxNSkgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWxpbmstY29sb3I6IHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWxpbmstYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWJnLCAkbGlnaHRuZXNzOiAtMjUlKSAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtYmFjay1iZzogIzQ0NCAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtYmFjay1ib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b20gIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLWJhY2staG92ZXItYmc6IHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWJhY2stYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKSAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItYm90dG9tOiBub25lICFkZWZhdWx0O1xyXG5cclxuLy8gT2ZmIENhbnZhcyBNZW51IEljb24gVmFyaWFibGVzXHJcbiR0YWJiYXItbWVudS1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XHJcbiR0YWJiYXItbWVudS1pY29uLWhvdmVyOiBzY2FsZS1jb2xvcigkdGFiYmFyLW1lbnUtaWNvbi1jb2xvciwgJGxpZ2h0bmVzczogLTMwJSkgIWRlZmF1bHQ7XHJcblxyXG4kdGFiYmFyLW1lbnUtaWNvbi10ZXh0LWluZGVudDogcmVtLWNhbGMoMzUpICFkZWZhdWx0O1xyXG4kdGFiYmFyLW1lbnUtaWNvbi13aWR0aDogJHRhYmJhci1pY29uLXdpZHRoICFkZWZhdWx0O1xyXG4kdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xyXG4kdGFiYmFyLW1lbnUtaWNvbi1wYWRkaW5nOiAwICFkZWZhdWx0O1xyXG5cclxuJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xyXG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQ6IGZhbHNlICFkZWZhdWx0O1xyXG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcDogZmFsc2UgIWRlZmF1bHQ7XHJcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzOiAxcHggIWRlZmF1bHQ7XHJcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tZ2FwOiA2cHggIWRlZmF1bHQ7XHJcblxyXG4vLyBPZmYgQ2FudmFzIEJhY2stTGluayBPdmVybGF5XHJcbiRvZmYtY2FudmFzLW92ZXJsYXktdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjogcG9pbnRlciAhZGVmYXVsdDtcclxuJG9mZi1jYW52YXMtb3ZlcmxheS1ib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoJGJsYWNrLCAuNSksIDRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xyXG4kb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuMikgIWRlZmF1bHQ7XHJcbiRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XHJcblxyXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xyXG4kbWVudS1zbGlkZTogXCJ0cmFuc2Zvcm0gNTAwbXMgZWFzZVwiICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vIE1JWElOU1xyXG4vLyBSZW1vdmUgdHJhbnNpdGlvbiBmbGlja2VyIG9uIHBob25lc1xyXG5AbWl4aW4ga2lsbC1mbGlja2VyIHtcclxuICAvLyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigweCk7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuXHJcbi8vIEJhc2ljIHByb3BlcnRpZXMgZm9yIHRoZSBjb250ZW50IHdyYXBzXHJcbkBtaXhpbiB3cmFwLWJhc2Uge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopIHtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eik7XHJcbiAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHR4LCAkdHkpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KTtcclxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eik7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopXHJcbn1cclxuXHJcbi8vIGJhc2ljIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcyBtZW51IGNvbnRhaW5lclxyXG5AbWl4aW4gb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbikge1xyXG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcclxuICAqIHsgQGluY2x1ZGUga2lsbC1mbGlja2VyOyB9XHJcbiAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmc7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgb3ZlcmZsb3cteTogYXV0bztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlIDBzO1xyXG4gIHdpZHRoOiAkb2ZmLWNhbnZhcy13aWR0aDtcclxuICB6LWluZGV4OiAxMDAxO1xyXG5cclxuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwwLDApO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBPRkYgQ0FOVkFTIFdSQVBcclxuLy8gV3JhcCB2aXNpYmxlIGNvbnRlbnQgYW5kIHByZXZlbnQgc2Nyb2xsIGJhcnNcclxuQG1peGluIG9mZi1jYW52YXMtd3JhcCB7XHJcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xyXG4gIEBpbmNsdWRlIHdyYXAtYmFzZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICYubW92ZS1yaWdodCxcclxuICAmLm1vdmUtbGVmdCB7IG1pbi1oZWlnaHQ6IDEwMCU7IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxyXG59XHJcblxyXG4vLyBJTk5FUiBXUkFQXHJcbi8vIE1haW4gY29udGVudCBhcmVhIHRoYXQgbW92ZXMgdG8gcmV2ZWFsIHRoZSBvZmYtY2FudmFzIG5hdlxyXG5AbWl4aW4gaW5uZXItd3JhcCB7XHJcbiAgLy8gQGluY2x1ZGUga2lsbC1mbGlja2VyO1xyXG4gIC8vIHJlbW92ZWQgZm9yIG5vdyB0aWxsIGNocm9tZSBmaXhlcyBiYWNrZmFjZSBpc3N1ZVxyXG4gIEBpbmNsdWRlIHdyYXAtYmFzZTtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtI3skbWVudS1zbGlkZX07XHJcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LSN7JG1lbnUtc2xpZGV9O1xyXG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtI3skbWVudS1zbGlkZX07XHJcbiAgLW8tdHJhbnNpdGlvbjogLW8tI3skbWVudS1zbGlkZX07XHJcbiAgdHJhbnNpdGlvbjogI3skbWVudS1zbGlkZX07XHJcbn1cclxuXHJcbi8vIFRBQiBCQVJcclxuLy8gVGhpcyBpcyB0aGUgdGFiIGJhciBiYXNlXHJcbkBtaXhpbiB0YWItYmFyLWJhc2Uge1xyXG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcclxuXHJcbiAgLy8gYmFzZSBzdHlsZXNcclxuICBiYWNrZ3JvdW5kOiAkdGFiYmFyLWJnO1xyXG4gIGNvbG9yOiAkdGFiYmFyLWNvbG9yO1xyXG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XHJcbiAgbGluZS1oZWlnaHQ6ICR0YWJiYXItbGluZS1oZWlnaHQ7XHJcblxyXG4gIC8vIG1ha2Ugc3VyZSBpdCdzIGJlbG93IHRoZSAuZXhpdC1vZmYtY2FudmFzIGxpbmtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgLy8gei1pbmRleDogOTk5O1xyXG5cclxuICAvLyBUeXBvZ3JhcGh5XHJcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICBjb2xvcjogJHRhYmJhci1oZWFkZXItY29sb3I7XHJcbiAgICBmb250LXdlaWdodDogJHRhYmJhci1oZWFkZXItd2VpZ2h0O1xyXG4gICAgbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVhZGVyLWxpbmUtaGVpZ2h0O1xyXG4gICAgbWFyZ2luOiAkdGFiYmFyLWhlYWRlci1tYXJnaW47XHJcbiAgfVxyXG4gIGgxLCBoMiwgaDMsIGg0IHsgZm9udC1zaXplOiAkaDUtZm9udC1zaXplOyB9XHJcbn1cclxuXHJcbi8vIFNNQUxMIFNFQ1RJT05TXHJcbi8vIFRoZXNlIGFyZSBzbWFsbCBzZWN0aW9ucyBvbiB0aGUgbGVmdCBhbmQgcmlnaHQgdGhhdCBjb250YWluIHRoZSBvZmYtY2FudmFzIHRvZ2dsZSBidXR0b25zO1xyXG5AbWl4aW4gdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uKSB7XHJcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHdpZHRoOiAkdGFiYmFyLWljb24td2lkdGg7XHJcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcclxuICAgIGJvcmRlci1yaWdodDogJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyO1xyXG4gICAgLy8gYm94LXNoYWRvdzogMXB4IDAgMCBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAxMyUpO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XHJcbiAgICBib3JkZXItbGVmdDogJHRhYmJhci1yaWdodC1zZWN0aW9uLWJvcmRlcjtcclxuICAgIC8vIGJveC1zaGFkb3c6IC0xcHggMCAwIHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpO1xyXG4gICAgcmlnaHQ6MDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0YWItYmFyLXNlY3Rpb24ge1xyXG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XHJcbiAgcGFkZGluZzogJHRhYmJhci1taWRkbGUtcGFkZGluZztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRvcDogMDtcclxuICAgICYubGVmdCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cclxuICAgICYucmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxyXG5cclxuXHJcbiAgLy8gc3RpbGwgbmVlZCB0byBtYWtlIHRoZXNlIG5vbi1wcmVzZW50YXRpb25hbFxyXG4gICYubGVmdCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6ICR0YWJiYXItaWNvbi13aWR0aDtcclxuICB9XHJcbiAgJi5yaWdodCB7XHJcbiAgICBsZWZ0OiAkdGFiYmFyLWljb24td2lkdGg7XHJcbiAgICByaWdodDogMDtcclxuICB9XHJcbiAgJi5taWRkbGUge1xyXG4gICAgbGVmdDogJHRhYmJhci1pY29uLXdpZHRoO1xyXG4gICAgcmlnaHQ6ICR0YWJiYXItaWNvbi13aWR0aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE9GRiBDQU5WQVMgTElTVFxyXG4vLyBUaGlzIGlzIHRoZSBsaXN0IG9mIGxpbmtzIGluIHRoZSBvZmYtY2FudmFzIG1lbnVcclxuQG1peGluIG9mZi1jYW52YXMtbGlzdCB7XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIG1hcmdpbjowO1xyXG4gIHBhZGRpbmc6MDtcclxuXHJcbiAgbGkge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1sYWJlbC1iZztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbTtcclxuICAgICAgYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLXRvcDtcclxuICAgICAgY29sb3I6ICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZm9udC1zaXplOiAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXNpemU7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDtcclxuICAgICAgbWFyZ2luOiAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW47XHJcbiAgICAgIHBhZGRpbmc6ICRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1saW5rLWJvcmRlci1ib3R0b207XHJcbiAgICAgIGNvbG9yOiAkb2ZmLWNhbnZhcy1saW5rLWNvbG9yO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGluay1wYWRkaW5nO1xyXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnLWhvdmVyO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iZy1hY3RpdmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG4vLyBCQUNLIExJTktcclxuLy8gVGhpcyBpcyBhbiBvdmVybGF5IHRoYXQsIHdoZW4gY2xpY2tlZCwgd2lsbCB0b2dnbGUgb2ZmIHRoZSBvZmYgY2FudmFzIG1lbnVcclxuQG1peGluIGJhY2stbGluayB7XHJcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xyXG5cclxuICBib3gtc2hhZG93OiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJveC1zaGFkb3c7XHJcbiAgY3Vyc29yOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjtcclxuICB0cmFuc2l0aW9uOiAkb2ZmLWNhbnZhcy1vdmVybGF5LXRyYW5zaXRpb247XHJcblxyXG4gIC8vIGZpbGwgdGhlIHNjcmVlblxyXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcclxuICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB6LWluZGV4OiAxMDAyO1xyXG5cclxuICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kLWhvdmVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy9cclxuLy8gT2ZmLUNhbnZhcyBTdWJtZW51IENsYXNzZXNcclxuLy9cclxuQG1peGluIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb24pIHtcclxuICBAaW5jbHVkZSBraWxsLWZsaWNrZXI7XHJcbiAgKiB7IEBpbmNsdWRlIGtpbGwtZmxpY2tlcjsgfVxyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iZztcclxuICBib3R0b206IDA7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgd2lkdGg6ICRvZmYtY2FudmFzLXdpZHRoO1xyXG4gIHotaW5kZXg6IDEwMDI7XHJcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcclxuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxuICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcclxuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtI3skbWVudS1zbGlkZX07XHJcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LSN7JG1lbnUtc2xpZGV9O1xyXG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtI3skbWVudS1zbGlkZX07XHJcbiAgLW8tdHJhbnNpdGlvbjogLW8tI3skbWVudS1zbGlkZX07XHJcbiAgdHJhbnNpdGlvbjogI3skbWVudS1zbGlkZX07XHJcblxyXG4gIC8vYmFjayBidXR0b24gc3R5bGUgbGlrZSBsYWJlbFxyXG4gIC5iYWNrID4gYSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iYWNrLWJnO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtYmFjay1ib3JkZXItYm90dG9tO1xyXG4gICAgYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtYmFjay1ib3JkZXItdG9wO1xyXG4gICAgY29sb3I6ICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0O1xyXG4gICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZztcclxuICAgIHRleHQtdHJhbnNmb3JtOiAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmFjay1ob3Zlci1iZztcclxuICAgICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItYm90dG9tO1xyXG4gICAgICBib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A7XHJcbiAgICB9XHJcblxyXG4gICAgbWFyZ2luOiAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW47XHJcbiAgICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcclxuICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xyXG4gICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLy9MZWZ0IGRvdWJsZSBhbmdsZSBxdW90ZSBvciBSaWdodCBkb3VibGUgYW5nbGUgcXVvdGUgY2hhcnNcclxuQG1peGluIGljb24tZG91YmxlLWFycm93cyAoJHBvc2l0aW9uKSB7XHJcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcclxuICAgIGNvbnRlbnQ6IFwiXFxBQlwiO1xyXG4gICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XHJcbiAgICBjb250ZW50OiBcIlxcQkJcIjtcclxuICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRpc3BsYXk6IGlubGluZTtcclxufVxyXG5cclxuLy9cclxuLy8gREVGQVVMVCBDTEFTU0VTXHJcbi8vXHJcbkBpbmNsdWRlIGV4cG9ydHMoXCJvZmZjYW52YXNcIikge1xyXG4gIEBpZiAkaW5jbHVkZS1odG1sLW9mZi1jYW52YXMtY2xhc3NlcyB7XHJcblxyXG4gICAgLm9mZi1jYW52YXMtd3JhcCB7IEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcDsgfVxyXG4gICAgLmlubmVyLXdyYXAgeyBAaW5jbHVkZSBpbm5lci13cmFwOyB9XHJcblxyXG4gICAgLnRhYi1iYXIgeyBAaW5jbHVkZSB0YWItYmFyLWJhc2U7IH1cclxuXHJcbiAgICAubGVmdC1zbWFsbCB7IEBpbmNsdWRlIHRhYmJhci1zbWFsbC1zZWN0aW9uKCRwb3NpdGlvbjogbGVmdCk7IH1cclxuICAgIC5yaWdodC1zbWFsbCB7IEBpbmNsdWRlIHRhYmJhci1zbWFsbC1zZWN0aW9uKCRwb3NpdGlvbjogcmlnaHQpOyB9XHJcblxyXG4gICAgLnRhYi1iYXItc2VjdGlvbiB7IEBpbmNsdWRlIHRhYi1iYXItc2VjdGlvbjsgfVxyXG5cclxuICAgIC8vIE1FTlUgQlVUVE9OXHJcbiAgICAvLyBUaGlzIGlzIGEgbGl0dGxlIGJvbnVzLiBZb3UgZG9uJ3QgbmVlZCBpdCBmb3Igb2ZmIGNhbnZhcyB0byB3b3JrLiBNaXhpbnMgdG8gYmUgd3JpdHRlbiBpbiB0aGUgZnV0dXJlLlxyXG4gICAgLnRhYi1iYXIgLm1lbnUtaWNvbiB7XHJcbiAgICAgIGNvbG9yOiAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGhlaWdodDogJHRhYmJhci1tZW51LWljb24taGVpZ2h0O1xyXG4gICAgICBwYWRkaW5nOiAkdGFiYmFyLW1lbnUtaWNvbi1wYWRkaW5nO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRleHQtaW5kZW50OiAkdGFiYmFyLW1lbnUtaWNvbi10ZXh0LWluZGVudDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAgIHdpZHRoOiAkdGFiYmFyLW1lbnUtaWNvbi13aWR0aDtcclxuXHJcbiAgICAgIC8vIEBpbmNsdWRlIGZvciB0aGUgaGFtYnVyZ2VyIG1lbnUtaWNvblxyXG4gICAgICAvL1xyXG4gICAgICAvLyBBcmd1bWVudHMgYXMgZm9sbG93czogKCR3aWR0aCwgJGxlZnQsICR0b3AsICR0aGlja25lc3MsICRnYXAsICRjb2xvciwgJGhvdmVyLWNvbG9yKVxyXG4gICAgICAvLyAkd2lkdGggLSBXaWR0aCBvZiBoYW1idXJnZXIgaWNvbiBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aC5cclxuICAgICAgLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0PSBGYWxzZVxyXG4gICAgICAvLyAkdG9wIC0gSWYgZmFsc2UsIGljb24gd2lsbCBiZSBjZW50ZXJlZCB2ZXJ0aWNhbGx5IHx8IGV4cGxpY2l0bHkgc2V0IHZhbHVlIGluIHJlbSBEZWZhdWx0OiA9IEZhbHNlXHJcbiAgICAgIC8vICR0aGlja25lc3MgLSB0aGlja25lc3Mgb2YgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweCBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzcyA9IDFweFxyXG4gICAgICAvLyAkZ2FwIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4IERlZmF1bHQ6ICR0YWJiYXItaGFtYnVyZ2VyLWljb24tZ2FwID0gNnB4XHJcbiAgICAgIC8vICRjb2xvciAtIGljb24gY29sb3IgRGVmYXVsdDogJHRhYmJhci1tZW51LWljb24tY29sb3JcclxuICAgICAgLy8gJGhvdmVyLWNvbG9yIC0gaWNvbiBjb2xvciB3aGVuIGhvdmVyZWQgRGVmYXVsdDogJHRhYmJhci1tZW51LWljb24taG92ZXJcclxuICAgICAgLy8gJG9mZmNhbnZhcyAtIFNldCB0byB0cnVlXHJcbiAgICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoLCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQsICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wLCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzcywgJHRhYmJhci1oYW1idXJnZXItaWNvbi1nYXAsICR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkdGFiYmFyLW1lbnUtaWNvbi1ob3ZlciwgdHJ1ZSlcclxuICAgIH1cclxuXHJcbiAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgeyBAaW5jbHVkZSBvZmYtY2FudmFzLW1lbnUoJHBvc2l0aW9uOiBsZWZ0KTsgfVxyXG4gICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb246IHJpZ2h0KTsgfVxyXG5cclxuICAgIHVsLm9mZi1jYW52YXMtbGlzdCB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbGlzdDsgfVxyXG5cclxuXHJcbiAgICAvLyBBTklNQVRJT04gQ0xBU1NFU1xyXG4gICAgLy8gVGhlc2UgY2xhc3NlcyBhcmUgYWRkZWQgd2l0aCBKUyBhbmQgdHJpZ2dlciB0aGUgYWN0dWFsIGFuaW1hdGlvbi5cclxuICAgIC5tb3ZlLXJpZ2h0IHtcclxuICAgICAgPiAuaW5uZXItd3JhcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoJG9mZi1jYW52YXMtd2lkdGgsMCwwKTtcclxuICAgICAgfVxyXG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rO31cclxuICAgIH1cclxuXHJcbiAgICAubW92ZS1sZWZ0IHtcclxuICAgICAgPiAuaW5uZXItd3JhcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLSgkb2ZmLWNhbnZhcy13aWR0aCksMCwwKTtcclxuXHJcbiAgICAgIH1cclxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxyXG4gICAgfVxyXG4gICAgLm9mZmNhbnZhcy1vdmVybGFwIHtcclxuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51LCAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgei1pbmRleDogMTAwMztcclxuICAgICAgfVxyXG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XHJcbiAgICB9XHJcbiAgICAub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCB7XHJcbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUge1xyXG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB6LWluZGV4OiAxMDAzO1xyXG4gICAgICB9XHJcbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cclxuICAgIH1cclxuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCB7XHJcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDM7XHJcbiAgICAgIH1cclxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIE9sZGVyIGJyb3dzZXJzXHJcbiAgICAubm8tY3NzdHJhbnNmb3JtcyB7XHJcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7IGxlZnQ6IC0oJG9mZi1jYW52YXMtd2lkdGgpOyB9XHJcbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgeyByaWdodDogLSgkb2ZmLWNhbnZhcy13aWR0aCk7IH1cclxuXHJcbiAgICAgIC5tb3ZlLWxlZnQgPiAuaW5uZXItd3JhcCB7IHJpZ2h0OiAkb2ZmLWNhbnZhcy13aWR0aDsgfVxyXG4gICAgICAubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHsgbGVmdDogJG9mZi1jYW52YXMtd2lkdGg7IH1cclxuICAgIH1cclxuXHJcbiAgICAubGVmdC1zdWJtZW51IHtcclxuICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdWJtZW51KCRwb3NpdGlvbjogbGVmdCk7XHJcbiAgICAgICYubW92ZS1yaWdodCwgJi5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCwgJi5vZmZjYW52YXMtb3ZlcmxhcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCUsMCwwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5yaWdodC1zdWJtZW51IHtcclxuICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdWJtZW51KCRwb3NpdGlvbjogcmlnaHQpO1xyXG4gICAgICAmLm1vdmUtbGVmdCwgJi5vZmZjYW52YXMtb3ZlcmxhcC1sZWZ0LCAmLm9mZmNhbnZhcy1vdmVybGFwIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwJSwwLDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xyXG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xyXG4gICAgICB9XHJcbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogcmlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IHJpZ2h0KTtcclxuICAgICAgfVxyXG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXHJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cclxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXHJcblxyXG5AaW1wb3J0ICdnbG9iYWwnO1xyXG5cclxuLy9cclxuLy8gRm91bmRhdGlvbiBWaXNpYmlsaXR5IENsYXNzZXNcclxuLy9cclxuJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcclxuJGluY2x1ZGUtYWNjZXNzaWJpbGl0eS1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xyXG4kaW5jbHVkZS10YWJsZS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XHJcbiRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vL1xyXG4vLyBNZWRpYSBDbGFzcyBOYW1lc1xyXG4vL1xyXG4vLyBWaXNpYmlsaXR5IEJyZWFrcG9pbnRzXHJcbiR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXM6XHJcbiAgc21hbGwsXHJcbiAgbWVkaXVtLFxyXG4gIGxhcmdlLFxyXG4gIHhsYXJnZSxcclxuICB4eGxhcmdlO1xyXG5cclxuJHZpc2liaWxpdHktYnJlYWtwb2ludC1xdWVyaWVzOlxyXG4gIHVucXVvdGUoJHNtYWxsLXVwKSxcclxuICB1bnF1b3RlKCRtZWRpdW0tdXApLFxyXG4gIHVucXVvdGUoJGxhcmdlLXVwKSxcclxuICB1bnF1b3RlKCR4bGFyZ2UtdXApLFxyXG4gIHVucXVvdGUoJHh4bGFyZ2UtdXApO1xyXG5cclxuQG1peGluIHZpc2liaWxpdHktbG9vcCB7XHJcbiAgQGVhY2ggJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xyXG4gICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogKCk7XHJcblxyXG4gICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiAoKTtcclxuXHJcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiAoKTtcclxuICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogKCk7XHJcblxyXG4gICAgQGVhY2ggJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xyXG4gICAgICBAaWYgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSA8IGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkge1xyXG4gICAgICAgIC8vIFNtYWxsZXIgdGhhbiBjdXJyZW50IGJyZWFrcG9pbnRcclxuXHJcbiAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAsIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcblxyXG4gICAgICAgIC8vIEZvdW5kYXRpb24gNCBjb21wYXRpYmlsaXR5OlxyXG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXHJcbiAgICAgICAgLy8gZm9yIHNtYWxsLCBtZWRpdW0sIGFuZCBsYXJnZSBicmVha3BvaW50cyBvbmx5XHJcbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMgYW5kIGluZGV4KChzbWFsbCwgbWVkaXVtLCBsYXJnZSksICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgIT0gZmFsc2Uge1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24sIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0gQGVsc2UgaWYgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSA+IGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkge1xyXG4gICAgICAgIC8vIExhcmdlciB0aGFuIGN1cnJlbnQgYnJlYWtwb2ludFxyXG5cclxuICAgICAgICAkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1ub25lLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuXHJcbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XHJcbiAgICAgICAgLy8gSW5jbHVkZSAuc2hvdy9oaWRlLWZvci1bc2l6ZV0gYW5kIC5zaG93L2hpZGUtZm9yLVtzaXplXS1kb3duIGNsYXNzZXNcclxuICAgICAgICAvLyBmb3Igc21hbGwsIG1lZGl1bSwgYW5kIGxhcmdlIGJyZWFrcG9pbnRzIG9ubHlcclxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1pbmhlcml0LWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1ub25lLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS12aXNpYmxlLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAndGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICd0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJ3Rib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAndHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJ3RoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93biwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgLy8gQ3VycmVudCBicmVha3BvaW50XHJcblxyXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAndGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICd0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xyXG4gICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJ3Rib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAndHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcclxuICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgJ3RoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXHJcbiAgICAgICAgKSwgY29tbWEpO1xyXG5cclxuICAgICAgICAvLyBGb3VuZGF0aW9uIDQgY29tcGF0aWJpbGl0eTpcclxuICAgICAgICAvLyBJbmNsdWRlIC5zaG93L2hpZGUtZm9yLVtzaXplXSBhbmQgLnNob3cvaGlkZS1mb3ItW3NpemVdLWRvd24gY2xhc3Nlc1xyXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxyXG4gICAgICAgIEBpZiAkaW5jbHVkZS1sZWdhY3ktdmlzaWJpbGl0eS1jbGFzc2VzIGFuZCBpbmRleCgoc21hbGwsIG1lZGl1bSwgbGFyZ2UpLCAkdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnQpICE9IGZhbHNlIHtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICd0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcclxuICAgICAgICAgICAgJ3RoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXHJcbiAgICAgICAgICApLCBjb21tYSk7XHJcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAndGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXHJcbiAgICAgICAgICAgICd0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xyXG4gICAgICAgICAgKSwgY29tbWEpO1xyXG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxyXG4gICAgICAgICAgICAndGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcclxuICAgICAgICAgICksIGNvbW1hKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiAjeyRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludH0gZGlzcGxheXMgKi9cclxuICAgIEBtZWRpYSAje250aCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXF1ZXJpZXMsIGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkpfSB7XHJcbiAgICAgICN7JHZpc2liaWxpdHktaW5oZXJpdC1saXN0fSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgICN7JHZpc2liaWxpdHktbm9uZS1saXN0fSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIEBpZiAkaW5jbHVkZS1hY2Nlc3NpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xyXG4gICAgICAgICN7JHZpc2liaWxpdHktdmlzaWJsZS1saXN0fSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICN7JHZpc2liaWxpdHktaGlkZGVuLWxpc3R9IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaWYgJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzICE9IGZhbHNlIHtcclxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLWxpc3R9IHtcclxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3R9IHtcclxuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0fSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdH0ge1xyXG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xyXG4gICAgICAgIH1cclxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdH0ge1xyXG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZXhwb3J0cyhcInZpc2liaWxpdHlcIil7XHJcbiAgQGlmICRpbmNsdWRlLWh0bWwtdmlzaWJpbGl0eS1jbGFzc2VzICE9IGZhbHNlIHtcclxuXHJcbiAgQGluY2x1ZGUgdmlzaWJpbGl0eS1sb29wO1xyXG5cclxuICAvKiBPcmllbnRhdGlvbiB0YXJnZXRpbmcgKi9cclxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxyXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxyXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXHJcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xyXG4gIHRhYmxlIHtcclxuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxyXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbiAgdGhlYWQge1xyXG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXHJcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbiAgdGJvZHkge1xyXG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXHJcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbiAgdHIge1xyXG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXHJcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cclxuICB9XHJcbiAgdGQsXHJcbiAgdGgge1xyXG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXHJcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgI3skbGFuZHNjYXBlfSB7XHJcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxyXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XHJcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxyXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4gICAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxyXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxyXG4gICAgfVxyXG4gICAgdGhlYWQge1xyXG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcclxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgICB0Ym9keSB7XHJcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxyXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICAgIH1cclxuICAgIHRyIHtcclxuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXHJcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxyXG4gICAgfVxyXG4gICAgdGQsXHJcbiAgICB0aCB7XHJcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxyXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgI3skcG9ydHJhaXR9IHtcclxuICAgIC5zaG93LWZvci1wb3J0cmFpdCxcclxuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cclxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCxcclxuICAgIC5zaG93LWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cclxuXHJcbiAgICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cclxuICAgIHRhYmxlIHtcclxuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcclxuICAgICAgJi5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgICB0aGVhZCB7XHJcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXHJcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICAgIH1cclxuICAgIHRib2R5IHtcclxuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcclxuICAgICAgJi5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxyXG4gICAgfVxyXG4gICAgdHIge1xyXG4gICAgICAmLnNob3ctZm9yLXBvcnRyYWl0LFxyXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgICB0ZCxcclxuICAgIHRoIHtcclxuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcclxuICAgICAgJi5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qIFRvdWNoLWVuYWJsZWQgZGV2aWNlIHRhcmdldGluZyAqL1xyXG4gIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxyXG4gIC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxyXG4gIC50b3VjaCAuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cclxuICAudG91Y2ggLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xyXG4gIHRhYmxlLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxyXG4gIC50b3VjaCB0YWJsZS5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cclxuICB0aGVhZC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XHJcbiAgLnRvdWNoIHRoZWFkLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICB0Ym9keS5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XHJcbiAgLnRvdWNoIHRib2R5LnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICB0ci5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgLnRvdWNoIHRyLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cclxuICB0ZC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG4gIC50b3VjaCB0ZC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG4gIHRoLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgLnRvdWNoIHRoLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcblxyXG4gIC8qIFNjcmVlbiByZWFkZXItc3BlY2lmaWMgY2xhc3NlcyAqL1xyXG4gIC5zaG93LWZvci1zciB7XHJcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcclxuICB9XHJcbiAgLnNob3ctb24tZm9jdXMge1xyXG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XHJcblxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gT25seSBpbmNsdWRlIHRoZXNlIHN0eWxlcyBpZiB5b3Ugd2FudCB0aGVtLlxyXG4gICAgQGlmICRpbmNsdWRlLXByaW50LXN0eWxlcyB7XHJcbiAgICAgIC8qXHJcbiAgICAgICAqIFByaW50IHN0eWxlcy5cclxuICAgICAgICpcclxuICAgICAgICogSW5saW5lZCB0byBhdm9pZCByZXF1aXJlZCBIVFRQIGNvbm5lY3Rpb246IHd3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXHJcbiAgICAgICAqIENyZWRpdCB0byBQYXVsIElyaXNoIGFuZCBIVE1MNSBCb2lsZXJwbGF0ZSAoaHRtbDVib2lsZXJwbGF0ZS5jb20pXHJcbiAgICAgICovXHJcbiAgICAgIC5wcmludC1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgICAgIEBtZWRpYSBwcmludCB7XHJcbiAgICAgICAgKiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zICovXHJcbiAgICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jazsgfVxyXG4gICAgICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAgICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxyXG4gICAgICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICAgICAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cclxuICAgICAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxyXG5cclxuICAgICAgICBhLFxyXG4gICAgICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cclxuICAgICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cclxuXHJcbiAgICAgICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cclxuXHJcbiAgICAgICAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyBmb3IgaW1hZ2VzLCBvciBqYXZhc2NyaXB0L2ludGVybmFsIGxpbmtzXHJcbiAgICAgICAgLmlyIGE6YWZ0ZXIsXHJcbiAgICAgICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxyXG4gICAgICAgIGFbaHJlZl49XCIjXCJdOmFmdGVyIHsgY29udGVudDogXCJcIjsgfVxyXG5cclxuICAgICAgICBwcmUsXHJcbiAgICAgICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWx1bWludW07XHJcbiAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLyogaDVicC5jb20vdCAqLyB9XHJcblxyXG4gICAgICAgIHRyLFxyXG4gICAgICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxyXG5cclxuICAgICAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxyXG5cclxuICAgICAgICBAcGFnZSB7IG1hcmdpbjogLjVjbTsgfVxyXG5cclxuICAgICAgICBwLFxyXG4gICAgICAgIGgyLFxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIG9ycGhhbnM6IDM7XHJcbiAgICAgICAgICB3aWRvd3M6IDM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMixcclxuICAgICAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XHJcblxyXG4gICAgICAgIC5oaWRlLW9uLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgLnByaW50LW9ubHkgeyBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcbiAgICAgICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgLyogUHJpbnQgdmlzaWJpbGl0eSAqL1xyXG4gICAgQG1lZGlhIHByaW50IHtcclxuICAgICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2s7IH1cclxuICAgICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XHJcbiAgICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cclxuICAgICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxyXG4gICAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XHJcbiAgICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAgSW4gZGllc2UgRGF0ZWkgd2VyZGVuIGFsbGUgZWlnZW5lbiBDU1NfQW53ZWlzdW5nZW4gZ2VzY2hyaWViZW5cclxuICAgIC0gICBWYXJpYWJsZW4gYml0dGUgaW4gZGVyIERhdGVpIF9zZXR0aW5ncyBkZWZpbmllcmVuXHJcbiAgICAtICAgRmFyYmVuIGJpdHRlIGF1Y2ggaW4gZGVyIFNldHRpbmdzIGRlZmluaWVyZW5cclxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gU2NocmlmdGFydGVuIGxhZGVuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5AaW1wb3J0IHVybCgnaHR0cDovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9UmFsZXdheTo1MDAsNDAwLDMwMCw3MDAnKTtcclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Nb250c2VycmF0OjQwMCw3MDAnKTtcclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBhbGxnZW1laW5lcyBMYXlvdXRcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbmhlYWRlciB7XHJcbiAgIC8vIGJhY2tncm91bmQ6dXJsKCcuLi8uLi9pbWcvaGVhZGVyLWJhY2tncm91bmQuZ2lmJykgY2VudGVyIGNlbnRlciByZXBlYXQteCB0cmFuc3BhcmVudDtcclxufVxyXG4jbWFpbi1jb250ZW50IHtcclxuICAgIHBhZGRpbmctYm90dG9tOjUwcHg7XHJcbn1cclxuXHJcbiNsb2dvIHtcclxuICAgIC8vaGVpZ2h0OiAxMTNweDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIC8vbWFyZ2luLWJvdHRvbToyMHB4O1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL2NcclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBIYXVwdMO8YmVyc2NocmlmdGVuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5oMSB7XHJcbiAgICBjb2xvcjogJGNvbG9yX2gxO1xyXG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtd2VpZ2h0OjQwMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MCk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDIwIDM1KTtcclxufVxyXG5cclxuLmxzLXNsaWRlIGgxe1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuLmgxX2JvcmRlcl9ib3R0b217XHJcblx0ZmxvYXQ6bGVmdDtcclxuXHRib3JkZXItYm90dG9tOjVweCBzb2xpZCAkaDFfYm9yZGVyX2JvdHRvbV9jb2xvcjtcclxuXHRwYWRkaW5nLWJvdHRvbToxMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206MjBweDtcclxuXHRwYWRkaW5nLXJpZ2h0OjQwcHg7XHJcblx0bWluLXdpZHRoOjMwMHB4O1xyXG59XHJcbi5oMV9ib3JkZXJfYm90dG9tIGgxe1xyXG5cdGRpc3BsYXk6aW5saW5lO1xyXG59XHJcblxyXG5oMntcclxuICAgIGNvbG9yOiAkbWFpblR1cnF1aXNlO1xyXG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSAwKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbmgzIHtcclxuICAgIGNvbG9yOiAkY29sb3JfaDM7XHJcblx0Zm9udC1zaXplOnJlbV9jYWxjKDE1KTtcclxufVxyXG5oNHtcclxuICAgIGNvbG9yOiAkY29sb3JfaDM7XHJcblx0Zm9udC1zaXplOnJlbV9jYWxjKDE1KTtcclxufVxyXG5oNXtcclxuICAgIGNvbG9yOiAkY29sb3JfaDM7XHJcblx0Zm9udC1zaXplOnJlbV9jYWxjKDE1KTtcclxufVxyXG5cclxuaDYubWlkbGluZXtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBtYXJnaW46MHB4O1xyXG4gICAgcGFkZGluZzowcHg7XHJcbiAgICBoZWlnaHQ6MXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokY29sb3JfaDY7XHJcbiAgICB3aWR0aDo4MHB4O1xyXG4gICAgbWFyZ2luOmF1dG87XHJcbn1cclxuaDMuY29sb3VyZWR7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR1ZWJlcnNjaHJpZnRfZmFyYmlnX2hpbnRlcmdydW5kO1xyXG4gICAgY29sb3I6JHVlYmVyc2NocmlmdF9mYXJiaWdfdGV4dDtcclxuICAgIGZvbnQtc2l6ZTpyZW1fY2FsYygxNSk7XHJcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDEwKTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxufVxyXG5oNCB7XHJcbiAgICBjb2xvcjogJGNvbG9yX2g0O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuaDUge1xyXG4gICAgY29sb3I6ICRjb2xvcl9oNTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gw5xiZXJzY2hyaWZ0IG1pdCBJY29uXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4uaGVhZGxpbmVfaWNvbl9jb250YWluZXJ7XHJcblxyXG4gICAgZGlzcGxheTp0YWJsZTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0Nyk7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaGVhZGxpbmVfaWNvbl9jb250YWluZXJfY29udGVudCB7XHJcbiAgICBib3JkZXItdG9wOiByZW0tY2FsYygxKSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcbiAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwIDAgMzEpO1xyXG59XHJcblxyXG5cclxuLmhlYWRsaW5lX2ljb25fY29udGFpbmVyIGRpdi5pY29uX2NvbnRhaW5lcntcclxuXHRkaXNwbGF5OnRhYmxlLWNlbGw7XHJcblx0dmVydGljYWwtYWxpZ246bWlkZGxlO1xyXG5cdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDMpO1xyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDcwMCkpIHtcclxuICAgIC5oZWFkbGluZV9pY29uX2NvbnRhaW5lciBkaXYuaWNvbl9jb250YWluZXJ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHRcdHdpZHRoOjFweDtcclxuXHRcdGhlaWdodDoxcHg7XHJcbiAgICB9XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIExpbmtzXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5he1xyXG4gICAgY29sb3IgICA6ICAgJGxpbmtfY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcclxufVxyXG5cclxuYTpob3ZlcntcclxuICAgIGNvbG9yICAgOiAgICRsaW5rX2NvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxufVxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIGFsbGdlbWVpbmUgSElsZnNrbGFzc2VuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4ucGFkZGluZy1sZWZ0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxufVxyXG4ucm93IHtcclxuICAgIG1heC13aWR0aDogODByZW07XHJcbn1cclxuLmZ1bGwtd2lkdGgge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmxlZnQgaW1nIHtcclxuICAgIHBhZGRpbmc6MCAyMHB4IDEwcHggMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uby1wYWRkaW5nIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuaGVhZGVyIHVsIGxpIGEge1xyXG5cclxufVxyXG4uYm9yZGVyLWJvdHRvbS1oZWFkX2ltYWdle1xyXG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRib3JkZXJfYm90dG9tX2hlYWRfaW1hZ2U7XHJcbn1cclxuLnJhZGl1cyB7XHJcbiAgICBtYXJnaW4tdG9wOiAyOXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIC8vYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRtYWluQ29sb3JZZWxsb3c7XHJcbn1cclxuXHJcbiNtYWluLWNvbnRlbnQgZGl2LmVsZW1lbnQtY29udGFpbmVyIHAsI21haW4tY29udGVudCBkaXYuZWxlbWVudC1jb250YWluZXIgdWx7XHJcblx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI2KTtcclxufVxyXG4ucGFuZWwge1xyXG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcclxuICAgIHBhZGRpbmc6IDI1cHggMThweCAxMHB4IDM4cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gYWxsZ2VtZWluZXIgQkxvY2tcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5ibG9ja19iYWNrZ3JvdW5ke1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogICAkYmxvY2tfYmFja2dyb3VuZDtcclxuICAgIHBhZGRpbmc6cmVtLWNhbGMoMjApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XHJcbn1cclxuLmVsZW1lbnQtY29udGFpbmVye1xyXG4gICAgbWFyZ2luOjBweDtcclxuICAgIHBhZGRpbmc6MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206JGVsZW1lbnRfYWJzdGFuZF91bnRlbjtcclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBFaW56ZWxuZXMgQmlsZFxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLnNpbmdsZS1pbWFnZS1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAyMCk7XHJcbn1cclxuLnNpbmdsZUltYWdlIGltZ3tcclxuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMjApO1xyXG59XHJcbi5zaW5nbGVJbWFnZXtcclxuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMjApO1xyXG59XHJcbi5tdWx0aW1lZGlhX3Jvd3tcclxuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDMwKTtcclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gVGV4dC1JbWFnZVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLnRleHQtaW1hZ2UgZGl2LnRleHQtaW1hZ2UtY29se1xyXG5cdGRpc3BsYXk6dGFibGUtY2VsbDtcclxuXHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRwYWRkaW5nOjBweDtcclxuXHRtYXJnaW46MHB4O1xyXG59XHJcbi50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbC1sZWZ0e1xyXG5cdHBhZGRpbmctcmlnaHQ6MjBweDtcclxufVxyXG4udGV4dC1pbWFnZSBkaXYudGV4dC1pbWFnZS1jb2wgaW1ne1xyXG5cdHBhZGRpbmctYm90dG9tOjEwcHg7XHJcblx0Ly93aWR0aDoxMDAlO1xyXG59XHJcblxyXG4udGV4dC1pbWFnZSBkaXYudGV4dC1pbWFnZS1jb2wtaW1hZ2V7XHJcblxyXG59XHJcbi50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbC10ZXh0e1xyXG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xyXG4gICAgdmVydGljYWwtYWxpZ246dG9wO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIHBhZGRpbmc6MHB4O1xyXG4gICAgbWFyZ2luOjBweDtcclxufVxyXG4udGV4dC1pbWFnZSAuaW1hZ2UtbGVnZW5kLWNvbnRhaW5lcntcclxuICAgIG1hcmdpbjoxMHB4IDAgMjBweCAwO1xyXG59XHJcbi5yaWdodCAuaW1hZ2UtbGVnZW5kLWNvbnRhaW5lcntcclxuICAgIHBhZGRpbmctbGVmdDoyMHB4O1xyXG59XHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoNzUwKSkge1xyXG4gICAgLnRleHQtaW1hZ2UgZGl2LnRleHQtaW1hZ2UtY29se1xyXG5cdFx0ZGlzcGxheTpibG9jaztcclxuXHRcdHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHQudGV4dC1pbWFnZSBkaXYudGV4dC1pbWFnZS1jb2wtbGVmdHtcclxuXHRcdHBhZGRpbmctcmlnaHQ6MHB4O1xyXG5cdH1cclxuXHQgLnRleHQtaW1hZ2UgZGl2LnRleHQtaW1hZ2UtY29sIGltZ3tcclxuXHRcdFx0cGFkZGluZzo1cHg7XHJcblx0XHRcdHdpZHRoOjEwMCU7XHJcblx0IH1cclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi5jb250ZW50X2xlZnQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiByZW0tY2FsYygxKSBkYXNoZWQgJGJvcmRlckNvbnRlbnRMZWZ0O1xyXG59XHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gRGFyc3RlbGx1bmcgdm9uIFplaWNoZW5zYXR6LWljb25zXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4uaWNvbntcclxuICAgIGZsb2F0OmxlZnQ7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHdpZHRoOnJlbS1jYWxjKDMwKTtcclxuICAgIGhlaWdodDoxcHg7XHJcbn1cclxuXHJcbi5pY29uX3JvdW5ke1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICB0b3A6MHB4O1xyXG4gICAgbGVmdDowcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRidXR0b25faWNvbl9iYWNrZ3JvdW5kY29sb3I7XHJcbiAgICB3aWR0aDpyZW0tY2FsYygyMCk7XHJcbiAgICBoZWlnaHQ6cmVtLWNhbGMoMjApO1xyXG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjApO1xyXG4gICAgZmxvYXQ6bGVmdDtcclxufVxyXG4uaWNvbl9yb3VuZDpob3ZlcntcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiRidXR0b25faWNvbl9ob3Zlcl9iYWNrZ3JvdW5kY29sb3I7XHJcblxyXG59XHJcbi5pY29uX3JvdW5kX3RleHR7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDpyZW0tY2FsYygtMSk7XHJcbiAgICBsZWZ0OnJlbS1jYWxjKDcpO1xyXG4gICAgY29sb3I6JGJ1dHRvbl9pY29uX2NvbG9yO1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBUYWJzXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4udGFic3tcclxuXHJcbn1cclxudWwudGFicyAudGFiLXRpdGxle1xyXG5cdGJvcmRlcjpzb2xpZCAxcHggJHRhYl90aXRsZV9ib3JkZXItY29sb3I7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0dG9wOjFweDtcclxuXHRtYXJnaW4tcmlnaHQ6M3B4O1xyXG59XHJcbnVsLnRhYnMgLnRhYi10aXRsZSBhe1xyXG5cdGJhY2tncm91bmQtY29sb3I6JHRhYl90aXRsZV9iYWNrZ3JvdW5kLWNvbG9yO1xyXG59XHJcbnVsLnRhYnMgbGkuYWN0aXZle1xyXG5cdGJvcmRlci1ib3R0b20tY29sb3I6JHRhYl9jb250ZW50X2JhY2tncm91bmQtY29sb3I7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0dG9wOjFweDtcclxuXHR6LWluZGV4OjE1O1xyXG59XHJcbnVsLnRhYnMgbGkuYWN0aXZlIGF7XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiR0YWJfdGl0bGVfYWN0aXZlX2JhY2tncm91bmQtY29sb3I7XHJcbn1cclxuLnRhYnMtY29udGVudCBkaXZ7XHJcblx0Ym9yZGVyOnNvbGlkIDFweCAkdGFiX2NvbnRlbnRfYm9yZGVyLWNvbG9yO1xyXG5cdHotaW5kZXg6MTA7XHJcbn1cclxuLnRhYnMtY29udGVudCBkaXYuY29udGVudHtcclxuXHRwYWRkaW5nOjEwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjokdGFiX2NvbnRlbnRfYmFja2dyb3VuZC1jb2xvcjtcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDUwMCkpIHtcclxuICAgIHVsLnRhYnMgLnRhYi10aXRsZXtcclxuXHRcdGZsb2F0Om5vbmU7XHJcblx0XHR3aWR0aDoxMDAlO1xyXG4gICAgfVxyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcblxyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyB2aWRlb2dhbGVyaWVcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbmRpdi52aWRlb2dhbGVyaWUge1xyXG4gICAgbWFyZ2luLXRvcDo1MHB4O1xyXG59XHJcbi52aWRlb2dhbGVyaWUgaDZ7XHJcbiAgICBtYXJnaW4tYm90dG9tOjIwcHg7XHJcbn1cclxuLnZpZGVvZ2FsZXJpZSBwLnZpZGVvX3RpdGxle1xyXG4gICAgY29sb3I6JHRleHRmYXJiZV9zdGFuZGFyZDtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gQklsZGVyZ2FsZXJpZVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuZGl2LmltYWdlLWdhbGVyeXtcclxuICAgIG1hcmdpbi10b3A6MjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206MjBweDtcclxufVxyXG5kaXYuaW1hZ2UtZ2FsZXJ5IGxpe1xyXG5cclxufVxyXG4uaW1hZ2UtZ2FsZXJ5LXVudGVydGl0ZWx7XHJcbiAgICBtYXJnaW46MHB4O1xyXG4gICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gfVxyXG4gZGl2LmltYWdlLWdhbGVyeS10ZXh0e1xyXG4gICAgbWFyZ2luOjBweDtcclxuIH1cclxuXHJcbi5pbWFnZS1nYWxlcnktdGV4dCBwe1xyXG4gICAgbWFyZ2luLXRvcDowcHg7XHJcbiAgICBwYWRkaW5nLXRvcDowcHg7XHJcbn1cclxuLmltYWdlLWdhbGVyeSBpbWcuaW1hZ2VfZmFkaW5nX2VmZmVrdHtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxufVxyXG4uaW1hZ2UtZ2FsZXJ5IGltZy5pbWFnZV9mYWRpbmdfZWZmZWt0OmhvdmVye1xyXG5cdGZpbHRlcjphbHBoYShvcGFjaXR5PTUwKTtcclxuICAgIC1tb3otb3BhY2l0eTogMC41MDtcclxuICAgIG9wYWNpdHk6IDAuNTA7XHJcbn1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEJMb2NrLUNvbnRhaW5lclxyXG4vLyBLbGFzc2VuLCB3ZW5uIEluaGFsdGUgYWxzIEJsw7Zja2UgZGFyZ2VzdGVsbHQgd2VyZGVuICh6LkIuIGF1ZiBTdGFydHNlaXRlKVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLmJsb2NrX2VsZW1fY29udGFpbmVye1xyXG5cclxufVxyXG4uYmxvY2tfZWxlbV9jb250YWluZXIgbGkgZGl2e1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTo1cHg7XHJcbiAgICBjb2xvcjokd2hpdGU7XHJcbn1cclxuXHJcbi5ibG9ja19lbGVtX2NvbnRhaW5lciBsaT5kaXZ7XHJcblx0YmFja2dyb3VuZC1jb2xvcjokYmxvY2tfZWxlbV9iYWNrZ3JvdW5kO1xyXG59XHJcbi5ibG9ja19lbGVtX2NvbnRhaW5lciBsaSBkaXYgYXtcclxuICAgIC8vZGlzcGxheTogYmxvY2s7XHJcbiAgICAvL2hlaWdodDogMTAwJTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcbi5ibG9ja19lbGVtX2NvbnRhaW5lciBsaSBkaXYgZGl2e1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuLmJsb2NrX2VsZW1fY29udGFpbmVyIGRpdi5pbWFnZV9mYWRpbmdfZWZmZWt0e1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxufVxyXG5cclxuXHJcbi8vLmJsb2NrX2VsZW1fY29udGFpbmVyIGRpdjpob3ZlciAuaW1hZ2VfZmFkaW5nX2VmZmVrdHtcclxuLy8gICAgZmlsdGVyOmFscGhhKG9wYWNpdHk9MTApO1xyXG4vLyAgICAtbW96LW9wYWNpdHk6IDAuODA7XHJcbi8vICAgIG9wYWNpdHk6IDAuODA7XHJcbi8vfVxyXG5cclxuLmJsb2NrX2VsZW1fY29udGFpbmVyIC5saW5rX3BmZWlse1xyXG4gICAgICAgIGJhY2tncm91bmQ6dXJsKCcuLi8uLi9pbWcvaWNvbl9wZmVpbC5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OjUwJTtcclxuXHRcdHRvcDotMjVweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDotMjVweDtcclxuICAgICAgICB6LWluZGV4OjUwO1xyXG5cdFx0d2lkdGg6NTBweDtcclxuXHRcdGhlaWdodDo1MHB4O1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcclxuICAgICAgICBib3JkZXI6MHB4O1xyXG59XHJcbi5ibG9ja19lbGVtX2NvbnRhaW5lciBkaXY6aG92ZXIgLmxpbmtfcGZlaWx7XHJcblx0XHR0b3A6LTQwcHg7XHJcblx0XHR3aWR0aDo3MHB4O1xyXG5cdFx0aGVpZ2h0OjcwcHg7XHJcblx0XHRtYXJnaW4tbGVmdDotMzVweDtcclxuXHRcdHotaW5kZXg6NTA7XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEJsb2NrZWxlbWVudCBOYXZpZ2F0aW9uIChoYW1tZXIpXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4ubmF2aV9ibG9jayBsaSBkaXZ7XHJcbiAgICBjb2xvcjokbmF2aV9ibG9ja19jb2xvcjtcclxufVxyXG4vLy5uYXZpX2Jsb2NrIGxpIGRpdiBkaXZ7XHJcbi8vXHR6LWluZGV4OjE7XHJcbi8vfVxyXG4vL1xyXG4vLy5uYXZpX2Jsb2NrIGRpdi5ibG9ja190ZXh0X2NvbnRhaW5lciB7XHJcbi8vXHRwYWRkaW5nLWJvdHRvbTo1cHg7XHJcbi8vfVxyXG4vLy5uYXZpX2Jsb2NrIGRpdi5ibG9ja190ZXh0X2NvbnRhaW5lciBwe1xyXG4vL1x0bWFyZ2luLWJvdHRvbTowcHg7XHJcbi8vfVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBCbG9ja2VsZW1lbnQgTGlua2xpc3RlIChzYW5kZXIpXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4ubGlua2xpc3RlX2Jsb2NrIGxpe1xyXG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcclxufVxyXG4ubGlua2xpc3RlX2Jsb2NrIGxpIGRpdntcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9iYWNrZ3JvdW5kO1xyXG59XHJcblxyXG4ubGlua2xpc3RlX2Jsb2NrIGxpIGRpdiBoMntcclxuICAgIHBhZGRpbmctdG9wOjEwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTowcHg7XHJcblx0bWFyZ2luLWJvdHRvbToxMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcclxuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiRsaW5rbGlzdGVfdWViZXJzY2hyaWZ0X2NvbG9yO1xyXG59XHJcbi5saW5rbGlzdGVfYmxvY2sgbGkgZGl2IGg2e1xyXG4gICAgbWFyZ2luLWJvdHRvbToxNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV91ZWJlcnNjaHJpZnRfY29sb3I7XHJcbn1cclxuLmxpbmtsaXN0ZV9ibG9jayBsaSB1bHtcclxuICAgIG1hcmdpbjo1cHg7XHJcbiAgICBtYXJnaW4tdG9wOjEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246aW5zaWRlO1xyXG59XHJcbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGksLmxpbmtsaXN0ZV9ibG9jayBsaSB1bCBsaSBhe1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcclxuICAgIGNvbG9yOiRsaW5rbGlzdGVfbGlua3NfY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcclxuICAgIHRleHQtYWxpZ246bGVmdDtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTpub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpbmtsaXN0ZV9saW5rX2JvcmRlcl9ib3R0b21fY29sb3I7XHJcbiAgICBwYWRkaW5nOjVweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG59XHJcbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGkgYXtcclxuICAgIG1hcmdpbjowcHg7XHJcbiAgICBwYWRkaW5nOjBweDtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICB3aWR0aDo5MCU7XHJcbiAgICBtYXJnaW4tbGVmdDoxMCU7XHJcbiAgICBib3JkZXI6MHB4O1xyXG59XHJcbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGk6aG92ZXIsIC5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGk6aG92ZXIgYSwgLmxpbmtsaXN0ZV9ibG9jayBsaSB1bCBsaSBhOmhvdmVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2xpbmtzX2hvdmVyX2JhY2tncm91bmQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHRjb2xvcjokbGlua2xpc3RlX2xpbmtzX2hvdmVyX2NvbG9yO1xyXG59XHJcbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGkgZGl2Lmljb257XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHRvcDozcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6MTBweDtcclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBCbG9ja2VsZW1lbnQgTGlua2xpc3RlIG1pdCBJY29uIChzYW5kZXIgLSBTZXJ2aWNlIClcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaXtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2xpbmtzX2JhY2tncm91bmQ7XHJcbn1cclxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIGRpdntcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2xpbmtzX2JhY2tncm91bmQ7XHJcbn1cclxuXHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSBkaXYgaDJ7XHJcbiAgICBwYWRkaW5nLXRvcDoxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206MTBweDtcclxuXHRtYXJnaW4tYm90dG9tOjEwcHg7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTUpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xyXG4gICAgY29sb3I6JGxpbmtsaXN0ZV9pY29uX3VlYmVyc2NocmlmdF9jb2xvcjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfaWNvbl91ZWJlcnNjaHJpZnRfYmFja2dyb3VuZDtcclxufVxyXG4ubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgZGl2IGg2e1xyXG4gICAgbWFyZ2luLWJvdHRvbToxNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX3VlYmVyc2NocmlmdF9jb2xvcjtcclxufVxyXG4ubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgZGl2IGg2Lm1pZGxpbmV7XHJcblx0YmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2ljb25fbGlua3NfY29sb3I7XHJcbn1cclxuXHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bHtcclxuICAgIG1hcmdpbjoxMHB4IDAgMCAwO1xyXG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfaWNvbl9saW5rc19iYWNrZ3JvdW5kO1xyXG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7XHJcbn1cclxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpLC5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSBhe1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDEzKTtcclxuICAgIGNvbG9yOiRsaW5rbGlzdGVfaWNvbl9saW5rc19jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX2xpbmtzX2JhY2tncm91bmQ7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaW5rbGlzdGVfaWNvbl9saW5rX2JvcmRlcl9ib3R0b21fY29sb3I7XHJcbiAgICBwYWRkaW5nOjVweDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XHJcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG5cdGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XHJcbn1cclxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpe1xyXG5cdG1hcmdpbi1ib3R0b206NXB4O1xyXG59XHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSBhe1xyXG5cdGRpc3BsYXk6dGFibGUtY2VsbDtcclxuXHRtaW4taGVpZ2h0OjUwcHg7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG4ubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgdWwgbGkgYXtcclxuICAgIG1hcmdpbjowcHg7XHJcbiAgICBwYWRkaW5nOjBweDtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBib3JkZXI6MHB4O1xyXG5cdHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcclxuXHRmb250LXdlaWdodDo3MDA7XHJcbn1cclxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX2ljb257XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0cmlnaHQ6MTBweDtcclxufVxyXG5cclxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpOmhvdmVyLCAubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgdWwgbGk6aG92ZXIgYSwgLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpIGE6aG92ZXJ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfaWNvbl9saW5rc19ob3Zlcl9iYWNrZ3JvdW5kO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcblx0Y29sb3I6JGxpbmtsaXN0ZV9pY29uX2xpbmtzX2hvdmVyX2NvbG9yO1xyXG59XHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaTpob3ZlciBoNi5taWRsaW5le1xyXG5cdGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX2xpbmtzX2hvdmVyX2NvbG9yX21pZGxpbmU7XHJcbn1cclxuXHJcbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSBkaXYuaWNvbntcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgdG9wOjNweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICBtYXJnaW4tbGVmdDoxMHB4O1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFRvcC1OYXZpXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBIaW50ZXJncnVuZGZhcmJlIE1lbsO8LCB3ZW5uIGVzIMO8YmVyIGRpZSBnZXNhbXRlIEJpbGRzY2hpcm1icmVpdGUgZ2VodFxyXG4vLy50b3BfYmFyX2NvbnRhaW5lci5zaG93e1xyXG4vLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiR0b3BiYXItYmctY29sb3I7XHJcbi8vfVxyXG4vLy50b3AtYmFyLXJvdy5ib3JkZXJCb3R0b20ge1xyXG4vL1x0Ym9yZGVyLWJvdHRvbTo0cHggc29saWQgJHRvcGJhcl9ib3JkZXJfYm90dG9tX2NvbG9yO1xyXG4vL31cclxuLy8udG9wLWJhci5ub2NvbG9yIHtcclxuLy9cdGJhY2tncm91bmQ6bm9uZSAhaW1wb3J0YW50O1xyXG4vL31cclxuLy8udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwgbGkge1xyXG4vL1x0YmFja2dyb3VuZDpub25lICFpbXBvcnRhbnQ7XHJcbi8vfVxyXG4vLy50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOm5vdCguYnV0dG9uKSB7XHJcbi8vXHRiYWNrZ3JvdW5kOm5vbmUgIWltcG9ydGFudDtcclxuLy9cdGNvbG9yOiMyMjI7XHJcbi8vfVxyXG4vLy50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOmhvdmVyOm5vdCguYnV0dG9uKSxcclxuLy8udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gbGkuYWN0aXZlOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcclxuLy8gICAgY29sb3I6ICR0b3BiYXJfYWN0aXZlX2FuZF9ob3Zlcl9jb2xvcjtcclxuLy99XHJcbi8vLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIHtcclxuLy8gICAgYmFja2dyb3VuZDogJHRvcGJhcl9kcm9wZG93bl9iYWNrZ3JvdW5kX2NvbG9yO1xyXG4vLyAgICBjb2xvcjokdG9wYmFyX2Ryb3Bkb3duX2NvbG9yO1xyXG4vL31cclxuLy8udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xyXG4vL1x0Y29sb3I6JHdoaXRlO1xyXG4vL31cclxuLy8udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6bm90KC5oYXMtZm9ybSkgYTpob3Zlcjpub3QoLmJ1dHRvbiksXHJcbi8vLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpLmFjdGl2ZTpub3QoLmhhcy1mb3JtKSBhOm5vdCguYnV0dG9uKSB7XHJcbi8vXHRiYWNrZ3JvdW5kOiR0b3BiYXJfZHJvcGRvd25fYWN0aXZlX2FuZF9ob3Zlcl9iYWNrZ3JvdW5kX2NvbG9yICFpbXBvcnRhbnQ7XHJcbi8vXHRjb2xvcjokdG9wYmFyX2Ryb3Bkb3duX2FjdGl2ZV9hbmRfaG92ZXJfY29sb3I7XHJcbi8vXHJcbi8vfVxyXG4vLy50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd257XHJcbi8vXHQvLyBNZW7DvHN0cnVrdHVyIHp3ZWlzcGFsdGlnICh3aWUgYmVpIFNhbmRlcilcclxuLy8gICAgLy9jb2x1bW4tY291bnQ6IDI7XHJcbi8vICAgIC8vLW1vei1jb2x1bW4tY291bnQ6IDI7XHJcbi8vICAgIC8vLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XHJcbi8vXHQvLy1tb3otY29sdW1uLWdhcDowcHg7XHJcbi8vXHQvL2JvcmRlci10b3A6c29saWQgMnB4ICRncmVlbjtcclxuLy9cdC8vbWFyZ2luLWxlZnQ6LTEwMCU7XHJcbi8vXHR0ZXh0LWFsaWduOmxlZnQ7XHJcbi8vfVxyXG4vL1xyXG4vLy8vIFZlcnNjaGllYnVuZyBkZXMgZXJzdGVuIEVpbnRyYWdlcyB1bSBlaW5lbiBiZXN0aW1tdGVuIFdlcnQgbmFjaCByZWNodHNcclxuLy8udG9wLWJhci1zZWN0aW9uIHVsLm5hdl9sZWZ0X2FkZF9tYXJnaW57XHJcbi8vXHRtYXJnaW4tbGVmdDowJTtcclxuLy99XHJcbi8vLypcclxuLy8udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpIGF7XHJcbi8vXHRjb2xvcjokd2hpdGU7XHJcbi8vXHRib3JkZXItYm90dG9tOm5vbmU7XHJcbi8vXHRwYWRkaW5nOjIwcHg7XHJcbi8vXHRwYWRkaW5nLXRvcDoyMHB4O1xyXG4vL1x0cGFkZGluZy1ib3R0b206MjBweDtcclxuLy99XHJcbi8vKi9cclxuLy8vLyBXZW5uIGJlaSB6d2Vpc3BhbHRpZ2VtIExheW91dCBkZXIgVW50ZXJtZW7DvHMgKFNhbmRlcikgZWluIEZha2VlaW50cmFnIG5vcndlbmRpZyBpc3QsIHdpcmQgaWhtIGhpZXJcclxuLy8vLyBkZXIgQ3Vyc29yIHZlcnN0ZWxsdFxyXG4vLy50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkubm9fbGluayBhe1xyXG4vL1x0Y3Vyc29yOmRlZmF1bHQ7XHJcbi8vfVxyXG4vL1xyXG4vLy50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkubm9fbGluayBhOmhvdmVye1xyXG4vL1x0dGV4dC1kZWNvcmF0aW9uOm5vbmU7XHJcbi8vfVxyXG4vLy50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkgYSBpbWd7XHJcbi8vXHRwYWRkaW5nLXJpZ2h0OjIwcHg7XHJcbi8vXHR3aWR0aDo1MHB4O1xyXG4vL31cclxuLy8udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pe1xyXG4vL1x0Ly9ib3JkZXItYm90dG9tOnNvbGlkIDFweCAkbGlnaHRfZ3JleTtcclxuLy9cdC8vYm9yZGVyLXJpZ2h0OnNvbGlkIDFweCAkbGlnaHRfZ3JleTtcclxuLy9cdC8vYm9yZGVyLWxlZnQ6c29saWQgMXB4ICRsaWdodF9ncmV5O1xyXG4vL1x0Ly9saW5lLWhlaWdodDo4MHB4O1xyXG4vL31cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEbDvGd0IGRlciBUb3AtTmF2aSBlaW5lbiBFaW5ibGVuZC1FZmZla3QgaGluenVcclxuLy8gZ2VmdW5kZW4gYXVmOlxyXG4vLyBodHRwOi8vZm91bmRhdGlvbi56dXJiLmNvbS9mb3J1bS9wb3N0cy84MjY4LWlkZWEtZmFkZS1pbi10b3AtbWVudS1kcm9wZG93bnMtLS1hbnktZmVlZGJhY2tcclxuLy9cclxuLy8gU2xpZGUtRG93biBzY2hlaW50IG5pY2h0IHp1IGZ1bmt0aW9uaWVyZW4gKGxhdXQgRm9yZW4pXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4mLmhvdmVyLCAmLm5vdC1jbGljazpob3ZlciB7XHJcbiAgICAmID4gLmRyb3Bkb3duIHtcclxuICAgICAgICBvcGFjaXR5OiAxOyAvL0FkZCB0aGlzIGxpbmUuXHJcbiAgICB9XHJcbn1cclxuLmRyb3Bkb3duIHtcclxuICAgb3BhY2l0eTogMDsgLy9BZGQgdGhpcyBsaW5lLlxyXG4gICAvLyBIaWVyIGthbm4gZGllIEdlc2Nod2luZGlnZWl0IGdlw6RuZGVydCB3ZXJkZW5cclxuICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24ob3BhY2l0eSwgMTAwMG1zLCBlYXNlKTsgLy9BZGQgdGhpcyBsaW5lLlxyXG4gfVxyXG5cclxuIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHtcclxuICAgIHVsIGxpIHtcclxuICAgICAgICAvLyBBcHBseSB0aGUgaG92ZXIgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXHJcbiAgICAgICAgJjpob3ZlciA+IGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIEFwcGx5IHRoZSBhY3RpdmUgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXHJcbiAgICAgICAgJjphY3RpdmUgPiBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZTtcclxuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmhhcy1kcm9wZG93biB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICYgPiAuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7IC8vQWRkIHRoaXMgbGluZS5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gU0xJREVSIFN0YXJ0c2VpdGVcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5oZWFkaW1hZ2Uge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRsYXllcnNsaWRlcl9ib3JkZXI7XHJcbn1cclxuXHJcbi5sYXllcnNsaWRlci1jYXB0aW9uIHtcclxuICAgIHdpZHRoOiA0MDBweDtcclxuICAgIGhlaWdodDogNDUwcHg7XHJcbn1cclxuLmxheWVyc2xpZGVyLWNhcHRpb24tdGV4dCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XHJcbn1cclxuLmxheWVyc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxheWVyc2xpZGVyX2JvcmRlcjtcclxufVxyXG4ubGF5ZXJzbGlkZXItY29udGFpbmVyIHAge1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpO1xyXG4gICAgY29sb3I6ICRsYXllcnNsaWRlcl9ib3hfdGV4dF9jb2xvcjtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcclxufVxyXG4ubGF5ZXJzbGlkZXItYnVsbGV0cy1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLmxzLXNsaWRlID4gKiBoMSAsIC5zbGlkZXJfYm94IGgxe1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMjVweDtcclxuICAgIG1hcmdpbjogMTBweCAyMHB4IDAgMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcblx0Y29sb3I6JGxheWVyc2xpZGVyX2JveF9oZWFkbGluZV9jb2xvcjtcclxufVxyXG4ubHMtc2xpZGUgPiAqIGg0IHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGF5ZXJzbGlkZXJfYm94X3RleHRfY29sb3I7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxheWVyc2xpZGVyX2JveF90ZXh0X2NvbG9yO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgbWFyZ2luOiAwIDIwcHggMTBweCAyMHB4O1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA1cHggMCA1cHggMDtcclxuICAgIGNvbG9yOiRsYXllcnNsaWRlcl9ib3hfdGV4dF9jb2xvcjtcclxufVxyXG4ubHMtc2xpZGUgPiAqIGEge1xyXG4gICAgbGVmdDogMzAlO1xyXG59XHJcbi5scy1zbGlkZSA+IC5zbGlkZXJfYm94e1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogICAkbGF5ZXJzbGlkZXJfYm94X2NvbG9yO1xyXG59XHJcblxyXG4ubGF5ZXJfdGV4dF9hbmlte1xyXG4gICAgY29sb3I6JGxheWVyc2xpZGVyX3RleHRfY29sb3I7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbn1cclxuLmxheWVyX3RleHRfYW5pbV8xe1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDU1KTtcclxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxufVxyXG4ubGF5ZXJfdGV4dF9hbmltXzJ7XHJcbiAgICBmb250LXNpemU6cmVtLWNhbGMoNzApO1xyXG4gICAgZm9udC13ZWlnaHQ6MzAwO1xyXG59XHJcbi5sYXllcl90ZXh0X2FuaW1fM3tcclxuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYyg5MCk7XHJcbiAgICBmb250LXdlaWdodDo3MDA7XHJcbn1cclxuLmxheWVyX3RleHRfYW5pbV80e1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDYwKTtcclxuICAgIGZvbnQtd2VpZ2h0OjMwMDtcclxufVxyXG5cclxuLmxheWVyc2xpZGVyLWJvcmRlci1ib3R0b20ge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWcvbGF5ZXJzbGlkZXItYm9yZGVyLWJvdHRvbS5naWYnKSBuby1yZXBlYXQ7XHJcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDkpO1xyXG59XHJcblxyXG4ubGF5ZXJzbGlkZXItbWFyZ2luLWJvdHRvbSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2OCk7XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIE5BViBDQU5WQVNcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5vZmYtY2FudmFzLXdyYXAgLnRhYi1iYXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4udGFiLWJhciBoMSB7XHJcbiAgICAvL2NvbG9yOiAkbmF2X2NhbnZhc190YWJfY29sb3I7XHJcbn1cclxudWwub2ZmLWNhbnZhcy1saXN0IGxpIGxhYmVsIHtcclxuICAgIC8vYmFja2dyb3VuZDogJGdyZWVuO1xyXG4gICAgLy9jb2xvcjogJG5hdl9jYW52YXNfbWVudV9jb2xvcl9saXN0O1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gICAgS29udGFrdFxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuIC5jb250YWluZXJfa29udGFrdHtcclxuICAgIG1hcmdpbi10b3A6MjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xyXG59XHJcblxyXG4gZGl2LnJvdyBkaXYua29udGFrdHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JGtvbnRha3RfYmFja2dyb3VuZF9jb2xvcjtcclxuICAgIGNvbG9yOiRrb250YWt0X2NvbG9yO1xyXG5cdHBhZGRpbmc6MjBweDtcclxuXHRwYWRkaW5nLWxlZnQ6NDBweDtcclxuIH1cclxuIGRpdi5yb3cgZGl2LmtvbnRha3QgYXtcclxuICAgIGNvbG9yOiRrb250YWt0X2xpbmtfY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xyXG59XHJcbiBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDApKSB7XHJcbiAgICBkaXYucm93IGRpdi5rb250YWt0e1xyXG4gICAgICAgIHBhZGRpbmc6MTBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6MTBweDtcclxuICAgIH1cclxuICAgICBkaXYucm93IGRpdi5rb250YWt0IHB7XHJcbiAgICAgICAgIGZvbnQtc2l6ZTowLjhlbTtcclxuICAgICB9XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBGT09URVJcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbmZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWcvZm9vdGVyLWJhY2tncm91bmQucG5nXCIpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctdG9wOiAyMXB4O1xyXG59XHJcblxyXG4vLyNmb290ZXItbmF2IC5mb290ZXItbmF2aSB1bCBsaTpmaXJzdC1vZi10eXBlIHtcclxuLy8gICAgZGlzcGxheTogbm9uZTtcclxuLy99XHJcblxyXG4jZm9vdGVyLW5hdiB7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcblx0ZmxvYXQ6bGVmdDtcclxuXHR3aWR0aDoxMDAlO1xyXG5cdC8vcGFkZGluZy1ib3R0b206NTBweDtcclxuXHQvL21hcmdpbi1ib3R0b206MjBweDtcclxufVxyXG5cclxuI2Zvb3Rlci1uYXYgdWwge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuI2Zvb3Rlci1uYXYgdWwgbGkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvL2Zsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4jZm9vdGVyLW5hdiBhIHtcclxuICAgIGNvbG9yOiAkbWFpbkNvbG9yQmx1ZTtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHBhZGRpbmc6IDAgNTBweCAwIDA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbiNmb290ZXItbmF2IHVsIHVsIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWFyZ2luLXRvcDoxNXB4O1xyXG59XHJcblxyXG4jZm9vdGVyLW5hdiB1bCB1bCBsaSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE2KTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbiNmb290ZXItbmF2IHVsIHVsIGxpIGEge1xyXG4gICAgY29sb3I6ICRtYWluQ29sb3JCbHVlO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcbiNmb290ZXItbmF2IHVsIHVsIGxpIGE6aG92ZXJ7XHJcblx0Y29sb3I6ICRmb290ZXJfdGV4dF9ob3ZlcjtcclxufVxyXG4jZm9vdGVyLWFkZHJlc3Mge1xyXG4gICAgYmFja2dyb3VuZDogJG1haW5Db2xvckJsdWU7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuXHJcbiNmb290ZXItYWRkcmVzcyBwIHtcclxuICAgIGNvbG9yOiAkZm9vdGVyQWRyZXNzQ29sb3I7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDk3KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblx0cG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4jZm9vdGVyLXRvcEJ1dHRvbiB7XHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOi0xMHB4O1xyXG5cdHJpZ2h0OjBweDtcclxuXHRkaXNwbGF5OmJsb2NrO1xyXG5cdHdpZHRoOjQ1cHg7XHJcblx0aGVpZ2h0OjQ1cHg7XHJcblx0YmFja2dyb3VuZDp1cmwoJy4uLy4uL2ltZy90b3BfbGluay5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmZvb3Rlci1kaXZpZGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNiNGIwYzk7XHJcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDEpO1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTMpO1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMDApO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFF1aWNrLVNlYXJjaFxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLypcclxuLnF1aWNrLXNlYXJjaC1pY29uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IHJlbS1jYWxjKDEwKTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDQ1cHg7XHJcbiAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBiYWNrZ3JvdW5kOnVybCgnLi4vLi4vaW1nL2ljb24tc3VjaGUucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHJlbS1jYWxjKDEyNTUpKSB7XHJcbiAgICAgICAgd2lkdGg6IDU0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1NHB4O1xyXG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYygtMTEpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbiovXHJcbi5xdWljay1zZWFyY2gtZm9ybSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy90b3A6IHJlbS1jYWxjKDExNyk7XHJcbiAgICByaWdodDogMDtcclxuICAgIC8vbGVmdDowcHg7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICB3aWR0aDogcmVtLWNhbGMoMzY1KTtcclxuICAgIHBhZGRpbmc6IDAgcmVtLWNhbGMoNTUpO1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICRsaWdodF9ncmV5O1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggNXB4IDEycHggLTVweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgLW1vei1ib3gtc2hhZG93OiAwcHggNXB4IDEycHggLTVweCByZ2JhKDAsMCwwLDAuNzUpO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDVweCAxMnB4IC01cHggcmdiYSgwLDAsMCwwLjc1KTtcclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg1MSk7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgIC8qIEZpcmVmb3ggMTkrICovXHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gY2xlYXIgaW5oZXJpdGFuY2VcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0blN1Ym1pdCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg1NSk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1nL2ljb25fc2VhcmNoLnBuZycpIG5vLXJlcGVhdCAxN3B4IGNlbnRlciB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNsb3NlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg1NSk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1nL2ljb25fcXVpY2tzZWFyY2hfY2xvc2UucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXIgdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcbi5zZWFyY2gtcmVzdWx0e1xyXG5cclxuXHRkaXYuc3ItaXRlbXtcclxuXHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRzZWFyY2hfcmVzdWx0c19ib3JkZXJfY29sb3I7XHJcblx0XHRtYXJnaW4tYm90dG9tOjIwcHg7XHJcblx0fVxyXG5cdHNwYW4uc3ItaGlnaGxpZ2h0e1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjokc2VhcmNoX3Jlc3VsdHNfaGlnaGxpZ2h0X2NvbG9yO1xyXG5cdH1cclxuXHRkaXYucmVzdWx0Q291bnR7XHJcblx0XHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAkc2VhcmNoX3Jlc3VsdHNfYm9yZGVyX2NvbG9yO1xyXG5cdFx0cGFkZGluZy1ib3R0b206MjBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206MjBweDtcclxuXHR9XHJcblxyXG5cclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBNZWRpYS1RVWVyaWVzXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDExMzUpKSB7XHJcbiAgICAjZm9vdGVyLW5hdiBhIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDcwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDk5OSkpIHtcclxuICAgIC8vZm9vdGVyLFxyXG4gICAgLnJlc3BvbnNlLW9mZiB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5pbWFnZS1uby1wYWRkaW5nIHtcclxuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgI25hdi1pbXBhZ2IsXHJcbiAgICAudG9wLWJhciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAub2ZmLWNhbnZhcy13cmFwIC50YWItYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuc2lkZWJhcixcclxuICAgIC5uZXdzLXRleHQsXHJcbiAgICAubmV3cy10aXRsZSxcclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICB9XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gQW5zcHJlY2hwYXJ0bmVyXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4uZWxlbWVudC1jb250YWluZXItYW5zcHJlY2hwYXJ0bmVyIGltZ3tcclxuXHRwYWRkaW5nICAgICAgICAgICAgICAgICAgOiA0cHg7XHJcblx0Ym9yZGVyICAgICAgICAgICAgICAgICAgIDogI2RkZGRkZCAxcHggc29saWQ7XHJcblx0d2lkdGg6ODAlO1xyXG5cdG1hcmdpbjoxMHB4O1xyXG5cdG1heC13aWR0aDoyNTBweDtcclxuXHR3aWR0aDoxMDAlO1xyXG59XHJcblxyXG4uZWxlbWVudC1jb250YWluZXItYW5zcHJlY2hwYXJ0bmVyIGRpdi52b2xsZXJOYW1lQm94e1xyXG5cdHBhZGRpbmcgICAgICAgICAgICAgICAgICA6IDEwcHggNXB4IDVweCAyNXB4O1xyXG5cdGZvbnQtc2l6ZSAgICAgICAgICAgICAgICA6IHJlbS1jYWxjKDE0KTtcclxuXHRmb250LXdlaWdodCAgICAgICAgICAgICAgOiA0MDA7XHJcblx0dGV4dC10cmFuc2Zvcm0gICAgICAgICAgIDogdXBwZXJjYXNlO1xyXG5cdGNvbG9yICAgICAgICAgICAgICAgICAgICA6ICMwMDNCNjk7XHJcblx0Ly9iYWNrZ3JvdW5kICAgICAgICAgICAgICAgOiAjZmZmZmZmIHVybCgnLi4vLi4vaW1nL2Fuc3ByZWNocGFydG5lci1xdWFkcmF0LnBuZycpIG5vLXJlcGVhdCAzJSA1NSU7XHJcbn1cclxuLmVsZW1lbnQtY29udGFpbmVyLWFuc3ByZWNocGFydG5lciBkaXYucG9zaXRpb25Cb3h7XHJcblx0cGFkZGluZyAgICAgICAgICAgICAgICAgIDogMHB4IDVweCAwcHggMjVweDtcclxuXHRmb250LXNpemUgICAgICAgICAgICAgICAgOiByZW0tY2FsYygxMik7XHJcblx0Zm9udC13ZWlnaHQgICAgICAgICAgICAgIDogNDAwO1xyXG5cdGNvbG9yICAgICAgICAgICAgICAgICAgICA6ICMwMDY2ZDA7XHJcbn1cclxuXHJcbi5lbGVtZW50LWNvbnRhaW5lci1hbnNwcmVjaHBhcnRuZXIgZGl2LnRleHRCb3h7XHJcbiAgICBwYWRkaW5nICAgICAgICAgICAgICAgICAgOiAwcHggNXB4IDBweCAyNXB4O1xyXG5cdGZvbnQtc2l6ZSAgICAgICAgICAgICAgICA6IHJlbS1jYWxjKDE0KTtcclxuXHRmb250LXdlaWdodCAgICAgICAgICAgICAgOiA0MDA7XHJcblx0Y29sb3IgICAgICAgICAgICAgICAgICAgIDogIzAwMDAwMDtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLypcclxuLnRpdGVsYm94IHtcclxuXHR3aWR0aCAgICAgICAgICAgICAgICAgICAgOiAxNzhweDtcclxuXHRwYWRkaW5nICAgICAgICAgICAgICAgICAgOiA1cHggMTBweDtcclxuXHRtYXJnaW4gICAgICAgICAgICAgICAgICAgOiAwcHggMHB4IDVweCAwcHg7XHJcblx0Ym9yZGVyICAgICAgICAgICAgICAgICAgIDogI2NjY2NjYyAxcHggZG90dGVkIDtcclxuXHRmb250LXNpemUgICAgICAgICAgICAgICAgOiAxMnB4O1xyXG5cdGZvbnQtd2VpZ2h0ICAgICAgICAgICAgICA6IGJvbGQ7XHJcblx0dGV4dC1hbGlnbiAgICAgICAgICAgICAgIDogY2VudGVyO1xyXG59XHJcblxyXG4udGV4dGJveCB7XHJcblx0d2lkdGggICAgICAgICAgICAgICAgICAgIDogMTc4cHg7XHJcblx0bWluLWhlaWdodCAgICAgICAgICAgICAgIDogODBweDtcclxuXHRwYWRkaW5nICAgICAgICAgICAgICAgICAgOiA1cHggMTBweDtcclxuXHRtYXJnaW4gICAgICAgICAgICAgICAgICAgOiA1cHggMHB4IDBweCAwcHg7XHJcblx0Ym9yZGVyICAgICAgICAgICAgICAgICAgIDogIzY2NjY2NiAxcHggZG90dGVkIDtcclxuXHRmb250LXNpemUgICAgICAgICAgICAgICAgOiAxMnB4O1xyXG5cdGZvbnQtd2VpZ2h0ICAgICAgICAgICAgICA6IDMwMDtcclxuXHR0ZXh0LWFsaWduICAgICAgICAgICAgICAgOiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1cyAgICAgICAgICAgIDogN3B4O1xyXG5cdGJhY2tncm91bmQgICAgICAgICAgICAgICA6ICNlZWVlZWU7XHJcbn1cclxuXHJcbiovXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBMaXN0ZSAvIEFra29yZGlvblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxudWwubGlzdGV7XHJcbiAgICBtYXJnaW4tdG9wOjQwcHg7XHJcbn1cclxudWwubGlzdGUgaDUubGlzdGVfYWNjb3JkaW9ue1xyXG4gICAgY3Vyc29yOnBvaW50ZXI7XHJcbn1cclxudWwubGlzdGUge1xyXG4gICBtYXJnaW4tbGVmdDowcHg7XHJcbiAgIHBhZGRpbmctbGVmdDowcHg7XHJcbiAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xyXG59XHJcbnVsLmxpc3RlIGxpe1xyXG4gICAgbWFyZ2luLWxlZnQ6MHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjokbGlzdGVfYmFja2dyb3VuZGNvbG9yO1xyXG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XHJcbiAgICBwYWRkaW5nOjEwcHg7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcclxufVxyXG51bC5saXN0ZSBoNXtcclxuICAgIG1hcmdpbjpyZW0tY2FsYygwKTtcclxuICAgIHBhZGRpbmc6cmVtLWNhbGMoMCk7XHJcbiAgICBjb2xvcjokbGlzdGVfaGVhZF9jb2xvcjtcclxuICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygyMCk7XHJcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG5cclxufVxyXG51bC5saXN0ZSBsaSBkaXYuYWtrb3JkaW9uX3RleHR7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaXN0ZV90ZXh0X2JhY2tncm91bmRjb2xvcjtcclxuICAgIGNvbG9yOiRsaXN0ZV90ZXh0X2NvbG9yO1xyXG4gICAgcGFkZGluZzoxMHB4O1xyXG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcclxuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTApO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIFNsaWRlciBmw7xyIEJpbGRlciAobG9nb19saW5rX3NsaWRlcilcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5sb2dvX2xpbmtfc2xpZGVyX2NvbnRhaW5lcntcclxuICAgIHBhZGRpbmctdG9wOjIwcHg7XHJcbn1cclxuLmxvZ29fbGlua19zbGlkZXJfY29udGFpbmVyIGgxe1xyXG4gICAgY29sb3I6JGxvZ29fbGlua19zbGlkZXJfaGVhZGxpbmU7XHJcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMjApO1xyXG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIGxldHRlci1zcGFjaW5nOnJlbS1jYWxjKDQpO1xyXG4gICAgcGFkZGluZy1ib3R0b206MjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206NXB4O1xyXG59XHJcbi5sb2dvX2xpbmtfc2xpZGVyX2NvbnRhaW5lciBoMS5jZW50ZXJlZHtcclxuICAgIG1hcmdpbjphdXRvO1xyXG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbn1cclxuLmxvZ29fbGlua19zbGlkZXJfY29udGFpbmVyIGgxLnVuZGVybGluZXtcclxuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsb2dvX2xpbmtfc2xpZGVyX3VuZGVybGluZTtcclxufVxyXG4ubG9nb19saW5rX3NsaWRlcntcclxuICAgIG1hcmdpbi10b3A6MTVweDtcclxuXHJcbiAgICAuc2xpY2stdHJhY2t7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcclxuICAgIH1cclxuICAgIGJ1dHRvbi5zbGljay1wcmV2IHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OjEwcHg7XHJcbiAgICAgICAgdG9wOjEwMCU7XHJcbiAgICAgICAgei1pbmRleDo5OTk7XHJcbiAgICB9XHJcbiAgICBidXR0b24uc2xpY2stcHJldjpiZWZvcmUgIHtcclxuICAgICAgICBjb2xvcjogJG5ld3Nfc2xpZGVyX3ByZXZfbmV4dF9idXR0b25zO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgfVxyXG4gICAgYnV0dG9uLnNsaWNrLW5leHQge1xyXG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OjIwcHg7XHJcbiAgICAgICAgdG9wOjEwMCU7XHJcbiAgICAgICAgei1pbmRleDo5OTk7XHJcbiAgICB9XHJcbiAgICBidXR0b24uc2xpY2stbmV4dDpiZWZvcmUge1xyXG4gICAgICAgIGNvbG9yOiAkbmV3c19zbGlkZXJfcHJldl9uZXh0X2J1dHRvbnM7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICB9XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gSW1wcmVzc3VtXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4uaW1wcmludHtcclxuICAgIHBhZGRpbmc6MDtcclxufVxyXG5cclxuLmltcHJpbnQgbGk6Zmlyc3QtY2hpbGR7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDApO1xyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDYwMCkpIHtcclxuICAgIC5pbXByaW50IGxpOmZpcnN0LWNoaWxke1xyXG5cdFx0cGFkZGluZy1yaWdodDoxMHB4O1xyXG5cdH1cclxuXHQuaGVhZGVyLWltcHJpbnQtcGFkZGluZyB7XHJcblx0XHRwYWRkaW5nLXRvcDpyZW0tY2FsYygwKTtcclxuXHRcdHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDUpO1xyXG5cdFx0cGFkZGluZy1sZWZ0OnJlbS1jYWxjKDApO1xyXG5cdFx0cGFkZGluZy1yaWdodDpyZW0tY2FsYygxMCk7XHJcblx0fVxyXG59XHJcblxyXG4uaW1wcmludCBsaSB7XHJcbiAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkaW1wcmludEJvcmRlckJvdHRvbTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgOCA1KTtcclxufVxyXG5cclxuLmltcHJpbnQgYSxcclxuLmltcHJpbnQgYTpob3ZlcixcclxuLmltcHJpbnQgYTphY3RpdmUsXHJcbi5pbXByaW50IGE6dmlzaXRlZCB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBjb2xvcjogJGltcHJpbnRDb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmltcHJpbnQgYTpob3ZlciB7XHJcbiAgICBjb2xvcjogJGltcHJpbnRDb2xvckhvdmVyO1xyXG59XHJcblxyXG4uaGVhZGVyLWltcHJpbnQtcGFkZGluZyB7XHJcbiAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYygzOCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg1KTtcclxuICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygwKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6cmVtLWNhbGMoMTUpO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBTaWRlLU5hdiAgIC0gIGxpbmtlIE5hdmlnYXRpb25cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5zaWRlLW5hdiB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcbi5zaWRlLW5hdi10aXRsZXtcclxuXHRib3JkZXItYm90dG9tOiByZW0tY2FsYyg0KSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcblx0Y29sb3I6ICRtYWluVHVycXVpc2U7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBtYXJnaW46IDA7XHJcblx0cGFkZGluZzogcmVtLWNhbGMoMCAwIDI4IDIyKTtcclxuXHR0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5zaWRlLW5hdiBsaS5hY3RpdmUgPiBhOmZpcnN0LWNoaWxkOm5vdCguYnV0dG9uKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdl9hY3RpdmVfYmFja2dyb3VuZF9jb2xvcjtcclxuXHRjb2xvcjokc2lkZW5hdl9hY3RpdmVfY29sb3I7XHJcbn1cclxuLnNpZGUtbmF2IGxpIHVsIGxpe1xyXG5cdG1hcmdpbi1sZWZ0OjIwcHg7XHJcblx0Ym9yZGVyLWJvdHRvbTowcHg7XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gU0lERUJBUlxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLnNpZGViYXItaGVhZCBoMSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJG5ld3NfaGVhZGxpbmVfYm9yZGVyO1xyXG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRuZXdzX2hlYWRsaW5lX2JvcmRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIC8vbWFyZ2luLXRvcDo1MHB4O1xyXG59XHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gTmV3c2Jsb2NrXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBOZXdzYmxvY2tcclxuLm5ld3MtZGF0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbmV3c19kYXRlX2JhY2tncm91bmRjb2xvcjtcclxuICAgIGhlaWdodDogNzVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDdweDtcclxuICAgIGNvbG9yOiAkbmV3c19kYXRlX2NvbG9yO1xyXG4gICAgcGFkZGluZzogMTBweCAwcHggNXB4IDVweDtcclxuICAgIHRleHQtYWxpZ246Y2VudGVyO1xyXG59XHJcblxyXG4ubmV3cy1tb250aCB7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDVweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5uZXdzLXllYXIge1xyXG4gICAgLy9mb250LXNpemU6IDAuOTM3NXJlbTtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMTRweDtcclxuICAgIHBhZGRpbmctbGVmdDo1cHg7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHRvcDotNnB4O1xyXG59XHJcblxyXG4ubmV3cy10aXRsZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbmV3c19iYWNrZ3JvdW5kY29sb3I7XHJcbiAgICAvL3BhZGRpbmctbGVmdDogMS4ycmVtO1xyXG4gICAgLy9wYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICBjb2xvcjogJG5ld3NfdGV4dCFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6MTBweDtcclxufVxyXG5cclxuLm5ld3MtdGl0bGUgaDIge1xyXG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAxNHB4O1xyXG4gICAgY29sb3I6ICRuZXdzX3RpdGxlX2NvbG9yO1xyXG59XHJcblxyXG4ubmV3cy10ZXh0IHtcclxuICAgIGJhY2tncm91bmQ6ICRuZXdzX2JhY2tncm91bmRjb2xvcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDdweDtcclxuICAgIC8vcGFkZGluZzogMjVweCAxOHB4IDAgMzhweDtcclxufVxyXG4ubmV3cy10ZXh0IGltZ3tcclxuICAgIHBhZGRpbmctYm90dG9tOjEwcHg7XHJcbn1cclxuLm5ld3MtdGV4dCBwIHtcclxuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xyXG59XHJcbi5zbGlkZXJfdGV4dHtcclxuXHJcbn1cclxuLm5ld3NibG9ja3tcclxuXHJcbn1cclxuLm5ld3NibG9jayBpbWd7XHJcbiAgICBwYWRkaW5nLXRvcDowcHg7XHJcbiAgICBwYWRkaW5nLXRvcDowcHg7XHJcbn1cclxuXHJcbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLXByZXYge1xyXG4gICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICBsZWZ0OjEwcHg7XHJcbiAgICB0b3A6MTAwJTtcclxuICAgIHotaW5kZXg6OTk5O1xyXG59XHJcbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLXByZXY6YmVmb3JlICB7XHJcbiAgICBjb2xvcjogJG5ld3Nfc2xpZGVyX3ByZXZfbmV4dF9idXR0b25zO1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxufVxyXG5cclxuLm5ld3NibG9jayBidXR0b24uc2xpY2stbmV4dCB7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHJpZ2h0OjIwcHg7XHJcbiAgICB0b3A6MTAwJTtcclxuICAgIHotaW5kZXg6OTk5O1xyXG59XHJcbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLW5leHQ6YmVmb3JlIHtcclxuICAgIGNvbG9yOiAkbmV3c19zbGlkZXJfcHJldl9uZXh0X2J1dHRvbnM7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICBmb250LXdlaWdodDpib2xkO1xyXG59XHJcbi5uZXdzYmxvY2sgdWwge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC04JSFpbXBvcnRhbnQ7XHJcbn1cclxuLy8gVmVyaGluZGVydCBpbSBDaHJvbWUgZGllIEFuemVpZ2UgZWluZXIgYmxhdWVuIExpbmllIG5hY2ggZGVtIFdlaXRlcmtsaWNrZW4gKEJ1ZylcclxuLnNsaWNrLWxpc3Qge1xyXG5cdFx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5zbGljay1zbGlkZTpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cclxuXHRcclxuLnNsaWNrLXNsaWRlIHtcclxuXHQmOmZvY3VzLCBhIHtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0fVxyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyBOZXdzbW9kdWxcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4ubmV3c2xpc3Rlcl9rdXJ6IC5uZXdzX2NvbnRhaW5lcjpmaXJzdC1jaGlsZHtcclxuXHRcdGJvcmRlci10b3A6MXB4IHNvbGlkICRtaWRfZ3JleTtcclxuXHRcdHBhZGRpbmctdG9wOjEwcHg7XHJcblx0XHRtYXJnaW4tdG9wOjEwcHg7XHJcblx0fVxyXG4ubmV3c2xpc3RlcntcclxuXHQubmV3c19jb250YWluZXJ7XHJcblxyXG5cdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJG1pZF9ncmV5O1xyXG5cdFx0cGFkZGluZy1ib3R0b206MTBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206MTBweDtcclxuXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0ZmxvYXQ6bGVmdDtcclxuXHRcdHdpZHRoOjEwMCU7XHJcblx0XHRcclxuXHRcdGgye1xyXG5cdFx0XHRjb2xvcjogJGJsdWU7XHJcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRwLmRhdHVte1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUpO1xyXG5cdFx0XHRjb2xvcjogJGJsdWUhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRkaXYubmV3c19tZWhye1xyXG5cdFx0XHQvKnBvc2l0aW9uOmFic29sdXRlO1xyXG5cdFx0XHRyaWdodDoxMHB4O1xyXG5cdFx0XHRib3R0b206MHB4O1xyXG5cdFx0XHQqL1xyXG5cdFx0fVxyXG5cdFx0LmltYWdlLWNvbnRhaW5lcntcclxuXHRcdFx0ZmxvYXQ6cmlnaHQ7XHJcblx0XHRcdHBhZGRpbmctdG9wOjEwcHg7XHJcblx0XHRcdHBhZGRpbmctbGVmdDoyMHB4O1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbToxMHB4O1xyXG5cdFx0fVxyXG5cdFx0Lm5ld3NfenVydWVja3tcclxuXHRcdFx0bWFyZ2luLWJvdHRvbToxMHB4O1xyXG5cdFx0XHRjb2xvcjokYmx1ZTtcclxuXHRcdH1cclxuXHRcdC5uZXdzX3p1cnVlY2sgYXtcclxuXHRcdFx0Y29sb3I6JGJsdWU7XHJcblx0XHR9XHJcblx0XHRcclxuXHR9XHJcbn1cclxuXHJcbi5uZXdzbGlzdGVyX3NwYWx0ZV9saW5rcyAubmV3c19jb250YWluZXI6Zmlyc3QtY2hpbGR7XHJcblx0XHRib3JkZXItdG9wOjA7XHJcblx0XHRwYWRkaW5nLXRvcDowcHg7XHJcblx0XHRtYXJnaW4tdG9wOjBweDtcclxufVxyXG4ubmV3c2xpc3Rlcl9zcGFsdGVfbGlua3MgLm5ld3NfY29udGFpbmVyOmxhc3QtY2hpbGR7XHJcblx0XHRib3JkZXItYm90dG9tOjA7XHJcbn1cclxuLm5ld3NsaXN0ZXJfc3BhbHRlX2xpbmtze1xyXG5cdC5uZXdzX2NvbnRhaW5lcntcclxuXHRcdHBhZGRpbmc6MTBweDtcclxuXHRcdHBhZGRpbmctbGVmdDowcHghaW1wb3J0YW50O1xyXG5cdFx0cGFkZGluZy1yaWdodDowcHghaW1wb3J0YW50O1xyXG5cdFx0bWFyZ2luLWxlZnQ6MHB4O1xyXG5cdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0X2dyZXk7XHJcblx0fVxyXG5cdHAuZGF0dW17XHJcblx0XHRtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDApIWltcG9ydGFudDtcclxuXHR9XHJcblx0aDJ7XHJcblx0XHRtYXJnaW4tdG9wOjBweCFpbXBvcnRhbnQ7XHJcblx0XHRtYXJnaW4tYm90dG9tOjBweCFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gRmFjZWJvb2stTmV3c1xyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLmZhY2Vib29rX25ld3N7XHJcblxyXG4gICAgLml0ZW17XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGZhY2Vib29rX25ld3NfYmFja2dyb3VuZF9jb2xvcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjVweDtcclxuICAgICAgICBwYWRkaW5nOjEwcHggMTBweCAxMHB4IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgICRmYWNlYm9va19uZXdzX2JvcmRlcl9jb2xvcjtcclxuICAgIH1cclxuICAgIGRpdi5pdGVtIHNwYW4uaGVhZGxpbmV7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIH1cclxuICAgIGRpdi5pdGVtIHNwYW4uZGF0ZXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRmYWNlYm9va19uZXdzX2RhdGVfYmFja2dyb3VuZF9jb2xvcjtcclxuICAgICAgICBjb2xvcjokZmFjZWJvb2tfbmV3c19kYXRlX2NvbG9yO1xyXG4gICAgICAgIHBhZGRpbmc6MnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICB9XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gU2lkZWJhci1CbG9jay1JbmZvcm1hdGlvbmVuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4uc2lkZWJhcl9pbmZvcm1hdGlvbmVue1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRzaWRlYmFyX2luZm9ybWF0aW9uZW5fYmFja2dyb3VuZDtcclxuICAgIHBhZGRpbmc6MHB4O1xyXG4gICAgbWFyZ2luOjBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOjIwcHg7XHJcbn1cclxuLnNpZGViYXJfaW5mb3JtYXRpb25lbiBkaXZ7XHJcbiAgICBtYXJnaW46MHB4O1xyXG4gICAgcGFkZGluZzowcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoNSk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDUpO1xyXG59XHJcblxyXG4uc2lkZWJhcl9pbmZvcm1hdGlvbmVuIGg0e1xyXG4gICAgcGFkZGluZy1ib3R0b206MTBweDtcclxuICAgIGJvcmRlci1ib3R0b206JG1pZF9ncmV5IDFweCBzb2xpZDtcclxufVxyXG5cclxuLnNpZGViYXJfaW5mb3JtYXRpb25lbiBoM3tcclxuICAgIGNvbG9yOiRkYXJrX3JlZDtcclxuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTowcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOjBweDtcclxufVxyXG4uc2lkZWJhcl9pbmZvcm1hdGlvbmVuIGgxe1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBtYXJnaW46MHB4O1xyXG4gICAgcGFkZGluZzowcHg7XHJcbiAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYygyMCk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYygyMCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRtaWRfZ3JleTtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgIGJvcmRlci1ib3R0b206c29saWQgM3B4ICRzaWRlYmFyX2luZm9ybWF0aW9uZW5fYm9yZGVyX2NvbG9yO1xyXG4gICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDIwKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6cmVtLWNhbGMoMjApO1xyXG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygzMCk7XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYygxMDAwKSkge1xyXG4gICAgLnNpZGViYXJfaW5mb3JtYXRpb25lbiBoMXtcclxuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTcpO1xyXG4gICAgfVxyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEJ1dHRvbnNcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbmJ1dHRvbiwgLmJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uX2JhY2tncm91bmRjb2xvcjtcclxuICAgIGNvbG9yOiAkYnV0dG9uX2NvbG9yO1xyXG4gICAgcGFkZGluZzogMC44NzVyZW0gMS4xODc1cmVtO1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG59XHJcbi8vIERlciBCdXR0b24gaW0gTGF5ZXJTbGlkZXIgZGFyZiBrZWluZSB0cmFuc2l0aW9uIGhhYmVuLCBzb25zdCBibGl0enQgZXIgendpc2NoZW5kdXJjaCBhdWZcclxuLmxzLXNsaWRlIC5idXR0b257XHJcbiAgICB0cmFuc2l0aW9uOm5vbmU7XHJcbn1cclxuYnV0dG9uOmhvdmVyLCBidXR0b246Zm9jdXMsIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbl9ob3Zlcl9iYWNrZ3JvdW5kY29sb3I7XHJcblx0Y29sb3I6JGJ1dHRvbl9ob3Zlcl9jb2xvcjtcclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyAgQU5GUkFHRSBGT1JNVUxBUiAjIEtvbnRha3Rmb3J1bWxhclxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLmFuZnJhZ2Uge1xyXG4gICAgcGFkZGluZzoyNHB4IDE4cHggMCAzMnB4O1xyXG59XHJcblxyXG4ubG9nby1hbmZyYWdlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxufVxyXG5cclxuLmFuZnJhZ2UgbGFiZWwge1xyXG4gICAgY29sb3I6ICRzY2huZWxsYW5mcmFnZV9sYWJlbF9jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcbi5hbmZyYWdlIGlucHV0IHtcclxuICAgIGJhY2tncm91bmQ6ICRzY2huZWxsYW5mcmFnZV9pbnB1dF9iYWNrZ3JvdW5kX2NvbG9yO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xyXG59XHJcbi5hbmZyYWdlLWJvcmRlci1wYWRkaW5nIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2NobmVsbGFuZnJhZ2VfYm9yZGVyX2NvbG9yO1xyXG4gICAgcGFkZGluZzogMjBweCAwIDIwcHggMDtcclxufVxyXG4uYW5mcmFnZSBwIHtcclxuICAgIGNvbG9yOiAkc2NobmVsbGFuZnJhZ2VfY29sb3I7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcbi5hbmZyYWdlIGgyIHtcclxuICAgIGNvbG9yOiAkc2NobmVsbGFuZnJhZ2VfY29sb3JfaDI7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG4uYW5mcmFnZSAuYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQ6ICRzY2huZWxsYW5mcmFnZV9idXR0b25fYmFja2dyb3VuZF9jb2xvcjtcclxuICAgIGNvbG9yOiAkc2NobmVsbGFuZnJhZ2VfYnV0dG9uX2NvbG9yO1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4uZy1yZWNhcHRjaGF7XHJcbiAgICBtYXJnaW4tYm90dG9tOjIwcHg7XHJcbn1cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi8vIEtvbnRha3Rmb3JtdWxhclxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLmNvbnRhY3QtZm9ybS1jb250ZW50e1xyXG5cdGlucHV0LCB0ZXh0YXJlYXtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6JGtvbnRha3Rmb3JtX2lucHV0X2JhY2tncm91bmRfY29sb3I7XHJcblx0XHRib3JkZXI6MXB4IHNvbGlkICRrb250YWt0Zm9ybV9pbnB1dF9ib3JkZXJfY29sb3I7XHJcblx0fVxyXG5cdGlucHV0OmhvdmVyLCBpbnB1dDpmb2N1cyAsdGV4dGFyZWE6aG92ZXIsdGV4dGFyZWE6Zm9jdXN7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRrb250YWt0Zm9ybV9pbnB1dF9ha3Rpdl9iYWNrZ3JvdW5kX2NvbG9yO1xyXG5cdH1cclxufVxyXG4vLyBXZW5uIGRhcyBGb3JtdWxhciBpbiBlaW5lciBTcGFsdGUgbGllZ3QsIGRhbm4gemVpZ2UgZXMgbnVyIGVpbnNwYWx0aWcgYW5cclxuZGl2LmxhcmdlLTYgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02LGRpdi5sYXJnZS00IC5jb250YWN0LWZvcm0tY29udGVudCBkaXYubGFyZ2UtNiwgZGl2LmxhcmdlLTMgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02e1xyXG5cdGRpc3BsYXk6YmxvY2s7XHJcblx0d2lkdGg6MTAwJTtcclxufVxyXG5kaXYubGFyZ2UtNiAuY29udGFjdC1mb3JtLWNvbnRlbnQgLCBkaXYubGFyZ2UtNCAuY29udGFjdC1mb3JtLWNvbnRlbnQgLCBkaXYubGFyZ2UtMyAuY29udGFjdC1mb3JtLWNvbnRlbnR7XHJcblx0ZmllbGRzZXQucmVjYXB0Y2hhX2Zvcm17XHJcblx0XHQvL3Bvc2l0aW9uOnJlbGF0aXZlO1xyXG5cdFx0Ly9sZWZ0Oi0xMHB4O1xyXG5cdFx0cGFkZGluZzowcHg7XHJcblx0XHRib3JkZXI6MDtcclxuXHRcdHBhZGRpbmctdG9wOjEwcHg7XHJcblx0fVxyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyAgICBNZWhyc3BhbHRpZ2VyIFRleHRcclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXHJcbi5tdWx0aWNvbHVtbl8ye1xyXG4gICAgY29sdW1uLWNvdW50OiAyO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDE3IDApO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xyXG4gICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiByZW0tY2FsYyg2MCk7XHJcbiAgICAtbW96LWNvbHVtbi1nYXA6IHJlbS1jYWxjKDYwKTtcclxuICAgIGNvbHVtbi1nYXA6IHJlbS1jYWxjKDYwKTtcclxufVxyXG4ubXVsdGljb2x1bW5fM3tcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgY29sdW1uLWNvdW50OiAzO1xyXG4gICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcclxufVxyXG4ubXVsdGljb2x1bW5fNHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgY29sdW1uLWNvdW50OiA0O1xyXG4gICAgLW1vei1jb2x1bW4tY291bnQ6IDQ7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNDtcclxufVxyXG5cclxuLy8gVmVyaGluZGVyZSBkZW4gVW1yYnVjaCBpbiBiZXN0aW1tdGVuIEVsZW1lbnRlblxyXG4ubXVsdGljb2x1bW5fMiB0YWJsZSwubXVsdGljb2x1bW5fMyB0YWJsZSwubXVsdGljb2x1bW5fNCB0YWJsZXtcclxuICAgIC13ZWJraXQtY29sdW1uLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XHJcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xyXG59XHJcblxyXG4vLyBWZXJyaW5nZXJlIGRpZSBTcGFsdGVuYW56YWhsIGJlaSBrbGVpbmVyZXIgQXVmbMO2c3VuZ1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDkwMCkpIHtcclxuICAgIC5tdWx0aWNvbHVtbl8ze1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xyXG4gICAgfVxyXG4gICAgLm11bHRpY29sdW1uXzR7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xyXG4gICAgfVxyXG59XHJcbi8vIEFiIGhpZXIgbnVyIG5vY2ggZWluc3BhbHRpZ1xyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDcwMCkpIHtcclxuICAgIC5tdWx0aWNvbHVtbl8ye1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcclxuICAgIH1cclxuICAgIC5tdWx0aWNvbHVtbl8ze1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcclxuICAgIH1cclxuICAgIC5tdWx0aWNvbHVtbl80e1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMTtcclxuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcclxuICAgIH1cclxufVxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuXHJcbmRpdi5sYXJnZS00IC5jb250YWN0LWZvcm0tY29udGVudCBkaXYubGFyZ2UtNiwgZGl2LmxhcmdlLTMgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02e1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOjEwMCU7XHJcblxyXG5cclxufVxyXG5kaXYubGFyZ2UtNCAuY29udGFjdC1mb3JtLWNvbnRlbnQgLCBkaXYubGFyZ2UtMyAuY29udGFjdC1mb3JtLWNvbnRlbnR7XHJcbiAgICBmaWVsZHNldC5yZWNhcHRjaGFfZm9ybXtcclxuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBsZWZ0Oi0xMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6MHB4O1xyXG4gICAgICAgIGJvcmRlcjowO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOjEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG4vLyAgICBQYXJhbGxheFxyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLnBhcmFsbGF4LXJvdyB7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgJi5lbGVtZW50LWNvbnRhaW5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYXJhbGxheC1oZWFkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg0NTApKSB7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH07XHJcbn0iLCJib2R5IHtcclxuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxMyk7XHJcbn1cclxuXHJcbnAsXHJcbnVsLFxyXG50YWJsZSB7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XHJcbn1cclxuXHJcbnVsIHtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xyXG59XHJcbmhyIHtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XHJcbn1cclxuXHJcbnN0cm9uZyB7XHJcbiAgICBjb2xvcjogJG1haW5UdXJxdWlzZTtcclxuICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uaDEtY29udGFpbmVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkICRib3JkZXJDb2xvcjtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDQ1IDkpO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5pbXByaW50IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4jbG9nbzIge1xyXG4gICAgaW1nIHtcclxuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDU2KTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDUpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDI3KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoOTk5KSkge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOnJlbS1jYWxjKDEyKSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLy9tYXgtd2lkdGg6MzUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmltYWdlX2ZhZGluZ19lZmZla3Qge1xyXG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltZy9ob21lLW5hdi1ibG9jay1pbWFnZS1hcnJvdy5wbmcnKSBuby1yZXBlYXQgMCAwIDtcclxufVxyXG5cclxudWwuaW1wcmludCBsaS5hY3RpdmUgYSB7XHJcbiAgICBjb2xvcjogJGltcHJpbnRDb2xvckhvdmVyO1xyXG59XHJcblxyXG4uaW1wcmludCBsaTpmaXJzdC1jaGlsZCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg3KTtcclxufVxyXG5cclxuLmltcHJpbnQgbGk6bnRoLWNoaWxkKDIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNik7XHJcbn1cclxuXHJcbi5mb290ZXItbmF2aSB7XHJcbiAgICB1bCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwidGV4dFwiXSNpbXByaW50LWlucHV0IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1nL3NlYXJjaC1pY29uLWhlYWRlci5wbmcnKSBuby1yZXBlYXQgNTIlIGNlbnRlcjtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkaW1wcmludEJvcmRlckJvdHRvbTtcclxuICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICBjb2xvcjogI2Q3ZDdkNztcclxuICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKC0xMSAwKTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgMTUgNiAyNSk7XHJcbiAgICB3aWR0aDogcmVtLWNhbGMoNTApO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwidGV4dFwiXSNpbXByaW50LWlucHV0OmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjb2xvcjogIzZhNmY3NTtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoLTExIDApO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuaW5wdXRbdHlwZT1cInRleHRcIl0jaW1wcmludC1pbnB1dCB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UgMHM7XHJcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UgMHM7XHJcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC43cyBlYXNlIDBzO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZSAwcztcclxufVxyXG5cclxuLy9pbnB1dFt0eXBlPVwidGV4dFwiXSNpbXByaW50LWlucHV0ICB7XHJcbi8vICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1nL3NlYXJjaC1pY29uLWhlYWRlci5wbmcnKSBuby1yZXBlYXQgOTUlIGNlbnRlcjtcclxuLy8gICAgLy9ib3JkZXI6IG5vbmU7XHJcbi8vICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZWQ7XHJcbi8vICAgIHdpZHRoOiA1MHB4O1xyXG4vLyAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjdzIGVhc2UgMHM7XHJcbi8vICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZSAwcztcclxuLy8gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZSAwcztcclxuLy8gICAgdHJhbnNpdGlvbjogYWxsIDAuN3MgZWFzZSAwcztcclxuLy8gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lIDtcclxuLy8gICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xyXG4vLyAgICBib3gtc2hhZG93OiBub25lO1xyXG4vL31cclxuLy9cclxuLy9pbnB1dFt0eXBlPVwidGV4dFwiXSNpbXByaW50LWlucHV0OmZvY3VzIHtcclxuLy8gICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJG1haW5Db2xvckJsdWU7XHJcbi8vICAgIGNvbG9yOiAjNmE2Zjc1O1xyXG4vLyAgICBwYWRkaW5nLWxlZnQ6ODBweDtcclxuLy8gICAgbWFyZ2luLWxlZnQ6MzVweDtcclxuLy8gICAgb3V0bGluZTogbm9uZTtcclxuLy8gICAgd2lkdGg6IDEyMHB4O1xyXG4vL31cclxuXHJcblxyXG5cclxuXHJcbiNtYWluLWNvbnRlbnQge1xyXG4gICAgLmNvbnRlbnRfcmlnaHQgdWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKCcuLi8uLi9pbWcvbGlzdC1zdHlsZS1pY29uLnBuZycpO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50X3JpZ2h0IHtcclxuICAgICAgICAubGFyZ2UtMTIge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDQzKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG50YWJsZSB7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygtNyAwIDAgLTcpO1xyXG4gICAgLy9tYXgtd2lkdGg6IHJlbS1jYWxjKDgwOCk7XHJcbiAgICAvL3dpZHRoOiByZW0tY2FsYyg4MDgpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgdGJvZHkge1xyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFpbkNvbG9yQmx1ZTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogcmVtLWNhbGMoNykgc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGFibGVCYWNrZ3JvdW5kTGlnaHRCbHVlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0YWJsZUJhY2tncm91bmREYXJrQmx1ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluVHVycXVpc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRkOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluVHVycXVpc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgdGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg3KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmVycm9yLW1lc3NhZ2UtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDEpO1xyXG5cclxuICAgIC5lcnJvci1tZXNzYWdlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnQtY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg3KTtcclxuICAgICAgICBhbmltYXRpb246IGZhZGVpbiAxLjVzO1xyXG4gICAgICAgIC1tb3otYW5pbWF0aW9uOiBmYWRlaW4gMS41czsgLyogRmlyZWZveCAqL1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlaW4gMS41czsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cclxuICAgICAgICAtby1hbmltYXRpb246IGZhZGVpbiAxLjVzOyAvKiBPcGVyYSAqL1xyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZWluIHtcclxuICAgICAgICBmcm9tIHtcclxuICAgICAgICAgICAgb3BhY2l0eTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0byB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6MTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBALW1vei1rZXlmcmFtZXMgZmFkZWluIHsgLyogRmlyZWZveCAqL1xyXG4gICAgICAgIGZyb20ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRvIHtcclxuICAgICAgICAgICAgb3BhY2l0eToxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlaW4geyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xyXG4gICAgICAgIGZyb20ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRvIHtcclxuICAgICAgICAgICAgb3BhY2l0eToxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEAtby1rZXlmcmFtZXMgZmFkZWluIHsgLyogT3BlcmEgKi9cclxuICAgICAgICBmcm9tIHtcclxuICAgICAgICAgICAgb3BhY2l0eTowO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0byB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5mb290ZXIge1xyXG4gICAgY29sb3I6ICRtYWluQ29sb3JCbHVlO1xyXG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuZm9vdGVyLWhvbWUtaWNvbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWcvaWNvbi1ob21lLnBuZycpIG5vLXJlcGVhdCByZW0tY2FsYyg1NikgcmVtLWNhbGMoMik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGZvb3RlckhvbWVJY29uQm9yZGVyQ29sb3I7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzcpO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCAxNCA4MSk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG5cclxuICAgICNmb290ZXItbG9jYWwtc2FsZXMtY29udGFjdCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoNCkgc29saWQgJGZvb3RlckxvY2FsU2FsZXNCb3JkZXJCb3R0b207XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDM2IDgxKTtcclxuXHJcbiAgICAgICAgI2Zvb3Rlci1sb2NhbC1zYWxlcy1jb250YWN0LWJvcmRlci1ib3R0b20ge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkZm9vdGVyU2FsZXNCb3JkZXJCb3R0b207XHJcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQxKTtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICBjb2xvcjogJG1haW5Db2xvckJsdWUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0c2lkZWJhciB7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoOTk5KSkge1xyXG4gICAgICAgICNmb290ZXItbmF2LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjZm9vdGVyLWxvY2FsLXNhbGVzLWNvbnRhY3Qge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwIDM2IDEwKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vI2Zvb3Rlci1uYXYgdWwgdWwgbGkgYSB7XHJcbi8vICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbi8vfVxyXG5cclxudWwubGVmdC1zdWJtZW51IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbn1cclxuaW1nIHtcclxuICAgICYuaW1hZ2VfZmFkaW5nX2VmZmVrdCB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xyXG5cclxuICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgIGZpbHRlcjphbHBoYShvcGFjaXR5PTUwKTtcclxuICAgICAgICAtbW96LW9wYWNpdHk6IDAuNTA7XHJcbiAgICAgICAgb3BhY2l0eTogMC41MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3NjcpKSB7XHJcbiAgICAjaGFuZGxpbmctcHJvY2VkdXJlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4jaG9tZSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1heC13aWR0aDogcmVtLWNhbGMoOTk5KSkge1xyXG4gICAgICAgIC5jb250ZW50X3JpZ2h0IHtcclxuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCAwIDIwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIjbGF5ZXJzbGlkZXItb3ZlcmxheSB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAzO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn0iLCIubWVkaWFwb29sLWNvbnRhaW5lciB7XHJcbiAgICBib3JkZXItdG9wOiByZW0tY2FsYyg0KSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcbiAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYyg0KSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyMzQpO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzYgMCA4IDApO1xyXG5cclxuICAgIC5tZWRpYXBvb2wge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogcmVtLWNhbGMoMSkgc29saWQgJGJsYWNrO1xyXG5cclxuICAgICAgICAubWVkaWFwb29sLXZpZGVvLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTkgMCAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhcG9vbC10ZXh0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxNjMpO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDMpO1xyXG5cclxuICAgICAgICAubWVkaWFwb29sLWgyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRtYWluVHVycXVpc2U7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMik7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWVkaWFwb29sLXRleHQge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWVkaWFwb29sLW1vcmUtaW5mbyB7XHJcbiAgICAgICAgY29sb3I6ICRtYWluQ29sb3JHcmV5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNwYW46OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybChcIi4uLy4uL2ltZy9tZWRpYXBvb2wtbW9yZS1pbmZvLWljb24ucG5nXCIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiByZW0tY2FsYyg5OTkpKSB7XHJcbiAgICAgICAgLm1lZGlhcG9vbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiByZW0tY2FsYyg5OTkpKSB7XHJcbiAgICAuY29udGVudF9sZWZ0IHtcclxuICAgICAgICAubWVkaWFwb29sLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIiNuYXYtc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50b3BfYmFyX2NvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIHRvcDotODBweDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnRvcF9iYXJfY29udGFpbmVyLWFjdGl2ZXtcclxuICAgIC8vaGVpZ2h0OjIwMHB4IWltcG9ydGFudDtcclxuICAgIHRvcDowO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi50b3AtYmFyLW1lbnUtaWNvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWcvdG9wLW5hdi1iYWNrZ3JvdW5kLnBuZ1wiKSByZXBlYXQteDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGhlaWdodDowO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcclxuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xyXG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xyXG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcclxufVxyXG4udG9wLWJhci1tZW51LWljb24taW1hZ2UtYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltZy9tZW51LWljb24ucG5nXCIpO1xyXG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWcvbWVudS1pY29uLnBuZ1wiKSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50b3AtYmFyLW1lbnUtaWNvbi1hY3RpdmV7XHJcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcclxufVxyXG5cclxuLnRvcF9iYXJfY29udGFpbmVyLnNob3d7XHJcbiAgICAvL2JhY2tncm91bmQtY29sb3I6JHRvcGJhci1iZy1jb2xvcjtcclxufVxyXG5cclxuLnRvcC1iYXIubm9jb2xvciB7XHJcbiAgICBiYWNrZ3JvdW5kOm5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIHVsIGxpIHtcclxuICAgIGJhY2tncm91bmQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udG9wLWJhci1zZWN0aW9uIHVsIGxpID4gYSB7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNjApO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcbi8vLnRvcC1uYXYtYm9yZGVyLWJvdHRvbS1maXJzdC1sZXZlbCB7XHJcbi8vICAgIGhlaWdodDogcmVtLWNhbGMoOCk7XHJcbi8vICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgdG9wOiAwO1xyXG4vL31cclxuXHJcbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOmhvdmVyOm5vdCguYnV0dG9uKSxcclxuLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIGxpLmFjdGl2ZTpub3QoLmhhcy1mb3JtKSBhOm5vdCguYnV0dG9uKSB7XHJcbiAgICBjb2xvcjogJHRvcGJhcl9hY3RpdmVfYW5kX2hvdmVyX2NvbG9yO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIGxpOmhvdmVyID4gYSA+IHNwYW4ge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYyg4KTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiA4NSU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxlZnQ6IDclO1xyXG59XHJcblxyXG4udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24ge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxNTMsIDE1MywxNTMsIC43KTtcclxuICAgIGNvbG9yOiR0b3BiYXJfZHJvcGRvd25fY29sb3I7XHJcbn1cclxuXHJcbnVsIHtcclxuICAgIC5oYXMtZHJvcGRvd24ge1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIC5kcm9wZG93biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcclxuICAgIC8vY29sb3I6JHdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ1KTtcclxufVxyXG5cclxuLnRvcC1iYXIubm9jb2xvciAudG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pIGE6aG92ZXI6bm90KC5idXR0b24pLFxyXG4udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkuYWN0aXZlOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcclxuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgIGNvbG9yOiR0b3BiYXJfZHJvcGRvd25fYWN0aXZlX2FuZF9ob3Zlcl9jb2xvcjtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxufVxyXG5cclxuLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOm5vdCguYnV0dG9uKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE1KTtcclxufVxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDApKSB7XHJcbiAgICAudG9wLWJhci1zZWN0aW9uIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDkpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDExMDApKSB7XHJcbiAgICAudG9wLWJhci1zZWN0aW9uIGxpOm5vdCguaGFzLWZvcm0pIGE6bm90KC5idXR0b24pIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnRvcC1iYXItc2VjdGlvbiB1bC5kcm9wZG93biB7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbn1cclxuXHJcbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSB1bCBsaSB7XHJcbn1cclxuXHJcbi8vIFZlcnNjaGllYnVuZyBkZXMgZXJzdGVuIEVpbnRyYWdlcyB1bSBlaW5lbiBiZXN0aW1tdGVuIFdlcnQgbmFjaCByZWNodHNcclxuLnRvcC1iYXItc2VjdGlvbiB1bC5uYXZfbGVmdF9hZGRfbWFyZ2lue1xyXG4gICAgLy9tYXJnaW4tbGVmdDo0MHB4O1xyXG59XHJcblxyXG4udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpIGEge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGJvcmRlci1ib3R0b206bm9uZTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLnRvcC1iYXItc2VjdGlvbiB1bC5kcm9wZG93biBsaSBhIHtcclxuXHJcbn1cclxuXHJcbi8vIFdlbm4gYmVpIHp3ZWlzcGFsdGlnZW0gTGF5b3V0IGRlciBVbnRlcm1lbsO8cyAoU2FuZGVyKSBlaW4gRmFrZWVpbnRyYWcgbm9yd2VuZGlnIGlzdCwgd2lyZCBpaG0gaGllclxyXG4vLyBkZXIgQ3Vyc29yIHZlcnN0ZWxsdFxyXG4udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpLm5vX2xpbmsgYXtcclxuICAgIGN1cnNvcjpkZWZhdWx0O1xyXG59XHJcblxyXG4udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpLm5vX2xpbmsgYTpob3ZlcntcclxuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59XHJcbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkgYSBpbWd7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XHJcbiAgICB3aWR0aDo1MHB4O1xyXG59XHJcbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbil7XHJcbiAgICAvL2JvcmRlci1ib3R0b206c29saWQgMXB4ICRsaWdodF9ncmV5O1xyXG4gICAgLy9ib3JkZXItcmlnaHQ6c29saWQgMXB4ICRsaWdodF9ncmV5O1xyXG4gICAgLy9ib3JkZXItbGVmdDpzb2xpZCAxcHggJGxpZ2h0X2dyZXk7XHJcbiAgICAvL2xpbmUtaGVpZ2h0OjgwcHg7XHJcbn1cclxuXHJcbi50b3AtYmFyLW1lbnUtaWNvbi1pbWFnZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWcvbWVudS1pY29uLnBuZ1wiKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjAwO1xyXG4gICAgbWluLXdpZHRoOiByZW0tY2FsYyg2MCk7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg2MCk7XHJcbiAgICAvLy13ZWJraXQtYW5pbWF0aW9uOiBzbGlkZSAwLjVzIGZvcndhcmRzO1xyXG4gICAgLy8td2Via2l0LWFuaW1hdGlvbi1kZWxheTogMnM7XHJcbiAgICAvL2FuaW1hdGlvbjogc2xpZGUgMC41cyBmb3J3YXJkcztcclxuICAgIC8vYW5pbWF0aW9uLWRlbGF5OiAycztcclxufVxyXG5cclxuLnRvcC1iYXItbWVudS1pY29uLWNvbnRhaW5lciB7XHJcbiAgICAvL21pbi1oZWlnaHQ6IHJlbS1jYWxjKDM0Mik7XHJcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn0iLCIjY29udGFjdC1mb3JtLWxlZnQge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbnRhY3RGb3JtTGVmdDtcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMxIDI4IDIwIDI4KTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQxKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDEpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIyKTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEzKTtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE4MCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYTotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjIpO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMTkpO1xyXG4gICAgfVxyXG59XHJcblxyXG4jY29udGFjdC1mb3JtLWxlZnQtaGVhZGxpbmUge1xyXG4gICAgY29sb3I6ICRtYWluVHVycXVpc2U7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDE5IDI4KTtcclxufVxyXG4iLCIuc2lkZWJhci1oZWFkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuXHJcbiAgICAuc2lkZS1uYXYgbGkgPiBhIHtcclxuICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNpZGUtbmF2IHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYyg0KSBzb2xpZCAkYm9yZGVyQ29sb3I7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGJvcmRlckNvbG9yO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG5cclxuXHJcbiAgICAgICAgICAgIGE6bm90KC5idXR0b24pIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMiAwIDIyIDIyKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgJi5zaWRlLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGJvcmRlckNvbG9yO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gYTpub3QoLmJ1dHRvbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyIDAgMiA0NCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg1NSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaGFzLWRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgPiBhOm5vdCguYnV0dG9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDExKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5zaWRlLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlLW5hdiBsaSBhOmhvdmVyOm5vdCguYnV0dG9uKSwgLnNpZGUtbmF2IGxpIGE6Zm9jdXM6bm90KC5idXR0b24pIHtcclxuICAgICAgICBjb2xvcjogJHNpZGVuYXZfaG92ZXJfY29sb3I7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLnNpZGUtbmF2IGxpIHVsIGxpIGE6bm90KC5idXR0b24pIHtcclxuICAgICAgICBjb2xvcjogJG1haW5UdXJxdWlzZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2lkZS1uYXYgbGkgdWwgbGkgYTpub3QoLmJ1dHRvbik6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogdXJsKCcuLi8uLi9pbWcvbGlzdC1zdHlsZS1pY29uLnBuZycpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUpO1xyXG5cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5zaWRlYmFyLWhlYWQgLnNpZGUtbmF2IGxpIHVsIGxpIGEge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoNik7XHJcbn1cclxuXHJcblxyXG5cclxuLy8uc2lkZWJhci1oZWFkIC5zaWRlLW5hdiBsaS5hY3RpdmUgYTpiZWZvcmUge1xyXG4vLyAgICBjb250ZW50OiB1cmwoJy4uLy4uL2ltZy9saXN0LXN0eWxlLWljb24ucG5nJyk7XHJcbi8vICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUpO1xyXG4vL31cclxuXHJcbi5zaWRlLW5hdiBsaSB1bCBsaS5hY3RpdmUgPiBhOmZpcnN0LWNoaWxkOm5vdCguYnV0dG9uKSB7XHJcbiAgICBjb2xvcjogJG1haW5UdXJxdWlzZTtcclxufVxyXG5cclxuXHJcblxyXG4iLCIucGFja2FnaW5nLWNvbnRhaW5lciB7XHJcbiAgICBpbWcge1xyXG4gICAgICAgIGJvcmRlcjogcmVtLWNhbGMoMikgZGFzaGVkICRib3JkZXJDb250ZW50TGVmdDtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg2KTtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg2KTtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoNik7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDYpO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWNrYWdpbmctaW1hZ2Uge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAucGFja2FnaW5nLWJ1YmJsZS1pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1nL2ljb24tYnViYmxlLXBhY2thZ2luZy5naWZcIikgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDE3KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNSk7XHJcbiAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucGFja2FnaW5nLWltYWdlLWdhbGxlcnktdGV4dCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MXB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTYpO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5pY29uLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzkpO1xyXG5cclxuICAgIC5pY29uLWNvbnRlbnQge1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWxpc3Qge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogcmVtLWNhbGMoMSkgc29saWQgJGJvcmRlckNvbnRlbnRMZWZ0O1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzUpO1xyXG5cclxuICAgICAgICAuaWNvbi1jb250ZW50LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzUpO1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24taW1hZ2Uge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0LXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogJG1haW5UdXJxdWlzZTtcclxuICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjEpO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24taW1hZ2UtZ2FsbGVyeS10ZXh0IHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIiNoYW5kbGluZy1wcm9jZWR1cmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IHJlbS1jYWxjKDExNDApO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG59IiwiLmlsbHVzdHJhdGlvbi1jb250YWluZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzQpO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJJbGx1c3RyYXRpb247XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59IiwidWwudGVhc2VyLWJsb2NrIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAtMTIpO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEyKTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgIDpob3ZlciB7XHJcbiAgICAgICAgICAgIC50ZWFzZXItYmxvY2staWNvbiB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKC03KTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZWFzZXItYmxvY2stY29udGFpbmVyIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzQpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIDpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAudGVhc2VyLWJsb2NrLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTYpO1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZWFzZXItYmxvY2stb3ZlcmxheSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltZy90ZWFzZXItYmxvY2stdGV4dC1jb250YWluZXItYmFja2dyb3VuZC5wbmdcIikgbm8tcmVwZWF0IDAgMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMik7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNzYwKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLWhlYWRsaW5lIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRlYXNlckhlYWRsaW5lQmFja2dyb3VuZDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg1Myk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRlYXNlci1ibG9jay1pbWFnZS1jb250YWluZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAvLyY6aG92ZXIge1xyXG4gICAgICAgICAgICAvLyAgICAudGVhc2VyLWJsb2NrLWljb24ge1xyXG4gICAgICAgICAgICAvLyAgICAgICAgYm90dG9tOiByZW0tY2FsYygtNSk7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAtbW96LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLy8gICAgICAgIC1vLXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgLy8gICAgfVxyXG4gICAgICAgICAgICAvL31cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnRlYXNlci1ibG9jay1pY29uIHtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTE5JSk7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xyXG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XHJcbiAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5pbWFnZV9mYWRpbmdfZWZmZWt0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLXRleHQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbnRhY3RGb3JtTGVmdDtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxNDkpO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYygxNDkpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygzMyAxMiAyMSAyNyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLXRleHQtZmFkZS1pbiB7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLXRleHQtY29udGFpbmVyIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZmlndXJlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJJbGx1c3RyYXRpb247XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZWFzZXItYmxvY2stZHJvcGRvd24tY29udGFpbmVyIHtcclxuICAgICAgICAgICAgLy9oZWlnaHQ6IHJlbS1jYWxjKDUwMCk7XHJcbiAgICAgICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDYpO1xyXG5cclxuICAgICAgICAgICAgLy8td2Via2l0LXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzO1xyXG4gICAgICAgICAgICAvLy1tb3otdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7XHJcbiAgICAgICAgICAgIC8vLW1zLXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzO1xyXG4gICAgICAgICAgICAvLy1vLXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzO1xyXG4gICAgICAgICAgICAvL3RyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzO1xyXG5cclxuICAgICAgICAgICAgLnRlYXNlci1ibG9jay1kcm9wZG93bi1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgIC50ZWFzZXItYmxvY2stZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluVHVycXVpc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzUpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICAvLy13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3NjcpKSB7XHJcbiAgICAgICAgICAgIC50ZWFzZXItYmxvY2stZHJvcGRvd24tY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vLnRlYXNlci1ibG9jay1kcm9wZG93bi1zbGlkZS1pbiB7XHJcbiAgICAgICAgLy8gICAgYW5pbWF0aW9uOiB0ZWFzZXItYmxvY2stZHJvcGRvd24tc2xpZGUtaW4gMC41cyBmb3J3YXJkcztcclxuICAgICAgICAvLyAgICAtd2Via2l0LWFuaW1hdGlvbjogdGVhc2VyLWJsb2NrLWRyb3Bkb3duLXNsaWRlLWluIDAuNXMgZm9yd2FyZHM7XHJcbiAgICAgICAgLy99XHJcbiAgICAgICAgLy9cclxuICAgICAgICAvLy50ZWFzZXItYmxvY2stZHJvcGRvd24tc2xpZGUtb3V0IHtcclxuICAgICAgICAvLyAgICBhbmltYXRpb246IHRlYXNlci1ibG9jay1kcm9wZG93bi1zbGlkZS1vdXQgMC41cyBiYWNrd2FyZHM7XHJcbiAgICAgICAgLy8gICAgLXdlYmtpdC1hbmltYXRpb246IHRlYXNlci1ibG9jay1kcm9wZG93bi1zbGlkZS1vdXQgMC41cyBiYWNrd2FyZHM7XHJcbiAgICAgICAgLy8gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC4zczsgLyogQ2hyb21lLCBTYWZhcmksIE9wZXJhICovXHJcbiAgICAgICAgLy8gICAgYW5pbWF0aW9uLWRlbGF5OiAuM3M7XHJcbiAgICAgICAgLy99XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGVhc2VyLWJsb2NrLWRyb3Bkb3duLXNsaWRlLWluIHtcclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB0ZWFzZXItYmxvY2stZHJvcGRvd24tc2xpZGUtaW4ge1xyXG4gICAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHRlYXNlci1ibG9jay1kcm9wZG93bi1zbGlkZS1vdXQge1xyXG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XHJcbiAgICAvLzEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB0ZWFzZXItYmxvY2stZHJvcGRvd24tc2xpZGUtb3V0IHtcclxuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpOyB9XHJcbiAgICAvLzEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH1cclxufSIsIi5jYWxsb3V0LWNvbnRhaW5lciB7XHJcbiAgICBjb2xvcjogJG1haW5Db2xvckJsdWU7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2NykgIWltcG9ydGFudDtcclxuXHJcbiAgICAuY2FsbG91dC10ZXh0IHtcclxuICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDIpIGRhc2hlZCAkYm9yZGVyQ29udGVudExlZnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDYpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg2KTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNCAzMyAzMSA3Mik7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FsbG91dC10b3AtbGVmdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltZy9jYWxsb3V0LXRvcC1sZWZ0LWJhY2tncm91bmQucG5nXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzLjgxMjVyZW07XHJcbiAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0xNik7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzLjgxMjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FsbG91dC1ib3R0b20tbGVmdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltZy9pY29uLWJ1YmJsZS1wYWNrYWdpbmcuZ2lmXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtMzMpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM1KTtcclxuICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoNzApO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDk5OSkpIHtcclxuICAgICAgICAgICAgLmNhbGxvdXQtdG9wLWxlZnQge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoMTEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jYWxsb3V0LWJvdHRvbS1sZWZ0IHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKDUwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwidWwudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5IHtcclxuICAgIGxpIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEyKTtcclxuICAgIH1cclxuXHJcbiAgICAudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5LWNvbnRhaW5lciB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDc0KTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgIDpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5LWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTcpO1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZWFzZXItYmxvY2stc3ViY2F0ZWdvcnktaGVhZGxpbmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdGVhc2VySGVhZGxpbmVCYWNrZ3JvdW5kO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDUzKTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5LWhlYWRsaW5lLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzaWRlTmF2SG92ZXJBY3RpdmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5LWltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLnRlYXNlci1ibG9jay1zdWJjYXRlZ29yeS1pY29uIHtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKC03KTtcclxuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC50ZWFzZXItYmxvY2stc3ViY2F0ZWdvcnktaW1hZ2VfZmFkaW5nX2VmZmVrdDo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDonXFxBJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgICAgICAgICB0b3A6MDsgbGVmdDowO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNCk7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OjE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNHM7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCA0cztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnRlYXNlci1ibG9jay1zdWJjYXRlZ29yeS1pbWFnZS1vdmVybGF5IHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjIpO1xyXG4gICAgICAgICAgICAgICAgLy9tYXgtd2lkdGg6IHJlbS1jYWxjKDI5Nik7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKC02KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGVhc2VyLWJsb2NrLXN1YmNhdGVnb3J5LWljb24ge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtMTklKTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDQwJTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XHJcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcclxuICAgICAgICAgICAgICAgIC1vLXRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnRlYXNlci1ibG9jay1zdWJjYXRlZ29yeS1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtNyk7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA0MCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaW1hZ2VfZmFkaW5nX2VmZmVrdCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmaWd1cmUge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlcklsbHVzdHJhdGlvbjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5rZXl3b3JkbGlzdC1ibG9jayB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNzkgLTQpO1xyXG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg3NzcpO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDQgNyA0KTtcclxuXHJcbiAgICAgICAgLmtleXdvcmRsaXN0LWJsb2NrLWVsZW1lbnQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAka2V5d29yZGxpc3RCYWNrZ3JvdW5kO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAua2V5d29yZGxpc3QtYmxvY2stZWxlbWVudCBwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRtYWluVHVycXVpc2U7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzkpO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnRleHRibG9jayB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0Myk7XHJcbn0iLCIjY29udGFjdC1mb3JtIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDEpO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICAgIGJvcmRlcjogcmVtLWNhbGMoNSkgc29saWQgJGNvbnRhY3RGb3JtQm9yZGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTYpO1xyXG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNik7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNjIpO1xyXG4gICAgfVxyXG5cclxuICAgICNjb250YWN0LWZvcm0tc3RyZWV0LFxyXG4gICAgI2NvbnRhY3QtZm9ybS1jaXR5IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICNjb250YWN0LWZvcm0tcmVxdWlyZWQgcCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTYpO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg5OTkpKSB7XHJcbiAgICAgICAgI2NvbnRhY3QtZm9ybS1zdHJlZXQsXHJcbiAgICAgICAgI2NvbnRhY3QtZm9ybS1jaXR5IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3NjYpKSB7XHJcbiAgICAjY29udGFjdC1mb3JtIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcclxuICAgIH1cclxufSIsIiNjdXN0b21lci1zZXJ2aWNlLWNvbnRhaW5lciB7XHJcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg0NjkpO1xyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogcmVtLWNhbGMoNSkgc29saWQgJGJvcmRlckNvbG9yO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDk4KTtcclxuXHJcbiAgICAgICAgJiNjdXN0b21lci1zZXJ2aWNlLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlIHVybCgnLi4vLi4vaW1nL2N1c3RvbWVyLXNlcnZpY2Utc2VsZWN0LWFycm93LmdpZicpIG5vLXJlcGVhdCByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYjY3VzdG9tZXItc2VydmljZS1zZWxlY3Q6Zm9jdXMge1xyXG4gICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSB1cmwoJy4uLy4uL2ltZy9jdXN0b21lci1zZXJ2aWNlLXNlbGVjdC1hcnJvdy1mb2N1cy5naWYnKSBuby1yZXBlYXQgcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jdXN0b21lci1zZXJ2aWNlLWNvbnRhY3Qge1xyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogJG1haW5UdXJxdWlzZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmZhZGUtaW4ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OjA7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOmZhZGVJbiBlYXNlLWluIDE7XHJcbiAgICAgICAgICAgIC1tb3otYW5pbWF0aW9uOmZhZGVJbiBlYXNlLWluIDE7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjpmYWRlSW4gZWFzZS1pbiAxO1xyXG5cclxuICAgICAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO1xyXG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHM7XHJcblxyXG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xyXG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC41cztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiNjdXN0b21lci1zZXJ2aWNlICNtYWluLWNvbnRlbnQgLmNvbnRlbnRfcmlnaHQge1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWcvY3VzdG9tZXItc2VydmljZS13b3JsZC1iYWNrZ3JvdW5kLnBuZycpIG5vLXJlcGVhdCBib3R0b207XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTowO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6MTtcclxuICAgIH1cclxufVxyXG5cclxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OjA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eToxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OjA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eToxO1xyXG4gICAgfVxyXG59IiwiLmhlYWRsaW5lX2ljb24ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJGJvcmRlckNvbG9yO1xyXG4gICAgYm9yZGVyLXRvcDogcmVtLWNhbGMoMSkgc29saWQgJGJvcmRlckNvbG9yO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgNDcgOSk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMyKTtcclxuXHJcbiAgICAuaWNvbl9jb250YWluZXIge1xyXG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjEpO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyOSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpO1xyXG4gICAgfVxyXG59IiwiLnZpZGVvLWdhbGxlcnkge1xyXG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODIpO1xyXG5cclxuICAgIC5yb3cge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjcwKTtcclxuICAgIH1cclxuICAgIC52aWRlby1nYWxsZXJ5LXRpdGxlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNSk7XHJcblxyXG4gICAgICAgIC52aWRlby1nYWxsZXJ5LWhlYWRsaW5lIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwIDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygwKTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg3IDMyKTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICYuYnJvY2h1cmUge1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBDaGFuZ2UgdG8gd2F0Y2ggaW4gc2xvdyBtb3Rpb25cclxuJGR1cmF0aW9uOiAuNXM7XHJcblxyXG4kc2l6ZSA6IDEwMCU7XHJcbiR0b2dnbGVkLXNpemUgOiAuNzU7XHJcblxyXG4kYmcgOiAjZmZmO1xyXG4kbmF2LWJnICA6ICNmZmY7XHJcbiRjb250ZW50LWJnIDogI2ZmZjtcclxuXHJcbi50b3AtYmFyLW1lbnUtaWNvbi1pbWFnZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbWFpbkNvbG9yQmx1ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI2IDE1KTtcclxuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi8yO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAuODtcclxuXHJcbiAgICAubmF2aWNvbjpiZWZvcmUsIC5uYXZpY29uOmFmdGVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24vMjtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb247XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgLm5hdmljb246YmVmb3JlLCAubmF2aWNvbjphZnRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbi8yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdmljb246YmVmb3JlIHsgdG9wOiAuODI1cmVtOyB9XHJcbiAgICAgICAgLm5hdmljb246YWZ0ZXIgeyB0b3A6IC0uODI1cmVtOyB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXZpY29uIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XHJcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQpO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbnRlbnQtYmc7XHJcbiAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb247XHJcbiAgICBib3JkZXItcmFkaXVzOiAyLjVyZW07XHJcblxyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0KTtcclxuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb250ZW50LWJnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkZHVyYXRpb24gJGR1cmF0aW9uLzI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7IHRvcDogcmVtLWNhbGMoOCk7IH1cclxuICAgICY6YWZ0ZXIgeyB0b3A6ICByZW0tY2FsYygtOCk7IH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4ub3Blbjpub3QoLnN0ZXBzKSAubmF2aWNvbjpiZWZvcmUsXHJcbi5vcGVuOm5vdCguc3RlcHMpIC5uYXZpY29uOmFmdGVyIHtcclxuICAgIHRvcDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3BlbiAubmF2aWNvbjpiZWZvcmUsXHJcbi5vcGVuIC5uYXZpY29uOmFmdGVyIHtcclxuICAgIHRyYW5zaXRpb246ICRkdXJhdGlvbjtcclxufVxyXG5cclxuLm9wZW4ueCB7XHJcbiAgICAubmF2aWNvbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxyXG4gICAgICAgICY6YWZ0ZXIgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cclxuICAgIH1cclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0tpdGUgT25lJztcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBzcmM6IGxvY2FsKCdLaXRlIE9uZScpLCBsb2NhbCgnS2l0ZU9uZS1SZWd1bGFyJyksIHVybChodHRwOi8vdGhlbWVzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9zdGF0aWMvZm9udHMva2l0ZW9uZS92MS9WTkhvRDk2THBaOXJHWlR3am96QU9uWWhqYlNwdmM0N2VlNnhSXzgwSG53LndvZmYpIGZvcm1hdCgnd29mZicpO1xyXG59IiwiQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg5OTkpKSB7XHJcbiAgICAjbGF5ZXJzbGlkZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYi1iYXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgIH1cclxuXHJcbiAgICAjbWFpbi1jb250ZW50IC5jb250ZW50X3JpZ2h0IC5sYXJnZS0xMiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XHJcbiAgICB9XHJcblxyXG4gICAgI2xvZ28ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnJvdyAjbG9nbyBhIGltZyB7XHJcbiAgICAgICAvLyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNSkgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0I2ltcHJpbnQtaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMge1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxNTApO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuXHJcbiAgICB1bC5pbmxpbmUtbGlzdCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwKTtcclxuICAgIH1cclxufSIsInVsIHtcclxuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAtMjApO1xyXG5cclxuICAgICYubmF2aV9ibG9jayB7XHJcblxyXG4gICAgICAgIGE6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAubmF2aV9ibG9ja19lbGVtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluVHVycXVpc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdmlfYmxvY2tfaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIC5uYXZpX2Jsb2NrX2ltYWdlX2hvdmVyX292ZXJsYXkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM3LCA1MiwgMTA5LCAuNik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAubmF2aV9ibG9ja19pbWFnZV9vdmVybGF5X2ZvcndhcmRfdGV4dF9ob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAubmF2aV9ibG9ja19pbWFnZV9vdmVybGF5X2ZvcndhcmRfaG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm5hdmlfYmxvY2tfYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vLi4vaW1nL2hvbWUtbmF2LWJsb2NrLWltYWdlLWFycm93LWhvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuXHJcblxyXG4gICAgICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZpX2Jsb2NrX2NvbG9yO1xyXG4gICAgICAgICAgICAgICAgLy8td2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC8vLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XHJcbiAgICAgICAgICAgICAgICAvLy1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC8vLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC8vdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG5cclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5UdXJxdWlzZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1KTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8td2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgICAgICAvLy1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgICAgICAvL3RyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdmlfYmxvY2tfZWxlbSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRuYXZpX2Jsb2NrX2JhY2tncm91bmQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1KTtcclxuXHJcbiAgICAgICAgICAgIC5uYXZpX2Jsb2NrX2ltYWdlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdmlfYmxvY2tfaW1hZ2VfaG92ZXJfb3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5NCU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdmlfYmxvY2tfaW1hZ2Vfb3ZlcmxheV9mb3J3YXJkX2hvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltZy9ob21lLW5hdi1ibG9jay1pbWFnZS1vdmVybGF5LWZvcndhcmQtaG92ZXIucG5nJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDAuMyU7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAzMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDYwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubmF2aV9ibG9ja19pbWFnZV9vdmVybGF5X2ZvcndhcmRfdGV4dF9ob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDM4JTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTQlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubmF2aV9ibG9ja19hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi8uLi9pbWcvaG9tZS1uYXYtYmxvY2staW1hZ2UtYXJyb3cucG5nXCIpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDE3cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyOXB4O1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLy8td2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgIC8vLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAvL3RyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJsb2NrX3RleHRfY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTYgMjQgMjUgMjQpO1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxNyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoOTk5KSkge1xyXG4gICAgICAgICAgICAuYmxvY2tfdGV4dF9jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLmltYWdlLWdhbGVyeSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE1IDAgNDApO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiByZW0tY2FsYyg5OTkpKSB7XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XHJcbiAgICB9XHJcbn0iLCIvLy5nLXJlY2FwdGNoYSB7XHJcbi8vICAgIGlmcmFtZSB7XHJcbi8vICAgICAgICAvL3dpZHRoOiByZW0tY2FsYygyNDApO1xyXG4vLyAgICB9XHJcbi8vfVxyXG4vLy5yYy1hbmNob3ItbGlnaHQgIHtcclxuLy8gICAgYmFja2dyb3VuZDogcmVkO1xyXG4vLyAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI0MCkgIWltcG9ydGFudDtcclxuLy8gICAgd2lkdGg6IHJlbS1jYWxjKDI0MCkgIWltcG9ydGFudDtcclxuLy99XHJcbi8vLnJjLWFuY2hvci1ub3JtYWwtZm9vdGVyIHtcclxuLy8gICAgLnJjLWFuY2hvci1sb2dvLXBvcnRyYWl0IHtcclxuLy8gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygwKSAhaW1wb3J0YW50O1xyXG4vL1xyXG4vLyAgICAgICAgLnJjLWFuY2hvci1sb2dvLWltZy1wb3J0cmFpdCB7XHJcbi8vXHJcbi8vICAgICAgICB9XHJcbi8vICAgIH1cclxuLy99XHJcblxyXG4uZy1yZWNhcHRjaGEtb3V0ZXJ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci1jb2xvcjogI2NjYztcclxuICAgIGJvcmRlci13aWR0aDogMXB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG59XHJcbi5nLXJlY2FwdGNoYS1pbm5lcntcclxuICAgIHdpZHRoOiAxNTRweDtcclxuICAgIGhlaWdodDogODJweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufVxyXG4uZy1yZWNhcHRjaGF7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIGxlZnQ6IC0ycHg7XHJcbiAgICB0b3A6IC0xcHg7XHJcbn0iXSwibWFwcGluZ3MiOiI7QUFFQTs7OEVBRThFO0FzQk85RSxPQUFPLENBQUMscUVBQUk7QUFDWixPQUFPLENBQUMsaUVBQUk7QWxCZ1ZWLEFBQUksSUFBQSxBQUFBLG1CQUFtQixDQUFDO0VBQ3RCLFdBQVcsRUFBRSxlQUFnQixHQUM5Qjs7QUFFRCxBQUFJLElBQUEsQUFBQSxvQkFBb0IsQ0FBQztFQUN2QixXQUFXLEVBQUUsZUFBRztFQUNoQixLQUFLLEVIOENNLEdBQUcsR0c3Q2Y7O0FBRUQsQUFBSSxJQUFBLEFBQUEseUJBQXlCLENBQUM7RUFDNUIsV0FBVyxFQUFFLDBDQUFHO0VBQ2hCLEtBQUssRUh5Q00sR0FBRyxHR3hDZjs7QUFFRCxBQUFJLElBQUEsQUFBQSxxQkFBcUIsQ0FBQztFQUN4QixXQUFXLEVBQUUsMENBQUc7RUFDaEIsS0FBSyxFRmhSQyxVQUFVLEdFaVJqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSwwQkFBMEIsQ0FBQztFQUM3QixXQUFXLEVBQUUscUVBQUc7RUFDaEIsS0FBSyxFRnJSQyxVQUFVLEdFc1JqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSxvQkFBb0IsQ0FBQztFQUN2QixXQUFXLEVBQUUsdUNBQUc7RUFDaEIsS0FBSyxFRjFSQyxPQUFVLEdFMlJqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSx5QkFBeUIsQ0FBQztFQUM1QixXQUFXLEVBQUUsNERBQUc7RUFDaEIsS0FBSyxFRi9SQyxPQUFVLEdFZ1Nq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LEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsa0JBQWtCLEVBQUUsQUFBRSxFQUFBLEFBQUEsa0JBQWtCLEVBQUUsQUFBRSxFQUFBLEFBQUEsZUFBZSxFQUFFLEFBQUUsRUFBQSxBQUFBLGVBQWUsRUFBRSxBQUFFLEVBQUEsQUFBQSxvQkFBb0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxvQkFBb0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxxQkFBcUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxxQkFBcUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxtQkFBbUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxtQkFBbUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxnQkFBZ0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxnQkFBZ0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxxQkFBcUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxxQkFBcUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxzQkFBc0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxzQkFBc0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxvQkFBb0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxvQkFBb0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxpQkFBaUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxpQkFBaUIsRUFBRSxBQUFFLEVBQUEsQUFBQSxzQkFBc0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxzQkFBc0IsQ0FBeDVCO0lBQ0UsT0FBTyxFQUFFLHFCQUFz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 */
