@charset "UTF-8";
/*****************************************************************************
 Hier werden "benötigte!!!" Erweiterungen inkludiert
 ****************************************************************************/
meta.foundation-version {
  font-family: "/{{VERSION}}/"; }

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

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

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

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

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

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

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

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

meta.foundation-mq-xxlarge {
  font-family: "/all 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: "Cabin", 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 all {
  .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 all 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 all 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: "Cabin", 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 all {
  .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 all 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 all 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 all 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: "Cabin", 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 all 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: 1rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0.8125rem;
  /* 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: 1rem;
  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: "Cabin", 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 all and (min-width: 47.9375rem) {
  .touch .orbit-container .orbit-prev,
  .touch .orbit-container .orbit-next {
    display: inherit; }
  .touch .orbit-bullets {
    display: block; } }

@media all 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 all 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 all and (min-width: 47.9375rem) {
    .reveal-modal {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 80%; } }
  @media all 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 all and (min-width: 47.9375rem) {
    .reveal-modal.tiny {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 30%; } }
  @media all and (min-width: 47.9375rem) {
    .reveal-modal.small {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 40%; } }
  @media all and (min-width: 47.9375rem) {
    .reveal-modal.medium {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 60%; } }
  @media all and (min-width: 47.9375rem) {
    .reveal-modal.large {
      left: 0;
      margin: 0 auto;
      max-width: 62.5rem;
      right: 0;
      width: 70%; } }
  @media all 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 all 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: "Cabin", 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: "Cabin", 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: "Cabin", 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: "Cabin", 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 all 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: "/all and (min-width:47.9375rem)/";
  width: 47.9375rem; }

/* Wrapped around .top-bar to contain to grid width */
.contain-to-grid {
  width: 100%;
  background: #0070b8; }
  .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: #0070b8;
  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 all 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: 1rem;
      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: #0070b8; }
    .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 #00385c;
    clear: both;
    height: 1px;
    width: 100%; }
  .top-bar-section ul li {
    background: none; }
    .top-bar-section ul li > a {
      color: #ffffff;
      display: block;
      font-family: "Cabin", sans-serif;
      font-size: 1rem;
      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: 1rem;
        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: 1rem;
      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: #b5b5b5;
      background: #b5b5b5;
      color: #ffffff; }
    .top-bar-section ul li.active > a {
      background: #b5b5b5;
      color: #0070b8; }
      .top-bar-section ul li.active > a:hover {
        background: #b5b5b5;
        color: #b5b5b5; }
  .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 all and (min-width: 47.9375rem) {
  .top-bar {
    background: #0070b8;
    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: #0070b8; }
  .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: #b5b5b5;
      background: #b5b5b5;
      color: #ffffff; }
    .top-bar-section li:not(.has-form) a:not(.button) {
      background: #0070b8;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li:not(.has-form) a:not(.button):hover {
        background-color: #b5b5b5;
        background: #b5b5b5; }
    .top-bar-section li.active:not(.has-form) a:not(.button) {
      background: #b5b5b5;
      color: #0070b8;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover {
        background: #b5b5b5;
        color: #b5b5b5; }
    .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: #333333;
        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: #333333;
        color: #ffffff; }
      .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) {
        background-color: #b5b5b5;
        color: #0070b8;
        background: #b5b5b5; }
      .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 #008ae2;
      border-bottom: none;
      border-top: none;
      clear: none;
      height: 2.8125rem;
      width: 0; }
    .top-bar-section .has-form {
      background: #0070b8;
      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: #b5b5b5;
    background: #b5b5b5;
    color: #ffffff; }
  .no-js .top-bar-section ul li:active > a {
    background: #b5b5b5;
    color: #0070b8; }
  .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 all 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 all {
  .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 all 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 all 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 all 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 all 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 all 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 all 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 all 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 all 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.3125rem;
  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: "Cabin", 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: 0.9375rem; }

h2 {
  font-size: 1.6875rem; }

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.3125rem;
  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.3125rem;
  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 all and (min-width: 47.9375rem) {
  h1, h2, h3, h4, h5, h6 {
    line-height: 1.4; }
  h1 {
    font-size: 1.5625rem; }
  h2 {
    font-size: 2.3125rem; }
  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: #0070b8;
  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 #00385c;
  left: 0; }

.right-small {
  height: 2.8125rem;
  position: absolute;
  top: 0;
  width: 2.8125rem;
  border-left: solid 1px #00385c;
  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: #0070b8;
  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: #0070b8;
  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 #00548a;
    color: rgba(255, 255, 255, 0.7);
    display: block;
    padding: 0.66667rem;
    transition: background 300ms ease; }
    ul.off-canvas-list li a:hover {
      background: #004e81; }
    ul.off-canvas-list li a:active {
      background: #004e81; }

.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 all 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 all 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 all 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 all 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 all 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: #0070b8;
  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: #0070b8;
  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 all {
  .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 all 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 all 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 all 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 all 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 all 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 all 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 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; } }

.breadcrumbs {
  border-style: solid;
  border-width: 1px;
  display: block;
  list-style: none;
  margin-left: 0;
  overflow: hidden;
  padding: 0.5625rem 0.875rem 0.5625rem;
  background-color: white;
  border-color: #e6e6e6;
  border-radius: 3px; }
  .breadcrumbs > * {
    color: #008CBA;
    float: left;
    font-size: 0.6875rem;
    line-height: 0.6875rem;
    margin: 0;
    text-transform: uppercase; }
    .breadcrumbs > *:hover a, .breadcrumbs > *:focus a {
      text-decoration: underline; }
    .breadcrumbs > * a {
      color: #008CBA; }
    .breadcrumbs > *.current {
      color: #333333;
      cursor: default; }
      .breadcrumbs > *.current a {
        color: #333333;
        cursor: default; }
      .breadcrumbs > *.current:hover, .breadcrumbs > *.current:hover a, .breadcrumbs > *.current:focus, .breadcrumbs > *.current:focus a {
        text-decoration: none; }
    .breadcrumbs > *.unavailable {
      color: #999999; }
      .breadcrumbs > *.unavailable a {
        color: #999999; }
      .breadcrumbs > *.unavailable:hover,
      .breadcrumbs > *.unavailable:hover a, .breadcrumbs > *.unavailable:focus,
      .breadcrumbs > *.unavailable a:focus {
        color: #999999;
        cursor: not-allowed;
        text-decoration: none; }
    .breadcrumbs > *:before {
      color: #AAAAAA;
      content: "/";
      margin: 0 0.75rem;
      position: relative;
      top: 1px; }
    .breadcrumbs > *:first-child:before {
      content: " ";
      margin: 0; }

/* Accessibility - hides the forward slash */
[aria-label="breadcrumbs"] [aria-hidden="true"]:after {
  content: "/"; }

/*****************************************************************************/
/*****************************************************************************
 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
************************************************************/
body {
  background-color: #ffffff;
  font-size: 1.0625rem; }

p {
  font-size: 1.0625rem; }

#main-content {
  padding-top: 20px;
  padding-bottom: 50px; }

#logo {
  padding-left: 0;
  margin-bottom: 20px; }

h1 {
  border-collapse: collapse;
  color: #0070b8;
  display: table;
  font-weight: 700;
  margin-bottom: 1.25rem;
  white-space: nowrap; }

h1::after {
  content: "";
  display: table-cell;
  width: 100%;
  background-image: linear-gradient(to right, #c5c6c6 50%, #c5c6c6 50%);
  background-position: 0 50%;
  background-repeat: repeat-x;
  background-size: 1px 1px; }

h1::after {
  border-left: 7.5rem solid transparent; }

#home h1 {
  font-weight: 400;
  margin-left: 0;
  text-transform: uppercase; }

#home h1::before,
#home h1::after {
  content: "";
  display: table-cell;
  width: 50%;
  background-image: linear-gradient(to right, #e1e1e1 50%, #e1e1e1 50%);
  background-position: 0 50%;
  background-repeat: repeat-x;
  background-size: 1px 1px; }

#home h1::before {
  border-right: 1.5em solid transparent; }

#home h1::after {
  border-left: 1.5em solid transparent; }

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

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

.h1_border_bottom h1 {
  display: inline; }

h2 {
  color: #000000;
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 30px; }

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: 0;
  padding: 0;
  height: 1px;
  background-color: #666666;
  width: 80px;
  margin: auto; }

h3.coloured {
  background-color: #0070b8;
  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; }

h6 {
  color: #0070b8;
  font-weight: 700;
  margin-bottom: 0; }

.headline_icon_container {
  display: table;
  margin-bottom: 20px;
  margin-bottom: 20px;
  -webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d; }

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

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

a {
  color: #00cdff;
  text-decoration: none; }

a:hover {
  color: #00cdff;
  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 0 !important; }

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

.no-padding {
  padding: 0; }

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

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

ul, table {
  font-size: 1.0625rem;
  line-height: 1.375rem; }

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

#main-content div.element-container ul {
  margin: 0 -1.5625rem; }

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

div.element-container:first-of-type {
  padding-bottom: 0.3125rem; }

.inline-list {
  margin-bottom: 0; }

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

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

.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: 0;
  margin: 0; }

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

.text-image .right img,
.text-image div.text-image-col img {
  border: 0.1875rem solid #ebecec;
  padding: 0.375rem !important;
  width: 100%; }

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

.text-image {
  margin-bottom: 1.25rem; }

.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: 0; }
  .text-image div.text-image-col img {
    padding: 5px;
    width: 100%; } }

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

.icon_round {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #0070b8;
  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: #b5b5b5; }

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: 0;
  margin-top: 10px; }

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

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

.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 {
  opacity: 0.50;
  filter: alpha(opacity=50);
  -moz-opacity: 0.50;
  opacity: 0.50; }

/*
///////////////////////////////////////////////////////////////////////////////////////
// Blockelement Startseite (sander)
///////////////////////////////////////////////////////////////////////////////////////
.startseite_block li{
    background-color:$white;
}

.startseite_block li div{
    text-align:center;
    background-color:$light_grey;
    padding-bottom:5px;
}

.startseite_block div.image_fading_effekt, .block_element div.image_fading_effekt{
    position:relative;
	width:100%;
    padding-bottom:65%;
    background-size:100% auto;
    background-position:center center;
    -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_element div.image_fading_effekt{
    padding-bottom:55%;
}

.startseite_block div.image_fading_effekt:hover, .block_element div.image_fading_effekt:hover{
    background-size:103% 103%;
    filter:alpha(opacity=50);
    -moz-opacity: 0.50;
    opacity: 0.50;
}

.startseite_block li div h2{
    padding-top:10px;
    padding-bottom: 0;
    font-weight:700;
    font-size:rem-calc(15);
    text-transform:uppercase;
    color:$dark_grey;
}
.startseite_block li div h6{
    margin-bottom:15px;
}
.startseite_block li ul{
    margin:5px;
    margin-top:10px;
    background-color:$white;
    list-style-position:inside ;
}
.startseite_block li ul li,.startseite_block li ul li a{
    font-size:rem-calc(15);
    color:$black;
    background-color:$white;
    text-align:left;
    list-style-type:none;
    border-bottom:1px solid $light_grey;
    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;
}
.startseite_block li ul li a{
    margin: 0;
    padding: 0;
    display:block;
    width:90%;
    margin-left:10%;
    border: 0;
}
.startseite_block li ul li:hover, .startseite_block li ul li:hover a, .startseite_block li ul li a:hover{
    background-color:$mid_grey;
    text-decoration:none;
}
.startseite_block li ul li div.icon{
    position:relative;
    top:3px;
    background-color:transparent;
    margin-left:10px;
}
///////////////////////////////////////////////////////////////////////////////////////
*/
.block_elem_container li div {
  color: #ffffff;
  padding-bottom: 5px;
  position: relative;
  text-align: center;
  -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 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,
.block_elem_container img.image_fading_effekt {
  width: 100%;
  background-size: 100% auto;
  background-position: center center;
  -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 div:hover .image_fading_effekt {
  filter: alpha(opacity=50);
  -moz-opacity: 0.50;
  opacity: 0.50; }

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

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

.navi_block li div {
  background-color: #b5b5b5;
  color: #000000; }

.navi_block li div div {
  padding: 10px;
  z-index: 1; }

.navi_block li div h2 {
  border-bottom: 1px solid #ffffff;
  color: #0070b8;
  padding-bottom: 10px;
  padding-top: 15px; }

.navi_block li:hover div.navi_block_elem {
  background-color: #ffffff; }

.navi_block div.block_text_container {
  padding-bottom: 5px; }

.navi_block div.block_text_container h2 {
  margin-bottom: 8px; }

.navi_block div.block_text_container p {
  margin-bottom: 0; }

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

.linkliste_block li div h2 {
  padding-top: 10px;
  padding-bottom: 0;
  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: #b5b5b5;
  list-style-position: inside; }

.linkliste_block li ul li, .linkliste_block li ul li a {
  font-size: 0.9375rem;
  color: #666666;
  background-color: #b5b5b5;
  text-align: left;
  list-style-type: none;
  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: 0;
  padding: 0;
  display: block;
  width: 90%;
  margin-left: 10%;
  border: 0; }

.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_div {
  border: 6px solid #dcdcdc; }

.linkliste_icon_block .linkliste_link_icon_block_subtitle {
  color: #000000;
  font-size: 1.0625rem;
  min-height: 5.9375rem;
  padding-bottom: 1.8125rem;
  text-transform: none; }

.linkliste_icon_block .linkliste_icon_block_headline {
  font-size: 1.25rem;
  line-height: 1.4375rem;
  padding-bottom: 1.0625rem;
  text-decoration: none; }

#home ul.linkliste_icon_block {
  margin: -0.625rem -3.125rem; }

#home li.linkliste_icon_block_list {
  padding: 0.625rem 3.125rem; }

#home .linkliste_icon_block li ul li a {
  font-weight: 400; }

#home .content_right .element-container:nth-child(2) {
  padding-bottom: 3.125rem; }

#product-category-products-container {
  margin-bottom: 1.25rem;
  padding: 1.9375rem 0.5625rem 0 0.5625rem; }

#product-category-products-container a {
  text-decoration: none; }

.product-subcategory-description-container span,
.product-category-description-container span,
.product-category-products-description-container span {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6875rem;
  min-height: 3.9375rem; }
  .product-subcategory-description-container span.search-result,
  .product-category-description-container span.search-result,
  .product-category-products-description-container span.search-result {
    font-size: 1rem;
    line-height: 1.25rem; }

.product-category-products-description-container span {
  font-size: 1.5625rem;
  min-height: 0;
  text-transform: uppercase; }

.product-category-products-description-container h6 {
  margin-top: 0.8125rem; }

.products-category-products-short-description p {
  color: #000000;
  font-size: 1.125rem;
  line-height: 1.5625rem;
  min-height: 4.6875rem;
  padding: 0; }

.products-category-products-short-description.search-result p {
  font-size: 0.875rem;
  line-height: 0.9375rem;
  min-height: 1.875rem; }

#product-details-container {
  border: 6px solid #dcdcdc; }

#product-category-products-container {
  border: 6px solid #dcdcdc;
  margin-top: 2.5rem; }

#product-details-container > .row {
  padding-bottom: 1.375rem; }

#product-category-products-container .linkliste_icon_block_div {
  border-bottom: none;
  border-left: none;
  border-right: 1px solid #e5e5e5;
  border-top: none; }

#product-category-products-container .linkliste_icon_block_list {
  padding-bottom: 2.5rem;
  padding-right: 0; }

#product-category-products-container .linkliste_icon_block_div {
  padding-right: 0.625rem; }

ul.product-subcategory-list,
ul.product-category-list {
  margin: -1.875rem; }

.product-subcategory-list li,
.product-category-list li {
  padding: 1.875rem; }

#product-category-products-container #linkliste-icon-block-div-4 {
  border: none; }

#product-category-products-container .element-container {
  padding: 0.9375rem; }

.product-category-list .image_fading_effekt,
.product-subcategory-list .image_fading_effekt {
  border-bottom: 0.0625rem solid #dddddd; }

#manufacturer {
  background: #f8f8f8;
  border: 0.125rem solid #dfdfdf; }

#manufacturer-text {
  color: #006eb4;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 4rem; }

#manufacturer-select {
  margin: 0.875rem 0;
  color: #73716b;
  font-weight: 700; }

#manufacturer-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 2px solid #dfdfdf;
  background: url("../../img/select-arrow.png") no-repeat 0 center;
  -webkit-border-radius: 0.25rem;
  -moz-border-radius: 0.25rem;
  border-radius: 0.25rem;
  padding-left: 2.1875rem;
  width: 13.75rem; }

select {
  font-size: 0.9375rem;
  font-weight: 700; }

.breadcrumbs {
  border: none;
  padding-left: 0; }

#product-details-container {
  padding: 1.375rem; }

#product-details-hint {
  border-top: 1px solid #e5e5e5;
  font-size: 0.8125rem;
  padding-top: 2.1875rem;
  margin-bottom: 0.625rem; }

#product-details-long-description table {
  border: none;
  margin: 0;
  padding: 0;
  width: 100%; }

#product-details-long-description table tr td:first-child {
  font-weight: 700;
  width: 40%; }

#product-details-long-description table tr td {
  line-height: 25px;
  padding: 0;
  vertical-align: top; }

#product-details-long-description table tr.even, table tr.alt, table tr:nth-of-type(2n) {
  background: none; }

#product-details-logo {
  padding-bottom: 1.0625rem; }

#product-details-headline {
  color: #0070B8;
  font-size: 1.5625rem;
  font-weight: 700;
  margin-bottom: 0.75rem; }

.image-blueline,
.product-details-headline-underline {
  background-color: #00cdff;
  display: block;
  height: 0.3125rem;
  margin: 0 0 1rem 0;
  padding: 0;
  width: 7.0625rem; }

#product-details-images {
  border-right: 1px solid #dcdcdc;
  min-height: 18.3125rem; }

#product-details-image-thumbnails {
  padding-right: 0; }

#product-details-image-thumbnails li {
  border: 1px solid #dcdcdc;
  margin-bottom: 1.1875rem; }

#product-details-image-thumbnails ul {
  list-style-type: none;
  margin: 0; }

#product-details-image-gallery li {
  display: inline;
  margin-right: 3px; }

.product-details-download {
  padding-bottom: 2.1875rem; }

.product-details-download img {
  float: right; }

.image-blueline {
  margin-bottom: 1.25rem; }

.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: #0070b8; }

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

.linkliste_icon_block li div h6.midline {
  background-color: #00cdff;
  height: 0.25rem; }

.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 {
  color: #006eb8;
  font-size: 0.9375rem;
  list-style-type: none;
  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;
  text-align: left;
  transition: all 0.3s linear; }

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

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

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

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

li.linkliste_icon_block_list:hover ~ .linkliste_icon_block_more,
.linkliste_icon_block_more:hover, .linkliste_icon_block li ul li a:hover ~ .linkliste_icon_block_more {
  background: #0070b8 url("../../img/home-list-arrow-hover.png") no-repeat center center; }

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

.linkliste_icon_block_more {
  background: url("../../img/home-list-arrow.png") no-repeat center center;
  border: 0.25rem solid #dcdcdc;
  height: 1.8125rem;
  margin: 0 auto;
  max-width: 4.125rem;
  padding-bottom: 1.4375rem; }

.top_bar_container {
  background: #0070b8; }

.top_bar_container.show {
  background-color: #0070b8; }

.top-bar-row.borderBottom {
  border-bottom: 4px solid #0059A9; }

.top-bar-section ul > li {
  margin-right: 1.875rem; }

.top-bar-section ul li ul li {
  margin-right: 0; }

.top-bar.nocolor .top-bar-section li:not(.has-form) a:not(.button) {
  color: #ffffff; }

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

.top-bar.nocolor .top-bar-section ul.dropdown {
  background: rgba(0, 112, 184, 0.8); }

.top-bar.nocolor .top-bar-section ul.dropdown li:not(.has-form) a:not(.button) {
  color: #ffffff; }

.top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
  background: none; }

.top-bar-section ul > li > a {
  background: none;
  text-decoration: none;
  text-transform: uppercase; }

.top-bar-section ul li ul li > a {
  border-bottom: 1px solid #83b7d4;
  text-transform: none; }

.top-bar-section ul li ul li {
  padding: 0 8px; }

.top-bar-section ul li ul li.active,
.top-bar-section ul li ul li:hover {
  background: #b5b5b5; }

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

.top-bar-section ul.nav_left_add_margin {
  margin-left: 0; }

/*
.top-bar-section ul.dropdown li a{
	color:$white;
	border-bottom:none;
	padding:20px;
	padding-top:20px;
	padding-bottom:20px;
}
*/
.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; }

.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: #b5b5b5;
  color: #ffffff; }

.no-js .top-bar-section ul li:active > a {
  background: #b5b5b5;
  color: #0070b8; }

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

.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;
  font-size: 2.1875rem;
  font-weight: 500;
  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; }

.layer_text_anim {
  color: #000000;
  border: 0.25rem solid #0070b8;
  padding: 28px 27px 20px 27px;
  max-width: 59.625rem;
  left: 21.875rem !important; }

.overlay-more-info-container {
  float: right; }

.overlay-title {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase; }

.overlay-text {
  float: left;
  font-size: 100%;
  font-weight: 700;
  width: 100%; }

.overlay-more-info {
  background: #0070b8;
  color: #ffffff;
  font-size: 0.9375rem;
  font-weight: 700;
  padding: 0.8125rem 1.8125rem;
  margin: 0 30px 0 0; }

.additional-styles {
  border: none;
  color: #ffffff;
  left: 0 !important;
  top: 12.8125rem !important; }

.additional-styles-line-break {
  border: none;
  color: #ffffff;
  left: 0 !important;
  top: 10.9375rem !important; }

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

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

div.row div.kontakt {
  background-color: #0070b8;
  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; } }

#anfahrt-container {
  border: 0.375rem solid #dcdcdc;
  padding: 1.9375rem 1.9375rem 0.9375rem 1.9375rem; }

.single-image img {
  border: 4px solid #ebecec;
  padding: 0.5rem; }

footer {
  background: #646464 url("../../img/footer-background.jpg") no-repeat;
  position: relative;
  padding-top: 21px; }
  footer .footerLinks {
    display: block; }

#footer-nav {
  float: left;
  min-height: 22.8125rem;
  position: relative;
  width: 100%; }

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

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

#footer-nav ul li ul li {
  border-right: 1px solid #ffffff; }

#footer-nav a {
  color: #ffffff;
  font-size: 0.8125rem;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase; }

#footer-nav ul li ul li a {
  text-transform: none; }

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

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

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

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

#footer-address {
  position: relative;
  padding: 0.625rem 1.25rem 1.875rem 1.25rem; }

@media only screen and (max-width: 64rem) {
  #footer-address {
    padding: 0.625rem 6.25rem 1.875rem 6.25rem; } }

@media only screen and (max-width: 43.75rem) {
  #footer-address {
    padding: 0.625rem 1.25rem 1.875rem 1.25rem; } }

#footer-address img {
  float: left;
  padding: 10px 0; }

#footer-address p {
  color: #ffffff;
  font-size: 0.9375rem;
  margin: 0;
  position: relative; }

#footer-address a {
  color: #ffffff; }

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

#footer-nav-small ul li a {
  padding-right: 0; }

/*
.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 all 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 #b5b5b5;
  -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 5px 1px 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 .search-results {
  padding-bottom: 2.5rem; }

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

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

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

@media only screen and (max-width: 80rem) {
  #logo {
    padding-left: 0.9375rem; } }

@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 {
  border: 0.25rem solid #ebecec;
  margin: 10px;
  max-width: 250px;
  padding: 0.5rem;
  width: 100%; }

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

.element-container-ansprechpartner div.positionBox {
  padding: 0px 5px 0px 25px;
  font-weight: 400; }

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

ul.liste {
  margin-top: 40px; }

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

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

ul.liste li {
  margin-left: 0;
  background-color: #b5b5b5;
  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 #b5b5b5; }

.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: #0070b8;
    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: #0070b8;
    font-size: 30px;
    font-weight: bold; }

#quick-search-header {
  padding-top: 0; }

.imprint li {
  padding: 0.625rem 0; }

.imprint li a img {
  padding: 0 !important; }

@media only screen and (max-width: 46.5625rem) {
  .imprint li:first-child {
    width: 100%; } }

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

.imprint a,
.imprint a:hover,
.imprint a:active,
.imprint a:visited {
  font-size: 0.6875rem;
  font-weight: 700;
  color: #9fa0a5; }

.imprint a:hover {
  text-decoration: underline; }

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

.imprint ul li {
  display: block; }

.side-nav {
  padding: 0; }

.side-nav-title {
  color: #666666;
  border-bottom: 1px solid #b5b5b5;
  padding-bottom: 15px;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 0;
  margin-top: 10px; }

.side-nav li {
  background: #ffffff;
  text-align: left;
  border-bottom: 1px solid #b5b5b5; }

.side-nav li a:hover:not(.button), .side-nav li a:focus:not(.button) {
  transition: background-color 0.5s ease;
  background-color: #ffffff;
  color: #0070b8; }

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

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

.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: #0070b8;
  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: 0;
  padding-top: 0; }

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

.newsblock button.slick-prev:before {
  color: #0070b8;
  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: #0070b8;
  font-size: 30px;
  font-weight: bold; }

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

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

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

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

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

.sidebar_informationen div {
  margin: 0;
  padding: 0;
  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: 0;
  margin-bottom: 0; }

.sidebar_informationen h1 {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  background-color: #9fa0a5;
  color: #ffffff;
  border-bottom: solid 3px #0070b8;
  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: #0070b8;
  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: #00cdff;
  color: #ffffff;
  text-decoration: none; }

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

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

.anfrage label {
  color: #0070b8;
  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 #0070b8;
  padding: 20px 0 20px 0; }

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

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

.anfrage .button {
  background: #ffffff;
  color: #0070b8;
  margin: 0; }

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

#kontakt-form {
  border: 0.375rem solid #dcdcdc;
  padding: 3.75rem 1.9375rem 0.9375rem 1.9375rem; }

.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: #f1f1f1; }

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: 0;
  border: 0;
  padding-top: 10px; }

.language {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase; }

.contact-form-content input, .contact-form-content textarea {
  border: 1px solid #f1f1f1; }

#contact-hint {
  font-size: 0.875rem; }

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-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  height: 2.875rem;
  margin-top: 0.625rem; }

.contact-form-content textarea {
  height: 9.125rem !important; }

.multicolumn_2 {
  width: 100%;
  column-count: 2;
  -moz-column-count: 2;
  -webkit-column-count: 2; }

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

@media only screen and (max-width: 62.4375rem) {
  #footer-nav {
    min-height: 0; } }

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: 0;
  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%; }

.image-show-border {
  border: 0.0625rem solid #ebecec;
  padding: 0.625rem; }

.download-list .download-icon:before {
  content: url("../../img/download_icon.svg");
  padding-right: 0.9375rem; }

#main-content .sidebar {
  padding-left: 0; }

@media only screen and (max-width: 81.25rem) {
  #main-content div.element-container ul {
    margin: 0; }
  h1 {
    margin-left: 0.9375rem; }
  #main-content .sidebar {
    padding-left: 0.9375rem; }
  #main-content .direction {
    padding-right: 0.9375rem; } }

.direction {
  padding-right: 0; }

/*****************************************************************************
/* 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIl9mdW5jdGlvbnMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19nbG9iYWwuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Jsb2NrLWdyaWQuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fY2xlYXJpbmcuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fbGFiZWxzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX29yYml0LnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zaWRlLW5hdi5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19zdWItbmF2LnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL190YWJzLnNjc3MiLCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdHlwZS5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19vZmZjYW52YXMuc2NzcyIsImZvdW5kYXRpb24vY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiZm91bmRhdGlvbi9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY3VzdG9tLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIl9zZXR0aW5nc1wiO1xuLy9AaW1wb3J0IFwiZm91bmRhdGlvblwiO1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiBIaWVyIHdlcmRlbiBcImJlbsO2dGlndGUhISFcIiBFcndlaXRlcnVuZ2VuIGlua2x1ZGllcnRcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2dyaWQnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2FjY29yZGlvbic7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYmxvY2stZ3JpZCc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fY2xlYXJpbmcnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Zvcm1zJztcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2xhYmVscyc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fb3JiaXQnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbCc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fc2lkZS1uYXYnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3N1Yi1uYXYnO1xuQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlcyc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdGFicyc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9wLWJhcic7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdHlwZSc7XG5AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fb2ZmY2FudmFzJztcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5JztcbkBpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19icmVhZGNydW1icyc7XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuIEluIGRlciBDdXN0b20gd2lyZCBkZXIgZWlnZW5lIENTUy1Db2RlIGltcGxlbWVudGllcnQgXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBpbXBvcnQgXCJjdXN0b21cIjtcblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8qIEZvbGdlbmRlIEFud2Vpc3VuZ2VuIG9iZW4gZWluZsO8Z2VuLCB3ZW5uIHNpZSBiZW7DtmlndCB3ZXJkZW4gKHZvciBjdXN0b20pXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2FsZXJ0LWJveGVzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cHMnO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9ucyc7XG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19kcm9wZG93bic7XG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19kcm9wZG93bi1idXR0b25zJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2ZsZXgtdmlkZW8nO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9faWNvbi1iYXInO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fam95cmlkZSc7XG4vL0BpbXBvcnQgJy4vZm91bmRhdGlvbi9jb21wb25lbnRzL19rZXlzdHJva2VzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX21hZ2VsbGFuJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3BhZ2luYXRpb24nO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcGFuZWxzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3ByaWNpbmctdGFibGVzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhcnMnO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcmFuZ2Utc2xpZGVyJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3NwbGl0LWJ1dHRvbnMnO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fc3dpdGNoZXMnO1xuLy9AaW1wb3J0ICcuL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdGh1bWJzJztcbi8vQGltcG9ydCAnLi9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3Rvb2x0aXBzJztcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSGF1cHRmYXJiZW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJG1haW5Db2xvckJsdWU6ICAgICAjMDA3MGI4O1xuLy8kbWFpbkNvbG9yWWVsbG93OiAgICNmMWU2MDY7XG4kd2hpdGU6ICAgICAgICAgICAgICNmZmZmZmY7XG4kYmxhY2s6ICAgICAgICAgICAgICMwMDAwMDA7XG4kb3JhbmdlOiAgICAgICAgICAgICNmMzlkM2Q7XG4keWVsbG93OiAgICAgICAgICAgICNmZmY1YzI7XG4kbGlnaHRfZ3JleTogICAgICAgICNiNWI1YjU7XG4kc2VhcmNoX2dyZXk6ICAgICAgICNFOEU4RTg7XG4kbWlkX2dyZXk6ICAgICAgICAgICM5ZmEwYTU7XG4kZGFya19ncmV5OiAgICAgICAgICM2NjY2NjY7XG4kZ3JlZW46XHRcdFx0XHQjOThjYjAwO1xuJGRhcmtfcmVkOiAgICAgICAgICAjZDQzNDMxO1xuJGRhcmstYmx1ZTogIzAwNGI5ODtcbiR0dXJxdW9pc2U6ICMwMGNkZmY7XG4kZ3JleTogI2RjZGNkYztcbiRwcm9kdWN0cy1ib3JkZXI6ICNlNWU1ZTU7XG4kcHJvZHVjdHMtZGV0YWlscy1sb2dvLWJvcmRlcjogJGdyZXk7XG4kY29udGFjdC1mb3JtLWJvcmRlcjogI2YxZjFmMTtcbiRib3JkZXItc2luZ2xlLWltYWdlOiAjZWJlY2VjO1xuJGZvb3Rlci1iYWNrZ3JvdW5kOiAjYjliOWI5O1xuJGgxLWxpbmU6ICNjNWM2YzY7XG4kbmF2LXN1Yi1ib3JkZXI6ICM0ZTg2YTY7XG4kbWFudWZhY3R1cmVyLWNob29zZS10ZXh0LWNvbG9yOiAjMDA2ZWI0O1xuJG1hbnVmYWN0dXJlci1jaG9vc2UtYm9yZGVyOiAjZGZkZmRmO1xuJG1hbnVmYWN0dXJlci1jaG9vc2UtYmFja2dyb3VuZDogI2Y4ZjhmODtcbiRwcm9kdWN0cy1uYW1lLWNvbG9yOiAjMDA2ZWI4O1xuJHByb2RjdXRzLW92ZXJ2aWV3LXBpY3R1cmUtYm9yZGVyLWJvdHRvbTogI2RkZGRkZDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU2NocmlmdFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ0NhYmluJywgc2Fucy1zZXJpZjtcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEdyw7bDn2VuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRlbGVtZW50X2Fic3RhbmRfdW50ZW4gICAgICAgICAgOiAgIDMwcHg7XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBadW9yZG51bmcgZGVyIEZhcmJlbiB6dSBkZW4gZWluemVsbmVuIEJlcmVpY2hlblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kYmFja2dyb3VuZF9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICR3aGl0ZTtcblxuXG4kYmxvY2tfYmFja2dyb3VuZCAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkbGlnaHRfZ3JleTsgICAgICAgIC8vIGFsbGdlbWVpbmVyIEJMb2NrICggd2lyZCBiZWkgZGl2ZXJzZW4gRWxlbWVudGVuIGdlbnV0enQpXG4kdGV4dGZhcmJlX3N0YW5kYXJkICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XG4kbGlua19jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkdHVycXVvaXNlO1xuXG4vLyBGb290ZXJcbiRmb290ZXJfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICRmb290ZXItYmFja2dyb3VuZDsgICAgICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIEZvb3Rlci1CTG9ja1xuJGZvb3Rlcl9oMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgICAgIC8vIFRleHRmYXJiZSBIYXVwdMO8YmVyc2NocmlmdGVuIGluIFNpdGVtYXBcbiRmb290ZXJfdGV4dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAgLy8gVGV4dGZhcmJlIG5vcm1hbGUgTGlua3MgaW4gU2l0ZW1hcFxuJGZvb3Rlcl90ZXh0X2hvdmVyXHRcdFx0XHQgICAgICAgICAgICA6ICAgJGJsYWNrO1xuJGZvb3Rlcl9pbXByaW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgICAvLyBUZXh0ZmFyYmUgQWRyZXNzemVpbGVcbiRmb290ZXJfdG9wbGluZV9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICRncmVlbjsgICAgICAgICAgICAvLyBSYWhtZW5mYXJiZSDDvGJlciBGb290ZXJcbiRmb290ZXJfbWlkbGluZV9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICRtaWRfZ3JleTsgICAgICAgICAgLy8gTGluaWVuZmFyYmUgendpc2NoZW4gU2l0ZW1hcCB1bmQgQWRyZXNzZVxuXG4vLyBLb250YWt0XG4ka29udGFrdF9iYWNrZ3JvdW5kY29sb3IgICAgICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiRrb250YWt0X2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcbiRrb250YWt0X2xpbmtfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcblxuLy8gTmV3c1xuJG5ld3NfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICA6ICAgJHdoaXRlO1xuJG5ld3NfdGV4dCAgICAgICAgICAgICAgICAgICAgICA6ICAgJGRhcmtfZ3JleTtcbiRuZXdzX2hlYWRsaW5lX2NvbG9yICAgICAgICAgICAgOiAgICRkYXJrX2dyZXk7XG4kbmV3c19oZWFkbGluZV9ib3JkZXIgICAgICAgICAgIDogICAkd2hpdGU7XG4kbmV3c19kYXRlX2JhY2tncm91bmRjb2xvciAgICAgIDogICAkd2hpdGU7XG4kbmV3c19kYXRlX2NvbG9yICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiRuZXdzX3RpdGxlX2NvbG9yXHRcdFx0XHQ6XHQkZGFya19ncmV5O1xuJG5ld3Nfc2xpZGVyX3ByZXZfbmV4dF9idXR0b25zICA6ICAgJG1haW5Db2xvckJsdWU7XG5cbi8vIEZhY2Vib29rXG4kZmFjZWJvb2tfbmV3c19iYWNrZ3JvdW5kX2NvbG9yICAgICAgICAgICAgIDogICAkd2hpdGU7XG4kZmFjZWJvb2tfbmV3c19ib3JkZXJfY29sb3IgICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiRmYWNlYm9va19uZXdzX2RhdGVfYmFja2dyb3VuZF9jb2xvciAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlO1xuJGZhY2Vib29rX25ld3NfZGF0ZV9jb2xvciAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xuXG4vLyBIZWFkZXJcbiRoZWFkZXJfc3VibmF2aV9iYWNrZ3JvdW5kY29sb3IgICAgICAgICAgICAgOiAgICRsaWdodF9ncmV5O1xuJGhlYWRlcl9zdWJuYXZpX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICA6ICAgJG1pZF9ncmV5O1xuJGJvcmRlcl9ib3R0b21faGVhZF9pbWFnZSAgICAgICAgICAgICAgICAgICA6ICAgJGdyZWVuOyAgICAvLyBMaW5pZSB1bnRlciBIZWFkaW1hZ2VcblxuLy8gU2xpZGVyIFN0YXJ0c2VpdGVcbiRsYXllcnNsaWRlcl90ZXh0X2NvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcbiRsYXllcnNsaWRlcl9ib3hfY29sb3IgICAgICAgICAgICAgICAgICAgICAgOiAgIHJnYmEoMTM5LCAxMzksIDEzOSwgMC43KTtcbiRsYXllcnNsaWRlcl9ib3hfaGVhZGxpbmVfY29sb3JcdCAgICAgICAgICAgIDpcdCR3aGl0ZTtcbiRsYXllcnNsaWRlcl9ib3hfdGV4dF9jb2xvciAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcbiRsYXllcnNsaWRlcl9ib3JkZXIgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRncmVlbjtcblxuLy8gw5xiZXJzY2hyaWZ0ZW5cbiRjb2xvcl9oMSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlO1xuJGNvbG9yX2gyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsYWNrO1xuJGNvbG9yX2gzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsYWNrO1xuJGNvbG9yX2g0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsYWNrO1xuJGNvbG9yX2g1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGJsYWNrO1xuJGNvbG9yX2g2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJGRhcmtfZ3JleTtcbiR1ZWJlcnNjaHJpZnRfZmFyYmlnX2hpbnRlcmdydW5kICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiR1ZWJlcnNjaHJpZnRfZmFyYmlnX3RleHQgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTtcbiRoMV9ib3JkZXJfYm90dG9tX2NvbG9yXHRcdFx0ICAgICAgICAgICAgOlx0JG1haW5Db2xvckJsdWU7XG5cbi8vIExpc3RlIC8vIEFra29yZGlvblxuJGxpc3RlX2JhY2tncm91bmRjb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XG4kbGlzdGVfaGVhZF9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XG4kbGlzdGVfdGV4dF9iYWNrZ3JvdW5kY29sb3IgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7XG4kbGlzdGVfdGV4dF9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkYmxhY2s7XG5cbi8vIEJ1dHRvbnNcbiRidXR0b25fYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlOyAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXIgU3RhbmRhcmRidXR0b25zXG4kYnV0dG9uX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkd2hpdGU7ICAgICAgICAgLy8gVGV4dGZhcmJlIGRlciBTdGFuZGFyZGJ1dHRvbnNcbiRidXR0b25faG92ZXJfYmFja2dyb3VuZGNvbG9yICAgICAgICAgICAgICAgOiAgICR0dXJxdW9pc2U7ICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIEhvdmVyLUVmZmVrdFxuJGJ1dHRvbl9ob3Zlcl9jb2xvclx0XHRcdFx0ICAgICAgICAgICAgOlx0JG1haW5Db2xvckJsdWU7XG5cbi8vIExpbmtsaXN0ZSBtaXQgQklsZFxuJGxpbmtsaXN0ZV9iYWNrZ3JvdW5kXHRcdFx0ICAgICAgICAgICAgOlx0JGxpZ2h0X2dyZXk7ICAgICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIGRlcyBCbG9ja3NcbiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZFx0XHQgICAgICAgICAgICA6XHQkbGlnaHRfZ3JleTsgICAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rc1xuJGxpbmtsaXN0ZV9saW5rc19ob3Zlcl9iYWNrZ3JvdW5kICAgICAgICAgICA6XHQkbWlkX2dyZXk7XHRcdFx0XHQvLyBIaW50ZXJncnVuZGZhcmJlIGRlciBlaW56ZWxuZW4gTGlua3MgYmVpbSBob3Zlcm5cbiRsaW5rbGlzdGVfdWViZXJzY2hyaWZ0X2NvbG9yXHQgICAgICAgICAgICA6XHQkZGFya19ncmV5O1x0XHRcdFx0Ly8gRmFyYmUgZGVyIMOcYmVyc2NocmlmdGVuXG4kbGlua2xpc3RlX2xpbmtzX2NvbG9yXHRcdFx0ICAgICAgICAgICAgOlx0JGRhcmtfZ3JleTsgICAgICAgXHRcdC8vIFRleHRmYXJiZSBkZXIgZWluemVsbmVuIExpbmtzXG4kbGlua2xpc3RlX2xpbmtzX2hvdmVyX2NvbG9yXHQgICAgICAgICAgICA6XHQkd2hpdGU7XHRcdFx0XHQvLyBUZXh0ZmFyYmUgZGVyIGVpbnplbG5lbiBMaW5rcyBiZWltIGhvdmVyblxuJGJ1dHRvbl9pY29uX2JhY2tncm91bmRjb2xvciAgICAgICAgICAgICAgICA6ICAgJG1haW5Db2xvckJsdWU7ICAgICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIGRlciBTdGFuZGFyZGJ1dHRvbnNcbiRidXR0b25faWNvbl9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgOiAgICR3aGl0ZTsgICAgICAgICAvLyBUZXh0ZmFyYmUgZGVyIFN0YW5kYXJkYnV0dG9uc1xuJGJ1dHRvbl9pY29uX2hvdmVyX2JhY2tncm91bmRjb2xvciAgICAgICAgICA6ICAgJG1pZF9ncmV5OyAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBIb3Zlci1FZmZla3RcbiRsaW5rbGlzdGVfbGlua19ib3JkZXJfYm90dG9tX2NvbG9yXHQgICAgICAgIDogICAkbGlnaHRfZ3JleTtcblxuLy8gTGlua2xpc3RlIG1pdCBCSWxkIHVuZCBJY29uXG4kbGlua2xpc3RlX2ljb25fbGlua3NfYmFja2dyb3VuZFx0XHRcdDpcdCR3aGl0ZTtcbiRsaW5rbGlzdGVfaWNvbl91ZWJlcnNjaHJpZnRfYmFja2dyb3VuZFx0ICAgIDpcdCRtYWluQ29sb3JCbHVlOyAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXMgQmxvY2tzXG4kbGlua2xpc3RlX2ljb25fbGlua3NfYmFja2dyb3VuZFx0XHQgICAgOlx0JGxpZ2h0X2dyZXk7ICAgICAgICAvLyBIaW50ZXJncnVuZGZhcmJlIGRlciBlaW56ZWxuZW4gTGlua3NcbiRsaW5rbGlzdGVfaWNvbl9saW5rc19ob3Zlcl9iYWNrZ3JvdW5kXHQgICAgOlx0JG1pZF9ncmV5O1x0XHRcdFx0Ly8gSGludGVyZ3J1bmRmYXJiZSBkZXIgZWluemVsbmVuIExpbmtzIGJlaW0gaG92ZXJuXG4kbGlua2xpc3RlX2ljb25fdWViZXJzY2hyaWZ0X2NvbG9yXHQgICAgICAgIDpcdCR3aGl0ZTtcdFx0XHRcdC8vIEZhcmJlIGRlciDDnGJlcnNjaHJpZnRlblxuJGxpbmtsaXN0ZV9pY29uX2xpbmtzX2NvbG9yXHRcdFx0ICAgICAgICA6XHQkbWFpbkNvbG9yQmx1ZTsgICAgICAgXHRcdC8vIFRleHRmYXJiZSBkZXIgZWluemVsbmVuIExpbmtzXG4kbGlua2xpc3RlX2ljb25fbGlua3NfaG92ZXJfY29sb3JcdCAgICAgICAgOlx0JHdoaXRlO1x0XHRcdFx0Ly8gVGV4dGZhcmJlIGRlciBlaW56ZWxuZW4gTGlua3MgYmVpbSBob3Zlcm5cbiRsaW5rbGlzdGVfaWNvbl9saW5rX2JvcmRlcl9ib3R0b21fY29sb3JcdDogICAkbGlnaHRfZ3JleTtcbiRsaW5rbGlzdGVfaWNvbl9saW5rc19ob3Zlcl9jb2xvcl9taWRsaW5lICAgOiAgICR3aGl0ZTtcblxuXG4vLyBTaWRlYmFyIC0gSW5mb3JtYXRpb25lblxuJHNpZGViYXJfaW5mb3JtYXRpb25lbl9iYWNrZ3JvdW5kICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7XG4kc2lkZWJhcl9pbmZvcm1hdGlvbmVuX3RpdGxlX2JhY2tncm91bmQgICAgIDogICAkbWlkX2dyZXk7XG4kc2lkZWJhcl9pbmZvcm1hdGlvbmVuX3RpdGxlX2NvbG9yICAgICAgICAgIDogICAkd2hpdGU7XG4kc2lkZWJhcl9pbmZvcm1hdGlvbmVuX2JvcmRlcl9jb2xvciAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcblxuLy8gTmF2aWFndGlvbiBmw7xyIGtsZWluZSBBdWZsw7ZzdW5nZW4gLSBrYW5uIGhpZXIgdW50ZXIgUHVua3QgMTggL2NhLiBaZWlsZSAxMDIwKSBnZW5hdWVyIGRlZmluaWVydCB3ZXJkZW5cbiRuYXZfY2FudmFzX3RhYl9iYWNrZ3JvdW5kICAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlOyAgICAgIC8vIEhpbnRlcmdydW5kZmFyYmUgVGFiXG4kbmF2X2NhbnZhc19tZW51X2JhY2tncm91bmQgICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTsgICAgICAvLyAgSGludGVyZ3J1bmRmYXJiZSBmbGlwLW91dFxuJG5hdl9jYW52YXNfdGFiX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgICAvLyBUZXh0ZmFyYmUgVGFiXG4kbmF2X2NhbnZhc19tZW51X2JhY2tncm91bmRfbGlzdCAgICAgICAgICAgIDogICAkbGlnaHRfZ3JleTtcbiRuYXZfY2FudmFzX21lbnVfY29sb3JfbGlzdCAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlO1xuXG5cbi8vIFRhYnNcbiR0YWJfdGl0bGVfYm9yZGVyLWNvbG9yXHRcdFx0XHRcdFx0Olx0JG1pZF9ncmV5O1x0XHRcdC8vIFJhaG1lbmZhcmJlciBkZXIgVGl0ZWxcbiR0YWJfY29udGVudF9ib3JkZXItY29sb3JcdFx0XHRcdFx0Olx0JG1pZF9ncmV5O1x0XHRcdC8vIFJhaG1lbmZhcmJlIGRlcyBDb250ZW50LUJsb2Nrc1xuJHRhYl90aXRsZV9iYWNrZ3JvdW5kLWNvbG9yXHRcdFx0XHRcdDpcdCRsaWdodF9ncmV5O1x0XHQvLyBIaW50ZXJncnVuZGZhcmJlIGRlciBuaWNodCBha3RpdmVuIFRhYnNcbiR0YWJfdGl0bGVfYWN0aXZlX2JhY2tncm91bmQtY29sb3JcdFx0XHQ6XHQkd2hpdGU7XHRcdFx0XHQvLyBIaW50ZXJncnVuZGZhcmJlIGRlcyBha3RpdmVuIFRhYnNcbiR0YWJfY29udGVudF9iYWNrZ3JvdW5kLWNvbG9yXHRcdFx0XHQ6XHQkd2hpdGU7XHRcdFx0XHQvLyBIaW50ZXJncnVuZGZhcmJlIGRlcyBha3RpdmVuIFRhYnNcblxuLy8gS29udGFrdGZvcm11bGFyXG4ka29udGFrdGZvcm1faW5wdXRfYm9yZGVyX2NvbG9yXHRcdFx0XHQ6XHQkZGFya19ncmV5O1xuJGtvbnRha3Rmb3JtX2lucHV0X2JhY2tncm91bmRfY29sb3JcdFx0XHQ6XHQkd2hpdGU7XG4ka29udGFrdGZvcm1faW5wdXRfYWt0aXZfYmFja2dyb3VuZF9jb2xvclx0Olx0JGNvbnRhY3QtZm9ybS1ib3JkZXI7XG5cbi8vIEtvbnRha3RcbiRrb250YWt0X2JhY2tncm91bmRfY29sb3IgICAgICAgXHRcdFx0OiAgICRtYWluQ29sb3JCbHVlO1xuJGtvbnRha3RfY29sb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xuJGtvbnRha3RfbGlua19jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xuXG4vLyBOYXZpZ2F0aW9uc2Jsb2NrIChCaWxkIMOcYmVyc2NocmlmdCB1bmQgVGV4dCAoSGFtbWVyIC0gU3RhcnRzZWl0ZSkpXG4kbmF2aV9ibG9ja19jb2xvclx0XHRcdFx0XHRcdFx0Olx0JGJsYWNrO1xuJG5hdmlfYmxvY2tfYmFja2dyb3VuZFx0XHRcdFx0XHRcdDpcdCRsaWdodF9ncmV5O1xuJG5hdmlfYmxvY2tfY29sb3JfaGVhZGxpbmVcdFx0XHRcdFx0Olx0JG1haW5Db2xvckJsdWU7XG4kbmF2aV9ibG9ja19ib3JkZXJfYm90dG9tX2hlYWRsaW5lIFx0XHRcdDpcdCR3aGl0ZTtcbiRuYXZpX2Jsb2NrX2JvcmRlcl90b3BfaGVhZGxpbmVcdFx0XHQgICAgOlx0JGdyZWVuO1xuXG4vLyBMaW5rZSBOYXZpZ2F0aW9uXG4kc2lkZW5hdl9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogICAkZGFya19ncmV5OyAgICAgICAvLyBUZXh0ZmFyYmVcbiRzaWRlbmF2X2hvdmVyX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlOyAgICAgICAgICAgIC8vICBUZXh0ZmFyYmUgaG92ZXJcbiRzaWRlbmF2X2FjdGl2ZV9jb2xvciAgICAgICAgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlOyAgICAgICAgICAgIC8vICBUZXh0ZmFyYmUgYWt0aXZlcyBFTGVtZW50XG4kc2lkZW5hdl90aXRsZV9ib3JkZXJfYm90dG9tX2NvbG9yICAgICAgICAgIDogICAkbGlnaHRfZ3JleTsgICAgICAvLyBSYWhtZW5mYXJiZSB1bnRlciBUaXRlbFxuJHNpZGVuYXZfYm9yZGVyX2JvdHRvbV9jb2xvciAgICAgICAgICAgICAgICA6ICAgJGxpZ2h0X2dyZXk7ICAgICAgLy8gIFJhaG1lbiB6d2lzY2hlbiBkZW4gRWludHLDtmdlblxuJHNpZGVuYXZfYmFja2dyb3VuZF9jb2xvciAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlOyAgICAgICAgICAgLy8gSGludGVyZ3J1bmRmYXJiZSBkZXIgRWludHLDpGdlXG4kc2lkZW5hdl9ob3Zlcl9iYWNrZ3JvdW5kX2NvbG9yICAgICAgICAgICAgIDogICAkd2hpdGU7XG4kc2lkZW5hdl9hY3RpdmVfYmFja2dyb3VuZF9jb2xvciAgICAgICAgICAgIDogICAkd2hpdGU7XG5cbi8vIFRvcC1OYXZpZ2F0aW9uXG4kdG9wYmFyX2JvcmRlcl9ib3R0b21fY29sb3IgICAgICAgICAgICAgICAgIDogICAjMDA1OUE5O1xuJHRvcGJhcl9hY3RpdmVfYW5kX2hvdmVyX2NvbG9yICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xuJHRvcGJhcl9kcm9wZG93bl9jb2xvciAgICAgICAgICAgICAgICAgICAgICA6ICAgJHdoaXRlO1xuJHRvcGJhcl9kcm9wZG93bl9iYWNrZ3JvdW5kX2NvbG9yICAgICAgICAgICA6ICAgIzAwNTlBOTtcbiR0b3BiYXJfZHJvcGRvd25fYWN0aXZlX2FuZF9ob3Zlcl9iYWNrZ3JvdW5kX2NvbG9yICA6ICR3aGl0ZTtcbiR0b3BiYXJfZHJvcGRvd25fYWN0aXZlX2FuZF9ob3Zlcl9jb2xvciAgICAgOiAgICMwMDU5QTk7XG4kdG9wYmFyX2Ryb3Bkb3duX2JvcmRlcl9ib3R0b21fY29sb3IgICAgICAgIDogICAkZ3JlZW47XG4vLyBEaWUgcmVzdGxpY2hlbiBWYXJpYWJsZW4genVyIEhhdXB0bmF2aWdhdGlvbiB3ZXJkZW4gdW50ZXIgUHVua3QgMzQgYW0gRW5kZSBkaWVzZXIgRGF0ZWkgZGVmaW5pZXJ0XG5cbi8vIFNjaG5lbGxhbmZyYWdlXG4kc2NobmVsbGFuZnJhZ2VfbGFiZWxfY29sb3IgICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiRzY2huZWxsYW5mcmFnZV9pbnB1dF9iYWNrZ3JvdW5kX2NvbG9yICAgICAgOiAgICR3aGl0ZTtcbiRzY2huZWxsYW5mcmFnZV9ib3JkZXJfY29sb3IgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlO1xuJHNjaG5lbGxhbmZyYWdlX2NvbG9yICAgICAgICAgICAgICAgICAgICAgICA6ICAgJG1haW5Db2xvckJsdWU7XG4kc2NobmVsbGFuZnJhZ2VfY29sb3JfaDIgICAgICAgICAgICAgICAgICAgIDogICAkbWFpbkNvbG9yQmx1ZTtcbiRzY2huZWxsYW5mcmFnZV9idXR0b25fYmFja2dyb3VuZF9jb2xvciAgICAgOiAgICR3aGl0ZTtcbiRzY2huZWxsYW5mcmFnZV9idXR0b25fY29sb3IgICAgICAgICAgICAgICAgOiAgICRtYWluQ29sb3JCbHVlO1xuXG4vLyBMb2dvL0xpbmsgU2xpZGVyXG4kbG9nb19saW5rX3NsaWRlcl9oZWFkbGluZVx0XHQ6XHQkZGFya19ncmV5O1x0XHRcdFx0Ly8gU2xpZGVyIGbDvHIgTG9nb3MgLSBGYXJiZSBkZXIgw5xiZXJzY2hyaWZ0XG4kbG9nb19saW5rX3NsaWRlcl91bmRlcmxpbmVcdFx0Olx0JGxpZ2h0X2dyZXk7XHRcdFx0Ly8gU2xpZGVyIGbDvHIgTG9nb3MgLSBCb3JkZXIgdW50ZXIgw5xiZXJzY2hyaWZ0XG5cbi8vIEJsb2NrIEVsZW1lbnRcbiRibG9ja19lbGVtX2JhY2tncm91bmQgICAgICAgOiAkd2hpdGU7XG4kYmxvY2tfZWxlbV9iYWNrZ3JvdW5kX2hvdmVyIDogJHdoaXRlO1xuXG4vLyBTdWNoZXJnZWJuaXNzZVxuJHNlYXJjaF9yZXN1bHRzX2JvcmRlcl9jb2xvcjogJG1pZF9ncmV5O1xuJHNlYXJjaF9yZXN1bHRzX2hpZ2hsaWdodF9jb2xvcjogJHNlYXJjaF9ncmV5O1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmFuZ2VzIGbDvHIgZGllIE1lZGlhLVF1ZXJpZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8kc21hbGwtcmFuZ2U6ICgwZW0sIHJlbS1jYWxjKDkzNykpOyAgLy9tYXgtd2lkdGggNjQwcHgsIG1vYmlsZS1vbmx5IHN0eWxlc1xuLy8kbWVkaXVtLXJhbmdlOiAoMGVtLCByZW0tY2FsYyg5OTkpKTsgICAvLyBtaW4td2lkdGggNjQxcHggYW5kIG1heC13aWR0aCAxMDI0cHhcbi8vJGxhcmdlLXJhbmdlOiAocmVtLWNhbGMoMTAwMCksIDkwZW0pOyAgICAvLyBtaW4td2lkdGggMTAyNHB4IGFuZCBtYXgtd2lkdGggMTQ0MHB4XG4vLyR4bGFyZ2UtcmFuZ2U6ICg5MC4wNjNlbSwgMTIwZW0pOyAgLy9taW4td2lkdGggMTQ0MXB4IGFuZCBtYXgtd2lkdGggMTkyMHB4XG4vLyR4eGxhcmdlLXJhbmdlOiAoMTIwLjA2M2VtKTsgICAgICAgLy9taW4td2lkdGggMTkyMXB4XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLyBUYWJsZSBvZiBDb250ZW50c1xuLy8gRm91bmRhdGlvbiBTZXR0aW5nc1xuLy9cbi8vIGEuIEJhc2Vcbi8vIGIuIEdyaWRcbi8vIGMuIEdsb2JhbFxuLy8gZC4gTWVkaWEgUXVlcnkgUmFuZ2VzXG4vLyBlLiBUeXBvZ3JhcGh5XG4vLyAwMS4gQWNjb3JkaW9uXG4vLyAwMi4gQWxlcnQgQm94ZXNcbi8vIDAzLiBCbG9jayBHcmlkXG4vLyAwNC4gQnJlYWRjcnVtYnNcbi8vIDA1LiBCdXR0b25zXG4vLyAwNi4gQnV0dG9uIEdyb3Vwc1xuLy8gMDcuIENsZWFyaW5nXG4vLyAwOC4gRHJvcGRvd25cbi8vIDA5LiBEcm9wZG93biBCdXR0b25zXG4vLyAxMC4gRmxleCBWaWRlb1xuLy8gMTEuIEZvcm1zXG4vLyAxMi4gSWNvbiBCYXJcbi8vIDEzLiBJbmxpbmUgTGlzdHNcbi8vIDE0LiBKb3lyaWRlXG4vLyAxNS4gS2V5c3Ryb2tlc1xuLy8gMTYuIExhYmVsc1xuLy8gMTcuIE1hZ2VsbGFuXG4vLyAxOC4gT2ZmLWNhbnZhc1xuLy8gMTkuIE9yYml0XG4vLyAyMC4gUGFnaW5hdGlvblxuLy8gMjEuIFBhbmVsc1xuLy8gMjIuIFByaWNpbmcgVGFibGVzXG4vLyAyMy4gUHJvZ3Jlc3MgQmFyXG4vLyAyNC4gUmFuZ2UgU2xpZGVyXG4vLyAyNS4gUmV2ZWFsXG4vLyAyNi4gU2lkZSBOYXZcbi8vIDI3LiBTcGxpdCBCdXR0b25zXG4vLyAyOC4gU3ViIE5hdlxuLy8gMjkuIFN3aXRjaFxuLy8gMzAuIFRhYmxlc1xuLy8gMzEuIFRhYnNcbi8vIDMyLiBUaHVtYm5haWxzXG4vLyAzMy4gVG9vbHRpcHNcbi8vIDM0LiBUb3AgQmFyXG4vLyAzNi4gVmlzaWJpbGl0eSBDbGFzc2VzXG5cbi8vIGEuIEJhc2Vcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gVGhpcyBpcyB0aGUgZGVmYXVsdCBodG1sIGFuZCBib2R5IGZvbnQtc2l6ZSBmb3IgdGhlIGJhc2UgcmVtIHZhbHVlLlxuLy8gJHJlbS1iYXNlOiAxNnB4O1xuXG4vLyBBbGxvd3MgdGhlIHVzZSBvZiByZW0tY2FsYygpIG9yIGxvd2VyLWJvdW5kKCkgaW4geW91ciBzZXR0aW5nc1xuQGltcG9ydCAnX2Z1bmN0aW9ucyc7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQtc2l6ZSBpcyBzZXQgdG8gMTAwJSBvZiB0aGUgYnJvd3NlciBzdHlsZSBzaGVldCAodXN1YWxseSAxNnB4KVxuLy8gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBicm93c2VyLWJhc2VkIHRleHQgem9vbSBvciB1c2VyLXNldCBkZWZhdWx0cy5cblxuLy8gU2luY2UgdGhlIHR5cGljYWwgZGVmYXVsdCBicm93c2VyIGZvbnQtc2l6ZSBpcyAxNnB4LCB0aGF0IG1ha2VzIHRoZSBjYWxjdWxhdGlvbiBmb3IgZ3JpZCBzaXplLlxuLy8gSWYgeW91IHdhbnQgeW91ciBiYXNlIGZvbnQtc2l6ZSB0byBiZSBkaWZmZXJlbnQgYW5kIG5vdCBoYXZlIGl0IGFmZmVjdCB0aGUgZ3JpZCBicmVha3BvaW50cyxcbi8vIHNldCAkcmVtLWJhc2UgdG8gJGJhc2UtZm9udC1zaXplIGFuZCBtYWtlIHN1cmUgJGJhc2UtZm9udC1zaXplIGlzIGEgcHggdmFsdWUuXG4vLyAkYmFzZS1mb250LXNpemU6IDEwMCU7XG5cbi8vIFRoZSAkYmFzZS1mb250LXNpemUgaXMgMTAwJSB3aGlsZSAkYmFzZS1saW5lLWhlaWdodCBpcyAxNTAlXG4vLyAkYmFzZS1saW5lLWhlaWdodDogMTUwJTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB3aGV0aGVyIG9yIG5vdCBDU1MgY2xhc3NlcyBjb21lIHRocm91Z2ggaW4gdGhlIGdlbSBmaWxlcy5cbiRpbmNsdWRlLWh0bWwtY2xhc3NlczogdHJ1ZTtcbiRpbmNsdWRlLXByaW50LXN0eWxlczogZmFsc2U7XG4kaW5jbHVkZS1odG1sLWdsb2JhbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIGIuIEdyaWRcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3Nlcztcbi8vICRpbmNsdWRlLXhsLWh0bWwtZ3JpZC1jbGFzc2VzOiBmYWxzZTtcblxuLy8gJHJvdy13aWR0aDogcmVtLWNhbGMoMTAwMCk7XG4vLyAkdG90YWwtY29sdW1uczogMTI7XG4vLyAkY29sdW1uLWd1dHRlcjogcmVtLWNhbGMoMzApO1xuXG4vLyBjLiBHbG9iYWxcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGRlZmluZSBkZWZhdWx0IGZvbnQgc3RhY2tzXG4vLyAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4vLyAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ1JhbGV3YXknLCBzYW5zLXNlcmlmO1xuLy8gJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBDYW1icmlhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG4vLyAkZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gZGVmaW5lIGRlZmF1bHQgZm9udCB3ZWlnaHRzXG4vLyAkZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4vLyAkZm9udC13ZWlnaHQtYm9sZDogYm9sZDtcblxuLy8gJHdoaXRlICAgICAgIDogI0ZGRkZGRjtcbi8vICRnaG9zdCAgICAgICA6ICNGQUZBRkE7XG4vLyAkc25vdyAgICAgICAgOiAjRjlGOUY5O1xuLy8gJHZhcG9yICAgICAgIDogI0Y2RjZGNjtcbi8vICR3aGl0ZS1zbW9rZSA6ICNGNUY1RjU7XG4vLyAkc2lsdmVyICAgICAgOiAjRUZFRkVGO1xuLy8gJHNtb2tlICAgICAgIDogI0VFRUVFRTtcbi8vICRnYWluc2Jvcm8gICA6ICNEREREREQ7XG4vLyAkaXJvbiAgICAgICAgOiAjQ0NDQ0NDO1xuLy8gJGJhc2UgICAgICAgIDogI0FBQUFBQTtcbi8vICRhbHVtaW51bSAgICA6ICM5OTk5OTk7XG4vLyAkanVtYm8gICAgICAgOiAjODg4ODg4O1xuLy8gJG1vbnNvb24gICAgIDogIzc3Nzc3NztcbiAkc3RlZWwgICAgICAgOiAjNjY2NjY2O1xuLy8gJGNoYXJjb2FsICAgIDogIzU1NTU1NTtcbi8vICR0dWF0YXJhICAgICA6ICM0NDQ0NDQ7XG4vLyAkb2lsICAgICAgICAgOiAjMzMzMzMzO1xuLy8gJGpldCAgICAgICAgIDogIzIyMjIyMjtcbi8vICRibGFjayAgICAgICA6ICMwMDAwMDA7XG5cbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XG4vLyAkcHJpbWFyeS1jb2xvcjogIzAwOENCQTtcbi8vICRzZWNvbmRhcnktY29sb3I6ICNlN2U3ZTc7XG4vLyAkYWxlcnQtY29sb3I6ICNmMDQxMjQ7XG4vLyAkc3VjY2Vzcy1jb2xvcjogIzQzQUM2QTtcbi8vICR3YXJuaW5nLWNvbG9yOiAjZjA4YTI0O1xuLy8gJGluZm8tY29sb3I6ICNhMGQzZTg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZhcmlvdXMgZ2xvYmFsIHN0eWxlc1xuLy8gJGJvZHktYmc6ICR3aGl0ZTtcbi8vICRib2R5LWZvbnQtY29sb3I6ICRqZXQ7XG4vLyAkYm9keS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4vLyAkYm9keS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xuLy8gJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3Ncbi8vICR0ZXh0LWRpcmVjdGlvbjogbHRyO1xuLy8gJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQ7XG4vLyAkZGVmYXVsdC1mbG9hdDogbGVmdDtcbi8vICRsYXN0LWNoaWxkLWZsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gbWFrZSBzdXJlIGJvcmRlciByYWRpdXMgbWF0Y2hlcyB1bmxlc3Mgd2Ugd2FudCBpdCBkaWZmZXJlbnQuXG4vLyAkZ2xvYmFsLXJhZGl1czogM3B4O1xuLy8gJGdsb2JhbC1yb3VuZGVkOiAxMDAwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGluc2V0IHNoYWRvdyBzaGlueSBlZGdlcyBhbmQgZGVwcmVzc2lvbnMuXG4vLyAkc2hpbnktZWRnZS1zaXplOiAwIDFweCAwO1xuLy8gJHNoaW55LWVkZ2UtY29sb3I6IHJnYmEoJHdoaXRlLCAuNSk7XG4vLyAkc2hpbnktZWRnZS1hY3RpdmUtY29sb3I6IHJnYmEoJGJsYWNrLCAuMik7XG5cbi8vIGQuIE1lZGlhIFF1ZXJ5IFJhbmdlc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4kc21hbGwtcmFuZ2U6ICgwZW0sIHJlbS1jYWxjKDk1NCkpO1xuJG1lZGl1bS1yYW5nZTogKHJlbS1jYWxjKDc2NyksIHJlbS1jYWxjKDk5OSkpOyAgIC8vIG1pbi13aWR0aCA2NDFweCBhbmQgbWF4LXdpZHRoIDEwMjRweFxuJGxhcmdlLXJhbmdlOiAocmVtLWNhbGMoMTAwMCksIDkwZW0pOyAgICAvLyBtaW4td2lkdGggMTAyNHB4IGFuZCBtYXgtd2lkdGggMTQ0MHB4XG4vLyRtZWRpdW0tcmFuZ2U6ICg0MC4wNjI1ZW0sIHJlbS1jYWxjKDk5OSkpO1xuLy8gJGxhcmdlLXJhbmdlOiAoNjQuMDYyNWVtLCA5MGVtKTtcbi8vJGxhcmdlLXJhbmdlOiAocmVtLWNhbGMoMTAwMCksIDY0LjYyNWVtKTtcbi8vICR4bGFyZ2UtcmFuZ2U6ICg5MC4wNjI1ZW0sIDEyMGVtKTtcbi8vICR4eGxhcmdlLXJhbmdlOiAoMTIwLjA2MjVlbSwgOTk5OTk5OTllbSk7XG5cbiAkc2NyZWVuOiBcImFsbFwiO1xuXG4vLyAkbGFuZHNjYXBlOiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiO1xuLy8gJHBvcnRyYWl0OiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXCI7XG5cbi8vICRzbWFsbC11cDogJHNjcmVlbjtcbi8vICRzbWFsbC1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtYXgtd2lkdGg6ICN7dXBwZXItYm91bmQoJHNtYWxsLXJhbmdlKX0pXCI7XG5cbi8vICRtZWRpdW0tdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIjtcbi8vICRtZWRpdW0tb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIjtcblxuLy8gJGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIjtcbi8vICRsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIjtcblxuLy8gJHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiO1xuLy8gJHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiO1xuXG4vLyAkeHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIjtcbi8vICR4eGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIjtcblxuLy8gTGVnYWN5XG4vLyAkc21hbGw6ICRtZWRpdW0tdXA7XG4vLyAkbWVkaXVtOiAkbWVkaXVtLXVwO1xuLy8gJGxhcmdlOiAkbGFyZ2UtdXA7XG5cbi8vIFdlIHVzZSB0aGlzIGFzIGN1cnNvcnMgdmFsdWVzIGZvciBlbmFibGluZyB0aGUgb3B0aW9uIG9mIGhhdmluZyBjdXN0b20gY3Vyc29ycyBpbiB0aGUgd2hvbGUgc2l0ZSdzIHN0eWxlc2hlZXRcbi8vICRjdXJzb3ItY3Jvc3NoYWlyLXZhbHVlOiBjcm9zc2hhaXI7XG4vLyAkY3Vyc29yLWRlZmF1bHQtdmFsdWU6IGRlZmF1bHQ7XG4vLyAkY3Vyc29yLWRpc2FibGVkLXZhbHVlOiBub3QtYWxsb3dlZDtcbi8vICRjdXJzb3ItcG9pbnRlci12YWx1ZTogcG9pbnRlcjtcbi8vICRjdXJzb3ItaGVscC12YWx1ZTogaGVscDtcbi8vICRjdXJzb3ItdGV4dC12YWx1ZTogdGV4dDtcblxuLy8gZS4gVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXR5cGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXNcbi8vICRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuLy8gJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuLy8gJGhlYWRlci1mb250LWNvbG9yOiAkamV0O1xuLy8gJGhlYWRlci1saW5lLWhlaWdodDogMS40O1xuLy8gJGhlYWRlci10b3AtbWFyZ2luOiAuMnJlbTtcbi8vICRoZWFkZXItYm90dG9tLW1hcmdpbjogLjVyZW07XG4vLyAkaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHNpemVzXG4gJGgxLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xuLy8gJGgyLWZvbnQtc2l6ZTogcmVtLWNhbGMoMzcpO1xuLy8gJGgzLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjcpO1xuJGg0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuLy8gJGg1LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuLy8gJGg2LWZvbnQtc2l6ZTogMXJlbTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIHNpemUgcmVkdWN0aW9uIG9uIHNtYWxsIHNjcmVlbnNcbi8vICRoMS1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMTApO1xuLy8gJGgyLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYygxMCk7XG4vLyAkaDMtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDUpO1xuLy8gJGg0LWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYyg1KTtcbi8vICRoNS1mb250LXJlZHVjdGlvbjogMDtcbi8vICRoNi1mb250LXJlZHVjdGlvbjogMDtcblxuLy8gVGhlc2UgY29udHJvbCBob3cgc3ViaGVhZGVycyBhcmUgc3R5bGVkLlxuLy8gJHN1YmhlYWRlci1saW5lLWhlaWdodDogMS40O1xuLy8gJHN1YmhlYWRlci1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4vLyAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHN1YmhlYWRlci10b3AtbWFyZ2luOiAuMnJlbTtcbi8vICRzdWJoZWFkZXItYm90dG9tLW1hcmdpbjogLjVyZW07XG5cbi8vIEEgZ2VuZXJhbCA8c21hbGw+IHN0eWxpbmdcbi8vICRzbWFsbC1mb250LXNpemU6IDYwJTtcbi8vICRzbWFsbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBwYXJhZ3JhcGhzXG4vLyAkcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuLy8gJHBhcmFncmFwaC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRwYXJhZ3JhcGgtZm9udC1zaXplOiAxcmVtO1xuICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIxKTtcbi8vICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzU7XG4vLyAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4vLyAkY29kZS1jb2xvcjogJG9pbDtcbi8vICRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuLy8gJGNvZGUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpO1xuLy8gJGNvZGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICRjb2RlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpO1xuLy8gJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXG4vLyAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbi8vICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuLy8gJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbi8vICRoci1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRoci1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcbi8vICRoci1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4vLyAkbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcbi8vICRsaXN0LWZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4vLyAkbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbi8vICRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vICRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuLy8gJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbTtcbi8vICRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbTtcbi8vICRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDogMDtcbi8vICRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKTtcbi8vICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbTtcbi8vICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbi8vICRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbi8vICRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4vLyAkYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ2FpbnNib3JvO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbi8vICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4vLyAkYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4vLyAkbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpO1xuLy8gJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIHBhZGRpbmdcbi8vICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBmb250IHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lO1xuXG4vLyAwMS4gQWNjb3JkaW9uXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjogJHNpbHZlcjtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUpO1xuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpO1xuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I6ICRqZXQ7XG4vLyAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG4vLyAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpO1xuLy8gJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjogJHdoaXRlO1xuXG4vLyAwMi4gQWxlcnQgQm94ZXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1hbGVydC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWxlcnQgcGFkZGluZy5cbi8vICRhbGVydC1wYWRkaW5nLXRvcDogcmVtLWNhbGMoMTQpO1xuLy8gJGFsZXJ0LXBhZGRpbmctZGVmYXVsdC1mbG9hdDogJGFsZXJ0LXBhZGRpbmctdG9wO1xuLy8gJGFsZXJ0LXBhZGRpbmctb3Bwb3NpdGUtZGlyZWN0aW9uOiAkYWxlcnQtcGFkZGluZy10b3AgKyByZW0tY2FsYygxMCk7XG4vLyAkYWxlcnQtcGFkZGluZy1ib3R0b206ICRhbGVydC1wYWRkaW5nLXRvcDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZS5cbi8vICRhbGVydC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRhbGVydC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbi8vICRhbGVydC1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkYWxlcnQtZm9udC1jb2xvci1hbHQ6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IC02NiUpO1xuXG4vLyBXZSB1c2UgdGhpcyBmb3IgY2xvc2UgaG92ZXIgZWZmZWN0LlxuLy8gJGFsZXJ0LWZ1bmN0aW9uLWZhY3RvcjogLTE0JTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbi8vICRhbGVydC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGFsZXJ0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJGFsZXJ0LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6ICRhbGVydC1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGFsZXJ0LWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25zXG4vLyAkYWxlcnQtY2xvc2UtY29sb3I6ICRvaWw7XG4vLyAkYWxlcnQtY2xvc2UtdG9wOiA1MCU7XG4vLyAkYWxlcnQtY2xvc2UtcG9zaXRpb246IHJlbS1jYWxjKDQpO1xuLy8gJGFsZXJ0LWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuLy8gJGFsZXJ0LWNsb3NlLW9wYWNpdHk6IC4zO1xuLy8gJGFsZXJ0LWNsb3NlLW9wYWNpdHktaG92ZXI6IC41O1xuLy8gJGFsZXJ0LWNsb3NlLXBhZGRpbmc6IDlweCA2cHggNHB4O1xuLy8gJGFsZXJ0LWNsb3NlLWJhY2tncm91bmQ6IGluaGVyaXQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYm9yZGVyIHJhZGl1c1xuLy8gJGFsZXJ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vICRhbGVydC10cmFuc2l0aW9uLXNwZWVkOiAzMDBtcztcbi8vICRhbGVydC10cmFuc2l0aW9uLWVhc2U6IGVhc2Utb3V0O1xuXG4vLyAwMy4gQmxvY2sgR3JpZFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWJsb2NrLWdyaWQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuLy8gJGluY2x1ZGUteGwtaHRtbC1ibG9jay1ncmlkLWNsYXNzZXM6IGZhbHNlO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBtYXhpbXVtIG51bWJlciBvZiBibG9jayBncmlkIGVsZW1lbnRzIHBlciByb3dcbi8vICRibG9jay1ncmlkLWVsZW1lbnRzOiAxMjtcbi8vICRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogcmVtLWNhbGMoMjApO1xuXG4vLyAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkOiBmYWxzZTtcbi8vIEBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHskYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmc6ICRjb2x1bW4tZ3V0dGVyO31cblxuLy8gRW5hYmxlcyBtZWRpYSBxdWVyaWVzIGZvciBibG9jay1ncmlkIGNsYXNzZXMuIFNldCB0byBmYWxzZSBpZiB3cml0aW5nIHNlbWFudGljIEhUTUwuXG4vLyAkYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzOiB0cnVlO1xuXG4vLyAwNC4gQnJlYWRjcnVtYnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgYnJlYWRjcnVtYiBjb250YWluZXIuXG4gJGNydW1iLWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IDU1JSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIHBhZGRpbmcgYXJvdW5kIHRoZSBicmVhZGNydW1icy5cbiAkY3J1bWItcGFkZGluZzogcmVtLWNhbGMoOSAxNCA5KTtcbiAkY3J1bWItc2lkZS1wYWRkaW5nOiByZW0tY2FsYygxMik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXMuXG4vLyAkY3J1bWItZnVuY3Rpb24tZmFjdG9yOiAtMTAlO1xuLy8gJGNydW1iLWJvcmRlci1zaXplOiAxcHg7XG4vLyAkY3J1bWItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRjcnVtYi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjcnVtYi1iZywgJGxpZ2h0bmVzczogJGNydW1iLWZ1bmN0aW9uLWZhY3Rvcik7XG4gLy8kY3J1bWItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB2YXJpb3VzIHRleHQgc3R5bGVzIGZvciBicmVhZGNydW1icy5cbiAkY3J1bWItZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gLy8kY3J1bWItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gLy8kY3J1bWItZm9udC1jb2xvci1jdXJyZW50OiAkb2lsO1xuIC8vJGNydW1iLWZvbnQtY29sb3ItdW5hdmFpbGFibGU6ICRhbHVtaW51bTtcbiAvLyRjcnVtYi1mb250LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICRjcnVtYi1saW5rLWRlY29yOiB1bmRlcmxpbmU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWJzXG4vLyAkY3J1bWItc2xhc2gtY29sb3I6ICRiYXNlO1xuICRjcnVtYi1zbGFzaDogXCIvXCI7XG5cbi8vIDA1LiBCdXR0b25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGJ1aWxkIHBhZGRpbmcgZm9yIGJ1dHRvbnMuXG4vLyAkYnV0dG9uLXRueTogcmVtLWNhbGMoMTApO1xuLy8gJGJ1dHRvbi1zbWw6IHJlbS1jYWxjKDE0KTtcbi8vICRidXR0b24tbWVkOiByZW0tY2FsYygxNik7XG4vLyAkYnV0dG9uLWxyZzogcmVtLWNhbGMoMTgpO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBkaXNwbGF5IHByb3BlcnR5LlxuLy8gJGJ1dHRvbi1kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAkYnV0dG9uLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIHRleHQgc3R5bGVzLlxuLy8gJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkYnV0dG9uLWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRidXR0b24tZm9udC1jb2xvci1hbHQ6ICRvaWw7XG4vLyAkYnV0dG9uLWZvbnQtdG55OiByZW0tY2FsYygxMSk7XG4vLyAkYnV0dG9uLWZvbnQtc21sOiByZW0tY2FsYygxMyk7XG4vLyAkYnV0dG9uLWZvbnQtbWVkOiByZW0tY2FsYygxNik7XG4vLyAkYnV0dG9uLWZvbnQtbHJnOiByZW0tY2FsYygyMCk7XG4vLyAkYnV0dG9uLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXI7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZhcmlvdXMgaG92ZXIgZWZmZWN0cy5cbi8vICRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAtMjAlO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gYm9yZGVyIHN0eWxlcy5cbi8vICRidXR0b24tYm9yZGVyLXdpZHRoOiAwO1xuLy8gJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGJ1dHRvbi1iZy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4vLyAkYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkYnV0dG9uLWJvcmRlci1jb2xvcjogJGJ1dHRvbi1iZy1ob3Zlcjtcbi8vICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyO1xuLy8gJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcjogJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyO1xuLy8gJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcjogJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjtcbi8vICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHdhcm5pbmctY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3I6ICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3Zlcjtcbi8vICRpbmZvLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGluZm8tY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRpbmZvLWJ1dHRvbi1ib3JkZXItY29sb3I6ICRpbmZvLWJ1dHRvbi1iZy1ob3ZlcjtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXG4vLyAkYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkYnV0dG9uLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCBkZWZhdWx0IG9wYWNpdHkgYW5kIGN1cnNvciBmb3IgZGlzYWJsZWQgYnV0dG9ucy5cbi8vICRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTogLjc7XG4vLyAkYnV0dG9uLWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuXG4vLyAwNi4gQnV0dG9uIEdyb3Vwc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFNldHMgdGhlIG1hcmdpbiBmb3IgdGhlIHJpZ2h0IHNpZGUgYnkgZGVmYXVsdCwgYW5kIHRoZSBsZWZ0IG1hcmdpbiBpZiByaWdodC10by1sZWZ0IGRpcmVjdGlvbiBpcyB1c2VkXG4vLyAkYnV0dG9uLWJhci1tYXJnaW4tb3Bwb3NpdGU6IHJlbS1jYWxjKDEwKTtcbi8vICRidXR0b24tZ3JvdXAtYm9yZGVyLXdpZHRoOiAxcHg7XG5cbi8vIDA3LiBDbGVhcmluZ1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWNsZWFyaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvcnMgZm9yIHBhcnRzIG9mIENsZWFyaW5nLlxuLy8gJGNsZWFyaW5nLWJnOiAkb2lsO1xuLy8gJGNsZWFyaW5nLWNhcHRpb24tYmc6ICRjbGVhcmluZy1iZztcbi8vICRjbGVhcmluZy1jYXJvdXNlbC1iZzogcmdiYSg1MSw1MSw1MSwwLjgpO1xuLy8gJGNsZWFyaW5nLWltZy1iZzogJGNsZWFyaW5nLWJnO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGNsb3NlIGJ1dHRvblxuLy8gJGNsZWFyaW5nLWNsb3NlLWNvbG9yOiAkaXJvbjtcbi8vICRjbGVhcmluZy1jbG9zZS1zaXplOiAzMHB4O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGFycm93c1xuLy8gJGNsZWFyaW5nLWFycm93LXNpemU6IDEycHg7XG4vLyAkY2xlYXJpbmctYXJyb3ctY29sb3I6ICRjbGVhcmluZy1jbG9zZS1jb2xvcjtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGNhcHRpb25zXG4vLyAkY2xlYXJpbmctY2FwdGlvbi1mb250LWNvbG9yOiAkaXJvbjtcbi8vICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtc2l6ZTogLjg3NWVtO1xuLy8gJGNsZWFyaW5nLWNhcHRpb24tcGFkZGluZzogMTBweCAzMHB4IDIwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHRoZSBpbWFnZSBhbmQgY2Fyb3VzZWwgaGVpZ2h0IGFuZCBzdHlsZVxuLy8gJGNsZWFyaW5nLWFjdGl2ZS1pbWctaGVpZ2h0OiA4NSU7XG4vLyAkY2xlYXJpbmctY2Fyb3VzZWwtaGVpZ2h0OiAxMjBweDtcbi8vICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi13aWR0aDogMTIwcHg7XG4vLyAkY2xlYXJpbmctY2Fyb3VzZWwtdGh1bWItYWN0aXZlLWJvcmRlcjogMXB4IHNvbGlkIHJnYigyNTUsMjU1LDI1NSk7XG5cbi8vIDA4LiBEcm9wZG93blxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWRyb3Bkb3duLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2xzIGhlaWdodCBhbmQgd2lkdGggc3R5bGVzLlxuLy8gJGYtZHJvcGRvd24tbWF4LXdpZHRoOiAyMDBweDtcbi8vICRmLWRyb3Bkb3duLWhlaWdodDogYXV0bztcbi8vICRmLWRyb3Bkb3duLW1heC1oZWlnaHQ6IG5vbmU7XG5cbi8vIFVzZWQgZm9yIGJvdHRvbSBwb3NpdGlvblxuLy8gJGYtZHJvcGRvd24tbWFyZ2luLXRvcDogMnB4O1xuXG4vLyBVc2VkIGZvciByaWdodCBwb3NpdGlvblxuLy8gJGYtZHJvcGRvd24tbWFyZ2luLWxlZnQ6ICRmLWRyb3Bkb3duLW1hcmdpbi10b3A7XG5cbi8vIFVzZWQgZm9yIGxlZnQgcG9zaXRpb25cbi8vICRmLWRyb3Bkb3duLW1hcmdpbi1yaWdodDogJGYtZHJvcGRvd24tbWFyZ2luLXRvcDtcblxuLy8gVXNlZCBmb3IgdG9wIHBvc2l0aW9uXG4vLyAkZi1kcm9wZG93bi1tYXJnaW4tYm90dG9tOiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yXG4vLyAkZi1kcm9wZG93bi1iZzogJHdoaXRlO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJvcmRlciBzdHlsZXMgZm9yIGRyb3Bkb3ducy5cbi8vICRmLWRyb3Bkb3duLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkZi1kcm9wZG93bi1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSB0cmlhbmdsZSBwaXAuXG4vLyAkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplOiA2cHg7XG4vLyAkZi1kcm9wZG93bi10cmlhbmdsZS1jb2xvcjogJHdoaXRlO1xuLy8gJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ6IDEwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHN0eWxlcyBmb3IgdGhlIGxpc3QgZWxlbWVudHMuXG4vLyAkZi1kcm9wZG93bi1saXN0LXN0eWxlOiBub25lO1xuLy8gJGYtZHJvcGRvd24tZm9udC1jb2xvcjogJGNoYXJjb2FsO1xuLy8gJGYtZHJvcGRvd24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkZi1kcm9wZG93bi1saXN0LXBhZGRpbmc6IHJlbS1jYWxjKDUsIDEwKTtcbi8vICRmLWRyb3Bkb3duLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XG4vLyAkZi1kcm9wZG93bi1saXN0LWhvdmVyLWJnOiAkc21va2U7XG4vLyAkZHJvcGRvd24tbW9iaWxlLWRlZmF1bHQtZmxvYXQ6IDA7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN0eWxlcyBmb3Igd2hlbiB0aGUgZHJvcGRvd24gaGFzIGN1c3RvbSBjb250ZW50LlxuLy8gJGYtZHJvcGRvd24tY29udGVudC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG5cbi8vIERlZmF1bHQgcmFkaXVzIGZvciBkcm9wZG93bi5cbi8vICRmLWRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cblxuLy8gMDkuIERyb3Bkb3duIEJ1dHRvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBjb2xvciBvZiB0aGUgcGlwIGluIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yOiAkd2hpdGU7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1jb2xvci1hbHQ6ICRvaWw7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIHNpemUgb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXG4vLyAkYnV0dG9uLXBpcC10bnk6IHJlbS1jYWxjKDYpO1xuLy8gJGJ1dHRvbi1waXAtc21sOiByZW0tY2FsYyg3KTtcbi8vICRidXR0b24tcGlwLW1lZDogcmVtLWNhbGMoOSk7XG4vLyAkYnV0dG9uLXBpcC1scmc6IHJlbS1jYWxjKDExKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRpbnkgZHJvcGRvd24gYnV0dG9uc1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXRueTogJGJ1dHRvbi1waXAtdG55ICogNztcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS10bnk6ICRidXR0b24tcGlwLXRueSAqIDM7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtdG55OiAoLSRidXR0b24tcGlwLXRueSAvIDIpICsgcmVtLWNhbGMoMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBzbWFsbCBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA3O1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbDtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXNtbDogJGJ1dHRvbi1waXAtc21sICogMztcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1zbWw6ICgtJGJ1dHRvbi1waXAtc21sIC8gMikgKyByZW0tY2FsYygxKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIG1lZGl1bSBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA2ICsgcmVtLWNhbGMoMyk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLW1lZDogJGJ1dHRvbi1waXAtbWVkIC0gcmVtLWNhbGMoMyk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDIuNTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1tZWQ6ICgtJGJ1dHRvbi1waXAtbWVkIC8gMikgKyByZW0tY2FsYygyKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxhcmdlIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1scmc6ICRidXR0b24tcGlwLWxyZyAqIDUgKyByZW0tY2FsYygzKTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbHJnOiAkYnV0dG9uLXBpcC1scmcgLSByZW0tY2FsYyg2KTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLWxyZzogJGJ1dHRvbi1waXAtbHJnICogMi41O1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLWxyZzogKC0kYnV0dG9uLXBpcC1scmcgLyAyKSArIHJlbS1jYWxjKDMpO1xuXG4vLyAxMC4gRmxleCBWaWRlb1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2aWRlbyBjb250YWluZXIgcGFkZGluZyBhbmQgbWFyZ2luc1xuLy8gJGZsZXgtdmlkZW8tcGFkZGluZy10b3A6IHJlbS1jYWxjKDI1KTtcbi8vICRmbGV4LXZpZGVvLXBhZGRpbmctYm90dG9tOiA2Ny41JTtcbi8vICRmbGV4LXZpZGVvLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB3aWRlc2NyZWVuIGJvdHRvbSBwYWRkaW5nXG4vLyAkZmxleC12aWRlby13aWRlc2NyZWVuLXBhZGRpbmctYm90dG9tOiA1Ni4zNCU7XG5cbi8vIDExLiBGb3Jtc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhc2UgZm9yIGxvdHMgb2YgZm9ybSBzcGFjaW5nIGFuZCBwb3NpdGlvbmluZyBzdHlsZXNcbi8vICRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHMgaW4gZGlmZmVyZW50IHdheXNcbi8vICRmb3JtLWxhYmVsLXBvaW50ZXI6IHBvaW50ZXI7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuNTtcbi8vICRmb3JtLWxhYmVsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRibGFjaywgJGxpZ2h0bmVzczogMzAlKTtcbi8vICRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiRmb3JtLWxhYmVsLWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDEzKTtcbi8vICRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbi8vICRpbnB1dC1mb250LWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpO1xuLy8gJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJGlucHV0LWJnLWNvbG9yOiAkd2hpdGU7XG4vLyAkaW5wdXQtZm9jdXMtYmctY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIlKTtcbi8vICRpbnB1dC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSk7XG4vLyAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC00MCUpO1xuLy8gJGlucHV0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkaW5wdXQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkaW5wdXQtZGlzYWJsZWQtYmc6ICRnYWluc2Jvcm87XG4vLyAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4vLyAkaW5wdXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTtcbi8vICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0OiBmYWxzZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBmaWVsZHNldCBib3JkZXIgYW5kIHNwYWNpbmcuXG4vLyAkZmllbGRzZXQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRmaWVsZHNldC1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRmaWVsZHNldC1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm87XG4vLyAkZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGVnZW5kcyB3aGVuIHlvdSB1c2UgdGhlbVxuLy8gJGxlZ2VuZC1iZzogJHdoaXRlO1xuLy8gJGxlZ2VuZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcHJlZml4IGFuZCBwb3N0Zml4IGlucHV0IGVsZW1lbnRzXG4vLyAkaW5wdXQtcHJlZml4LWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC01JSk7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKTtcbi8vICRpbnB1dC1wcmVmaXgtYm9yZGVyLXNpemU6IDFweDtcbi8vICRpbnB1dC1wcmVmaXgtYm9yZGVyLXR5cGU6IHNvbGlkO1xuLy8gJGlucHV0LXByZWZpeC1vdmVyZmxvdzogaGlkZGVuO1xuLy8gJGlucHV0LXByZWZpeC1mb250LWNvbG9yOiAkb2lsO1xuLy8gJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDogJHdoaXRlO1xuXG4vLyBXZSB1c2UgdGhpcyBzZXR0aW5nIHRvIHR1cm4gb24vb2ZmIEhUTUw1IG51bWJlciBzcGlubmVycyAodGhlIHVwL2Rvd24gYXJyb3dzKVxuLy8gJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBlcnJvciBzdGF0ZXMgZm9yIGlucHV0cyBhbmQgbGFiZWxzXG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1wYWRkaW5nOiByZW0tY2FsYyg2IDkgOSk7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A6IC0xcHg7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtYmctY29sb3I6ICRhbGVydC1jb2xvcjtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAkb2lsO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgZ2xvd2luZyBlZmZlY3Qgb2YgaW5wdXRzIHdoZW4gZm9jdXNlZFxuLy8gJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogLjQ1cztcbi8vICRnbG93aW5nLWVmZmVjdC1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcblxuLy8gU2VsZWN0IHZhcmlhYmxlc1xuLy8gJHNlbGVjdC1iZy1jb2xvcjogJGdob3N0O1xuLy8gJHNlbGVjdC1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHNlbGVjdC1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTMlKTtcblxuXG4vLyAxMi4gSWNvbiBCYXJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBpY29uLWJhciBhbmQgaXRlbXNcbi8vICRpY29uLWJhci1iZzogJG9pbDtcbi8vICRpY29uLWJhci1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkaWNvbi1iYXItZm9udC1jb2xvci1ob3ZlcjogJGljb24tYmFyLWZvbnQtY29sb3I7XG4vLyAkaWNvbi1iYXItZm9udC1zaXplOiAxcmVtO1xuLy8gJGljb24tYmFyLWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRpY29uLWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4vLyAkaWNvbi1iYXItaWNvbi1jb2xvci1ob3ZlcjogJGljb24tYmFyLWljb24tY29sb3I7XG4vLyAkaWNvbi1iYXItaWNvbi1zaXplOiAxLjg3NXJlbTtcbi8vICRpY29uLWJhci1pbWFnZS13aWR0aDogMS44NzVyZW07XG4vLyAkaWNvbi1iYXItaW1hZ2UtaGVpZ2h0OiAxLjg3NXJlbTtcbi8vICRpY29uLWJhci1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJGljb24tYmFyLWl0ZW0tcGFkZGluZzogMS4yNXJlbTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBpY29ucy5cbi8vICRpY29uLWJhci1kaXNhYmxlZC1vcGFjaXR5OiAuNztcblxuLy8gMTMuIElubGluZSBMaXN0c1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXG4vLyAkaW5saW5lLWxpc3QtdG9wLW1hcmdpbjogMDtcbi8vICRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW46IDA7XG4vLyAkaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpO1xuLy8gJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luOiByZW0tY2FsYygtMjIpO1xuLy8gJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbGlzdC1tYXJnaW46IHJlbS1jYWxjKDIyKTtcblxuLy8gJGlubGluZS1saXN0LXBhZGRpbmc6IDA7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cbi8vICRpbmxpbmUtbGlzdC1vdmVyZmxvdzogaGlkZGVuO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXG4vLyAkaW5saW5lLWxpc3QtZGlzcGxheTogYmxvY2s7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXG4vLyAkaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTogYmxvY2s7XG5cbi8vIDE0LiBKb3lyaWRlXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIENvbnRyb2xsaW5nIGRlZmF1bHQgSm95cmlkZSBzdHlsZXNcbi8vICRqb3lyaWRlLXRpcC1iZzogJG9pbDtcbi8vICRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOiAzMDBweDtcbi8vICRqb3lyaWRlLXRpcC1wYWRkaW5nOiByZW0tY2FsYygxOCAyMCAyNCk7XG4vLyAkam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggJGNoYXJjb2FsO1xuLy8gJGpveXJpZGUtdGlwLXJhZGl1czogNHB4O1xuLy8gJGpveXJpZGUtdGlwLXBvc2l0aW9uLW9mZnNldDogMjJweDtcblxuLy8gSGVyZSwgd2UncmUgc2V0dGluZyB0aGUgdGlwIGZvbnQgc3R5bGVzXG4vLyAkam95cmlkZS10aXAtZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJGpveXJpZGUtdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJGpveXJpZGUtdGlwLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuXG4vLyBUaGlzIGNoYW5nZXMgdGhlIG51YiBzaXplXG4vLyAkam95cmlkZS10aXAtbnViLXNpemU6IDEwcHg7XG5cbi8vIFRoaXMgYWRqdXN0cyB0aGUgc3R5bGVzIGZvciB0aGUgdGltZXIgd2hlbiBpdHMgZW5hYmxlZFxuLy8gJGpveXJpZGUtdGlwLXRpbWVyLXdpZHRoOiA1MHB4O1xuLy8gJGpveXJpZGUtdGlwLXRpbWVyLWhlaWdodDogM3B4O1xuLy8gJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yOiAkc3RlZWw7XG5cbi8vIFRoaXMgY2hhbmdlcyB1cCB0aGUgc3R5bGVzIGZvciB0aGUgY2xvc2UgYnV0dG9uXG4vLyAkam95cmlkZS10aXAtY2xvc2UtY29sb3I6ICRtb25zb29uO1xuLy8gJGpveXJpZGUtdGlwLWNsb3NlLXNpemU6IDI0cHg7XG4vLyAkam95cmlkZS10aXAtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuXG4vLyBXaGVuIEpveXJpZGUgaXMgZmlsbGluZyB0aGUgc2NyZWVuLCB3ZSB1c2UgdGhpcyBzdHlsZSBmb3IgdGhlIGJnXG4vLyAkam95cmlkZS1zY3JlZW5maWxsOiByZ2JhKDAsMCwwLDAuNSk7XG5cbi8vIDE1LiBLZXlzdHJva2VzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwta2V5c3Ryb2tlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZXMuXG4vLyAka2V5c3Ryb2tlLWZvbnQ6IFwiQ29uc29sYXNcIiwgXCJNZW5sb1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlO1xuLy8gJGtleXN0cm9rZS1mb250LXNpemU6IGluaGVyaXQ7XG4vLyAka2V5c3Ryb2tlLWZvbnQtY29sb3I6ICRqZXQ7XG4vLyAka2V5c3Ryb2tlLWZvbnQtY29sb3ItYWx0OiAkd2hpdGU7XG4vLyAka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3RvcjogLTclO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGtleXN0cm9rZSBwYWRkaW5nLlxuLy8gJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXMuXG4vLyAka2V5c3Ryb2tlLWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAka2V5c3Ryb2tlLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGtleXN0cm9rZS1iZywgJGxpZ2h0bmVzczogJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAxNi4gTGFiZWxzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsc1xuLy8gJGxhYmVsLXBhZGRpbmc6IHJlbS1jYWxjKDQgOCA0KTtcbi8vICRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsIHRleHRcbi8vICRsYWJlbC1mb250LXNpemluZzogcmVtLWNhbGMoMTEpO1xuLy8gJGxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGxhYmVsLWZvbnQtY29sb3I6ICRvaWw7XG4vLyAkbGFiZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcbi8vICRsYWJlbC1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cbi8vIDE3LiBNYWdlbGxhblxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW1hZ2VsbGFuLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJG1hZ2VsbGFuLWJnOiAkd2hpdGU7XG4vLyAkbWFnZWxsYW4tcGFkZGluZzogMTBweDtcblxuLy8gMTguIE9mZi1jYW52YXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIFZhcmlhYmxlc1xuLy8gJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJHRhYmJhci1iZzogJG9pbDtcbiAgICR0YWJiYXItYmc6ICRuYXZfY2FudmFzX21lbnVfYmFja2dyb3VuZDtcbi8vICR0YWJiYXItaGVpZ2h0OiByZW0tY2FsYyg0NSk7XG4vLyAkdGFiYmFyLWljb24td2lkdGg6ICR0YWJiYXItaGVpZ2h0O1xuLy8gJHRhYmJhci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4vLyAkdGFiYmFyLWNvbG9yOiAkd2hpdGU7XG4vLyAkdGFiYmFyLW1pZGRsZS1wYWRkaW5nOiAwIHJlbS1jYWxjKDEwKTtcblxuLy8gT2ZmIENhbnZhcyBEaXZpZGVyIFN0eWxlc1xuLy8gJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSk7XG4vLyAkdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyOiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XG5cblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIEhlYWRlcnNcbi8vICR0YWJiYXItaGVhZGVyLWNvbG9yOiAkd2hpdGU7XG4vLyAkdGFiYmFyLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJHRhYmJhci1oZWFkZXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuLy8gJHRhYmJhci1oZWFkZXItbWFyZ2luOiAwO1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgVmFyaWFibGVzXG4vLyAkb2ZmLWNhbnZhcy13aWR0aDogcmVtLWNhbGMoMjUwKTtcbiRvZmYtY2FudmFzLWJnOiAkbmF2X2NhbnZhc19tZW51X2JhY2tncm91bmQ7XG4vLyAkb2ZmLWNhbnZhcy1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTMwJSk7XG4vLyAkb2ZmLWNhbnZhcy1iZy1hY3RpdmU6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpO1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgTGlzdCBWYXJpYWJsZXNcbi8vICRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc6IC4zcmVtIHJlbS1jYWxjKDE1KTtcbi8vICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yOiAkYWx1bWludW07XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1iZzogJHR1YXRhcmE7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSk7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tOiBub25lO1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luOjA7XG4vLyAkb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDEwLCAxNSk7XG4vLyAkb2ZmLWNhbnZhcy1saW5rLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjcpO1xuLy8gJG9mZi1jYW52YXMtbGluay1ib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmcsICRsaWdodG5lc3M6IC0yNSUpO1xuLy8gJG9mZi1jYW52YXMtYmFjay1iZzogJHdoaXRlO1xuLy8gJG9mZi1jYW52YXMtYmFjay1ib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wO1xuLy8gJG9mZi1jYW52YXMtYmFjay1ib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tO1xuLy8gJG9mZi1jYW52YXMtYmFjay1ob3Zlci1iZzogc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmFjay1iZywgJGxpZ2h0bmVzczogLTMwJSk7XG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKTtcbi8vICRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuLy8gT2ZmIENhbnZhcyBNZW51IEljb24gVmFyaWFibGVzXG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjogJHdoaXRlO1xuLy8gJHRhYmJhci1tZW51LWljb24taG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkbGlnaHRuZXNzOiAtMzAlKTtcblxuLy8gJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDM1KTtcbi8vICR0YWJiYXItbWVudS1pY29uLXdpZHRoOiAkdGFiYmFyLWljb24td2lkdGg7XG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuLy8gJHRhYmJhci1tZW51LWljb24tcGFkZGluZzogMDtcblxuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aDogcmVtLWNhbGMoMTYpO1xuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0OiBmYWxzZTtcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wOiBmYWxzZTtcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzOiAxcHg7XG4vLyAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcDogNnB4O1xuXG4vLyBPZmYgQ2FudmFzIEJhY2stTGluayBPdmVybGF5XG4gJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XG4gJG9mZi1jYW52YXMtb3ZlcmxheS1jdXJzb3I6IHBvaW50ZXI7XG4gJG9mZi1jYW52YXMtb3ZlcmxheS1ib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoJGJsYWNrLCAuNSksIDRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpO1xuICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC4yKTtcbiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJHdoaXRlLCAuMDUpO1xuXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xuICRtZW51LXNsaWRlOiBcInRyYW5zZm9ybSA1MDBtcyBlYXNlXCI7XG5cbi8vIDE5LiBPcmJpdFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGNhcHRpb24gc3R5bGVzXG4vLyAkb3JiaXQtY29udGFpbmVyLWJnOiBub25lO1xuLy8gJG9yYml0LWNhcHRpb24tYmc6IHJnYmEoNTEsNTEsNTEsIC44KTtcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJG9yYml0LWNhcHRpb24tcG9zaXRpb246IFwiYm90dG9tXCI7IC8vIFN1cHBvcnRlZCB2YWx1ZXM6IFwiYm90dG9tXCIsIFwidW5kZXJcIlxuLy8gJG9yYml0LWNhcHRpb24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpO1xuLy8gJG9yYml0LWNhcHRpb24taGVpZ2h0OiBhdXRvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGVmdC9yaWdodCBuYXYgc3R5bGVzXG4vLyAkb3JiaXQtbmF2LWJnOiB0cmFuc3BhcmVudDtcbi8vICRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKTtcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICR3aGl0ZTtcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI6ICR3aGl0ZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpbWVyIHN0eWxlc1xuLy8gJG9yYml0LXRpbWVyLWJnOiByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XG4vLyAkb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXI6IHRydWU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBidWxsZXQgbmF2IHN0eWxlc1xuJG9yYml0LWJ1bGxldC1uYXYtY29sb3I6ICR3aGl0ZTtcbiRvcmJpdC1idWxsZXQtbmF2LWNvbG9yLWFjdGl2ZTogJHllbGxvdztcbiRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYygxMyk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyB0aGUgc3R5bGUgb2Ygc2xpZGUgbnVtYmVyc1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1iZzogcmdiYSgwLDAsMCwwKTtcbi8vICRvcmJpdC1zbGlkZS1udW1iZXItZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KTtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbi8vICR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCI7XG4vLyAkcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiO1xuXG4vLyBIaWRlIGNvbnRyb2xzIG9uIHNtYWxsXG4vLyAkb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsOiB0cnVlO1xuLy8gJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbDogdHJ1ZTtcbi8vICRvcmJpdC10aW1lci1oaWRlLWZvci1zbWFsbDogdHJ1ZTtcblxuLy8gMjAuIFBhZ2luYXRpb25cbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtcGFnaW5hdGlvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwYWdpbmF0aW9uIGNvbnRhaW5lclxuLy8gJHBhZ2luYXRpb24taGVpZ2h0OiByZW0tY2FsYygyNCk7XG4vLyAkcGFnaW5hdGlvbi1tYXJnaW46IHJlbS1jYWxjKC01KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbGlzdC1pdGVtIHByb3BlcnRpZXNcbi8vICRwYWdpbmF0aW9uLWxpLWZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbi8vICRwYWdpbmF0aW9uLWxpLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuLy8gJHBhZ2luYXRpb24tbGktZm9udC1jb2xvcjogJGpldDtcbi8vICRwYWdpbmF0aW9uLWxpLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHBhZ2luYXRpb24tbGktbWFyZ2luOiByZW0tY2FsYyg1KTtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciB0aGUgcGFnaW5hdGlvbiBhbmNob3IgbGlua3Ncbi8vICRwYWdpbmF0aW9uLWxpbmstcGFkOiByZW0tY2FsYygxIDEwIDEpO1xuLy8gJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMTAlKTtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciBkaXNhYmxlZCBhbmNob3IgbGlua3Ncbi8vICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtY3Vyc29yOiBkZWZhdWx0O1xuLy8gJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgY3VycmVudGx5IHNlbGVjdGVkIGFuY2hvciBsaW5rc1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtY3Vyc29yOiBkZWZhdWx0O1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3I7XG5cbi8vIDIxLiBQYW5lbHNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1wYW5lbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgc3R5bGVzXG4vLyAkcGFuZWwtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKTtcbi8vICRwYW5lbC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHBhbmVsLWJvcmRlci1zaXplOiAxcHg7XG4vLyAkY2FsbG91dC1wYW5lbC1iZzogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IDk0JSk7XG5cbi8vIFdlIHVzZSB0aGlzICUgdG8gY29udHJvbCBob3cgbXVjaCB3ZSBkYXJrZW4gdGhpbmdzIG9uIGhvdmVyXG4vLyAkcGFuZWwtZnVuY3Rpb24tZmFjdG9yOiAtMTElO1xuLy8gJHBhbmVsLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHBhbmVsLWJnLCAkbGlnaHRuZXNzOiAkcGFuZWwtZnVuY3Rpb24tZmFjdG9yKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCBkZWZhdWx0IGlubmVyIHBhZGRpbmcgYW5kIGJvdHRvbSBtYXJnaW5cbi8vICRwYW5lbC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4vLyAkcGFuZWwtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgZm9udCBjb2xvcnNcbi8vICRwYW5lbC1mb250LWNvbG9yOiAkb2lsO1xuLy8gJHBhbmVsLWZvbnQtY29sb3ItYWx0OiAkd2hpdGU7XG5cbi8vICRwYW5lbC1oZWFkZXItYWRqdXN0OiB0cnVlO1xuLy8gJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvcjogJHByaW1hcnktY29sb3I7XG4vLyAkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuLy8gMjIuIFByaWNpbmcgVGFibGVzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtcHJpY2luZy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBjb2xvclxuLy8gJHByaWNlLXRhYmxlLWJvcmRlcjogc29saWQgMXB4ICRnYWluc2Jvcm87XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvdHRvbSBtYXJnaW4gb2YgdGhlIHByaWNpbmcgdGFibGVcbi8vICRwcmljZS10YWJsZS1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSB0aXRsZSBzdHlsZXNcbi8vICRwcmljZS10aXRsZS1iZzogJG9pbDtcbi8vICRwcmljZS10aXRsZS1wYWRkaW5nOiByZW0tY2FsYygxNSAyMCk7XG4vLyAkcHJpY2UtdGl0bGUtYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS10aXRsZS1jb2xvcjogJHNtb2tlO1xuLy8gJHByaWNlLXRpdGxlLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRwcmljZS10aXRsZS1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkcHJpY2UtdGl0bGUtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgcHJpY2Ugc3R5bGVzXG4vLyAkcHJpY2UtbW9uZXktYmc6ICR2YXBvcjtcbi8vICRwcmljZS1tb25leS1wYWRkaW5nOiByZW0tY2FsYygxNSAyMCk7XG4vLyAkcHJpY2UtbW9uZXktYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1tb25leS1jb2xvcjogJG9pbDtcbi8vICRwcmljZS1tb25leS13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkcHJpY2UtbW9uZXktc2l6ZTogcmVtLWNhbGMoMzIpO1xuLy8gJHByaWNlLW1vbmV5LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblxuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgZGVzY3JpcHRpb24gc3R5bGVzXG4vLyAkcHJpY2UtYmc6ICR3aGl0ZTtcbi8vICRwcmljZS1kZXNjLWNvbG9yOiAkbW9uc29vbjtcbi8vICRwcmljZS1kZXNjLXBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbi8vICRwcmljZS1kZXNjLWFsaWduOiBjZW50ZXI7XG4vLyAkcHJpY2UtZGVzYy1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbi8vICRwcmljZS1kZXNjLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRwcmljZS1kZXNjLWxpbmUtaGVpZ2h0OiAxLjQ7XG4vLyAkcHJpY2UtZGVzYy1ib3R0b20tYm9yZGVyOiBkb3R0ZWQgMXB4ICRnYWluc2Jvcm87XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW0gc3R5bGVzXG4vLyAkcHJpY2UtaXRlbS1jb2xvcjogJG9pbDtcbi8vICRwcmljZS1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbi8vICRwcmljZS1pdGVtLWFsaWduOiBjZW50ZXI7XG4vLyAkcHJpY2UtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRwcmljZS1pdGVtLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRwcmljZS1pdGVtLWJvdHRvbS1ib3JkZXI6IGRvdHRlZCAxcHggJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIENUQSBhcmVhIHN0eWxlc1xuLy8gJHByaWNlLWN0YS1iZzogJHdoaXRlO1xuLy8gJHByaWNlLWN0YS1hbGlnbjogY2VudGVyO1xuLy8gJHByaWNlLWN0YS1wYWRkaW5nOiByZW0tY2FsYygyMCAyMCAwKTtcblxuLy8gMjMuIFByb2dyZXNzIEJhclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBwcm9ncmVzcyBiYXIgaGVpZ2h0XG4vLyAkcHJvZ3Jlc3MtYmFyLWhlaWdodDogcmVtLWNhbGMoMjUpO1xuLy8gJHByb2dyZXNzLWJhci1jb2xvcjogJHZhcG9yO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuLy8gJHByb2dyZXNzLWJhci1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogMjAlKTtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXNpemU6IDFweDtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtYXJnaW4gJiBwYWRkaW5nXG4vLyAkcHJvZ3Jlc3MtYmFyLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbWV0ZXIgY29sb3JzXG4vLyAkcHJvZ3Jlc3MtbWV0ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHByb2dyZXNzLW1ldGVyLXNlY29uZGFyeS1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbi8vICRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcbi8vICRwcm9ncmVzcy1tZXRlci1hbGVydC1jb2xvcjogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNC4gUmFuZ2UgU2xpZGVyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtcmFuZ2Utc2xpZGVyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gVGhlc2UgdmFyaWFiZWxzIGRlZmluZSB0aGUgc2xpZGVyIGJhciBzdHlsZXNcbi8vICRyYW5nZS1zbGlkZXItYmFyLXdpZHRoOiAxMDAlO1xuLy8gJHJhbmdlLXNsaWRlci1iYXItaGVpZ2h0OiByZW0tY2FsYygxNik7XG5cbi8vICRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHJhbmdlLXNsaWRlci1iYXItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcbi8vICRyYW5nZS1zbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICRyYW5nZS1zbGlkZXItcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcbi8vICRyYW5nZS1zbGlkZXItYmFyLWJnLWNvbG9yOiAkZ2hvc3Q7XG4vLyAkcmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50LWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMSUpO1xuXG4vLyBWZXJ0aWNhbCBiYXIgc3R5bGVzXG4vLyAkcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci13aWR0aDogcmVtLWNhbGMoMTYpO1xuLy8gJHJhbmdlLXNsaWRlci12ZXJ0aWNhbC1iYXItaGVpZ2h0OiByZW0tY2FsYygyMDApO1xuXG4vLyBUaGVzZSB2YXJpYWJlbHMgZGVmaW5lIHRoZSBzbGlkZXIgaGFuZGxlIHN0eWxlc1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtd2lkdGg6IHJlbS1jYWxjKDMyKTtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWhlaWdodDogcmVtLWNhbGMoMjIpO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcG9zaXRpb24tdG9wOiByZW0tY2FsYygtNSk7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1iZy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItY29sb3I6IG5vbmU7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJnLWhvdmVyLWNvbG9yOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTEyJSk7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1jdXJzb3I6IHBvaW50ZXI7XG5cbi8vICRyYW5nZS1zbGlkZXItZGlzYWJsZWQtb3BhY2l0eTogLjc7XG4vLyAkcmFuZ2Utc2xpZGVyLWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kaXNhYmxlZC12YWx1ZTtcblxuLy8gMjUuIFJldmVhbFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXJldmVhbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgcmV2ZWFsIG92ZXJsYXkuXG4vLyAkcmV2ZWFsLW92ZXJsYXktYmc6IHJnYmEoJGJsYWNrLCAuNDUpO1xuLy8gJHJldmVhbC1vdmVybGF5LWJnLW9sZDogJGJsYWNrO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3R5bGUgb2YgdGhlIG1vZGFsIGl0c2VsZi5cbi8vICRyZXZlYWwtbW9kYWwtYmc6ICR3aGl0ZTtcbi8vICRyZXZlYWwtcG9zaXRpb24tdG9wOiByZW0tY2FsYygxMDApO1xuLy8gJHJldmVhbC1kZWZhdWx0LXdpZHRoOiA4MCU7XG4vLyAkcmV2ZWFsLW1heC13aWR0aDogJHJvdy13aWR0aDtcbi8vICRyZXZlYWwtbW9kYWwtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gJHJldmVhbC1ib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywuNCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcmV2ZWFsIGNsb3NlIGJ1dHRvblxuLy8gJHJldmVhbC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbi8vICRyZXZlYWwtY2xvc2UtdG9wOiByZW0tY2FsYygxMCk7XG4vLyAkcmV2ZWFsLWNsb3NlLXNpZGU6IHJlbS1jYWxjKDIyKTtcbi8vICRyZXZlYWwtY2xvc2UtY29sb3I6ICRiYXNlO1xuLy8gJHJldmVhbC1jbG9zZS13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS5cbi8vICRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICRyZXZlYWwtcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIG1vZGFsIGJvcmRlclxuLy8gJHJldmVhbC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHJldmVhbC1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRyZXZlYWwtYm9yZGVyLWNvbG9yOiAkc3RlZWw7XG5cbi8vICRyZXZlYWwtbW9kYWwtY2xhc3M6IFwicmV2ZWFsLW1vZGFsXCI7XG4vLyAkY2xvc2UtcmV2ZWFsLW1vZGFsLWNsYXNzOiBcImNsb3NlLXJldmVhbC1tb2RhbFwiO1xuXG4vLyAyNi4gU2lkZSBOYXZcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHBhZGRpbmcuXG4vLyAkc2lkZS1uYXYtcGFkZGluZzogcmVtLWNhbGMoMTQgMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpc3Qgc3R5bGVzLlxuLy8gJHNpZGUtbmF2LWxpc3QtdHlwZTogbm9uZTtcbi8vICRzaWRlLW5hdi1saXN0LXBvc2l0aW9uOiBvdXRzaWRlO1xuLy8gJHNpZGUtbmF2LWxpc3QtbWFyZ2luOiByZW0tY2FsYygwIDAgNyAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGluayBzdHlsZXMuXG4kc2lkZS1uYXYtbGluay1jb2xvcjogJG1pZF9ncmV5O1xuJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kc2lkZS1uYXYtbGluay1jb2xvci1ob3ZlcjogJHdoaXRlO1xuLy8kc2lkZS1uYXYtbGluay1iZy1ob3ZlcjogaHNsYSgwLCAwLCAwLCAuMDI1KTtcbi8vICRzaWRlLW5hdi1saW5rLW1hcmdpbjogMDtcbi8vJHNpZGUtbmF2LWxpbmstcGFkZGluZzogcmVtLWNhbGMoMTAgMCAxMCAwKTtcbi8vJHNpZGUtbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuLy8gJHNpZGUtbmF2LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHNpZGUtbmF2LWZvbnQtd2VpZ2h0LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtd2VpZ2h0O1xuLy8gJHNpZGUtbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICRzaWRlLW5hdi1mb250LWZhbWlseS1hY3RpdmU6ICRzaWRlLW5hdi1mb250LWZhbWlseTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGluZyBzdHlsZXMuXG4vLyAkc2lkZS1uYXYtaGVhZGluZy1jb2xvcjogJHNpZGUtbmF2LWxpbmstY29sb3I7XG4vLyAkc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU6ICRzaWRlLW5hdi1mb250LXNpemU7XG4vLyAkc2lkZS1uYXYtaGVhZGluZy1mb250LXdlaWdodDogYm9sZDtcbi8vICRzaWRlLW5hdi1oZWFkaW5nLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcbiAvLyRzaWRlLW5hdi1kaXZpZGVyLXNpemU6IDFweDtcbiAvLyRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlOiBzb2xpZDtcbiAvLyRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IDEwJSk7XG5cbi8vIDI3LiBTcGxpdCBCdXR0b25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZGlmZmVyZW50IHNoYXJlZCBzdHlsZXMgZm9yIFNwbGl0IEJ1dHRvbnNcbi8vICRzcGxpdC1idXR0b24tZnVuY3Rpb24tZmFjdG9yOiAxMCU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1jb2xvcjogJHdoaXRlO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtY29sb3ItYWx0OiAkb2lsO1xuLy8gJHNwbGl0LWJ1dHRvbi1hY3RpdmUtYmctdGludDogcmdiYSgwLDAsMCwwLjEpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aW55IHNwbGl0IGJ1dHRvbnNcbi8vICRzcGxpdC1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDEwO1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTogJGJ1dHRvbi1waXAtdG55ICogNjtcbi8vICRzcGxpdC1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnk7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAyO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk6IHJlbS1jYWxjKC02KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc21hbGwgc3BsaXQgYnV0dG9uc1xuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogMTA7XG4vLyAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA2O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbDtcbi8vICRzcGxpdC1idXR0b24tcGlwLXRvcC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDEuNTtcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtc21sOiByZW0tY2FsYygtNik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1lZGl1bSBzcGxpdCBidXR0b25zXG4vLyAkc3BsaXQtYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA5O1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLW1lZDogJGJ1dHRvbi1waXAtbWVkICogNS41O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtdG9wLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMS41O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1tZWQ6IHJlbS1jYWxjKC02KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGFyZ2Ugc3BsaXQgYnV0dG9uc1xuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogODtcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1scmc6ICRidXR0b24tcGlwLWxyZyAqIDU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNik7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtbHJnOiAkYnV0dG9uLXBpcC1scmcgKyByZW0tY2FsYyg1KTtcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbHJnOiByZW0tY2FsYygtNik7XG5cbi8vIDI4LiBTdWIgTmF2XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbWFyZ2luIGFuZCBwYWRkaW5nXG4vLyAkc3ViLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoLTQgMCAxOCk7XG4vLyAkc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGVmaW5pdGlvblxuLy8gJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuLy8gJHN1Yi1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkc3ViLW5hdi1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkc3ViLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbi8vICRzdWItbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDMgMTYpO1xuLy8gJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4O1xuLy8gJHN1Yi1uYXYtZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTI1JSk7XG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGFjdGl2ZSBpdGVtIHN0eWxlc1xuXG4vLyAkc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkc3ViLW5hdi1hY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1hY3RpdmUtYmcsICRsaWdodG5lc3M6IC0xNCUpO1xuLy8gJHN1Yi1uYXYtYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4vLyAkc3ViLW5hdi1hY3RpdmUtcGFkZGluZzogJHN1Yi1uYXYtcGFkZGluZztcbi8vICRzdWItbmF2LWFjdGl2ZS1jdXJzb3I6IGRlZmF1bHQ7XG5cbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlcjogXCJcIjtcbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW46IHJlbS1jYWxjKDEyKTtcblxuLy8gMjkuIFN3aXRjaFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBDb250cm9sbGluZyBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lclxuLy8gJHN3aXRjaC1iZzogJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN3aXRjaCBoZWlnaHRzIGZvciBvdXIgZGVmYXVsdCBjbGFzc2VzXG4vLyAkc3dpdGNoLWhlaWdodC10bnk6IDEuNXJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LXNtbDogMS43NXJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LW1lZDogMnJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LWxyZzogMi41cmVtO1xuLy8gJHN3aXRjaC1ib3R0b20tbWFyZ2luOiAxLjVyZW07XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgc3dpdGNoLXBhZGRsZVxuLy8gJHN3aXRjaC1wYWRkbGUtYmc6ICR3aGl0ZTtcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQ6IC4xNXM7XG4vLyAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLWVhc2U6IGVhc2Utb3V0O1xuLy8gJHN3aXRjaC1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4vLyAzMC4gVGFibGVzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdGFibGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xuLy8gJHRhYmxlLWJnOiAkd2hpdGU7XG4vLyAkdGFibGUtZXZlbi1yb3ctYmc6ICRzbm93O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZVxuLy8gJHRhYmxlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkdGFibGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICR0YWJsZS1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm87XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXG4vLyAkdGFibGUtaGVhZC1iZzogJHdoaXRlLXNtb2tlO1xuLy8gJHRhYmxlLWhlYWQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkdGFibGUtaGVhZC1mb250LWNvbG9yOiAkamV0O1xuLy8gJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJHRhYmxlLWhlYWQtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGZvb3Qgc3R5bGVzXG4vLyAkdGFibGUtZm9vdC1iZzogJHRhYmxlLWhlYWQtYmc7XG4vLyAkdGFibGUtZm9vdC1mb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZTtcbi8vICR0YWJsZS1mb290LWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4vLyAkdGFibGUtZm9vdC1mb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ7XG4vLyAkdGFibGUtZm9vdC1wYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBjYXB0aW9uXG4vLyB0YWJsZS1jYXB0aW9uLWJnOiB0cmFuc3BhcmVudDtcbi8vICR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4vLyAkdGFibGUtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0OiBib2xkO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSByb3cgcGFkZGluZyBhbmQgZm9udCBzdHlsZXNcbi8vICR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCk7XG4vLyAkdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHRhYmxlLXJvdy1mb250LWNvbG9yOiAkamV0O1xuLy8gJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XG5cbi8vIFRoZXNlIGFyZSBmb3IgY29udHJvbGxpbmcgdGhlIGxheW91dCwgZGlzcGxheSBhbmQgbWFyZ2luIG9mIHRhYmxlc1xuLy8gJHRhYmxlLWxheW91dDogYXV0bztcbi8vICR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsO1xuLy8gJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuXG4vLyAzMS4gVGFic1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJzLW5hdmlnYXRpb24tYmctY29sb3I6ICRzaWx2ZXI7XG4vLyAkdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHdoaXRlO1xuLy8gJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTYlKTtcbi8vICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldDtcbi8vICR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWZvbnQtY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjtcbi8vICR0YWJzLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblxuLy8gJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG4vLyAkdGFicy1jb250ZW50LXBhZGRpbmc6ICgkY29sdW1uLWd1dHRlci8yKTtcblxuLy8gJHRhYnMtdmVydGljYWwtbmF2aWdhdGlvbi1tYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuXG4vLyAzMi4gVGh1bWJuYWlsc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuLy8gJHRodW1iLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkdGh1bWItYm9yZGVyLXdpZHRoOiA0cHg7XG4vLyAkdGh1bWItYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4vLyAkdGh1bWItYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLC4yKTtcbi8vICR0aHVtYi1ib3gtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLDAuNSk7XG5cbi8vIFJhZGl1cyBhbmQgdHJhbnNpdGlvbiBzcGVlZCBmb3IgdGh1bWJzXG4vLyAkdGh1bWItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICR0aHVtYi10cmFuc2l0aW9uLXNwZWVkOiAyMDBtcztcblxuLy8gMzMuIFRvb2x0aXBzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdG9vbHRpcC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vICRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGlyb247XG4vLyAkaGFzLXRpcC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yOiAkb2lsO1xuLy8gJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSk7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRoYXMtdGlwLWN1cnNvci10eXBlOiBoZWxwO1xuXG4vLyAkdG9vbHRpcC1wYWRkaW5nOiByZW0tY2FsYygxMik7XG4vLyAkdG9vbHRpcC1iZzogJG9pbDtcbi8vICR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHRvb2x0aXAtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkdG9vbHRpcC1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9vbHRpcC1saW5lLWhlaWdodDogMS4zO1xuLy8gJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygxMCk7XG4vLyAkdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICR0b29sdGlwLWNsb3NlLWZvbnQtY29sb3I6ICRtb25zb29uO1xuLy8gJHRvb2x0aXAtZm9udC1zaXplLXNtbDogcmVtLWNhbGMoMTQpO1xuLy8gJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICR0b29sdGlwLXJvdW5kZWQ6ICRnbG9iYWwtcm91bmRlZDtcbi8vICR0b29sdGlwLXBpcC1zaXplOiA1cHg7XG4vLyAkdG9vbHRpcC1tYXgtd2lkdGg6IDMwMHB4O1xuXG4vLyAzNC4gVG9wIEJhclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXRvcC1iYXItY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhclxuJHRvcGJhci1iZy1jb2xvcjogJG1haW5Db2xvckJsdWU7XG4kdG9wYmFyLWJnOiAkbWFpbkNvbG9yQmx1ZTtcblxuLy8gSGVpZ2h0IGFuZCBtYXJnaW5cbiAkdG9wYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpO1xuICR0b3BiYXItbWFyZ2luLWJvdHRvbTogMDtcblxuLy8gQ29udHJvbGxpbmcgdGhlIHN0eWxlcyBmb3IgdGhlIHRpdGxlIGluIHRoZSB0b3AgYmFyXG4kdG9wYmFyLXRpdGxlLXdlaWdodDogYm9sZDtcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cbi8vIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdlxuJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGU7XG4kdG9wYmFyLWxpbmstY29sb3ItaG92ZXI6ICR3aGl0ZTtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICRtYWluQ29sb3JCbHVlO1xuJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZS1ob3ZlcjogJGxpZ2h0X2dyZXk7XG4kdG9wYmFyLWxpbmstd2VpZ2h0OiBib2xkO1xuXG4gJHRvcGJhci1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuLy8gJHRvcGJhci1saW5rLWhvdmVyLWxpZ2h0bmVzczogLTEwJTsgLy8gRGFya2VuIGJ5IDEwJVxuJHRvcGJhci1saW5rLWJnOiAkdG9wYmFyLWJnO1xuJHRvcGJhci1saW5rLWJnLWhvdmVyOiAkbGlnaHRfZ3JleTtcbiR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjogJGxpZ2h0X2dyZXk7XG4kdG9wYmFyLWxpbmstYmctYWN0aXZlOiAkbGlnaHRfZ3JleTtcbiR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI6ICRsaWdodF9ncmV5O1xuLy8gJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiR0b3BiYXItbGluay10ZXh0LXRyYW5zZm9ybTogbm9uZTtcbi8vICR0b3BiYXItbGluay1wYWRkaW5nOiAoJHRvcGJhci1oZWlnaHQgLyAzKTtcbi8vICR0b3BiYXItYmFjay1saW5rLXNpemU6IHJlbS1jYWxjKDE4KTtcbi8vICR0b3BiYXItbGluay1kcm9wZG93bi1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU6IC43NXJlbTtcbi8vICR0b3BiYXItYnV0dG9uLXRvcDogN3B4O1xuXG5cbi8vIFN0eWxlIHRoZSB0b3AgYmFyIGRyb3Bkb3duIGVsZW1lbnRzXG5cbiR0b3BiYXItZHJvcGRvd24tYmc6IG5vbmU7XG5cbiR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjogJHdoaXRlO1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yLWhvdmVyOiAkbWFpbkNvbG9yQmx1ZTtcbi8vJHRvcGJhci1kcm9wZG93bi1saW5rLWJnOiByZ2JhKDAsMCwwLCAwLjUpO1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWJnLWhvdmVyOiAkbGlnaHRfZ3JleTtcbiR0b3BiYXItZHJvcGRvd24tbGluay13ZWlnaHQ6IGJvbGQ7XG5cbi8vICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemU6IDVweDtcbi8vICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogLjQ7XG5cbi8vICR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICRtb25zb29uO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTApO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1iZzogJG9pbDtcblxuLy8gVG9wIG1lbnUgaWNvbiBzdHlsZXNcbi8vICR0b3BiYXItbWVudS1saW5rLXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJHRvcGJhci1tZW51LWxpbmstZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkdG9wYmFyLW1lbnUtbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICR3aGl0ZTtcbi8vICR0b3BiYXItbWVudS1pY29uLWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9wYmFyLW1lbnUtbGluay1jb2xvci10b2dnbGVkOiAkanVtYm87XG4vLyAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkOiAkanVtYm87XG4vLyAkdG9wYmFyLW1lbnUtaWNvbi1wb3NpdGlvbjogJG9wcG9zaXRlLWRpcmVjdGlvbjsgLy8gQ2hhbmdlIHRvICRkZWZhdWx0LWZsb2F0IGZvciBhIGxlZnQgbWVudSBpY29uXG5cbi8vIFRyYW5zaXRpb25zIGFuZCBicmVha3BvaW50IHN0eWxlc1xuJHRvcGJhci10cmFuc2l0aW9uLXNwZWVkOiAzMDBtcztcbi8vIFVzaW5nIHJlbS1jYWxjIGZvciB0aGUgYmVsb3cgYnJlYWtwb2ludCBjYXVzZXMgaXNzdWVzIHdpdGggdG9wIGJhclxuLy8gJHRvcGJhci1icmVha3BvaW50OiAje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfTsgLy8gQ2hhbmdlIHRvIDk5OTlweCBmb3IgYWx3YXlzIG1vYmlsZSBsYXlvdXRcbi8vICR0b3BiYXItbWVkaWEtcXVlcnk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR0b3BiYXItYnJlYWtwb2ludCl9KVwiO1xuXG4vLyBUb3AtYmFyIGlucHV0IHN0eWxlc1xuLy8gJHRvcGJhci1pbnB1dC1oZWlnaHQ6IHJlbS1jYWxjKDI4KTtcblxuLy8gRGl2aWRlciBTdHlsZXNcbi8vICR0b3BiYXItZGl2aWRlci1ib3JkZXItYm90dG9tOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRvcGJhci1iZy1jb2xvciwgJGxpZ2h0bmVzczogMTMlKTtcbi8vICR0b3BiYXItZGl2aWRlci1ib3JkZXItdG9wOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRvcGJhci1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTUwJSk7XG5cbi8vIFN0aWNreSBDbGFzc1xuLy8gJHRvcGJhci1zdGlja3ktY2xhc3M6IFwiLnN0aWNreVwiO1xuICR0b3BiYXItYXJyb3dzOiBmYWxzZTsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSB0cmlhbmdsZSBpY29uIGZyb20gdGhlIG1lbnUgaXRlbVxuICR0b3BiYXItZHJvcGRvd24tYXJyb3dzOiBmYWxzZTsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSBcXDAwYmIgPj4gdGV4dCBmcm9tIGRyb3Bkb3duIHN1Ym5hdmlnYXRpb24gbGkvL1xuXG4vLyAzNi4gVmlzaWJpbGl0eSBDbGFzc2VzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdmlzaWJpbGl0eS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG4vLyAkaW5jbHVkZS1hY2Nlc3NpYmlsaXR5LWNsYXNzZXM6IHRydWU7XG4vLyAkaW5jbHVkZS10YWJsZS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWU7XG4vLyAkaW5jbHVkZS1sZWdhY3ktdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gVGhpcyBpcyB0aGUgZGVmYXVsdCBodG1sIGFuZCBib2R5IGZvbnQtc2l6ZSBmb3IgdGhlIGJhc2UgcmVtIHZhbHVlLlxuJHJlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBJTVBPUlQgT05DRVxuLy8gV2UgdXNlIHRoaXMgdG8gcHJldmVudCBzdHlsZXMgZnJvbSBiZWluZyBsb2FkZWQgbXVsdGlwbGUgdGltZXMgZm9yIGNvbXBvbmVudHMgdGhhdCByZWx5IG9uIG90aGVyIGNvbXBvbmVudHMuXG4kbW9kdWxlczogKCkgIWRlZmF1bHQ7XG5cbkBtaXhpbiBleHBvcnRzKCRuYW1lKSB7XG4gIC8vIEltcG9ydCBmcm9tIGdsb2JhbCBzY29wZVxuICAkbW9kdWxlczogJG1vZHVsZXMgIWdsb2JhbDtcbiAgLy8gQ2hlY2sgaWYgYSBtb2R1bGUgaXMgYWxyZWFkeSBvbiB0aGUgbGlzdFxuICAkbW9kdWxlX2luZGV4OiBpbmRleCgkbW9kdWxlcywgJG5hbWUpO1xuICBAaWYgKCgkbW9kdWxlX2luZGV4ID09IG51bGwpIG9yICgkbW9kdWxlX2luZGV4ID09IGZhbHNlKSkge1xuICAgICRtb2R1bGVzOiBhcHBlbmQoJG1vZHVsZXMsICRuYW1lKSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vXG4vLyBAZnVuY3Rpb25zXG4vL1xuXG5cbi8vIFJBTkdFU1xuLy8gV2UgdXNlIHRoZXNlIGZ1bmN0aW9ucyB0byBkZWZpbmUgcmFuZ2VzIGZvciB2YXJpb3VzIHRoaW5ncywgbGlrZSBtZWRpYSBxdWVyaWVzLlxuQGZ1bmN0aW9uIGxvd2VyLWJvdW5kKCRyYW5nZSkge1xuICBAaWYgbGVuZ3RoKCRyYW5nZSkgPD0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEByZXR1cm4gbnRoKCRyYW5nZSwgMSk7XG59XG5cbkBmdW5jdGlvbiB1cHBlci1ib3VuZCgkcmFuZ2UpIHtcbiAgQGlmIGxlbmd0aCgkcmFuZ2UpIDwgMiB7XG4gICAgQHJldHVybiA5OTk5OTk5OTk5OTk7XG4gIH1cbiAgQHJldHVybiBudGgoJHJhbmdlLCAyKTtcbn1cblxuLy8gU1RSSVAgVU5JVFxuLy8gSXQgc3RyaXBzIHRoZSB1bml0IG9mIG1lYXN1cmUgYW5kIHJldHVybnMgaXRcbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vIFRFWFQgSU5QVVQgVFlQRVNcblxuQGZ1bmN0aW9uIHRleHQtaW5wdXRzKCAkdHlwZXM6IGFsbCwgJHNlbGVjdG9yOiBpbnB1dCApIHtcblxuICAkcmV0dXJuOiAoKTtcblxuICAkYWxsLXRleHQtaW5wdXQtdHlwZXM6XG4gICAgdGV4dFxuICAgIHBhc3N3b3JkXG4gICAgZGF0ZVxuICAgIGRhdGV0aW1lXG4gICAgZGF0ZXRpbWUtbG9jYWxcbiAgICBtb250aFxuICAgIHdlZWtcbiAgICBlbWFpbFxuICAgIG51bWJlclxuICAgIHNlYXJjaFxuICAgIHRlbFxuICAgIHRpbWVcbiAgICB1cmxcbiAgICBjb2xvclxuICAgIHRleHRhcmVhO1xuXG4gIEBpZiAkdHlwZXMgPT0gYWxsIHsgJHR5cGVzOiAkYWxsLXRleHQtaW5wdXQtdHlwZXM7IH1cblxuICBAZWFjaCAkdHlwZSBpbiAkdHlwZXMge1xuICAgIEBpZiAkdHlwZSA9PSB0ZXh0YXJlYSB7XG4gICAgICBAaWYgJHNlbGVjdG9yID09IGlucHV0IHtcbiAgICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIHVucXVvdGUoJyN7JHR5cGV9JyksIGNvbW1hKVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCB1bnF1b3RlKCcjeyR0eXBlfSN7JHNlbGVjdG9yfScpLCBjb21tYSlcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCB1bnF1b3RlKCcjeyRzZWxlY3Rvcn1bdHlwZT1cIiN7JHR5cGV9XCJdJyksIGNvbW1hKVxuICAgIH1cbiAgfVxuXG4gICAgQHJldHVybiAkcmV0dXJuO1xuXG59XG5cbi8vIENPTlZFUlQgVE8gUkVNXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkgKiAxcmVtO1xuICBAaWYgKCR2YWx1ZSA9PSAwcmVtKSB7ICR2YWx1ZTogMDsgfSAvLyBUdXJuIDByZW0gaW50byAwXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gZGF0YSgkYXR0cikge1xuICBAaWYgJG5hbWVzcGFjZSB7XG4gICAgQHJldHVybiAnW2RhdGEtJyArICRuYW1lc3BhY2UgKyAnLScgKyAkYXR0ciArICddJztcbiAgfVxuXG4gIEByZXR1cm4gJ1tkYXRhLScgKyAkYXR0ciArICddJztcbn1cblxuLy8gUkVNIENBTENcblxuLy8gTmV3IFN5bnRheCwgYWxsb3dzIHRvIG9wdGlvbmFsbHkgY2FsY3VsYXRlIG9uIGEgZGlmZmVyZW50IGJhc2UgdmFsdWUgdG8gY291bnRlciBjb21wb3VuZGluZyBlZmZlY3Qgb2YgcmVtJ3MuXG4vLyBDYWxsIHdpdGggMSwgMiwgMyBvciA0IHBhcmFtZXRlcnMsICdweCcgaXMgbm90IHJlcXVpcmVkIGJ1dCBzdXBwb3J0ZWQ6XG4vL1xuLy8gICByZW0tY2FsYygxMCAyMCAzMHB4IDQwKTtcbi8vXG4vLyBTcGFjZSBkZWxpbWl0ZWQsIGlmIHlvdSB3YW50IHRvIGRlbGltaXQgdXNpbmcgY29tbWEncywgd3JhcCBpdCBpbiBhbm90aGVyIHBhaXIgb2YgYnJhY2tldHNcbi8vXG4vLyAgIHJlbS1jYWxjKCgxMCwgMjAsIDMwLCA0MHB4KSk7XG4vL1xuLy8gT3B0aW9uYWxseSBjYWxsIHdpdGggYSBkaWZmZXJlbnQgYmFzZSAoZWc6IDhweCkgdG8gY2FsY3VsYXRlIHJlbS5cbi8vXG4vLyAgIHJlbS1jYWxjKDE2cHggMzJweCA0OHB4LCA4cHgpO1xuLy9cbi8vIElmIHlvdSByZXF1aXJlIHRvIGNvbW1hIHNlcGFyYXRlIHlvdXIgbGlzdFxuLy9cbi8vICAgcmVtLWNhbGMoKDE2cHgsIDMycHgsIDQ4KSwgOHB4KTtcblxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgJG1heDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XG5cbiAgJHJlbVZhbHVlczogKCk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG4gICAgJHJlbVZhbHVlczogYXBwZW5kKCRyZW1WYWx1ZXMsIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlLXZhbHVlKSk7XG4gIH1cbiAgQHJldHVybiAkcmVtVmFsdWVzO1xufVxuXG4vLyBPTEQgRU0gQ0FMQ1xuLy8gRGVwcmVjYXRlZDogV2UnbGwgZHJvcCBzdXBwb3J0IGZvciB0aGlzIGluIDUuMS4wLCB1c2UgcmVtLWNhbGMoKVxuQGZ1bmN0aW9uIGVtQ2FsYygkdmFsdWVzKSB7XG4gIEByZXR1cm4gcmVtLWNhbGMoJHZhbHVlcyk7XG59XG5cbi8vIE9MRCBFTSBDQUxDXG4vLyBEZXByZWNhdGVkOiBXZSdsbCBkcm9wIHN1cHBvcnQgZm9yIHRoaXMgaW4gNS4xLjAsIHVzZSByZW0tY2FsYygpXG5AZnVuY3Rpb24gZW0tY2FsYygkdmFsdWVzKSB7XG4gIEByZXR1cm4gcmVtLWNhbGMoJHZhbHVlcyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG4kaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2UgIWRlZmF1bHQ7XG5cbiRyb3ctd2lkdGg6IHJlbS1jYWxjKDEwMDApICFkZWZhdWx0O1xuJHRvdGFsLWNvbHVtbnM6IDEyICFkZWZhdWx0O1xuXG4kbGFzdC1jaGlsZC1mbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbiAhZGVmYXVsdDtcblxuLy9cbi8vIEdyaWQgRnVuY3Rpb25zXG4vL1xuXG4vLyBEZXByZWNhdGVkOiBXZSdsbCBkcm9wIHN1cHBvcnQgZm9yIHRoaXMgaW4gNS4xLCB1c2UgZ3JpZC1jYWxjKClcbkBmdW5jdGlvbiBncmlkQ2FsYygkY29sTnVtYmVyLCAkdG90YWxDb2x1bW5zKSB7XG4gIEB3YXJuIFwiZ3JpZENhbGMoKSBpcyBkZXByZWNhdGVkLCB1c2UgZ3JpZC1jYWxjKClcIjtcbiAgQHJldHVybiBncmlkLWNhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucyk7XG59XG5cbi8vIEBGVU5DVElPTlxuLy8gJGNvbE51bWJlciAtIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcbi8vICR0b3RhbENvbHVtbnMgLSBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXG5AZnVuY3Rpb24gZ3JpZC1jYWxjKCRjb2xOdW1iZXIsICR0b3RhbENvbHVtbnMpIHtcbiAgJHJlc3VsdDogcGVyY2VudGFnZSgoJGNvbE51bWJlciAvICR0b3RhbENvbHVtbnMpKTtcbiAgQGlmICRyZXN1bHQgPT0gMCUgeyAkcmVzdWx0OiAwOyB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIEZvciBjcmVhdGluZyBjb250YWluZXIsIG5lc3RlZCwgYW5kIGNvbGxhcHNlZCByb3dzLlxuLy9cbi8vXG4vLyAkYmVoYXZpb3IgLSBBbnkgc3BlY2lhbCBiZWhhdmlvciBmb3IgdGhpcyByb3c/IERlZmF1bHQ6IGZhbHNlLiBPcHRpb25zOiBuZXN0LCBjb2xsYXBzZSwgbmVzdC1jb2xsYXBzZSwgZmFsc2UuXG5AbWl4aW4gZ3JpZC1yb3coJGJlaGF2aW9yOiBmYWxzZSkge1xuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTsgdG8gaW5jbHVkZSBhIG5lc3RlZCByb3dcbiAgQGlmICRiZWhhdmlvciA9PSBuZXN0IHtcbiAgICBtYXJnaW46IDAgKC0oJGNvbHVtbi1ndXR0ZXIvMikpO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhjb2xsYXBzZSk7IHRvIGNvbGxhcHNlZCBhIGNvbnRhaW5lciByb3cgbWFyZ2luc1xuICBAZWxzZSBpZiAkYmVoYXZpb3IgPT0gY29sbGFwc2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyB1c2UgQGluY2x1ZGUgZ3JpZC1yb3cobmVzdC1jb2xsYXBzZSk7IHRvIGNvbGxhcHNlIG91dGVyIG1hcmdpbnMgb24gYSBuZXN0ZWQgcm93XG4gIEBlbHNlIGlmICRiZWhhdmlvciA9PSBuZXN0LWNvbGxhcHNlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gdXNlIEBpbmNsdWRlIGdyaWQtcm93OyB0byB1c2UgYSBjb250YWluZXIgcm93XG4gIEBlbHNlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhcmZpeCBmb3IgYWxsIHJvd3NcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLy8gQ3JlYXRlcyBhIGNvbHVtbiwgc2hvdWxkIGJlIHVzZWQgaW5zaWRlIG9mIGEgbWVkaWEgcXVlcnkgdG8gY29udHJvbCBsYXlvdXRzXG4vL1xuLy8gJGNvbHVtbnMgLSBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhpcyBzaG91bGQgYmVcbi8vICRsYXN0LWNvbHVtbiAtIElzIHRoaXMgdGhlIGxhc3QgY29sdW1uPyBEZWZhdWx0OiBmYWxzZS5cbi8vICRjZW50ZXIgLSBDZW50ZXIgdGhlc2UgY29sdW1ucz8gRGVmYXVsdDogZmFsc2UuXG4vLyAkb2Zmc2V0IC0gIyBvZiBjb2x1bW5zIHRvIG9mZnNldC4gRGVmYXVsdDogZmFsc2UuXG4vLyAkcHVzaCAtICMgb2YgY29sdW1ucyB0byBwdXNoLiBEZWZhdWx0OiBmYWxzZS5cbi8vICRwdWxsIC0gIyBvZiBjb2x1bW5zIHRvIHB1bGwuIERlZmF1bHQ6IGZhbHNlLlxuLy8gJGNvbGxhcHNlIC0gR2V0IHJpZCBvZiBndXR0ZXIgcGFkZGluZyBvbiBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxuLy8gJGZsb2F0IC0gU2hvdWxkIHRoaXMgZmxvYXQ/IERlZmF1bHQ6IHRydWUuIE9wdGlvbnM6IHRydWUsIGZhbHNlLCBsZWZ0LCByaWdodC5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ZmFsc2UsXG4gICRsYXN0LWNvbHVtbjpmYWxzZSxcbiAgJGNlbnRlcjpmYWxzZSxcbiAgJG9mZnNldDpmYWxzZSxcbiAgJHB1c2g6ZmFsc2UsXG4gICRwdWxsOmZhbHNlLFxuICAkY29sbGFwc2U6ZmFsc2UsXG4gICRmbG9hdDp0cnVlLFxuICAkcG9zaXRpb246ZmFsc2UpIHtcblxuICAvLyBJZiBwb3NpdGlvbmVkIGZvciBkZWZhdWx0IC5jb2x1bW4sIGluY2x1ZGUgcmVsYXRpdmUgcG9zaXRpb25cbiAgLy8gcHVzaCBhbmQgcHVsbCByZXF1aXJlIHBvc2l0aW9uIHNldFxuICBAaWYgJHBvc2l0aW9uIG9yICRwdXNoIG9yICRwdWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBJZiBjb2xsYXBzZWQsIGdldCByaWQgb2YgZ3V0dGVyIHBhZGRpbmdcbiAgQGlmICRjb2xsYXBzZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBHdXR0ZXIgcGFkZGluZyB3aGVuZXZlciBhIGNvbHVtbiBpc24ndCBzZXQgdG8gY29sbGFwc2VcbiAgLy8gKHVzZSAkY29sbGFwc2U6bnVsbCB0byBkbyBub3RoaW5nKVxuICBAZWxzZSBpZiAkY29sbGFwc2UgPT0gZmFsc2Uge1xuICAgIHBhZGRpbmctbGVmdDogKCRjb2x1bW4tZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogKCRjb2x1bW4tZ3V0dGVyIC8gMik7XG4gIH1cblxuICAvLyBJZiBhIGNvbHVtbiBudW1iZXIgaXMgZ2l2ZW4sIGNhbGN1bGF0ZSB3aWR0aFxuICBAaWYgJGNvbHVtbnMge1xuICAgIHdpZHRoOiBncmlkLWNhbGMoJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zKTtcblxuICAgIC8vIElmIGxhc3QgY29sdW1uLCBmbG9hdCBuYXR1cmFsbHkgaW5zdGVhZCBvZiB0byB0aGUgcmlnaHRcbiAgICBAaWYgJGxhc3QtY29sdW1uIHsgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247IH1cbiAgfVxuXG4gIC8vIFNvdXJjZSBPcmRlcmluZywgYWRkcyBsZWZ0L3JpZ2h0IGRlcGVuZGluZyBvbiB3aGljaCB5b3UgdXNlLlxuICBAaWYgJHB1c2ggeyAjeyRkZWZhdWx0LWZsb2F0fTogZ3JpZC1jYWxjKCRwdXNoLCAkdG90YWwtY29sdW1ucyk7ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87IH1cbiAgQGlmICRwdWxsIHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogZ3JpZC1jYWxjKCRwdWxsLCAkdG90YWwtY29sdW1ucyk7ICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvOyB9XG5cbiAgQGlmICRmbG9hdCB7XG4gICAgQGlmICRmbG9hdCA9PSBsZWZ0IG9yICRmbG9hdCA9PSB0cnVlIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XG4gICAgQGVsc2UgaWYgJGZsb2F0ID09IHJpZ2h0IHsgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247IH1cbiAgICBAZWxzZSB7IGZsb2F0OiBub25lOyB9XG4gIH1cblxuICAvLyBJZiBjZW50ZXJlZCwgZ2V0IHJpZCBvZiBmbG9hdCBhbmQgYWRkIGFwcHJvcHJpYXRlIG1hcmdpbnNcbiAgQGlmICRjZW50ZXIge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIElmIG9mZnNldCwgY2FsY3VsYXRlIGFwcHJvcHJpYXRlIG1hcmdpbnNcbiAgQGlmICRvZmZzZXQgeyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IGdyaWQtY2FsYygkb2Zmc2V0LCAkdG90YWwtY29sdW1ucykgIWltcG9ydGFudDsgfVxuXG59XG5cbi8vIENyZWF0ZSBwcmVzZW50YXRpb25hbCBjbGFzc2VzIGZvciBncmlkXG4vL1xuLy8gJHNpemUgLSBOYW1lIG9mIGNsYXNzIHRvIHVzZSwgaS5lLiBcImxhcmdlXCIgd2lsbCBnZW5lcmF0ZSAubGFyZ2UtMSwgLmxhcmdlLTIsIGV0Yy5cbkBtaXhpbiBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZSkge1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMgLSAxIHtcbiAgICAuI3skc2l6ZX0tcHVzaC0jeyRpfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgfVxuICAgIC4jeyRzaXplfS1wdWxsLSN7JGl9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAuY29sdW1uLFxuICAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOmZhbHNlLCAkcG9zaXRpb246dHJ1ZSk7IH1cblxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMge1xuICAgIC4jeyRzaXplfS0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xuICAgIC4jeyRzaXplfS1vZmZzZXQtI3skaX0geyBAaW5jbHVkZSBncmlkLWNvbHVtbigkb2Zmc2V0OiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxuICB9XG5cbiAgLiN7JHNpemV9LXJlc2V0LW9yZGVyIHtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkLFxuICAuY29sdW1ucy4jeyRzaXplfS1jZW50ZXJlZCB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjZW50ZXI6dHJ1ZSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7IH1cblxuICAuY29sdW1uLiN7JHNpemV9LXVuY2VudGVyZWQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQge1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cblxuICAvLyBGaWdodGluZyBbY2xhc3MqPVwiY29sdW1uXCJdICsgW2NsYXNzKj1cImNvbHVtblwiXTpsYXN0LWNoaWxkXG4gIC5jb2x1bW4uI3skc2l6ZX0tY2VudGVyZWQ6bGFzdC1jaGlsZCxcbiAgLmNvbHVtbnMuI3skc2l6ZX0tY2VudGVyZWQ6bGFzdC1jaGlsZHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ2h0aW5nIC5jb2x1bW4uPHByZXZpb3VzLXNpemU+LWNlbnRlcmVkOmxhc3QtY2hpbGRcbiAgLmNvbHVtbi4jeyRzaXplfS11bmNlbnRlcmVkOmxhc3QtY2hpbGQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICB9XG5cbiAgLmNvbHVtbi4jeyRzaXplfS11bmNlbnRlcmVkLm9wcG9zaXRlLFxuICAuY29sdW1ucy4jeyRzaXplfS11bmNlbnRlcmVkLm9wcG9zaXRlIHtcbiAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgfVxuXG5cdC5yb3cge1xuXHRcdCYuI3skc2l6ZX0tY29sbGFwc2Uge1xuXHRcdFx0PiAuY29sdW1uLFxuXHRcdFx0PiAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2xsYXBzZTp0cnVlLCAkZmxvYXQ6ZmFsc2UpOyB9XG5cblx0XHRcdC5yb3cge21hcmdpbi1sZWZ0OjA7IG1hcmdpbi1yaWdodDowO31cblx0XHR9XG5cdFx0Ji4jeyRzaXplfS11bmNvbGxhcHNlIHtcblx0XHRcdD4gLmNvbHVtbixcblx0XHRcdD4gLmNvbHVtbnMge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImdyaWRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXMge1xuICAgIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAgICYuY29sbGFwc2Uge1xuICAgICAgICAgPiAuY29sdW1uLFxuICAgICAgICAgPiAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2xsYXBzZTp0cnVlLCAkZmxvYXQ6ZmFsc2UpOyB9XG5cbiAgICAgICAgLnJvdyB7bWFyZ2luLWxlZnQ6MDsgbWFyZ2luLXJpZ2h0OjA7fVxuICAgICAgfVxuXG4gICAgICAucm93IHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOm5lc3QpO1xuICAgICAgICAmLmNvbGxhcHNlIHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOm5lc3QtY29sbGFwc2UpOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbHVtbixcbiAgICAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOiR0b3RhbC1jb2x1bW5zKTsgfVxuXG4gICAgW2NsYXNzKj1cImNvbHVtblwiXSArIFtjbGFzcyo9XCJjb2x1bW5cIl06bGFzdC1jaGlsZCB7IGZsb2F0OiAkbGFzdC1jaGlsZC1mbG9hdDsgfVxuICAgIFtjbGFzcyo9XCJjb2x1bW5cIl0gKyBbY2xhc3MqPVwiY29sdW1uXCJdLmVuZCB7IGZsb2F0OiAkZGVmYXVsdC1mbG9hdDsgfVxuXG4gICAgQG1lZGlhICN7JHNtYWxsLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpzbWFsbCk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6bWVkaXVtKTtcbiAgICAgIC8vIE9sZCBwdXNoIGFuZCBwdWxsIGNsYXNzZXNcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMgLSAxIHtcbiAgICAgICAgLnB1c2gtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdXNoOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICAucHVsbC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1bGw6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6bGFyZ2UpO1xuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xuICAgICAgICAucHVzaC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1c2g6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIC5wdWxsLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVsbDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRpbmNsdWRlLXhsLWh0bWwtZ3JpZC1jbGFzc2VzIHtcbiAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTp4bGFyZ2UpO1xuICAgIH1cbiAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eHhsYXJnZSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBCVUdGSVg6IEltcG9ydCBleGlzdGllcnQgbmljaHRcbi8vIEBpbXBvcnQgJy4uL19mdW5jdGlvbnMnO1xuLy9cbi8vIEZvdW5kYXRpb24gVmFyaWFibGVzXG4vL1xuXG4vLyBEYXRhIGF0dHJpYnV0ZSBuYW1lc3BhY2Vcbi8vIHN0eWxlcyBnZXQgYXBwbGllZCB0byBbZGF0YS1teXNpdGUtcGx1Z2luXSwgZXRjXG4kbmFtZXNwYWNlOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgZm9udC1zaXplIGlzIHNldCB0byAxMDAlIG9mIHRoZSBicm93c2VyIHN0eWxlIHNoZWV0ICh1c3VhbGx5IDE2cHgpXG4vLyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGJyb3dzZXItYmFzZWQgdGV4dCB6b29tIG9yIHVzZXItc2V0IGRlZmF1bHRzLlxuXG4vLyBTaW5jZSB0aGUgdHlwaWNhbCBkZWZhdWx0IGJyb3dzZXIgZm9udC1zaXplIGlzIDE2cHgsIHRoYXQgbWFrZXMgdGhlIGNhbGN1bGF0aW9uIGZvciBncmlkIHNpemUuXG4vLyBJZiB5b3Ugd2FudCB5b3VyIGJhc2UgZm9udC1zaXplIHRvIGJlIGRpZmZlcmVudCBhbmQgbm90IGhhdmUgaXQgYWZmZWN0IHRoZSBncmlkIGJyZWFrcG9pbnRzLFxuLy8gc2V0ICRyZW0tYmFzZSB0byAkYmFzZS1mb250LXNpemUgYW5kIG1ha2Ugc3VyZSAkYmFzZS1mb250LXNpemUgaXMgYSBweCB2YWx1ZS5cbiRiYXNlLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8gJGJhc2UtbGluZS1oZWlnaHQgaXMgMjRweCB3aGlsZSAkYmFzZS1mb250LXNpemUgaXMgMTZweFxuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy9cbi8vIEdsb2JhbCBGb3VuZGF0aW9uIE1peGluc1xuLy9cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYm9yZGVyIHJhZGl1cy5cbi8vICRyYWRpdXMgLSBEZWZhdWx0OiAkZ2xvYmFsLXJhZGl1cyB8fCA0cHhcbkBtaXhpbiByYWRpdXMoJHJhZGl1czokZ2xvYmFsLXJhZGl1cykge1xuICBAaWYgJHJhZGl1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIGVxdWFsIHNpZGUgYm9yZGVyIHJhZGl1cyBvbiBlbGVtZW50cy5cbi8vICRzaWRlIC0gT3B0aW9uczogbGVmdCwgcmlnaHQsIHRvcCwgYm90dG9tXG5AbWl4aW4gc2lkZS1yYWRpdXMoJHNpZGUsICRyYWRpdXM6JGdsb2JhbC1yYWRpdXMpIHtcbiAgQGlmICgkc2lkZSA9PSBsZWZ0IG9yICRzaWRlID09IHJpZ2h0KSB7XG4gICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgICAtd2Via2l0LWJvcmRlci10b3AtI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci10b3AtI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xuICB9IEBlbHNlIHtcbiAgICAtd2Via2l0LSN7JHNpZGV9LWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIC13ZWJraXQtI3skc2lkZX0tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci0jeyRzaWRlfS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItI3skc2lkZX0tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB3ZSBoYXZlIGluc2V0IHNoYWRvd3MgZWRnZXMuXG4vLyAkYWN0aXZlIC0gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2VcbkBtaXhpbiBpbnNldC1zaGFkb3coJGFjdGl2ZTp0cnVlKSB7XG4gIGJveC1zaGFkb3c6ICRzaGlueS1lZGdlLXNpemUgJHNoaW55LWVkZ2UtY29sb3IgaW5zZXQ7XG5cbiAgQGlmICRhY3RpdmUgeyAmOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogJHNoaW55LWVkZ2Utc2l6ZSAkc2hpbnktZWRnZS1hY3RpdmUtY29sb3IgaW5zZXQ7IH0gfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIHRyYW5zaXRpb25zIHRvIGVsZW1lbnRzXG4vLyAkcHJvcGVydHkgLSBEZWZhdWx0OiBhbGwsIE9wdGlvbnM6IGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtdHJhbnNpdGlvbnMvI2FuaW1hdGFibGUtcHJvcGVydGllc1xuLy8gJHNwZWVkIC0gRGVmYXVsdDogMzAwbXNcbi8vICRlYXNlIC0gRGVmYXVsdDplYXNlLW91dCwgT3B0aW9uczogaHR0cDovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvcHJvcGVydGllcy90L3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uL1xuQG1peGluIHNpbmdsZS10cmFuc2l0aW9uKCRwcm9wZXJ0eTphbGwsICRzcGVlZDozMDBtcywgJGVhc2U6ZWFzZS1vdXQpIHtcbiAgdHJhbnNpdGlvbjogJHByb3BlcnR5ICRzcGVlZCAkZWFzZTtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBib3gtc2l6aW5nIGFjcm9zcyBicm93c2VyIHByZWZpeGVzXG5AbWl4aW4gYm94LXNpemluZygkdHlwZTpib3JkZXItYm94KSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJHR5cGU7IC8vIEFuZHJvaWQgPCAyLjMsIGlPUyA8IDRcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkdHlwZTtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkdHlwZTsgLy8gQ2hyb21lLCBJRSA4KywgT3BlcmEsIFNhZmFyaSA1LjFcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBpc29zY2VsZXMgdHJpYW5nbGVzXG4vLyAkdHJpYW5nbGUtc2l6ZSAtIFVzZWQgdG8gc2V0IGJvcmRlci1zaXplLiBObyBkZWZhdWx0LCBzZXQgYSBweCBvciBlbSBzaXplLlxuLy8gJHRyaWFuZ2xlLWNvbG9yIC0gVXNlZCB0byBzZXQgYm9yZGVyLWNvbG9yIHdoaWNoIG1ha2VzIHVwIHRyaWFuZ2xlLiBObyBkZWZhdWx0XG4vLyAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gVXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggZGlyZWN0aW9uIHRyaWFuZ2xlIHBvaW50cy4gT3B0aW9uczogdG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0XG5AbWl4aW4gY3NzLXRyaWFuZ2xlKCR0cmlhbmdsZS1zaXplLCAkdHJpYW5nbGUtY29sb3IsICR0cmlhbmdsZS1kaXJlY3Rpb24pIHtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB0b3ApIHtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gYm90dG9tKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIHRoZSBpY29uIHdpdGggdGhyZWUgbGluZXMgYWthIHRoZSBoYW1idXJnZXIgaWNvbiwgdGhlIG1lbnUtaWNvbiBvciB0aGUgbmF2aWNvblxuLy8gJHdpZHRoIC0gV2lkdGggb2YgaGFtYnVyZ2VyIGljb24gaW4gcmVtXG4vLyAkbGVmdCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgaG9yaXpvbnRhbGx5IHx8IGV4cGxpY2l0bHkgc2V0IHZhbHVlIGluIHJlbVxuLy8gJHRvcCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgdmVydGljYWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cbi8vICR0aGlja25lc3MgLSB0aGlja25lc3Mgb2YgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweFxuLy8gJGdhcCAtIHNwYWNpbmcgYmV0d2VlbiB0aGUgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweFxuLy8gJGNvbG9yIC0gaWNvbiBjb2xvclxuLy8gJGhvdmVyLWNvbG9yIC0gaWNvbiBjb2xvciBkdXJpbmcgaG92ZXJcbi8vICRvZmZjYW52YXMgLSBTZXQgdG8gdHJ1ZSBvZiBAaW5jbHVkZSBpbiBvZmZjYW52YXNcbkBtaXhpbiBoYW1idXJnZXIoJHdpZHRoLCAkbGVmdCwgJHRvcCwgJHRoaWNrbmVzcywgJGdhcCwgJGNvbG9yLCAkaG92ZXItY29sb3IsICRvZmZjYW52YXMpIHtcbiAgc3Bhbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgIEBpZiAkb2ZmY2FudmFzIHtcbiAgICAgIEBpZiAkdG9wIHtcbiAgICAgICAgdG9wOiAkdG9wO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kd2lkdGgvMik7XG4gICAgICB9XG4gICAgICBAaWYgJGxlZnQge1xuICAgICAgICBsZWZ0OiAkbGVmdDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogKCR0YWJiYXItbWVudS1pY29uLXdpZHRoIC0gJHdpZHRoKS8yO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtKCR3aWR0aC8yKTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwICR0aGlja25lc3MgJGNvbG9yLFxuICAgICAgMCAkZ2FwICsgJHRoaWNrbmVzcyAwICR0aGlja25lc3MgJGNvbG9yLFxuICAgICAgMCAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgJHRoaWNrbmVzcyAkY29sb3I7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfVxuICBzcGFuOmhvdmVyOmFmdGVyIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgMCAwIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3IsXG4gICAgICAwICRnYXAgKyAkdGhpY2tuZXNzIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3IsXG4gICAgICAwICgyICogJGdhcCArIDIqJHRoaWNrbmVzcykgMCAkdGhpY2tuZXNzICRob3Zlci1jb2xvcjtcbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBkbyBjbGVhciBmbG9hdHNcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6YmVmb3JlLCAmOmFmdGVyIHsgY29udGVudDogXCIgXCI7IGRpc3BsYXk6IHRhYmxlOyB9XG4gICY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIGEgZ2xvd2luZyBlZmZlY3QgdG8gYmxvY2sgZWxlbWVudHNcbi8vICRzZWxlY3RvciAtIFVzZWQgZm9yIHNlbGVjdG9yIHN0YXRlLiBEZWZhdWx0OiBmb2N1cywgT3B0aW9uczogaG92ZXIsIGFjdGl2ZSwgdmlzaXRlZFxuLy8gJGZhZGUtdGltZSAtIERlZmF1bHQ6IDMwMG1zXG4vLyAkZ2xvd2luZy1lZmZlY3QtY29sb3IgLSBEZWZhdWx0OiBmYWRlLW91dCgkcHJpbWFyeS1jb2xvciwgLjI1KVxuQG1peGluIGJsb2NrLWdsb3dpbmctZWZmZWN0KCRzZWxlY3Rvcjpmb2N1cywgJGZhZGUtdGltZTozMDBtcywgJGdsb3dpbmctZWZmZWN0LWNvbG9yOmZhZGUtb3V0KCRwcmltYXJ5LWNvbG9yLCAuMjUpKSB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGZhZGUtdGltZSwgYm9yZGVyLWNvbG9yICRmYWRlLXRpbWUgZWFzZS1pbi1vdXQ7XG5cbiAgJjojeyRzZWxlY3Rvcn0ge1xuICAgIGJvcmRlci1jb2xvcjogJGdsb3dpbmctZWZmZWN0LWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggJGdsb3dpbmctZWZmZWN0LWNvbG9yO1xuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byB0cmFuc2xhdGUgZWxlbWVudHMgaW4gMkRcbi8vICRob3Jpem9udGFsOiBEZWZhdWx0OiAwXG4vLyAkdmVydGljYWw6IERlZmF1bHQ6IDBcbkBtaXhpbiB0cmFuc2xhdGUyZCgkaG9yaXpvbnRhbDowLCAkdmVydGljYWw6MCkge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkaG9yaXpvbnRhbCwgJHZlcnRpY2FsKVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBhY2Nlc3NpYmxlLlxuLy8gQHNlZSBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFR1cm5zIG9mZiB0aGUgZWxlbWVudC1pbnZpc2libGUgZWZmZWN0LlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbiR3aGl0ZSAgICAgICAgIDogI0ZGRkZGRiAhZGVmYXVsdDtcbiRnaG9zdCAgICAgICAgIDogI0ZBRkFGQSAhZGVmYXVsdDtcbiRzbm93ICAgICAgICAgIDogI0Y5RjlGOSAhZGVmYXVsdDtcbiR2YXBvciAgICAgICAgIDogI0Y2RjZGNiAhZGVmYXVsdDtcbiR3aGl0ZS1zbW9rZSAgIDogI0Y1RjVGNSAhZGVmYXVsdDtcbiRzaWx2ZXIgICAgICAgIDogI0VGRUZFRiAhZGVmYXVsdDtcbiRzbW9rZSAgICAgICAgIDogI0VFRUVFRSAhZGVmYXVsdDtcbiRnYWluc2Jvcm8gICAgIDogI0RERERERCAhZGVmYXVsdDtcbiRpcm9uICAgICAgICAgIDogI0NDQ0NDQyAhZGVmYXVsdDtcbiRiYXNlICAgICAgICAgIDogI0FBQUFBQSAhZGVmYXVsdDtcbiRhbHVtaW51bSAgICAgIDogIzk5OTk5OSAhZGVmYXVsdDtcbiRqdW1ibyAgICAgICAgIDogIzg4ODg4OCAhZGVmYXVsdDtcbiRtb25zb29uICAgICAgIDogIzc3Nzc3NyAhZGVmYXVsdDtcbiRzdGVlbCAgICAgICAgIDogIzY2NjY2NiAhZGVmYXVsdDtcbiRjaGFyY29hbCAgICAgIDogIzU1NTU1NSAhZGVmYXVsdDtcbiR0dWF0YXJhICAgICAgIDogIzQ0NDQ0NCAhZGVmYXVsdDtcbiRvaWwgICAgICAgICAgIDogIzMzMzMzMyAhZGVmYXVsdDtcbiRqZXQgICAgICAgICAgIDogIzIyMjIyMiAhZGVmYXVsdDtcbiRibGFjayAgICAgICAgIDogIzAwMDAwMCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIGFzIGRlZmF1bHQgY29sb3JzIHRocm91Z2hvdXRcbiRwcmltYXJ5LWNvbG9yOiAjMDA4Q0JBICFkZWZhdWx0OyAgIC8vIGJvbmRpLWJsdWVcbiRzZWNvbmRhcnktY29sb3I6ICNlN2U3ZTcgIWRlZmF1bHQ7IC8vIHdoaXRlLWxpbGFjXG4kYWxlcnQtY29sb3I6ICNmMDQxMjQgIWRlZmF1bHQ7ICAgICAvLyBjaW5uYWJhclxuJHN1Y2Nlc3MtY29sb3I6ICM0M0FDNkEgIWRlZmF1bHQ7ICAgLy8gc2VhLWdyZWVuXG4kd2FybmluZy1jb2xvcjogI2YwOGEyNCAhZGVmYXVsdDsgICAvLyBjYXJyb3RcbiRpbmZvLWNvbG9yOiAjYTBkM2U4ICFkZWZhdWx0OyAgICAgIC8vIGNvcm5mbG93ZXJcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGRlZmluZSBkZWZhdWx0IGZvbnQgc3RhY2tzXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6IEdlb3JnaWEsIENhbWJyaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBkZWZpbmUgZGVmYXVsdCBmb250IHdlaWdodHNcbiRmb250LXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGdsb2JhbCBzdHlsZXNcbiRib2R5LWJnOiAjZmZmICFkZWZhdWx0O1xuJGJvZHktZm9udC1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJvZHktZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGZvbnQtc21vb3RoaW5nXG4kZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0ZXh0IGRpcmVjdGlvbiBzZXR0aW5nc1xuJHRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG4kZGVmYXVsdC1mbG9hdDogbGVmdCAhZGVmYXVsdDtcbiRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0ICFkZWZhdWx0O1xuQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBsdHIge1xuICAkZGVmYXVsdC1mbG9hdDogbGVmdDtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQ7XG59IEBlbHNlIHtcbiAgJGRlZmF1bHQtZmxvYXQ6IHJpZ2h0O1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBsZWZ0O1xufVxuXG4vLyBXZSB1c2UgdGhlc2UgdG8gbWFrZSBzdXJlIGJvcmRlciByYWRpdXMgbWF0Y2hlcyB1bmxlc3Mgd2Ugd2FudCBpdCBkaWZmZXJlbnQuXG4kZ2xvYmFsLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJGdsb2JhbC1yb3VuZGVkOiAxMDAwcHggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGluc2V0IHNoYWRvdyBzaGlueSBlZGdlcyBhbmQgZGVwcmVzc2lvbnMuXG4kc2hpbnktZWRnZS1zaXplOiAwIDFweCAwICFkZWZhdWx0O1xuJHNoaW55LWVkZ2UtY29sb3I6IHJnYmEoI2ZmZiwgLjUpICFkZWZhdWx0O1xuJHNoaW55LWVkZ2UtYWN0aXZlLWNvbG9yOiByZ2JhKCMwMDAsIC4yKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB3aGV0aGVyIG9yIG5vdCBDU1MgY2xhc3NlcyBjb21lIHRocm91Z2ggaW4gdGhlIGdlbSBmaWxlcy5cbiRpbmNsdWRlLWh0bWwtY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcbiRpbmNsdWRlLXByaW50LXN0eWxlczogdHJ1ZSAhZGVmYXVsdDtcbiRpbmNsdWRlLWh0bWwtZ2xvYmFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcblxuLy8gTWVkaWEgUXVlcnkgUmFuZ2VzXG4kc21hbGwtcmFuZ2U6ICgwLCA0MGVtKSAhZGVmYXVsdDtcbiRtZWRpdW0tcmFuZ2U6ICg0MC4wNjI1ZW0sIDY0ZW0pICFkZWZhdWx0O1xuJGxhcmdlLXJhbmdlOiAoNjQuMDYyNWVtLCA5MGVtKSAhZGVmYXVsdDtcbiR4bGFyZ2UtcmFuZ2U6ICg5MC4wNjI1ZW0sIDEyMGVtKSAhZGVmYXVsdDtcbiR4eGxhcmdlLXJhbmdlOiAoMTIwLjA2MjVlbSwgOTk5OTk5OTllbSkgIWRlZmF1bHQ7XG5cblxuJHNjcmVlbjogXCJvbmx5IHNjcmVlblwiICFkZWZhdWx0O1xuXG4kbGFuZHNjYXBlOiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiICFkZWZhdWx0O1xuJHBvcnRyYWl0OiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXCIgIWRlZmF1bHQ7XG5cbiRzbWFsbC11cDogJHNjcmVlbiAhZGVmYXVsdDtcbiRzbWFsbC1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtYXgtd2lkdGg6ICN7dXBwZXItYm91bmQoJHNtYWxsLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiRtZWRpdW0tdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIiAhZGVmYXVsdDtcbiRtZWRpdW0tb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuJGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcbiRsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuJHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuJHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4keHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcbiR4eGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuLy8gTGVnYWN5XG4kc21hbGw6ICRtZWRpdW0tdXA7XG4kbWVkaXVtOiAkbWVkaXVtLXVwO1xuJGxhcmdlOiAkbGFyZ2UtdXA7XG5cblxuLy9XZSB1c2UgdGhpcyBhcyBjdXJzb3JzIHZhbHVlcyBmb3IgZW5hYmxpbmcgdGhlIG9wdGlvbiBvZiBoYXZpbmcgY3VzdG9tIGN1cnNvcnMgaW4gdGhlIHdob2xlIHNpdGUncyBzdHlsZXNoZWV0XG4kY3Vyc29yLWF1dG8tdmFsdWU6IGF1dG8gIWRlZmF1bHQ7XG4kY3Vyc29yLWNyb3NzaGFpci12YWx1ZTogY3Jvc3NoYWlyICFkZWZhdWx0O1xuJGN1cnNvci1kZWZhdWx0LXZhbHVlOiBkZWZhdWx0ICFkZWZhdWx0O1xuJGN1cnNvci1kaXNhYmxlZC12YWx1ZTogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG4kY3Vyc29yLXBvaW50ZXItdmFsdWU6IHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3Vyc29yLWhlbHAtdmFsdWU6IGhlbHAgIWRlZmF1bHQ7XG4kY3Vyc29yLXRleHQtdmFsdWU6IHRleHQgIWRlZmF1bHQ7XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcImdsb2JhbFwiKSB7XG5cbiAgLy8gTWV0YSBzdHlsZXMgYXJlIGluY2x1ZGVkIGluIGFsbCBidWlsZHMsIGFzIHRoZXkgYXJlIGEgZGVwZW5kYW5jeSBvZiB0aGUgSmF2YXNjcmlwdC5cbiAgLy8gVXNlZCB0byBwcm92aWRlIG1lZGlhIHF1ZXJ5IHZhbHVlcyBmb3IgamF2YXNjcmlwdCBjb21wb25lbnRzLlxuICAvLyBGb3J3YXJkIHNsYXNoIHBsYWNlZCBhcm91bmQgZXZlcnl0aGluZyB0byBjb252aW5jZSBQaGFudG9tSlMgdG8gcmVhZCB0aGUgdmFsdWUuXG5cbiAgbWV0YS5mb3VuZGF0aW9uLXZlcnNpb24ge1xuICAgIGZvbnQtZmFtaWx5OiBcIi97e1ZFUlNJT059fS9cIjtcbiAgfVxuXG4gIG1ldGEuZm91bmRhdGlvbi1tcS1zbWFsbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkc21hbGwtdXApICsgXCIvXCI7XG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRzbWFsbC1yYW5nZSk7XG4gIH1cblxuICBtZXRhLmZvdW5kYXRpb24tbXEtc21hbGwtb25seSB7XG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkc21hbGwtb25seSkgKyBcIi9cIjtcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJHNtYWxsLXJhbmdlKTtcbiAgfVxuXG4gIG1ldGEuZm91bmRhdGlvbi1tcS1tZWRpdW0ge1xuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJG1lZGl1bS11cCkgKyBcIi9cIjtcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSk7XG4gIH1cblxuICBtZXRhLmZvdW5kYXRpb24tbXEtbWVkaXVtLW9ubHkge1xuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJG1lZGl1bS1vbmx5KSArIFwiL1wiO1xuICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKTtcbiAgfVxuXG4gIG1ldGEuZm91bmRhdGlvbi1tcS1sYXJnZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbGFyZ2UtdXApICsgXCIvXCI7XG4gICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XG4gIH1cblxuICBtZXRhLmZvdW5kYXRpb24tbXEtbGFyZ2Utb25seSB7XG4gICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbGFyZ2Utb25seSkgKyBcIi9cIjtcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKTtcbiAgfVxuXG4gIG1ldGEuZm91bmRhdGlvbi1tcS14bGFyZ2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHhsYXJnZS11cCkgKyBcIi9cIjtcbiAgICB3aWR0aDogbG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSk7XG4gIH1cblxuICBtZXRhLmZvdW5kYXRpb24tbXEteGxhcmdlLW9ubHkge1xuICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHhsYXJnZS1vbmx5KSArIFwiL1wiO1xuICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKTtcbiAgfVxuXG4gIG1ldGEuZm91bmRhdGlvbi1tcS14eGxhcmdlIHtcbiAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4eGxhcmdlLXVwKSArIFwiL1wiO1xuICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSk7XG4gIH1cblxuICBtZXRhLmZvdW5kYXRpb24tZGF0YS1hdHRyaWJ1dGUtbmFtZXNwYWNlIHtcbiAgICBmb250LWZhbWlseTogI3skbmFtZXNwYWNlfTtcbiAgfVxuXG4gIEBpZiAkaW5jbHVkZS1odG1sLWdsb2JhbC1jbGFzc2VzIHtcblxuICAgIC8vIE11c3QgYmUgMTAwJSBmb3Igb2ZmIGNhbnZhcyB0byB3b3JrXG4gICAgaHRtbCwgYm9keSB7IGhlaWdodDogMTAwJTsgfVxuXG4gICAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgICBodG1sIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuICAgICosXG4gICAgKjpiZWZvcmUsXG4gICAgKjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGluaGVyaXQpO1xuICAgIH1cblxuICAgIGh0bWwsXG4gICAgYm9keSB7IGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplOyB9XG5cbiAgICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gICAgYm9keSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWF1dG8tdmFsdWU7XG4gICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXN0eWxlOiAkYm9keS1mb250LXN0eWxlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRib2R5LWZvbnQtd2VpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0OyAvLyBTZXQgdG8gJGJhc2UtbGluZS1oZWlnaHQgdG8gdGFrZSBvbiBicm93c2VyIGRlZmF1bHQgb2YgMTUwJVxuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgYTpob3ZlciB7IGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlOyB9XG5cbiAgICAvLyBHcmlkIERlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IH1cblxuICAgIGltZyB7IC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxuICAgICNtYXBfY2FudmFzLFxuICAgIC5tYXBfY2FudmFzLFxuICAgIC5tcWEtZGlzcGxheSB7XG4gICAgICBpbWcsXG4gICAgICBlbWJlZCxcbiAgICAgIG9iamVjdCB7IG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1pc2NlbGxhbmVvdXMgdXNlZnVsIEhUTUwgY2xhc3Nlc1xuICAgIC5sZWZ0IHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmNsZWFyZml4IHsgQGluY2x1ZGUgY2xlYXJmaXg7IH1cblxuICAgIC8vIEhpZGUgdmlzdWFsbHkgYW5kIGZyb20gc2NyZWVuIHJlYWRlcnNcbiAgICAuaGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIEhpZGUgdmlzdWFsbHkgYW5kIGZyb20gc2NyZWVuIHJlYWRlcnMsIGJ1dCBtYWludGFpbiBsYXlvdXRcbiAgICAuaW52aXNpYmxlIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbiAgICAvLyBGb250IHNtb290aGluZ1xuICAgIC8vIEFudGlhbGlhc2VkIGZvbnQgc21vb3RoaW5nIHdvcmtzIGJlc3QgZm9yIGxpZ2h0IHRleHQgb24gYSBkYXJrIGJhY2tncm91bmQuXG4gICAgLy8gQXBwbHkgdG8gc2luZ2xlIGVsZW1lbnRzIGluc3RlYWQgb2YgZ2xvYmFsbHkgdG8gYm9keS5cbiAgICAvLyBOb3RlIHRoaXMgb25seSBhcHBsaWVzIHRvIHdlYmtpdC1iYXNlZCBkZXNrdG9wIGJyb3dzZXJzIGFuZCBGaXJlZm94IDI1IChhbmQgbGF0ZXIpIG9uIHRoZSBNYWMuXG4gICAgLmFudGlhbGlhc2VkIHsgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIEdsb2JhbCByZXNldHMgZm9yIGZvcm1zXG4gICAgLy9cblxuICAgIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICAgIHRleHRhcmVhIHsgaGVpZ2h0OiBhdXRvOyBtaW4taGVpZ2h0OiA1MHB4OyB9XG5cbiAgICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgICBzZWxlY3QgeyB3aWR0aDogMTAwJTsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1hY2NvcmRpb24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yOiAkc2lsdmVyICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAoJGNvbHVtbi1ndXR0ZXIvMikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gIE1peGluOiBhY2NvcmRpb24tY29udGFpbmVyKClcbi8vICBEZWNyaXB0aW9uOiBSZXNwb25zaWJsZSBmb3IgdGhlIGNvbnRhaW5lciBjb21wb25lbnQgb2YgYWNjb3JkaW9ucywgZ2VuZXJhdGluZyBzdHlsZXMgcmVsYXRpbmcgdG8gYSBtYXJnaW4gb2YgemVybyBhbmQgYSBjbGVhcmZpeFxuLy8gIEV4cGxpY2l0IERlcGVuZGVuY2llczogYSBjbGVhcmZpeCBtaXhpbiAqaXMqIGRlZmluZWQuXG4vLyAgSW1wbGljaXQgRGVwZW5kZW5jaWVzOiBOb25lXG5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyKCkge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gIE1peGluOiBhY2NvcmRpb24tbmF2aWdhdGlvbiggJGJnLCAkaG92ZXItYmcsICRhY3RpdmUtYmcsICRwYWRkaW5nLCAkYWN0aXZlX2NsYXNzLCAgJGZvbnQtY29sb3IsICRmb250LXNpemUsICRmb250LWZhbWlseSkge1xuLy8gICAgQHBhcmFtcyAkYmctY29sb3I6IFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnRcbi8vICAgIEBwYXJhbXMgJGhvdmVyLWJnLWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnQgd2hlbiBob3ZlcmVkXG4vLyAgICBAcGFyYW1zICRhY3RpdmUtYmcgWyBjb2xvciBvciBzdHJpbmcgXTogU3BlY2lmeSB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG5hdmlnYXRpb24gZWxlbWVudCB3aGVuIGNsaWNrZWQgYW5kIG5vdCByZWxlYXNlZC5cbi8vICAgIEBwYXJhbXMgJGFjdGl2ZV9jbGFzcyBbIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBjbGFzcyBuYW1lIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBhY2NvcmRpb24gdGFiIHNob3VsZCBiZSB2aXNpYmxlXG4vLyAgICBAcGFyYW1zICRmb250LWNvbG9yIFsgY29sb3Igb3Igc3RyaW5nIF06IENvbG9yIG9mIHRoZSBmb250IGZvciBhY2NvcmRpb25cbi8vICAgIEBwYXJhbXMgJGZvbnQtc2l6ZSBbIG51bWJlciBdOiBTcGVjaWZpeSB0aGUgZm9udC1zaXplIG9mIHRoZSB0ZXh0IGluc2lkZSB0aGUgbmF2aWdhdGlvbiBlbGVtZW50XG4vLyAgICBAcGFyYW1zICRmb250LWZhbWlseSBbIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBmb250IGZhbWlseSBmb3IgdGhlIHRleHQgb2YgdGhlIG5hdmlnYXRpb24gb2YgdGhlIGFjY29yaW9uXG5cbkBtaXhpbiBhY2NvcmRpb24tbmF2aWdhdGlvbiggJGJnOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRob3Zlci1iZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yLCAkYWN0aXZlLWJnOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yLCAkcGFkZGluZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmcsICRhY3RpdmVfY2xhc3M6ICdhY3RpdmUnLCAgJGZvbnQtY29sb3I6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWNvbG9yLCAkZm9udC1zaXplOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplLCAkZm9udC1mYW1pbHk6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseSApIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgQGlmIHR5cGUtb2YoJGFjdGl2ZV9jbGFzcykgIT0gXCJzdHJpbmdcIiB7XG4gICAgQHdhcm4gXCJgI3skYWN0aXZlX2NsYXNzfWAgaXNuJ3QgYSB2YWxpZCBzdHJpbmcuIEEgdmFsaWQgc3RyaW5nIGlzIG5lZWRlZCB0byBjb3JyZWN0bHkgYmUgaW50ZXJwb2xhdGVkIGFzIGEgQ1NTIGNsYXNzLiBDU1MgY2xhc3NlcyBjYW5ub3Qgc3RhcnQgd2l0aCBhIG51bWJlciBvciBjb25zaXN0IG9mIG9ubHkgbnVtYmVycy4gQ1NTIHdpbGwgbm90IGJlIGdlbmVyYXRlZCBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGlzIG5hdmlnYXRpb24gY29tcG9uZW50LlwiXG4gIH1cbiAgQGVsc2Uge1xuICAgICYuI3sgJGFjdGl2ZV9jbGFzcyB9ID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWJnO1xuICAgIH1cbiAgfVxuICA+IGEge1xuICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgQGlmIHR5cGUtb2YoJHBhZGRpbmcpICE9IG51bWJlciB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgd2FzIHJlYWQgYXMgI3t0eXBlLW9mKCRwYWRkaW5nKX1cIjtcbiAgICAgIEBpZiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZyAhPSBudWxsIHtcbiAgICAgICAgQHdhcm4gXCIjeyRwYWRkaW5nfSB3YXMgcmVhZCBhcyBhICN7dHlwZS1vZigkcGFkZGluZyl9XCI7XG4gICAgICAgIEB3YXJuIFwiYCN7JHBhZGRpbmd9YCBpc24ndCBhIHZhbGlkIG51bWJlci4gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmcgKCN7JGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmd9KSB3aWxsIGJlIHVzZWQgaW5zdGVhZC4pXCI7XG4gICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIgYW5kICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nIGlzIG1pc3NpbmcuIEEgdmFsdWUgb2YgYG51bGxgIGlzIHJldHVybmVkIHRvIG5vdCBvdXRwdXQgYW4gaW52YWxpZCB2YWx1ZSBmb3IgcGFkZGluZ1wiO1xuICAgICAgICBwYWRkaW5nOiBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICB9XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBAaWYgdHlwZS1vZigkZm9udC1zaXplKSAhPSBudW1iZXIge1xuICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgd2FzIHJlYWQgYXMgYSAje3R5cGUtb2YoJGZvbnQtc2l6ZSl9XCI7XG4gICAgICBAaWYgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSAhPSBudWxsIHtcbiAgICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgaXMgbm90IGEgdmFsaWQgbnVtYmVyLiBUaGUgdmFsdWUgb2YgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSB3aWxsIGJlIHVzZWQgaW5zdGVhZCAoI3skYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplfSkuXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcbiAgICAgIH1cbiAgICAgIEBlbHNle1xuICAgICAgICBAd2FybiBcImAjeyRmb250LXNpemV9YCBpcyBub3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgaXMgbm90IGRlZmluZWQuIEEgdmFsdWUgb2YgYG51bGxgIHdpbGwgYmUgcmV0dXJuZWQgdG8gbm90IGdlbmVyYXRlIGFuIGludmFsaWQgdmFsdWUgZm9yIGZvbnQtc2l6ZS5cIjtcbiAgICAgICAgZm9udC1zaXplOiBudWxsO1xuXG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItYmc7XG4gICAgfVxuICB9XG59XG5cbi8vICBNaXhpbjogYWNjb3JkaW9uLWNvbnRlbnQoJGJnLCAkcGFkZGluZywgJGFjdGl2ZS1jbGFzcylcbi8vICAgIEBwYXJhbXMgJHBhZGRpbmcgWyBudW1iZXIgXTogUGFkZGluZyBmb3IgdGhlIGNvbnRlbnQgb2YgdGhlIGNvbnRhaW5lclxuLy8gICAgQHBhcmFtcyAkYmcgWyBjb2xvciAgXTogQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGNvbnRlbnQgd2hlbiBpdCdzIHZpc2libGVcbi8vICAgIEBwYXJhbXMgJGFjdGl2ZV9jbGFzcyBbIHN0cmluZyBdOiBDbGFzcyBuYW1lIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBhY2NvcmRpb24gdGFiIHNob3VsZCBiZSB2aXNpYmxlLlxuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQoJGJnOiAkYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yLCAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsICRhY3RpdmVfY2xhc3M6ICdhY3RpdmUnKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpZiB0eXBlLW9mKCRwYWRkaW5nKSAhPSBcIm51bWJlclwiIHtcbiAgICBAd2FybiBcIiN7JHBhZGRpbmd9IHdhcyByZWFkIGFzIGEgI3t0eXBlLW9mKCRwYWRkaW5nKX1cIjtcbiAgICBAaWYgJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcgIT0gbnVsbCB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIuICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIHVzZWQgaW5zdGVhZFwiO1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIgYW5kIHRoZSBkZWZhdWx0IHZhbHVlIG9mICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nIGlzIG5vdCBkZWZpbmVkLiBBIHZhbHVlIG9mIGBudWxsYCBpcyByZXR1cm5lZCB0byBub3Qgb3V0cHV0IGFuIGludmFsaWQgdmFsdWUgZm9yIHBhZGRpbmcuXCI7XG4gICAgICBwYWRkaW5nOiBudWxsO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkYWN0aXZlX2NsYXNzKSAhPSBcInN0cmluZ1wiIHtcbiAgICBAd2FybiBcImAjeyRhY3RpdmVfY2xhc3N9YCBpc24ndCBhIHZhbGlkIHN0cmluZy4gQSB2YWxpZCBzdHJpbmcgaXMgbmVlZGVkIHRvIGNvcnJlY3RseSBiZSBpbnRlcnBvbGF0ZWQgYXMgYSBDU1MgY2xhc3MuIENTUyBjbGFzc2VzIGNhbm5vdCBzdGFydCB3aXRoIGEgbnVtYmVyIG9yIGNvbnNpc3Qgb2Ygb25seSBudW1iZXJzLiBDU1Mgd2lsbCBub3QgYmUgZ2VuZXJhdGVkIGZvciB0aGUgYWN0aXZlIHN0YXRlIG9mIHRoZSBjb250ZW50LiBcIlxuICB9XG4gIEBlbHNlIHtcbiAgICAmLiN7JGFjdGl2ZV9jbGFzc30ge1xuICAgICAgYmFja2dyb3VuZDogJGJnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJhY2NvcmRpb25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1hY2NvcmRpb24tY2xhc3NlcyB7XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAuYWNjb3JkaW9uLW5hdmlnYXRpb24sIGRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgJi5hY3RpdmUgPiBhIHsgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjsgfVxuICAgICAgICA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTtcbiAgICAgICAgICBmb250LXNpemU6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU7XG4gICAgICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc7XG4gICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjsgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGVudCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZztcbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQmxvY2sgR3JpZCBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWJsb2NrLWdyaWQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuJGluY2x1ZGUteGwtaHRtbC1ibG9jay1ncmlkLWNsYXNzZXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBtYXhpbXVtIG51bWJlciBvZiBibG9jayBncmlkIGVsZW1lbnRzIHBlciByb3dcbiRibG9jay1ncmlkLWVsZW1lbnRzOiAxMiAhZGVmYXVsdDtcbiRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4kYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkOiBmYWxzZSAhZGVmYXVsdDtcbkBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcbiAgJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nOiAkY29sdW1uLWd1dHRlcjtcbn1cblxuLy8gRW5hYmxlcyBtZWRpYSBxdWVyaWVzIGZvciBibG9jay1ncmlkIGNsYXNzZXMuIFNldCB0byBmYWxzZSBpZiB3cml0aW5nIHNlbWFudGljIEhUTUwuXG4kYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzOiB0cnVlICFkZWZhdWx0O1xuXG4vL1xuLy8gQmxvY2sgR3JpZCBNaXhpbnNcbi8vXG5cbi8vIENyZWF0ZSBhIGN1c3RvbSBibG9jayBncmlkXG4vL1xuLy8gJHBlci1yb3cgLSAjIG9mIGl0ZW1zIHRvIGRpc3BsYXkgcGVyIHJvdy4gRGVmYXVsdDogZmFsc2UuXG4vLyAkc3BhY2luZyAtICMgb2YgZW1zIHRvIHVzZSBhcyBwYWRkaW5nIG9uIGVhY2ggYmxvY2sgaXRlbS4gRGVmYXVsdDogcmVtLWNhbGMoMjApLlxuLy8gJGluY2x1ZGUtc3BhY2luZyAtIEFkZHMgcGFkZGluZyB0byBvdXIgbGlzdCBpdGVtLiBEZWZhdWx0OiB0cnVlLlxuLy8gJGJhc2Utc3R5bGUgLSBBcHBseSBhIGJhc2Ugc3R5bGUgdG8gYmxvY2sgZ3JpZC4gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBibG9jay1ncmlkKFxuICAkcGVyLXJvdzpmYWxzZSxcbiAgJHNwYWNpbmc6JGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nLFxuICAkaW5jbHVkZS1zcGFjaW5nOnRydWUsXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luOiAwICgtJHNwYWNpbmcvMik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIEBpZiAkaW5jbHVkZS1zcGFjaW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAoJHNwYWNpbmcvMikgJHNwYWNpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwZXItcm93IHtcbiAgICA+IGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBAaWYgJGluY2x1ZGUtc3BhY2luZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgKCRzcGFjaW5nLzIpICRzcGFjaW5nO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCUvJHBlci1yb3c7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMW4pIHsgY2xlYXI6IG5vbmU7IH1cbiAgICAgICY6bnRoLW9mLXR5cGUoI3skcGVyLXJvd31uKzEpIHsgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBpZiAkYWxpZ24tYmxvY2stZ3JpZC10by1ncmlkIHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1hbGlnbmVkKCRwZXItcm93LCAkc3BhY2luZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBibG9jay1ncmlkLWFsaWduZWQoJHBlci1yb3csICRzcGFjaW5nKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtZWxlbWVudHMge1xuICAgIEBpZiAkcGVyLXJvdyA+PSAkaSB7XG4gICAgICAkZ3JpZC1jb2x1bW46ICcrJyArICRpO1xuICAgICAgQGlmICRwZXItcm93ID09ICRpIHtcbiAgICAgICAgJGdyaWQtY29sdW1uOiAnJztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoI3skcGVyLXJvd31uI3t1bnF1b3RlKCRncmlkLWNvbHVtbil9KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCRzcGFjaW5nIC0gKCgkc3BhY2luZyAvICRwZXItcm93KSAqICgkcGVyLXJvdyAtICgkaSAtIDEpKSkpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJHNwYWNpbmcgLSAoKCRzcGFjaW5nIC8gJHBlci1yb3cpICogJGkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgcHJlc2VudGF0aW9uYWwgbWFya3VwIGZvciBibG9jayBncmlkLlxuLy9cbi8vICRzaXplIC0gTmFtZSBvZiBjbGFzcyB0byB1c2UsIGkuZS4gXCJsYXJnZVwiIHdpbGwgZ2VuZXJhdGUgLmxhcmdlLWJsb2NrLWdyaWQtMSwgLmxhcmdlLWJsb2NrLWdyaWQtMiwgZXRjLlxuQG1peGluIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplLCAkaW5jbHVkZS1zcGFjaW5nKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtZWxlbWVudHMge1xuICAgIC4jeyRzaXplfS1ibG9jay1ncmlkLSN7KCRpKX0ge1xuICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZCgkaSwgJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nLCAkaW5jbHVkZS1zcGFjaW5nLCBmYWxzZSk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJibG9jay1ncmlkXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzIHtcblxuICAgIFtjbGFzcyo9XCJibG9jay1ncmlkLVwiXSB7IEBpbmNsdWRlIGJsb2NrLWdyaWQ7IH1cblxuICAgIEBpZiAkYmxvY2stZ3JpZC1tZWRpYS1xdWVyaWVzIHtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpzbWFsbCwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6bWVkaXVtLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOmxhcmdlLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRpbmNsdWRlLXhsLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzIHtcbiAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnhsYXJnZSwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnh4bGFyZ2UsICRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgcGFydHMgb2YgQ2xlYXJpbmcuXG4kY2xlYXJpbmctYmc6ICRvaWwgIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2FwdGlvbi1iZzogJGNsZWFyaW5nLWJnICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcm91c2VsLWJnOiByZ2JhKDUxLDUxLDUxLDAuOCkgIWRlZmF1bHQ7XG4kY2xlYXJpbmctaW1nLWJnOiAkY2xlYXJpbmctYmcgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgY2xvc2UgYnV0dG9uXG4kY2xlYXJpbmctY2xvc2UtY29sb3I6ICRpcm9uICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgYXJyb3dzXG4kY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRjbGVhcmluZy1hcnJvdy1jb2xvcjogJGNsZWFyaW5nLWNsb3NlLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcbiRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I6ICRpcm9uICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcHRpb24tZm9udC1zaXplOiAuODc1ZW0gIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2UgdGhlIGltYWdlIGFuZCBjYXJvdXNlbCBoZWlnaHQgYW5kIHN0eWxlXG4kY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JSAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXJvdXNlbC1oZWlnaHQ6IDEyMHB4ICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoOiAxMjBweCAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgZXhwb3J0cyhcImNsZWFyaW5nXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlcyB7XG4gICAgLy8gV2UgZGVjaWRlZCB0byBub3QgY3JlYXRlIGEgbWl4aW4gZm9yIENsZWFyaW5nIGJlY2F1c2UgaXQgcmVsaWVzXG4gICAgLy8gb24gcHJlZGVmaW5lZCBjbGFzc2VzIGFuZCBzdHJ1Y3R1cmUgdG8gd29yayBwcm9wZXJseS5cbiAgICAvLyBUaGUgdmFyaWFibGVzIGFib3ZlIHNob3VsZCBnaXZlIGVub3VnaCBjb250cm9sLlxuXG4gICAgLyogQ2xlYXJpbmcgU3R5bGVzICovXG4gICAgLmNsZWFyaW5nLXRodW1icywgI3tkYXRhKCdjbGVhcmluZycpfSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICB9XG5cbiAgICAgICZbY2xhc3MqPVwiYmxvY2stZ3JpZC1cIl0gbGkge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctYmxhY2tvdXQge1xuICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWJnO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiA5OTg7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICAgICAgLmNsZWFyaW5nLWNsb3NlIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctY29udGFpbmVyIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA5OTg7XG4gICAgfVxuXG4gICAgLmNsZWFyaW5nLXRvdWNoLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkYmFzZTtcbiAgICAgIGZvbnQtc2l6ZTogLjZlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgIH1cblxuICAgIC52aXNpYmxlLWltZyB7XG4gICAgICBoZWlnaHQ6IDk1JTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgQGlmICRkZWZhdWx0LWZsb2F0ID09IGxlZnQge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICB9O1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNsZWFyaW5nLWNhcHRpb24ge1xuICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWNhcHRpb24tYmc7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb2xvcjogJGNsZWFyaW5nLWNhcHRpb24tZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogJGNsZWFyaW5nLWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAkY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICB9XG5cbiAgICAuY2xlYXJpbmctY2xvc2Uge1xuICAgICAgY29sb3I6ICRjbGVhcmluZy1jbG9zZS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBmb250LXNpemU6ICRjbGVhcmluZy1jbG9zZS1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICB6LWluZGV4OiA5OTk7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICRpcm9uOyB9XG4gICAgfVxuXG4gICAgLmNsZWFyaW5nLWFzc2VtYmxlZCAuY2xlYXJpbmctY29udGFpbmVyIHsgaGVpZ2h0OiAxMDAlO1xuICAgICAgLmNhcm91c2VsID4gdWwgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG4gICAgLy8gSWYgeW91IHdhbnQgdG8gc2hvdyBhIGxpZ2h0Ym94LCBidXQgb25seSBoYXZlIGEgc2luZ2xlIGltYWdlIGNvbWUgdGhyb3VnaCBhcyB0aGUgdGh1bWJuYWlsXG4gICAgLmNsZWFyaW5nLWZlYXR1cmUgbGkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICYuY2xlYXJpbmctZmVhdHVyZWQtaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTGFyZ2Ugc2NyZWVuIG92ZXJyaWRlc1xuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIC5jbGVhcmluZy1tYWluLXByZXYsXG4gICAgICAuY2xlYXJpbmctbWFpbi1uZXh0IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCAkY2xlYXJpbmctYXJyb3ctc2l6ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICY6aG92ZXIgeyBvcGFjaXR5OiAuODsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY2xlYXJpbmctbWFpbi1wcmV2IHtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDVweDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiAkY2xlYXJpbmctYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jbGVhcmluZy1tYWluLW5leHQge1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkY2xlYXJpbmctYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldi5kaXNhYmxlZCxcbiAgICAgIC5jbGVhcmluZy1tYWluLW5leHQuZGlzYWJsZWQgeyBvcGFjaXR5OiAuMzsgfVxuXG4gICAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIge1xuXG4gICAgICAgIC5jYXJvdXNlbCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWNhcm91c2VsLWJnO1xuICAgICAgICAgIGhlaWdodDogJGNsZWFyaW5nLWNhcm91c2VsLWhlaWdodDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgd2lkdGg6ICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi13aWR0aDtcblxuICAgICAgICAgICAgICAmLmZpeC1oZWlnaHQge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgYS50aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYudmlzaWJsZSB7IG9wYWNpdHk6IDE7IH1cbiAgICAgICAgICAgICAgJjpob3ZlciB7IG9wYWNpdHk6IC44OyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZpc2libGUtaW1nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2xlYXJpbmctaW1nLWJnO1xuICAgICAgICAgIGhlaWdodDogJGNsZWFyaW5nLWFjdGl2ZS1pbWctaGVpZ2h0O1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNsZWFyaW5nLWNsb3NlIHtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnYnV0dG9ucyc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYXNlIGZvciBsb3RzIG9mIGZvcm0gc3BhY2luZyBhbmQgcG9zaXRpb25pbmcgc3R5bGVzXG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzIGluIGRpZmZlcmVudCB3YXlzXG4kZm9ybS1sYWJlbC1wb2ludGVyOiBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkYmxhY2ssICRsaWdodG5lc3M6IDMwJSkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1ib3R0b20tbWFyZ2luOiAwICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kaW5wdXQtYmctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMiUpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMjAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTQwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZSAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuJGlucHV0LWluY2x1ZGUtZ2xvd2luZy1lZmZlY3Q6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cbiRmaWVsZHNldC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsZWdlbmRzIHdoZW4geW91IHVzZSB0aGVtXG4kbGVnZW5kLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcbiRpbnB1dC1wcmVmaXgtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1ib3JkZXItdHlwZTogc29saWQgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LW92ZXJmbG93OiB2aXNpYmxlICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyBzZXR0aW5nIHRvIHR1cm4gb24vb2ZmIEhUTUw1IG51bWJlciBzcGlubmVycyAodGhlIHVwL2Rvd24gYXJyb3dzKVxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBlcnJvciBzdGF0ZXMgZm9yIGlucHV0cyBhbmQgbGFiZWxzXG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1wYWRkaW5nOiByZW0tY2FsYyg2IDkgOSkgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A6IC0xcHggIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtYmctY29sb3I6ICRhbGVydC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgZ2xvd2luZyBlZmZlY3Qgb2YgaW5wdXRzIHdoZW4gZm9jdXNlZFxuJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogLjQ1cyAhZGVmYXVsdDtcbiRnbG93aW5nLWVmZmVjdC1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLy8gU2VsZWN0IHZhcmlhYmxlc1xuJHNlbGVjdC1iZy1jb2xvcjogJGdob3N0ICFkZWZhdWx0O1xuJHNlbGVjdC1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHNlbGVjdC1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTMlKSAhZGVmYXVsdDtcblxuLy9cbi8vIEBNSVhJTlNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGdpdmUgdXMgZm9ybSBzdHlsZXMgZm9yIHJvd3MgaW5zaWRlIG9mIGZvcm1zXG5AbWl4aW4gZm9ybS1yb3ctYmFzZSB7XG4gIC5yb3cgeyBtYXJnaW46IDAgKCgtJGZvcm0tc3BhY2luZykgLyAyKTtcblxuICAgIC5jb2x1bW4sXG4gICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwICgkZm9ybS1zcGFjaW5nIC8gMik7IH1cblxuICAgIC8vIFVzZSB0aGlzIHRvIGNvbGxhcHNlIHRoZSBtYXJnaW5zIG9mIGEgZm9ybSByb3dcbiAgICAmLmNvbGxhcHNlIHsgbWFyZ2luOiAwO1xuXG4gICAgICAuY29sdW1uLFxuICAgICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwOyB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sIDApO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG4gIGlucHV0LmNvbHVtbixcbiAgaW5wdXQuY29sdW1ucyxcbiAgdGV4dGFyZWEuY29sdW1uLFxuICB0ZXh0YXJlYS5jb2x1bW5zIHsgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogKCRmb3JtLXNwYWNpbmcgLyAyKTsgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnaXZlIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzIHRoZWlyIHN0eWxlXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWNvbG9yO1xuICBib3JkZXI6IHtcbiAgICBzdHlsZTogJGlucHV0LWJvcmRlci1zdHlsZTtcbiAgICB3aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgfVxuICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdztcbiAgY29sb3I6ICRpbnB1dC1mb250LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nIDA7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0IHtcbiAgICBAaW5jbHVkZSBibG9jay1nbG93aW5nLWVmZmVjdChmb2N1cywgJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZSwgJGdsb3dpbmctZWZmZWN0LWNvbG9yKTtcbiAgfVxuICAvLyBCYXNpYyBmb2N1cyBzdHlsZXNcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWZvY3VzLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gIC8vIERpc2JhbGVkIFN0eWxlc1xuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYmFja2dyb3VuZCBpbnB1dCBiYWNrZ3JvdW5kIGNvbG9yXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBjdXJzb3I6ICRpbnB1dC1kaXNhYmxlZC1jdXJzb3I7XG4gIH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGZvcm0gbGFiZWxzXG4vL1xuLy8gJGFsaWdubWVudCAtIEFsaWdubWVudCBvcHRpb25zLiBEZWZhdWx0OiBmYWxzZS4gT3B0aW9uczogW3JpZ2h0LCBpbmxpbmUsIGZhbHNlXVxuLy8gJGJhc2Utc3R5bGUgLSBDb250cm9sIHdoZXRoZXIgb3Igbm90IHRoZSBiYXNlIHN0eWxlcyBjb21lIHRocm91Z2guIERlZmF1bHQ6IHRydWUuXG5AbWl4aW4gZm9ybS1sYWJlbCgkYWxpZ25tZW50OmZhbHNlLCAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgLy8gQ29udHJvbCB3aGV0aGVyIG9yIG5vdCB0aGUgYmFzZSBzdHlsZXMgY29tZSB0aHJvdWdoLlxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogJGZvcm0tbGFiZWwtcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLWJvdHRvbS1tYXJnaW47XG4gIH1cblxuICAvLyBBbGlnbm1lbnQgb3B0aW9uc1xuICBAaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGlubGluZSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICAgIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkgMDtcbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcG9zdGZpeC9wcmVmaXggZm9ybSBMYWJlbHNcbkBtaXhpbiBwcmVmaXgtcG9zdGZpeC1iYXNlIHtcbiAgYm9yZGVyLXN0eWxlOiAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlO1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1wcmVmaXgtYm9yZGVyLXNpemU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcbiAgbGluZS1oZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICBvdmVyZmxvdzogJGlucHV0LXByZWZpeC1vdmVyZmxvdztcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBwcmVmaXggbGFiZWwgc3R5bGVzXG4vLyAkYmcgLSBEZWZhdWx0OiRpbnB1dC1wcmVmaXgtYmcgfHwgc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuLy8gJGlzLWJ1dHRvbiAtIFRvZ2dsZSBwb3NpdGlvbiBzZXR0aW5ncyBpZiBwcmVmaXggaXMgYSBidXR0b24uIERlZmF1bHQ6ZmFsc2Vcbi8vXG5AbWl4aW4gcHJlZml4KCRiZzokaW5wdXQtcHJlZml4LWJnLCAkYm9yZGVyOiRpbnB1dC1wcmVmaXgtYm9yZGVyLWNvbG9yLCAkaXMtYnV0dG9uOmZhbHNlKSB7XG5cbiAgQGlmICRiZyB7XG4gICAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gICAgYmFja2dyb3VuZDogJGJnO1xuICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBub25lO1xuXG4gICAgLy8gQ29udHJvbCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiBiYWNrZ3JvdW5kIGJyaWdodG5lc3NcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA+IDcwJSBvciAkYmcgPT0geWVsbG93IHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ7IH1cbiAgfVxuXG4gIEBpZiAkYm9yZGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICBAaWYgJGlzLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBwb3N0Zml4IGxhYmVsIHN0eWxlc1xuLy8gJGJnIC0gRGVmYXVsdDokaW5wdXQtcHJlZml4LWJnIHx8IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbi8vICRpcy1idXR0b24gLSBUb2dnbGUgcG9zaXRpb24gc2V0dGluZ3MgaWYgcHJlZml4IGlzIGEgYnV0dG9uLiBEZWZhdWx0OiBmYWxzZVxuQG1peGluIHBvc3RmaXgoJGJnOiRpbnB1dC1wcmVmaXgtYmcsICRib3JkZXI6JGlucHV0LXByZWZpeC1ib3JkZXItY29sb3IsICRpcy1idXR0b246ZmFsc2UpIHtcblxuICBAaWYgJGJnIHtcbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiBub25lO1xuXG4gICAgLy8gQ29udHJvbCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiBiYWNrZ3JvdW5kIGJyaWdodG5lc3NcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA+IDcwJSAgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3I7IH1cbiAgICBAZWxzZSB7IGNvbG9yOiAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OyB9XG4gIH1cblxuICBAaWYgJGJvcmRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICB9XG5cbiAgQGlmICRpcy1idXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzdHlsZSBmaWVsZHNldHNcbkBtaXhpbiBmaWVsZHNldCB7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlci13aWR0aCAkZmllbGRzZXQtYm9yZGVyLXN0eWxlICRmaWVsZHNldC1ib3JkZXItY29sb3I7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG5cbiAgLy8gYW5kIGxlZ2VuZCBzdHlsZXNcbiAgbGVnZW5kIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGVnZW5kLWJnO1xuICAgIGZvbnQtd2VpZ2h0OiAkbGVnZW5kLWZvbnQtd2VpZ2h0O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogcmVtLWNhbGMoLTMpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY29udHJvbCBib3JkZXIgYW5kIGJhY2tncm91bmQgY29sb3Igb2YgZXJyb3IgaW5wdXRzXG4vLyAkY29sb3IgLSBEZWZhdWx0OiAkYWxlcnQtY29sb3IgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gZm9ybS1lcnJvci1jb2xvcigkY29sb3I6JGFsZXJ0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAuMSk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIEdvIGJhY2sgdG8gbm9ybWFsIG9uIGZvY3VzXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1mb2N1cy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgc2ltcGxlIG1peGluIHRvIHN0eWxlIGxhYmVscyBmb3IgZXJyb3IgaW5wdXRzXG4vLyAkY29sb3IgLSBEZWZhdWx0OiRhbGVydC1jb2xvci4gRm91bmQgaW4gc2V0dGluZ3MgZmlsZVxuQG1peGluIGZvcm0tbGFiZWwtZXJyb3ItY29sb3IoJGNvbG9yOiRhbGVydC1jb2xvcikgeyBjb2xvcjogJGNvbG9yOyB9XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBlcnJvciBtZXNzYWdlIHN0eWxlc1xuLy8gJGJnIC0gRGVmYXVsdDogJGFsZXJ0LWNvbG9yIChGb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxuQG1peGluIGZvcm0tZXJyb3ItbWVzc2FnZSgkYmc6JGlucHV0LWVycm9yLW1lc3NhZ2UtYmctY29sb3IpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zaXplO1xuICBmb250LXN0eWxlOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC13ZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG4gIG1hcmdpbi10b3A6ICRpbnB1dC1lcnJvci1tZXNzYWdlLXRvcDtcbiAgcGFkZGluZzogJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZztcblxuICAvLyBXZSBjYW4gY29udHJvbCB0aGUgdGV4dCBjb2xvciBiYXNlZCBvbiB0aGUgYnJpZ2h0bmVzcyBvZiB0aGUgYmFja2dyb3VuZC5cbiAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gIGJhY2tncm91bmQ6ICRiZztcbiAgQGlmICRiZy1saWdodG5lc3MgPCA3MCUgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOyB9XG4gIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OyB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHN0eWxlIHNlbGVjdCBlbGVtZW50c1xuQG1peGluIGZvcm0tc2VsZWN0ICB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iZy1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gVGhlIGN1c3RvbSBhcnJvdyBoYXMgc29tZSBmYWtlIGhvcml6b250YWwgcGFkZGluZyBzbyB3ZSBjYW4gYWxpZ24gaXRcbiAgLy8gZnJvbSB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgZWxlbWVudCB3aXRob3V0IHJlbHlpbmcgb24gQ1NTM1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRDBpTVRKd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU1qUndlQ0lnYUdWcFoyaDBQU0l6Y0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0EySURNaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lEWWdNeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BIQnZiSGxuYjI0Z2NHOXBiblJ6UFNJMUxqazVNaXd3SURJdU9Ua3lMRE1nTFRBdU1EQTRMREFnSWk4K1BDOXpkbWMrKTtcblxuICAvLyBXZSBjYW4gc2FmZWx5IHVzZSBsZWZ0bW9zdCBhbmQgcmlnaHRtb3N0IG5vd1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcsIDAlLCAxMDAlKSBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYm9yZGVyOiB7XG4gICAgc3R5bGU6ICRpbnB1dC1ib3JkZXItc3R5bGU7XG4gICAgd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gIH1cbiAgY29sb3I6ICRpbnB1dC1mb250LWNvbG9yO1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMik7XG4gIEBpbmNsdWRlIHJhZGl1cygwKTtcbiAgJi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoJGdsb2JhbC1yYWRpdXMpOyB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtaG92ZXItYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG4gIC8vIERpc2FibGVkIFN0eWxlc1xuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHR1cm4gb24vb2ZmIEhUTUw1IG51bWJlciBzcGlubmVyc1xuQG1peGluIGh0bWw1bnVtYmVyKCRicm93c2VyLCAkb246dHJ1ZSkge1xuICBAaWYgJG9uPT1mYWxzZSB7XG4gICAgICBAaWYgJGJyb3dzZXI9PXdlYmtpdCB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfSBAZWxzZSBpZiAkYnJvd3Nlcj09bW96IHtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImZvcm1cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXMge1xuICAgIC8qIFN0YW5kYXJkIEZvcm1zICovXG4gICAgZm9ybSB7IG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7IH1cblxuICAgIC8qIFVzaW5nIGZvcm1zIHdpdGhpbiByb3dzLCB3ZSBuZWVkIHRvIHNldCBzb21lIGRlZmF1bHRzICovXG4gICAgZm9ybSAucm93IHsgQGluY2x1ZGUgZm9ybS1yb3ctYmFzZTsgfVxuXG4gICAgLyogTGFiZWwgU3R5bGVzICovXG4gICAgbGFiZWwgeyBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuICAgICAgJi5yaWdodCB7IEBpbmNsdWRlIGZvcm0tbGFiZWwocmlnaHQsIGZhbHNlKTsgfVxuICAgICAgJi5pbmxpbmUgeyBAaW5jbHVkZSBmb3JtLWxhYmVsKGlubGluZSwgZmFsc2UpOyB9XG4gICAgICAvKiBTdHlsZXMgZm9yIHJlcXVpcmVkIGlucHV0cyAqL1xuICAgICAgc21hbGwge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJGZvcm0tbGFiZWwtc21hbGwtdHJhbnNmb3JtO1xuICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBBdHRhY2ggZWxlbWVudHMgdG8gdGhlIGJlZ2lubmluZyBvciBlbmQgb2YgYW4gaW5wdXQgKi9cbiAgICAucHJlZml4LFxuICAgIC5wb3N0Zml4IHsgQGluY2x1ZGUgcHJlZml4LXBvc3RmaXgtYmFzZTsgfVxuXG4gICAgLyogQWRqdXN0IHBhZGRpbmcsIGFsaWdubWVudCBhbmQgcmFkaXVzIGlmIHByZS9wb3N0IGVsZW1lbnQgaXMgYSBidXR0b24gKi9cbiAgICAucG9zdGZpeC5idXR0b24geyBAaW5jbHVkZSBidXR0b24tc2l6ZShmYWxzZSwgZmFsc2UpOyBAaW5jbHVkZSBwb3N0Zml4KGZhbHNlLCBmYWxzZSwgdHJ1ZSk7IH1cbiAgICAucHJlZml4LmJ1dHRvbiB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKGZhbHNlLCBmYWxzZSk7IEBpbmNsdWRlIHByZWZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XG5cbiAgICAucHJlZml4LmJ1dHRvbi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucG9zdGZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucHJlZml4LmJ1dHRvbi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcm91bmQpOyB9XG4gICAgLnBvc3RmaXguYnV0dG9uLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuXG4gICAgLyogU2VwYXJhdGUgcHJlZml4IGFuZCBwb3N0Zml4IHN0eWxlcyB3aGVuIG9uIHNwYW4gb3IgbGFiZWwgc28gYnV0dG9ucyBrZWVwIHRoZWlyIG93biAqL1xuICAgIHNwYW4ucHJlZml4LCBsYWJlbC5wcmVmaXggeyBAaW5jbHVkZSBwcmVmaXgoKTsgfVxuICAgIHNwYW4ucG9zdGZpeCwgbGFiZWwucG9zdGZpeCB7IEBpbmNsdWRlIHBvc3RmaXgoKTsgfVxuXG4gICAgLyogV2UgdXNlIHRoaXMgdG8gZ2V0IGJhc2ljIHN0eWxpbmcgb24gYWxsIGJhc2ljIGZvcm0gZWxlbWVudHMgKi9cbiAgICAje3RleHQtaW5wdXRzKGFsbCwgJ2lucHV0Jyl9IHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgICBAaWYgJGlucHV0LWluY2x1ZGUtZ2xvd2luZy1lZmZlY3QgPT0gZmFsc2Uge1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGxpbmVhciwgYmFja2dyb3VuZCAwLjE1cyBsaW5lYXI7XG4gICAgICAgIC1vLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXIsIGJhY2tncm91bmQgMC4xNXMgbGluZWFyO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgbGluZWFyLCBiYWNrZ3JvdW5kIDAuMTVzIGxpbmVhcjtcbiAgICAgIH1cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgIC5yb3cge1xuICAgICAgICAucHJlZml4LXJhZGl1cy5yb3cuY29sbGFwc2Uge1xuICAgICAgICAgIGlucHV0LFxuICAgICAgICAgIHRleHRhcmVhLFxuICAgICAgICAgIHNlbGVjdCxcbiAgICAgICAgICBidXR0b24geyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRidXR0b24tcmFkaXVzKTsgfVxuICAgICAgICAgIC5wcmVmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgICAucG9zdGZpeC1yYWRpdXMucm93LmNvbGxhcHNlIHtcbiAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICBzZWxlY3QsXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgICAgICAgLnBvc3RmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRidXR0b24tcmFkaXVzKTsgfVxuICAgICAgICB9XG4gICAgICAgIC5wcmVmaXgtcm91bmQucm93LmNvbGxhcHNlIHtcbiAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICBzZWxlY3QsXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICAgIC5wcmVmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICB9XG4gICAgICAgIC5wb3N0Zml4LXJvdW5kLnJvdy5jb2xsYXBzZSB7XG4gICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgIGJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcm91bmQpOyB9XG4gICAgICAgICAgLnBvc3RmaXggeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRidXR0b24tcm91bmQpOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLyogUmVzcGVjdCBlbmZvcmNlZCBhbW91bnQgb2Ygcm93cyBmb3IgdGV4dGFyZWEgKi9cbiAgICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG5cdC8qIE5vdCBhbGxvdyByZXNpemUgb3V0IG9mIHBhcmVudCAqL1xuXHR0ZXh0YXJlYSB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG5cbiAgICAvKiBBZGQgaGVpZ2h0IHZhbHVlIGZvciBzZWxlY3QgZWxlbWVudHMgdG8gbWF0Y2ggdGV4dCBpbnB1dCBoZWlnaHQgKi9cbiAgICBzZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gICAgICBoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICAgICAgJlttdWx0aXBsZV0ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogQWRqdXN0IG1hcmdpbiBmb3IgZm9ybSBlbGVtZW50cyBiZWxvdyAqL1xuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgc2VsZWN0IHtcbiAgICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmcgMDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCxcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRmb3JtLXNwYWNpbmcgKiAuNTtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZm9ybS1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICAvKiBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aCAqL1xuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuXG4gICAgLyogSFRNTDUgTnVtYmVyIHNwaW5uZXJzIHNldHRpbmdzICovXG4gICAgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICAgIEBpbmNsdWRlIGh0bWw1bnVtYmVyKG1veiwgJGlucHV0LW51bWJlci1zcGlubmVycylcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGh0bWw1bnVtYmVyKHdlYmtpdCwgJGlucHV0LW51bWJlci1zcGlubmVycyk7XG4gICAgfVxuXG4gICAgLyogV2UgYWRkIGJhc2ljIGZpZWxkc2V0IHN0eWxpbmcgKi9cbiAgICBmaWVsZHNldCB7XG4gICAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgICB9XG5cbiAgICAvKiBFcnJvciBIYW5kbGluZyAqL1xuXG4gICAgI3tkYXRhKCdhYmlkZScpfSB7XG4gICAgICAuZXJyb3Igc21hbGwuZXJyb3IsIC5lcnJvciBzcGFuLmVycm9yLCBzcGFuLmVycm9yLCBzbWFsbC5lcnJvciB7XG4gICAgICAgIEBpbmNsdWRlIGZvcm0tZXJyb3ItbWVzc2FnZTtcbiAgICAgIH1cbiAgICAgIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cblxuICAgIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tZXJyb3ItbWVzc2FnZTtcbiAgICB9XG5cbiAgICAuZXJyb3Ige1xuICAgICAgaW5wdXQsXG4gICAgICB0ZXh0YXJlYSxcbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmdcbiAgICAgIH1cblxuICAgICAgbGFiZWwsXG4gICAgICBsYWJlbC5lcnJvciB7XG4gICAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtZXJyb3ItY29sb3I7XG4gICAgICB9XG5cbiAgICAgIHNtYWxsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgICAgfVxuXG4gICAgICA+IGxhYmVsIHtcbiAgICAgICAgPiBzbWFsbCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRmb3JtLWxhYmVsLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDE1JSk7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNjAlO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJGZvcm0tbGFiZWwtc21hbGwtdHJhbnNmb3JtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4uZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0LmVycm9yLFxuICAgIHRleHRhcmVhLmVycm9yLFxuICAgIHNlbGVjdC5lcnJvciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBsYWJlbC5lcnJvciB7IEBpbmNsdWRlIGZvcm0tbGFiZWwtZXJyb3ItY29sb3I7IH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zLlxuJGJ1dHRvbi10bnk6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiRidXR0b24tc21sOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kYnV0dG9uLW1lZDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJGJ1dHRvbi1scmc6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGlzcGxheSBwcm9wZXJ0eS5cbiRidXR0b24tZGlzcGxheTogaW5saW5lLWJsb2NrICFkZWZhdWx0O1xuJGJ1dHRvbi1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiB0ZXh0IHN0eWxlcy5cbiRidXR0b24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LXRueTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LXNtbDogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LW1lZDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LWxyZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGhvdmVyIGVmZmVjdHMuXG4kYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogLTIwJSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIGJvcmRlciBzdHlsZXMuXG4kYnV0dG9uLWJvcmRlci13aWR0aDogMCAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRidXR0b24tYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItY29sb3I6ICRidXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1idXR0b24tYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Y2Nlc3MtY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiRhbGVydC1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRhbGVydC1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJGFsZXJ0LWJ1dHRvbi1ib3JkZXItY29sb3I6ICRhbGVydC1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG4kd2FybmluZy1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCR3YXJuaW5nLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kd2FybmluZy1idXR0b24tYm9yZGVyLWNvbG9yOiAkd2FybmluZy1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG4kaW5mby1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRpbmZvLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kaW5mby1idXR0b24tYm9yZGVyLWNvbG9yOiAkaW5mby1idXR0b24tYmctaG92ZXIgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgZGVmYXVsdCByYWRpdXMgdXNlZCB0aHJvdWdob3V0IHRoZSBjb3JlLlxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuJGJ1dHRvbi1yb3VuZDogJGdsb2JhbC1yb3VuZGVkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgZGVmYXVsdCBvcGFjaXR5IGFuZCBjdXJzb3IgZm9yIGRpc2FibGVkIGJ1dHRvbnMuXG4kYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk6IC43ICFkZWZhdWx0O1xuJGJ1dHRvbi1kaXNhYmxlZC1jdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZSAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBidXR0b24gYmFzZS5cbi8vXG4vLyAkc3R5bGUgLSBTZXRzIGJhc2Ugc3R5bGVzLiBDYW4gYmUgc2V0IHRvIGZhbHNlLiBEZWZhdWx0OiB0cnVlLlxuLy8gJGRpc3BsYXkgLSBVc2VkIHRvIGNvbnRyb2wgZGlzcGxheSBwcm9wZXJ0eS4gRGVmYXVsdDogJGJ1dHRvbi1kaXNwbGF5IHx8IGlubGluZS1ibG9ja1xuXG5AbWl4aW4gYnV0dG9uLWJhc2UoJHN0eWxlOnRydWUsICRkaXNwbGF5OiRidXR0b24tZGlzcGxheSkge1xuICBAaWYgJHN0eWxlIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICBib3JkZXItc3R5bGU6ICRidXR0b24tYm9yZGVyLXN0eWxlO1xuICAgIGJvcmRlci13aWR0aDogJGJ1dHRvbi1ib3JkZXItd2lkdGg7XG4gICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gICAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDAgMCAkYnV0dG9uLW1hcmdpbi1ib3R0b207XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246ICRidXR0b24tZm9udC1hbGlnbjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgQGlmICRkaXNwbGF5IHsgZGlzcGxheTogJGRpc3BsYXk7IH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGJ1dHRvbiBzaXplIHN0eWxlc1xuLy9cbi8vICRwYWRkaW5nIC0gVXNlZCB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zIERlZmF1bHQ6ICRidXR0b24tbWVkIHx8PSByZW0tY2FsYygxMilcbi8vICRmdWxsLXdpZHRoIC0gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoIC0gRGVmYXVsdDogZmFsc2VcblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tbWVkLCAkZnVsbC13aWR0aDpmYWxzZSkge1xuXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggcGFkZGluZyBzdHlsZXMgY29tZSB0aHJvdWdoLFxuICAvLyB0aGVzZSBjYW4gYmUgdHVybmVkIG9mZiBieSBzZXR0aW5nICRwYWRkaW5nOmZhbHNlXG4gIEBpZiAkcGFkZGluZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcgKCRwYWRkaW5nICogMikgKCRwYWRkaW5nICsgcmVtLWNhbGMoMSkpICgkcGFkZGluZyAqIDIpO1xuICAgIC8vIFdlIGNvbnRyb2wgdGhlIGZvbnQtc2l6ZSBiYXNlZCBvbiBtaXhpbiBpbnB1dC5cbiAgICBAaWYgICAgICAkcGFkZGluZyA9PSAkYnV0dG9uLW1lZCB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LW1lZDsgfVxuICAgIEBlbHNlIGlmICRwYWRkaW5nID09ICRidXR0b24tdG55IHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtdG55OyB9XG4gICAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gJGJ1dHRvbi1zbWwgeyBmb250LXNpemU6ICRidXR0b24tZm9udC1zbWw7IH1cbiAgICBAZWxzZSBpZiAkcGFkZGluZyA9PSAkYnV0dG9uLWxyZyB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LWxyZzsgfVxuICB9XG5cbiAgLy8gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoLlxuICBAaWYgJGZ1bGwtd2lkdGgge1xuICAgIC8vIFdlIHN0aWxsIG5lZWQgdG8gY2hlY2sgaWYgJHBhZGRpbmcgaXMgc2V0LlxuICAgIEBpZiAkcGFkZGluZyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmcgKyByZW0tY2FsYygxKTtcbiAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgICB9IEBlbHNlIGlmICRwYWRkaW5nID09IGZhbHNlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBwYWRkaW5nLXRvcDowO1xuICAgIH1cbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyB3ZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIGJ1dHRvbiBob3ZlciBhbmQgYm9yZGVyIGNvbG9yc1xuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgYnV0dG9uIGNvbG9yIHN0eWxlc1xuLy9cbi8vICRiZyAtIEJhY2tncm91bmQgY29sb3IuIFdlIGNhbiBzZXQgJGJnOmZhbHNlIGZvciBhIHRyYW5zcGFyZW50IGJhY2tncm91bmQuIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yLlxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBidXR0b24gcmFkaXVzIHdoaWNoIGlzICRidXR0b24tcmFkaXVzIHx8IGV4cGxpY2l0bHkgc2V0IHJhZGl1cyBhbW91bnQgaW4gcHggKGV4LiAkcmFkaXVzOjEwcHgpLiBEZWZhdWx0OiBmYWxzZVxuLy8gJGRpc2FibGVkIC0gV2UgY2FuIHNldCAkZGlzYWJsZWQ6dHJ1ZSB0byBjcmVhdGUgYSBkaXNhYmxlZCB0cmFuc3BhcmVudCBidXR0b24uIERlZmF1bHQ6IGZhbHNlXG4vLyAkYmctaG92ZXIgLSBCdXR0b24gSG92ZXIgQmFja2dyb3VuZCBDb2xvci4gRGVmYXVsdDogJGJ1dHRvbi1iZy1ob3ZlclxuLy8gJGJvcmRlci1jb2xvciAtIEJ1dHRvbiBCb3JkZXIgQ29sb3IuIERlZmF1bHQ6ICRidXR0b24tYm9yZGVyLWNvbG9yXG5AbWl4aW4gYnV0dG9uLXN0eWxlKCRiZzokYnV0dG9uLWJnLWNvbG9yLCAkcmFkaXVzOmZhbHNlLCAkZGlzYWJsZWQ6ZmFsc2UsICRiZy1ob3ZlcjpudWxsLCAkYm9yZGVyLWNvbG9yOm51bGwpIHtcblxuICAvLyBXZSBjb250cm9sIHdoaWNoIGJhY2tncm91bmQgc3R5bGVzIGFyZSB1c2VkLFxuICAvLyB0aGVzZSBjYW4gYmUgcmVtb3ZlZCBieSBzZXR0aW5nICRiZzpmYWxzZVxuICBAaWYgJGJnIHtcblxuICAgIEBpZiAkYmctaG92ZXIgPT0gbnVsbCB7XG4gICAgICAkYmctaG92ZXI6IGlmKCRiZyA9PSAkYnV0dG9uLWJnLWNvbG9yLCAkYnV0dG9uLWJnLWhvdmVyLCBzY2FsZS1jb2xvcigkYmcsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSk7XG4gICAgfVxuXG4gICAgQGlmICRib3JkZXItY29sb3IgPT0gbnVsbCB7XG4gICAgICAkYm9yZGVyLWNvbG9yOiBpZigkYmcgPT0gJGJ1dHRvbi1iZy1jb2xvciwgJGJ1dHRvbi1ib3JkZXItY29sb3IsIHNjYWxlLWNvbG9yKCRiZywgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpKTtcbiAgICB9XG5cbiAgICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuICAgICRiZy1ob3Zlci1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmctaG92ZXIpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctaG92ZXI7IH1cblxuICAgIC8vIFdlIGNvbnRyb2wgdGhlIHRleHQgY29sb3IgZm9yIHlvdSBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgICBjb2xvcjogaWYoJGJnLWxpZ2h0bmVzcyA+IDcwJSwgJGJ1dHRvbi1mb250LWNvbG9yLWFsdCwgJGJ1dHRvbi1mb250LWNvbG9yKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogaWYoJGJnLWhvdmVyLWxpZ2h0bmVzcyA+IDcwJSwgJGJ1dHRvbi1mb250LWNvbG9yLWFsdCwgJGJ1dHRvbi1mb250LWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi5cbiAgQGlmICRkaXNhYmxlZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6ICRidXR0b24tZGlzYWJsZWQtY3Vyc29yO1xuICAgIG9wYWNpdHk6ICRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7IH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBjb250cm9sIGhvdyBtdWNoIGJ1dHRvbiByYWRpdXMgaXMgdXNlZC5cbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkYnV0dG9uLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIHF1aWNrbHkgY3JlYXRlIGJ1dHRvbnMgd2l0aCBhIHNpbmdsZSBtaXhpbi4gQXMgQGphcmVkaGFyZHkgcHV0cyBpdCwgXCJ0aGUga2l0Y2hlbiBzaW5rIG1peGluXCJcbi8vXG4vLyAkcGFkZGluZyAtIFVzZWQgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucyBEZWZhdWx0OiAkYnV0dG9uLW1lZCB8fD0gcmVtLWNhbGMoMTIpXG4vLyAkYmcgLSBQcmltYXJ5IGNvbG9yIHNldCBpbiBzZXR0aW5ncyBmaWxlLiBEZWZhdWx0OiAkYnV0dG9uLWJnLlxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBidXR0b24gcmFkaXVzIHdoaWNoIGlzICRnbG9iYWwtcmFkaXVzIHx8IGV4cGxpY2l0bHkgc2V0IHJhZGl1cyBhbW91bnQgaW4gcHggKGV4LiAkcmFkaXVzOjEwcHgpLiBEZWZhdWx0OmZhbHNlLlxuLy8gJGZ1bGwtd2lkdGggLSBXZSBjYW4gc2V0ICRmdWxsLXdpZHRoOnRydWUgdG8gcmVtb3ZlIHNpZGUgcGFkZGluZyBleHRlbmQgd2lkdGguIERlZmF1bHQ6ZmFsc2UuXG4vLyAkZGlzYWJsZWQgLSBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi4gRGVmYXVsdDpmYWxzZS5cbi8vICRpcy1wcmVmaXggLSBOb3QgdXNlZD8gRGVmYXVsdDpmYWxzZS5cbi8vICRiZy1ob3ZlciAtIEJ1dHRvbiBIb3ZlciBDb2xvciAtIERlZmF1bHQgbnVsbCAtIHNlZSBidXR0b24tc3R5bGUgbWl4aW5cbi8vICRib3JkZXItY29sb3IgLSBCdXR0b24gQm9yZGVyIENvbG9yIC0gRGVmYXVsdCBudWxsIC0gc2VlIGJ1dHRvbi1zdHlsZSBtaXhpblxuLy8gJHRyYW5zaXRpb24gLSBXZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIHRoZSBiYWNrZ3JvdW5kLWNvbG9yIHRyYW5zaXRpb24gcHJvcGVydHkgLSBEZWZhdWx0OnRydWUuXG5AbWl4aW4gYnV0dG9uKCRwYWRkaW5nOiRidXR0b24tbWVkLCAkYmc6JGJ1dHRvbi1iZy1jb2xvciwgJHJhZGl1czpmYWxzZSwgJGZ1bGwtd2lkdGg6ZmFsc2UsICRkaXNhYmxlZDpmYWxzZSwgJGlzLXByZWZpeDpmYWxzZSwgJGJnLWhvdmVyOm51bGwsICRib3JkZXItY29sb3I6bnVsbCwgJHRyYW5zaXRpb246IHRydWUpIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLCAkZnVsbC13aWR0aCk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmcsICRyYWRpdXMsICRkaXNhYmxlZCwgJGJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yKTtcblxuICBAaWYgJHRyYW5zaXRpb24ge1xuICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xuICB9XG59XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJ1dHRvblwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzIHtcblxuICAgIC8vIERlZmF1bHQgc3R5bGVzIGFwcGxpZWQgb3V0c2lkZSBvZiBtZWRpYSBxdWVyeVxuICAgIGJ1dHRvbiwgLmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlO1xuXG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktY29sb3IsICRiZy1ob3Zlcjokc2Vjb25kYXJ5LWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IsICRiZy1ob3Zlcjokc3VjY2Vzcy1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYWxlcnQtY29sb3IsICRiZy1ob3ZlcjokYWxlcnQtYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRhbGVydC1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi53YXJuaW5nICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiR3YXJuaW5nLWNvbG9yLCAkYmctaG92ZXI6JHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAmLmluZm8gICAgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IsICRiZy1ob3ZlcjokaW5mby1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cblxuICAgICAgJi5sYXJnZSAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLWxyZyk7IH1cbiAgICAgICYuc21hbGwgIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi1zbWwpOyB9XG4gICAgICAmLnRpbnkgICB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tdG55KTsgfVxuICAgICAgJi5leHBhbmQgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzpudWxsLCAkZnVsbC13aWR0aDp0cnVlKTsgfVxuXG4gICAgICAmLmxlZnQtYWxpZ24gIHsgdGV4dC1hbGlnbjogbGVmdDsgdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDEyKTsgfVxuICAgICAgJi5yaWdodC1hbGlnbiB7IHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMik7IH1cblxuICAgICAgJi5yYWRpdXMgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOmZhbHNlLCAkcmFkaXVzOnRydWUpOyB9XG4gICAgICAmLnJvdW5kICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6ZmFsc2UsICRyYWRpdXM6JGJ1dHRvbi1yb3VuZCk7IH1cblxuICAgICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0geyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRidXR0b24tYmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JGJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokYnV0dG9uLWJvcmRlci1jb2xvcik7XG4gICAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi5zdWNjZXNzIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc3VjY2Vzcy1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3Zlcjokc3VjY2Vzcy1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi5hbGVydCB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGFsZXJ0LWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRhbGVydC1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGFsZXJ0LWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAgICYud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAgICYuaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JGluZm8tYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRpbmZvLWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy9maXJlZm94IDJweCBmaXhcbiAgICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge2JvcmRlcjowOyBwYWRkaW5nOjA7fVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWJhc2UoJHN0eWxlOmZhbHNlLCAkZGlzcGxheTppbmxpbmUtYmxvY2spO1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzpmYWxzZSwgJGZ1bGwtd2lkdGg6ZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXG4kaW5saW5lLWxpc3QtdG9wLW1hcmdpbjogMCAhZGVmYXVsdDtcbiRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luOiByZW0tY2FsYygtMjIpICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbGlzdC1tYXJnaW46IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcblxuJGlubGluZS1saXN0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cbiRpbmxpbmUtbGlzdC1vdmVyZmxvdzogaGlkZGVuICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGlubGluZSBsaXN0c1xuQG1peGluIGlubGluZS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW47XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luO1xuICBtYXJnaW46ICRpbmxpbmUtbGlzdC10b3AtbWFyZ2luIGF1dG8gJGlubGluZS1saXN0LWJvdHRvbS1tYXJnaW4gYXV0bztcbiAgb3ZlcmZsb3c6ICRpbmxpbmUtbGlzdC1vdmVyZmxvdztcbiAgcGFkZGluZzogJGlubGluZS1saXN0LXBhZGRpbmc7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogJGlubGluZS1saXN0LWRpc3BsYXk7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1saXN0LW1hcmdpbjtcbiAgICA+ICogeyBkaXNwbGF5OiAkaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTsgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJpbmxpbmUtbGlzdFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXMge1xuICAgIC5pbmxpbmUtbGlzdCB7XG4gICAgICBAaW5jbHVkZSBpbmxpbmUtbGlzdCgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWxhYmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHNcbiRsYWJlbC1wYWRkaW5nOiByZW0tY2FsYyg0IDggNCkgIWRlZmF1bHQ7XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbCB0ZXh0XG4kbGFiZWwtZm9udC1zaXppbmc6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsYWJlbC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGRlZmF1bHQgbGFiZWwgYmFzZS5cbkBtaXhpbiBsYWJlbC1iYXNlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGxhYmVsLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzaXplIHN0eWxlcy5cbi8vICRwYWRkaW5nIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgcGFkZGluZy4gRGVmYXVsdDogJGxhYmVsLXBhZGRpbmcgfHwgcmVtLWNhbGMoNCA4IDQpICFkZWZhdWx0XG4vLyAkdGV4dC1zaXplIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgdGV4dC1zaXplLiBEZWZhdWx0OiAkdGV4dC1zaXplIGZvdW5kIGluIHNldHRpbmdzXG5AbWl4aW4gbGFiZWwtc2l6ZSgkcGFkZGluZzokbGFiZWwtcGFkZGluZywgJHRleHQtc2l6ZTokbGFiZWwtZm9udC1zaXppbmcpIHtcbiAgQGlmICRwYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cbiAgQGlmICR0ZXh0LXNpemUgeyBmb250LXNpemU6ICR0ZXh0LXNpemU7IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzdHlsZXMuXG4vLyAkYmcgLSBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvciAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbi8vICRyYWRpdXMgLSBEZWZhdWx0OiBmYWxzZSwgT3B0aW9uczogdHJ1ZSwgc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwtc3R5bGUoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGNvbWVzIHRocm91Z2hcbiAgQGlmICRiZyB7XG5cbiAgICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICAgLy8gV2UgY29udHJvbCB0aGUgdGV4dCBjb2xvciBmb3IgeW91IGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgIEBpZiAkYmctbGlnaHRuZXNzIDwgNzAlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yLWFsdDsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yOyB9XG4gIH1cblxuICAvLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSByYWRpdXMgb24gbGFiZWxzLlxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRsYWJlbC1yYWRpdXMpOyB9XG4gIEBlbHNlIGlmICRyYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoJHJhZGl1cyk7IH1cblxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIGNsb3NlIGJ1dHRvbnMgdG8gYWxlcnRzXG4vLyAkcGFkZGluZyAtIERlZmF1bHQ6ICRsYWJlbC1wYWRkaW5nLFxuLy8gJHRleHQtc2l6ZSAtIERlZmF1bHQ6ICRsYWJlbC1mb250LXNpemluZyxcbi8vICRiZyAtIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWUgd2hpY2ggc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwoJHBhZGRpbmc6JGxhYmVsLXBhZGRpbmcsICR0ZXh0LXNpemU6JGxhYmVsLWZvbnQtc2l6aW5nLCAkYmc6JHByaW1hcnktY29sb3IsICRyYWRpdXM6ZmFsc2UpIHtcblxuICBAaW5jbHVkZSBsYWJlbC1iYXNlO1xuICBAaW5jbHVkZSBsYWJlbC1zaXplKCRwYWRkaW5nLCAkdGV4dC1zaXplKTtcbiAgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJGJnLCAkcmFkaXVzKTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImxhYmVsXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlcyB7XG4gICAgLmxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGxhYmVsLWJhc2U7XG4gICAgICBAaW5jbHVkZSBsYWJlbC1zaXplO1xuICAgICAgQGluY2x1ZGUgbGFiZWwtc3R5bGU7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsIHRydWUpOyB9XG4gICAgICAmLnJvdW5kIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsICRyYWRpdXM6MTAwMHB4KTsgfVxuXG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRhbGVydC1jb2xvcik7IH1cbiAgICAgICYud2FybmluZyAgIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgJi5pbmZvICAgICAgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkaW5mby1jb2xvcik7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGNhcHRpb24gc3R5bGVzXG4kb3JiaXQtY29udGFpbmVyLWJnOiBub25lICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tYmc6IHJnYmEoNTEsNTEsNTEsIC44KSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tcG9zaXRpb246IFwiYm90dG9tXCIgIWRlZmF1bHQ7IC8vIFN1cHBvcnRlZCB2YWx1ZXM6IFwiYm90dG9tXCIsIFwidW5kZXJcIlxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24taGVpZ2h0OiBhdXRvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGVmdC9yaWdodCBuYXYgc3R5bGVzXG4kb3JiaXQtbmF2LWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpbWVyIHN0eWxlc1xuJG9yYml0LXRpbWVyLWJnOiByZ2JhKDI1NSwyNTUsMjU1LDAuMykgIWRlZmF1bHQ7XG4kb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXI6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBidWxsZXQgbmF2IHN0eWxlc1xuJG9yYml0LWJ1bGxldC1uYXYtY29sb3I6ICRpcm9uICFkZWZhdWx0O1xuJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kb3JiaXQtYnVsbGV0LXJhZGl1czogcmVtLWNhbGMoOSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyB0aGUgc3R5bGUgb2Ygc2xpZGUgbnVtYmVyc1xuJG9yYml0LXNsaWRlLW51bWJlci1iZzogcmdiYSgwLDAsMCwwKSAhZGVmYXVsdDtcbiRvcmJpdC1zbGlkZS1udW1iZXItZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbiR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCIgIWRlZmF1bHQ7XG4kcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiICFkZWZhdWx0O1xuXG4vLyBIaWRlIGNvbnRyb2xzIG9uIHNtYWxsXG4kb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsOiB0cnVlICFkZWZhdWx0O1xuJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbDogdHJ1ZSAhZGVmYXVsdDtcbiRvcmJpdC10aW1lci1oaWRlLWZvci1zbWFsbDogdHJ1ZSAhZGVmYXVsdDtcblxuXG5AaW5jbHVkZSBleHBvcnRzKFwib3JiaXRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1vcmJpdC1jbGFzc2VzIHtcblxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICAgICAgZnJvbSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgQGtleWZyYW1lcyByb3RhdGUge1xuICAgICAgZnJvbSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogT3JiaXQgR3JhY2VmdWwgTG9hZGluZyAqL1xuICAgIC4jeyR3cmFwcGVyLWNsYXNzfSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgLy8gUHJldmVudCBidWxsZXRzIHNob3dpbmcgYmVmb3JlIC5vcmJpdC1jb250YWluZXIgaXMgbG9hZGVkXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIC8vIEhpZGUgYWxsIGxpc3QgaXRlbXNcbiAgICAgICAgbGksXG4gICAgICAgIGxpIC5vcmJpdC1jYXB0aW9uIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgIC8vIC4uLmV4Y2VwdCBmb3IgdGhlIGZpcnN0IG9uZVxuICAgICAgICBsaTpmaXJzdC1jaGlsZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICB9XG5cbiAgICAgIC5vcmJpdC1jb250YWluZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAvLyBTaG93IGltYWdlcyB3aGVuIC5vcmJpdC1jb250YWluZXIgaXMgbG9hZGVkXG4gICAgICAgIGxpIHsgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAub3JiaXQtY2FwdGlvbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIH1cbiAgICAgICAgLm9yYml0LWJ1bGxldHMgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPcmJpdCBwcmVsb2FkZXJcbiAgICAgIC4jeyRwcmVsb2FkZXItY2xhc3N9IHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hhcmNvYWwgJHdoaXRlO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDNweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5vcmJpdC1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogJG9yYml0LWNvbnRhaW5lci1iZztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLm9yYml0LXNsaWRlcy1jb250YWluZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvLyBQcmV2ZW50cyBpbWFnZXMgKGFuZCBjYXB0aW9ucykgZnJvbSBkaXNhcHBlYXJpbmcgYWZ0ZXIgZmlyc3Qgcm90YXRpb24gb24gQ2hyb21lIGZvciBBbmRyb2lkXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cbiAgICAgICAgaW1nIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgfVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHtcbiAgICAgICAgICAgIEBpZiAkb3JiaXQtY2FwdGlvbi1wb3NpdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uID09IFwidW5kZXJcIiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmc7XG4gICAgICAgICAgICBjb2xvcjogJG9yYml0LWNhcHRpb24tZm9udC1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJG9yYml0LWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgICAgICAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1zbGlkZS1udW1iZXItYmc7XG4gICAgICAgIGNvbG9yOiAkb3JiaXQtc2xpZGUtbnVtYmVyLWZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBzcGFuIHsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nO31cbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cblxuICAgICAgLm9yYml0LXRpbWVyIHtcbiAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuXG4gICAgICAgIC5vcmJpdC1wcm9ncmVzcyB7XG4gICAgICAgICAgQGlmICRvcmJpdC10aW1lci1zaG93LXByb2dyZXNzLWJhciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtdGltZXItYmc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBsYXkgYnV0dG9uXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBhdXNlIGJ1dHRvblxuICAgICAgICAmLnBhdXNlZCB7XG4gICAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXI6IGluc2V0IDhweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTRweDtcblxuICAgICAgICAgICAgJi5kYXJrIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRvaWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuXG4gICAgICAmOmhvdmVyIC5vcmJpdC10aW1lciA+IHNwYW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgICAvLyBMZXQncyBnZXQgdGhvc2UgY29udHJvbHMgdG8gYmUgcmlnaHQgaW4gdGhlIGNlbnRlciBvbiBlYWNoIHNpZGVcbiAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgLm9yYml0LW5leHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtbmF2LWJnO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogNDUlO1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LW5hdi1iZy1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXI6IGluc2V0IDEwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LXByZXYgeyAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LW5leHQgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvcjtcbiAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLTRweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9yYml0LWJ1bGxldHMtY29udGFpbmVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm9yYml0LWJ1bGxldHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0b3A6IDEwcHg7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJG9yYml0LWJ1bGxldC1uYXYtY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAvLyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtcmFkaXVzO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNnB4O1xuICAgICAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1yYWRpdXM7XG5cbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1idWxsZXQtbmF2LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvdWNoIHtcbiAgICAgIC5vcmJpdC1jb250YWluZXIge1xuICAgICAgICAub3JiaXQtcHJldixcbiAgICAgICAgLm9yYml0LW5leHQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG5cbiAgICAgIC5vcmJpdC1idWxsZXRzIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cblxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuXG4gICAgICAudG91Y2gge1xuICAgICAgICAub3JiaXQtY29udGFpbmVyIHtcbiAgICAgICAgICAub3JiaXQtcHJldixcbiAgICAgICAgICAub3JiaXQtbmV4dCB7IGRpc3BsYXk6IGluaGVyaXQ7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vcmJpdC1idWxsZXRzIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAub3JiaXQtc3RhY2stb24tc21hbGwge1xuICAgICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciB7aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7fVxuICAgICAgICAub3JiaXQtc2xpZGVzLWNvbnRhaW5lciA+ICoge1xuICAgICAgICAgIG1hcmdpbjowICAhaW1wb3J0YW50O1xuICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkb3JiaXQtdGltZXItaGlkZS1mb3Itc21hbGwge1xuICAgICAgICAgLm9yYml0LXRpbWVye2Rpc3BsYXk6IG5vbmU7fVxuICAgICAgfVxuICAgICAgQGlmICRvcmJpdC1uYXYtaGlkZS1mb3Itc21hbGwge1xuICAgICAgICAgLm9yYml0LW5leHQsLm9yYml0LXByZXZ7ZGlzcGxheTogbm9uZTt9XG4gICAgICB9XG4gICAgICBAaWYgJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbCB7XG4gICAgICAgICAub3JiaXQtYnVsbGV0c3tkaXNwbGF5OiBub25lO31cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdncmlkJztcblxuLy9cbi8vIEBuYW1lIF9yZXZlYWwuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbiRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN0eWxlIG9mIHRoZSByZXZlYWwgb3ZlcmxheS5cbiRyZXZlYWwtb3ZlcmxheS1iZzogcmdiYSgkYmxhY2ssIC40NSkgIWRlZmF1bHQ7XG4kcmV2ZWFsLW92ZXJsYXktYmctb2xkOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgbW9kYWwgaXRzZWxmLlxuJHJldmVhbC1tb2RhbC1iZzogJHdoaXRlICFkZWZhdWx0O1xuJHJldmVhbC1wb3NpdGlvbi10b3A6IHJlbS1jYWxjKDEwMCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWRlZmF1bHQtd2lkdGg6IDgwJSAhZGVmYXVsdDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkcm93LXdpZHRoICFkZWZhdWx0O1xuJHJldmVhbC1tb2RhbC1wYWRkaW5nOiByZW0tY2FsYygzMCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLC40KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSByZXZlYWwgY2xvc2UgYnV0dG9uXG4kcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDApICFkZWZhdWx0O1xuJHJldmVhbC1jbG9zZS10b3A6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiRyZXZlYWwtY2xvc2Utc2lkZTogcmVtLWNhbGMoMjIpICFkZWZhdWx0O1xuJHJldmVhbC1jbG9zZS1jb2xvcjogJGJhc2UgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgZGVmYXVsdCByYWRpdXMgdXNlZCB0aHJvdWdob3V0IHRoZSBjb3JlLlxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuJHJldmVhbC1yb3VuZDogJGdsb2JhbC1yb3VuZGVkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbW9kYWwgYm9yZGVyXG4kcmV2ZWFsLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kcmV2ZWFsLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJHJldmVhbC1ib3JkZXItY29sb3I6ICRzdGVlbCAhZGVmYXVsdDtcblxuJHJldmVhbC1tb2RhbC1jbGFzczogXCJyZXZlYWwtbW9kYWxcIiAhZGVmYXVsdDtcbiRjbG9zZS1yZXZlYWwtbW9kYWwtY2xhc3M6IFwiY2xvc2UtcmV2ZWFsLW1vZGFsXCIgIWRlZmF1bHQ7XG5cbi8vIFNldCBiYXNlIHotaW5kZXhcbiR6LWluZGV4LWJhc2U6IDEwMDU7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgdGhlIHJldmVhbCBiYWNrZ3JvdW5kIG92ZXJsYXkgc3R5bGVzXG5AbWl4aW4gcmV2ZWFsLWJnKCAkaW5jbHVkZS16LWluZGV4LXZhbHVlOiB0cnVlICkge1xuICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7IC8vIGFsbG93cyBtb2RhbCBiYWNrZ3JvdW5kIHRvIGV4dGVuZCBiZXlvbmQgd2luZG93IHBvc2l0aW9uXG4gIGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iZy1vbGQ7IC8vIEF1dG9wcmVmaXhlciBzaG91bGQgYmUgdXNlZCB0byBhdm9pZCBzdWNoIHZhcmlhYmxlcyBuZWVkZWQgd2hlbiBGb3VuZGF0aW9uIGZvciBTaXRlcyBjYW4gZG8gc28gaW4gdGhlIG5lYXIgZnV0dXJlLlxuICBiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmc7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiBpZiggJGluY2x1ZGUtei1pbmRleC12YWx1ZSwgJHotaW5kZXgtYmFzZSAtIDEsIGF1dG8gKTtcbiAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgc3RydWN0dXJlIG9mIGEgcmV2ZWFsIG1vZGFsXG4vL1xuLy8gJGJhc2Utc3R5bGUgLSBQcm92aWRlcyByZXZlYWwgYmFzZSBzdHlsZXMsIGNhbiBiZSBzZXQgdG8gZmFsc2UgdG8gb3ZlcnJpZGUuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkd2lkdGggLSBTZXRzIHJldmVhbCB3aWR0aCBEZWZhdWx0OiAkcmV2ZWFsLWRlZmF1bHQtd2lkdGggfHwgODAlXG4vL1xuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlKCAkYmFzZS1zdHlsZTogdHJ1ZSwgJHdpZHRoOiRyZXZlYWwtZGVmYXVsdC13aWR0aCwgJG1heC13aWR0aDokcmV2ZWFsLW1heC13aWR0aCwgJGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzKSB7XG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6ICR6LWluZGV4LWJhc2U7XG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgbWluLWhlaWdodDoxMDB2aDtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgICAuY29sdW1uLCAuY29sdW1ucyB7IG1pbi13aWR0aDogMDsgfVxuXG4gICAgLy8gR2V0IHJpZCBvZiBtYXJnaW4gZnJvbSBmaXJzdCBhbmQgbGFzdCBlbGVtZW50IGluc2lkZSBtb2RhbFxuICAgID4gOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgfVxuXG4gIEBpZiAkd2lkdGgge1xuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6ICR3aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHJldmVhbCBtb2RhbCBkZWZhdWx0c1xuLy9cbi8vICRiZyAtIFNldHMgYmFja2dyb3VuZCBjb2xvciBvZiByZXZlYWwgbW9kYWwuIERlZmF1bHQ6ICRyZXZlYWwtbW9kYWwtYmcgfHwgJHdoaXRlXG4vLyAkcGFkZGluZyAtIFBhZGRpbmcgdG8gYXBwbHkgdG8gcmV2ZWFsIG1vZGFsLiBEZWZhdWx0OiAkcmV2ZWFsLW1vZGFsLXBhZGRpbmcuXG4vLyAkYm9yZGVyIC0gQ2hvb3NlIHdoZXRoZXIgcmV2ZWFsIHVzZXMgYSBib3JkZXIuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkYm9yZGVyLXN0eWxlIC0gU2V0IHJldmVhbCBib3JkZXIgc3R5bGUuIERlZmF1bHQ6ICRyZXZlYWwtYm9yZGVyLXN0eWxlIHx8IHNvbGlkXG4vLyAkYm9yZGVyLXdpZHRoIC0gV2lkdGggb2YgYm9yZGVyIChpLmUuIDFweCkuIERlZmF1bHQ6ICRyZXZlYWwtYm9yZGVyLXdpZHRoLlxuLy8gJGJvcmRlci1jb2xvciAtIENvbG9yIG9mIGJvcmRlci4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItY29sb3IuXG4vLyAkYm94LXNoYWRvdyAtIENob29zZSB3aGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIHRoZSBkZWZhdWx0IGJveC1zaGFkb3cuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkcmFkaXVzIC0gSWYgdHJ1ZSwgc2V0IHRvIG1vZGFsIHJhZGl1cyB3aGljaCBpcyAkZ2xvYmFsLXJhZGl1cyB8fCBleHBsaWNpdGx5IHNldCByYWRpdXMgYW1vdW50IGluIHB4IChleC4gJHJhZGl1czoxMHB4KS4gRGVmYXVsdDogZmFsc2Vcbi8vICR0b3Atb2Zmc2V0IC0gRGVmYXVsdDogJHJldmVhbC1wb3NpdGlvbi10b3AgfHwgNTBweFxuQG1peGluIHJldmVhbC1tb2RhbC1zdHlsZShcbiAgJGJnOmZhbHNlLFxuICAkcGFkZGluZzpmYWxzZSxcbiAgJGJvcmRlcjpmYWxzZSxcbiAgJGJvcmRlci1zdHlsZTokcmV2ZWFsLWJvcmRlci1zdHlsZSxcbiAgJGJvcmRlci13aWR0aDokcmV2ZWFsLWJvcmRlci13aWR0aCxcbiAgJGJvcmRlci1jb2xvcjokcmV2ZWFsLWJvcmRlci1jb2xvcixcbiAgJGJveC1zaGFkb3c6ZmFsc2UsXG4gICRyYWRpdXM6ZmFsc2UsXG4gICR0b3Atb2Zmc2V0OmZhbHNlKSB7XG5cbiAgQGlmICRiZyB7IGJhY2tncm91bmQtY29sb3I6ICRiZzsgfVxuICBAaWYgJHBhZGRpbmcgIT0gZmFsc2UgeyBwYWRkaW5nOiAkcGFkZGluZzsgfVxuXG4gIEBpZiAkYm9yZGVyIHsgYm9yZGVyOiAkYm9yZGVyLXN0eWxlICRib3JkZXItd2lkdGggJGJvcmRlci1jb2xvcjsgfVxuXG4gIC8vIFdlIGNhbiBjaG9vc2Ugd2hldGhlciBvciBub3QgdG8gaW5jbHVkZSB0aGUgZGVmYXVsdCBib3gtc2hhZG93LlxuICBAaWYgJGJveC1zaGFkb3cge1xuICAgIGJveC1zaGFkb3c6ICRyZXZlYWwtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFdlIGNhbiBjb250cm9sIGhvdyBtdWNoIHJhZGl1cyBpcyB1c2VkIG9uIHRoZSBtb2RhbFxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRyZXZlYWwtcmFkaXVzKTsgfVxuICBAZWxzZSBpZiAkcmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRyYWRpdXMpOyB9XG5cbiAgQGlmICR0b3Atb2Zmc2V0IHtcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICB0b3A6ICR0b3Atb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgYSBjbG9zZSBidXR0b24gZm9yIHRoZSByZXZlYWwgbW9kYWxcbi8vXG4vLyAkY29sb3IgLSBEZWZhdWx0OiAkcmV2ZWFsLWNsb3NlLWNvbG9yIHx8ICRiYXNlXG5AbWl4aW4gcmV2ZWFsLWNsb3NlKCRjb2xvcjokcmV2ZWFsLWNsb3NlLWNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xuICBmb250LXNpemU6ICRyZXZlYWwtY2xvc2UtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJHJldmVhbC1jbG9zZS13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJHJldmVhbC1jbG9zZS10b3A7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRyZXZlYWwtY2xvc2Utc2lkZTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcInJldmVhbFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXJldmVhbC1jbGFzc2VzIHtcblxuICAgIC8vIFJldmVhbCBNb2RhbHNcbiAgICAucmV2ZWFsLW1vZGFsLWJnIHsgQGluY2x1ZGUgcmV2ZWFsLWJnOyB9XG5cbiAgICAuI3skcmV2ZWFsLW1vZGFsLWNsYXNzfSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1zdHlsZShcbiAgICAgICAgJGJnOiRyZXZlYWwtbW9kYWwtYmcsXG4gICAgICAgICRwYWRkaW5nOiRyZXZlYWwtbW9kYWwtcGFkZGluZyxcbiAgICAgICAgJGJvcmRlcjp0cnVlLFxuICAgICAgICAkYm94LXNoYWRvdzp0cnVlLFxuICAgICAgICAkcmFkaXVzOmZhbHNlLFxuICAgICAgICAkdG9wLW9mZnNldDokcmV2ZWFsLXBvc2l0aW9uLXRvcFxuICAgICAgKTtcblxuICAgICAgJi5yYWRpdXMgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoJHJhZGl1czp0cnVlKTsgfVxuICAgICAgJi5yb3VuZCAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoJHJhZGl1czokcmV2ZWFsLXJvdW5kKTsgfVxuICAgICAgJi5jb2xsYXBzZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1zdHlsZSgkcGFkZGluZzowKTsgfVxuICAgICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCAzMCUpOyB9XG4gICAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDQwJSk7IH1cbiAgICAgICYubWVkaXVtICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA2MCUpOyB9XG4gICAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDcwJSk7IH1cbiAgICAgICYueGxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDk1JSk7IH1cbiAgICAgICYuZnVsbCB7XG4gICAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCAxMDAlKTtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6MTAwdmg7XG4gICAgICAgIHRvcDowO1xuICAgICAgfVxuXG4gICAgICAvLyBNb2RhbHMgcHVzaGVkIHRvIGJhY2tcbiAgICAgICYudG9iYWNrIHtcbiAgICAgICAgei1pbmRleDogJHotaW5kZXgtYmFzZSAtIDI7XG4gICAgICB9XG5cbiAgICAgIC4jeyRjbG9zZS1yZXZlYWwtbW9kYWwtY2xhc3N9IHsgQGluY2x1ZGUgcmV2ZWFsLWNsb3NlOyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHBhZGRpbmcuXG4kc2lkZS1uYXYtcGFkZGluZzogcmVtLWNhbGMoMTQgMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpc3Qgc3R5bGVzLlxuJHNpZGUtbmF2LWxpc3QtdHlwZTogbm9uZSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saXN0LXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpc3QtbWFyZ2luOiByZW0tY2FsYygwIDAgNyAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGluayBzdHlsZXMuXG4kc2lkZS1uYXYtbGluay1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU6IHNjYWxlLWNvbG9yKCRzaWRlLW5hdi1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAzMCUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRzaWRlLW5hdi1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAzMCUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstYmctaG92ZXI6IGhzbGEoMCwgMCwgMCwgLjAyNSkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGluay1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGluay1wYWRkaW5nOiByZW0tY2FsYyg3IDE0KSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRzaWRlLW5hdi1mb250LXdlaWdodC1hY3RpdmU6ICRzaWRlLW5hdi1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRzaWRlLW5hdi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1mYW1pbHktYWN0aXZlOiAkc2lkZS1uYXYtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRpbmcgc3R5bGVzLlxuJHNpZGUtbmF2LWhlYWRpbmctY29sb3I6ICRzaWRlLW5hdi1saW5rLWNvbG9yICFkZWZhdWx0O1xuJHNpZGUtbmF2LWhlYWRpbmctZm9udC1zaXplOiAkc2lkZS1uYXYtZm9udC1zaXplICFkZWZhdWx0O1xuJHNpZGUtbmF2LWhlYWRpbmctZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtaGVhZGluZy10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzXG4kc2lkZS1uYXYtZGl2aWRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZGl2aWRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZGl2aWRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAxMCUpICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuXG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBzaWRlLW5hdlxuLy9cbi8vICRkaXZpZGVyLWNvbG9yIC0gQm9yZGVyIGNvbG9yIG9mIGRpdmlkZXIuIERlZmF1bHQ6ICRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yLlxuLy8gJGZvbnQtc2l6ZSAtIEZvbnQgc2l6ZSBvZiBuYXYgaXRlbXMuIERlZmF1bHQ6ICRzaWRlLW5hdi1mb250LXNpemUuXG4vLyAkbGluay1jb2xvciAtIENvbG9yIG9mIG5hdmlnYXRpb24gbGlua3MuIERlZmF1bHQ6ICRzaWRlLW5hdi1saW5rLWNvbG9yLlxuLy8gJGxpbmstY29sb3ItaG92ZXIgLSBDb2xvciBvZiBuYXZpZ2F0aW9uIGxpbmtzIHdoZW4gaG92ZXJlZC4gRGVmYXVsdDogJHNpZGUtbmF2LWxpbmstY29sb3ItaG92ZXIuXG5AbWl4aW4gc2lkZS1uYXYoXG4gICRkaXZpZGVyLWNvbG9yOiRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yLFxuICAkZm9udC1zaXplOiRzaWRlLW5hdi1mb250LXNpemUsXG4gICRsaW5rLWNvbG9yOiRzaWRlLW5hdi1saW5rLWNvbG9yLFxuICAkbGluay1jb2xvci1hY3RpdmU6JHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlLFxuICAkbGluay1jb2xvci1ob3Zlcjokc2lkZS1uYXYtbGluay1jb2xvci1ob3ZlcixcbiAgJGxpbmstYmctaG92ZXI6JHNpZGUtbmF2LWxpbmstYmctaG92ZXIpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkc2lkZS1uYXYtZm9udC1mYW1pbHk7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRzaWRlLW5hdi1saXN0LXBvc2l0aW9uO1xuICBsaXN0LXN0eWxlLXR5cGU6ICRzaWRlLW5hdi1saXN0LXR5cGU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJHNpZGUtbmF2LXBhZGRpbmc7XG5cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHNpZGUtbmF2LWZvbnQtd2VpZ2h0O1xuICAgIG1hcmdpbjogJHNpZGUtbmF2LWxpc3QtbWFyZ2luO1xuXG4gICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46ICRzaWRlLW5hdi1saW5rLW1hcmdpbjtcbiAgICAgIHBhZGRpbmc6ICRzaWRlLW5hdi1saW5rLXBhZGRpbmc7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWJnLWhvdmVyO1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3ItaG92ZXI7XG4gICAgICB9XG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgPiBhOmZpcnN0LWNoaWxkOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgZm9udC1mYW1pbHk6ICRzaWRlLW5hdi1mb250LWZhbWlseS1hY3RpdmU7XG4gICAgICBmb250LXdlaWdodDogJHNpZGUtbmF2LWZvbnQtd2VpZ2h0LWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmRpdmlkZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRpdmlkZXItY29sb3I7XG4gICAgICBib3JkZXItdG9wOiAkc2lkZS1uYXYtZGl2aWRlci1zaXplICRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJi5oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiAkc2lkZS1uYXYtaGVhZGluZy1jb2xvcjtcbiAgICAgIGZvbnQ6IHtcbiAgICAgICAgc2l6ZTogJHNpZGUtbmF2LWhlYWRpbmctZm9udC1zaXplO1xuICAgICAgICB3ZWlnaHQ6ICRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtd2VpZ2h0O1xuICAgICAgfVxuICAgICAgdGV4dC10cmFuc2Zvcm06ICRzaWRlLW5hdi1oZWFkaW5nLXRleHQtdHJhbnNmb3JtO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwic2lkZS1uYXZcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlcyB7XG4gICAgLnNpZGUtbmF2IHtAaW5jbHVkZSBzaWRlLW5hdjt9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAbmFtZSBfc3ViLW5hdi5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xuLy9cblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbWFyZ2luIGFuZCBwYWRkaW5nXG4kc3ViLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoLTQgMCAxOCkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGVmaW5pdGlvblxuJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1mb250LWNvbG9yOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kc3ViLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRzdWItbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDMgMTYpICFkZWZhdWx0O1xuJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTI1JSkgIWRlZmF1bHQ7XG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGFjdGl2ZSBpdGVtIHN0eWxlc1xuXG4kc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1hY3RpdmUtYmcsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuJHN1Yi1uYXYtYWN0aXZlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtcGFkZGluZzogJHN1Yi1uYXYtcGFkZGluZyAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1jdXJzb3I6IGRlZmF1bHQgIWRlZmF1bHQ7XG5cbiRzdWItbmF2LWl0ZW0tZGl2aWRlcjogXCJcIiAhZGVmYXVsdDtcbiRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW46IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cblxuLy8gQ3JlYXRlIGEgc3ViLW5hdiBpdGVtXG4vL1xuLy8gJGZvbnQtY29sb3IgLSBGb250IGNvbG9yLiBEZWZhdWx0OiAkc3ViLW5hdi1mb250LWNvbG9yLlxuLy8gJGZvbnQtc2l6ZSAtIEZvbnQgc2l6ZS4gRGVmYXVsdDogJHN1Yi1uYXYtZm9udC1zaXplLlxuLy8gJGFjdGl2ZS1iZyAtIEJhY2tncm91bmQgb2YgYWN0aXZlIG5hdiBpdGVtLiBEZWZhdWx0OiAkc3ViLW5hdi1hY3RpdmUtYmcuXG4vLyAkYWN0aXZlLWJnLWhvdmVyIC0gQmFja2dyb3VuZCBvZiBhY3RpdmUgbmF2IGl0ZW0sIHdoZW4gaG92ZXJlZC4gRGVmYXVsdDogJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyLlxuQG1peGluIHN1Yi1uYXYoXG4gICRmb250LWNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yLFxuICAkZm9udC1zaXplOiAkc3ViLW5hdi1mb250LXNpemUsXG4gICRhY3RpdmUtYmc6ICRzdWItbmF2LWFjdGl2ZS1iZyxcbiAgJGFjdGl2ZS1iZy1ob3ZlcjogJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICRzdWItbmF2LWxpc3QtbWFyZ2luO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogJHN1Yi1uYXYtbGlzdC1wYWRkaW5nLXRvcDtcbiAgd2lkdGg6IGF1dG87XG5cbiAgZHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICBkdCxcbiAgZGQsXG4gIGxpIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgIGZvbnQtZmFtaWx5OiAkc3ViLW5hdi1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRzdWItbmF2LWZvbnQtd2VpZ2h0O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogcmVtLWNhbGMoMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yO1xuICAgICAgcGFkZGluZzogJHN1Yi1uYXYtcGFkZGluZztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogJHN1Yi1uYXYtdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRzdWItbmF2LWZvbnQtY29sb3ItaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgYSB7XG4gICAgICBAaW5jbHVkZSByYWRpdXMoJHN1Yi1uYXYtYm9yZGVyLXJhZGl1cyk7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWJnO1xuICAgICAgY29sb3I6ICRzdWItbmF2LWFjdGl2ZS1jb2xvcjtcbiAgICAgIGN1cnNvcjogJHN1Yi1uYXYtYWN0aXZlLWN1cnNvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1hY3RpdmUtcGFkZGluZztcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtYmctaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRzdWItbmF2LWl0ZW0tZGl2aWRlciAhPSBcIlwiIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiN7JHN1Yi1uYXYtaXRlbS1kaXZpZGVyfVwiO1xuICAgICAgICBtYXJnaW46IDAgJHN1Yi1uYXYtaXRlbS1kaXZpZGVyLW1hcmdpbjtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzdWItbmF2XCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXMge1xuICAgIC5zdWItbmF2IHsgQGluY2x1ZGUgc3ViLW5hdjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQG5hbWUgX3RhYmxlcy5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xuLy9cblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtdGFibGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xuJHRhYmxlLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZXZlbi1yb3ctYmc6ICRzbm93ICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZVxuJHRhYmxlLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm8gIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXG4kdGFibGUtaGVhZC1iZzogJHdoaXRlLXNtb2tlICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGZvb3Qgc3R5bGVzXG4kdGFibGUtZm9vdC1iZzogJHRhYmxlLWhlYWQtYmcgIWRlZmF1bHQ7XG4kdGFibGUtZm9vdC1mb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZm9vdC1mb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kdGFibGUtZm9vdC1wYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBjYXB0aW9uXG4kdGFibGUtY2FwdGlvbi1iZzogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LWNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWNhcHRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgcm93IHBhZGRpbmcgYW5kIGZvbnQgc3R5bGVzXG4kdGFibGUtcm93LXBhZGRpbmc6IHJlbS1jYWxjKDkgMTApICFkZWZhdWx0O1xuJHRhYmxlLXJvdy1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0YWJsZS1yb3ctZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcbiR0YWJsZS1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBhcmUgZm9yIGNvbnRyb2xsaW5nIHRoZSBsYXlvdXQsIGRpc3BsYXkgYW5kIG1hcmdpbiBvZiB0YWJsZXNcbiR0YWJsZS1sYXlvdXQ6IGF1dG8gIWRlZmF1bHQ7XG4kdGFibGUtZGlzcGxheTogdGFibGUtY2VsbCAhZGVmYXVsdDtcbiR0YWJsZS1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbkBtaXhpbiB0YWJsZSB7XG4gIGJhY2tncm91bmQ6ICR0YWJsZS1iZztcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXN0eWxlICR0YWJsZS1ib3JkZXItc2l6ZSAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAkdGFibGUtbWFyZ2luLWJvdHRvbTtcbiAgdGFibGUtbGF5b3V0OiAkdGFibGUtbGF5b3V0O1xuXG4gIGNhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1jYXB0aW9uLWJnO1xuICAgIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1mb250LWNvbG9yO1xuICAgIGZvbnQ6IHtcbiAgICAgIHNpemU6ICR0YWJsZS1jYXB0aW9uLWZvbnQtc2l6ZTtcbiAgICAgIHdlaWdodDogJHRhYmxlLWNhcHRpb24tZm9udC13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJnO1xuXG4gICAgdHIge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICR0YWJsZS1oZWFkLWZvbnQtd2VpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iZztcblxuICAgIHRyIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAkdGFibGUtZm9vdC1mb250LXNpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkdGFibGUtZm9vdC1mb250LXdlaWdodDtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWZvb3QtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0ciB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgY29sb3I6ICR0YWJsZS1yb3ctZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogJHRhYmxlLXJvdy1mb250LXNpemU7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcm93LXBhZGRpbmc7XG4gICAgICB0ZXh0LWFsaWduOiAkZGVmYXVsdC1mbG9hdDtcbiAgICB9XG5cbiAgICAmLmV2ZW4sXG4gICAgJi5hbHQsXG4gICAgJjpudGgtb2YtdHlwZShldmVuKSB7IGJhY2tncm91bmQ6ICR0YWJsZS1ldmVuLXJvdy1iZzsgfVxuICB9XG5cbiAgdGhlYWQgdHIgdGgsXG4gIHRmb290IHRyIHRoLFxuICB0Zm9vdCB0ciB0ZCxcbiAgdGJvZHkgdHIgdGgsXG4gIHRib2R5IHRyIHRkLFxuICB0ciB0ZCB7IGRpc3BsYXk6ICR0YWJsZS1kaXNwbGF5OyBsaW5lLWhlaWdodDogJHRhYmxlLWxpbmUtaGVpZ2h0OyB9XG59XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcInRhYmxlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdGFibGUtY2xhc3NlcyB7XG4gICAgdGFibGUge1xuICAgICAgQGluY2x1ZGUgdGFibGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZ3JpZCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4kdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tYmctY29sb3I6ICRzaWx2ZXIgIWRlZmF1bHQ7XG4kdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTYlKSAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldCAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWZvbnQtY29sb3I6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvciAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCkgIWRlZmF1bHQ7XG4kdGFicy1jb250ZW50LXBhZGRpbmc6ICgkY29sdW1uLWd1dHRlci8yKSAhZGVmYXVsdDtcblxuJHRhYnMtdmVydGljYWwtbmF2aWdhdGlvbi1tYXJnaW4tYm90dG9tOiAxLjI1cmVtICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwidGFiXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdGFicy1jbGFzc2VzIHtcbiAgICAudGFicyB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgZGQsIC50YWItdGl0bGUge1xuICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU7XG4gICAgICAgICAgcGFkZGluZzogJHRhYnMtbmF2aWdhdGlvbi1wYWRkaW5nICR0YWJzLW5hdmlnYXRpb24tcGFkZGluZyAqIDI7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbG9yOiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWZvbnQtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5yYWRpdXMge1xuICAgICAgICBkZDpmaXJzdC1jaGlsZCwgLnRhYjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYSB7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgICBkZDpsYXN0LWNoaWxkLCAudGFiOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIGRkLCAudGFiLXRpdGxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICA+IC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICBwYWRkaW5nOiAkdGFicy1jb250ZW50LXBhZGRpbmcgMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICYuYWN0aXZlIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBub25lOyB9XG4gICAgICAgICYuY29udGFpbmVkIHsgcGFkZGluZzogJHRhYnMtY29udGVudC1wYWRkaW5nOyB9XG4gICAgICB9XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgID4gLmNvbnRlbnQgeyBwYWRkaW5nOiAwICR0YWJzLWNvbnRlbnQtcGFkZGluZzsgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAudGFicyB7XG4gICAgICAgICYudmVydGljYWwge1xuICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAkdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b207XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRhYnMtY29udGVudCB7XG4gICAgICAgICYudmVydGljYWwge1xuICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC0xcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMXJlbTtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5uby1qcyB7XG4gICAgICAudGFicy1jb250ZW50ID4gLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZ3JpZCc7XG5AaW1wb3J0ICdidXR0b25zJztcbkBpbXBvcnQgJ2Zvcm1zJztcblxuLy9cbi8vIFRvcCBCYXIgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXJcbiR0b3BiYXItYmctY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWJnOiAkdG9wYmFyLWJnLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxuJHRvcGJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KSAhZGVmYXVsdDtcbiR0b3BiYXItbWFyZ2luLWJvdHRvbTogMCAhZGVmYXVsdDtcblxuLy8gQ29udHJvbGxpbmcgdGhlIHN0eWxlcyBmb3IgdGhlIHRpdGxlIGluIHRoZSB0b3AgYmFyXG4kdG9wYmFyLXRpdGxlLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNykgIWRlZmF1bHQ7XG5cbi8vIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdlxuJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstY29sb3ItaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstaG92ZXItbGlnaHRuZXNzOiAtMTAlICFkZWZhdWx0OyAvLyBEYXJrZW4gYnkgMTAlXG4kdG9wYmFyLWxpbmstYmc6ICR0b3BiYXItYmcgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctaG92ZXI6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICRjaGFyY29hbCAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1iZy1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3Zlcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay10ZXh0LXRyYW5zZm9ybTogbm9uZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1wYWRkaW5nOiAoJHRvcGJhci1oZWlnaHQgLyAzKSAhZGVmYXVsdDtcbiR0b3BiYXItYmFjay1saW5rLXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1kcm9wZG93bi1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kdG9wYmFyLWJ1dHRvbi1mb250LXNpemU6IC43NXJlbSAhZGVmYXVsdDtcbiR0b3BiYXItYnV0dG9uLXRvcDogN3B4ICFkZWZhdWx0O1xuXG4vLyBTdHlsZSB0aGUgdG9wIGJhciBkcm9wZG93biBlbGVtZW50c1xuJHRvcGJhci1kcm9wZG93bi1iZzogJG9pbCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yLWhvdmVyOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXIgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXI6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4ICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhOiAuNCAhZGVmYXVsdDtcblxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1jb2xvcjogJG1vbnNvb24gIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWJnOiAkb2lsICFkZWZhdWx0O1xuXG4vLyBUb3AgbWVudSBpY29uIHN0eWxlc1xuJHRvcGJhci1tZW51LWxpbmstdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtbGluay1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibyAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibyAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uOiAkb3Bwb3NpdGUtZGlyZWN0aW9uICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gJGRlZmF1bHQtZmxvYXQgZm9yIGEgbGVmdCBtZW51IGljb25cblxuLy8gVHJhbnNpdGlvbnMgYW5kIGJyZWFrcG9pbnQgc3R5bGVzXG4kdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zICFkZWZhdWx0O1xuLy8gVXNpbmcgcmVtLWNhbGMgZm9yIHRoZSBiZWxvdyBicmVha3BvaW50IGNhdXNlcyBpc3N1ZXMgd2l0aCB0b3AgYmFyXG4kdG9wYmFyLWJyZWFrcG9pbnQ6ICN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9ICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gOTk5OXB4IGZvciBhbHdheXMgbW9iaWxlIGxheW91dFxuJHRvcGJhci1tZWRpYS1xdWVyeTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHRvcGJhci1icmVha3BvaW50KX0pXCI7XG5cbi8vIFRvcC1iYXIgaW5wdXQgc3R5bGVzXG4kdG9wYmFyLWlucHV0LWhlaWdodDogcmVtLWNhbGMoMjgpICFkZWZhdWx0O1xuXG4vLyBEaXZpZGVyIFN0eWxlc1xuJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpICFkZWZhdWx0O1xuJHRvcGJhci1kaXZpZGVyLWJvcmRlci10b3A6IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNTAlKSAhZGVmYXVsdDtcblxuLy8gU3RpY2t5IENsYXNzXG4kdG9wYmFyLXN0aWNreS1jbGFzczogXCIuc3RpY2t5XCIgIWRlZmF1bHQ7XG4kdG9wYmFyLWFycm93czogdHJ1ZSAhZGVmYXVsdDsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSB0cmlhbmdsZSBpY29uIGZyb20gdGhlIG1lbnUgaXRlbVxuJHRvcGJhci1kcm9wZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgXFwwMGJiID4+IHRleHQgZnJvbSBkcm9wZG93biBzdWJuYXZpZ2F0aW9uIGxpXG5cbi8vIEFjY2Vzc2liaWxpdHkgbWl4aW5zIGZvciBoaWRpbmcgYW5kIHNob3dpbmcgdGhlIG1lbnUgZHJvcGRvd24gaXRlbXNcbkBtaXhpbiB0b3BiYXItaGlkZS1kcm9wZG93biB7XG4gIC8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuIGJ5IGRlZmF1bHQsIGJ1dCB2aXNpYmxlIHdoZW4gZm9jdXNlZC5cbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlKCk7XG59XG5cbkBtaXhpbiB0b3BiYXItc2hvdy1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmYoKTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IC8vIFJlc2V0IHRoZSBwb3NpdGlvbiBmcm9tIHN0YXRpYyB0byBhYnNvbHV0ZVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwidG9wLWJhclwiKSB7XG5cbiAgQGlmICRpbmNsdWRlLWh0bWwtdG9wLWJhci1jbGFzc2VzIHtcblxuICAgIC8vIFVzZWQgdG8gcHJvdmlkZSBtZWRpYSBxdWVyeSB2YWx1ZXMgZm9yIGphdmFzY3JpcHQgY29tcG9uZW50cy5cbiAgICAvLyBUaGlzIGNsYXNzIGlzIGdlbmVyYXRlZCBkZXNwaXRlIHRoZSB2YWx1ZSBvZiAkaW5jbHVkZS1odG1sLXRvcC1iYXItY2xhc3Nlc1xuICAgIC8vIHRvIGVuc3VyZSB3aWR0aCBjYWxjdWxhdGlvbnMgd29yayBjb3JyZWN0bHkuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXRvcGJhciB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR0b3BiYXItbWVkaWEtcXVlcnkpICsgXCIvXCI7XG4gICAgICB3aWR0aDogJHRvcGJhci1icmVha3BvaW50O1xuICAgIH1cblxuICAgIC8qIFdyYXBwZWQgYXJvdW5kIC50b3AtYmFyIHRvIGNvbnRhaW4gdG8gZ3JpZCB3aWR0aCAqL1xuICAgIC5jb250YWluLXRvLWdyaWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnO1xuXG4gICAgICAudG9wLWJhciB7IG1hcmdpbi1ib3R0b206ICR0b3BiYXItbWFyZ2luLWJvdHRvbTsgfVxuICAgIH1cblxuICAgIC8vIFdyYXBwZWQgYXJvdW5kIC50b3AtYmFyIHRvIG1ha2UgaXQgc3RpY2sgdG8gdGhlIHRvcFxuICAgIC5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICAgICYuZXhwYW5kZWQ6bm90KC50b3AtYmFyKSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLnRpdGxlLWFyZWEge1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgfVxuICAgICAgICAvLyBFbnN1cmUgeW91IGNhbiBzY3JvbGwgdGhlIG1lbnUgb24gc21hbGwgc2NyZWVuc1xuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICB6LWluZGV4OiA5ODtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHRvcGJhci1tYXJnaW4tYm90dG9tO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLy8gVG9wYmFyIEdsb2JhbCBsaXN0IFN0eWxlc1xuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAucm93IHsgbWF4LXdpZHRoOiBub25lOyB9XG5cbiAgICAgIGZvcm0sXG4gICAgICBpbnB1dCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAgICAgaW5wdXQge1xuICAgICAgICBmb250LXNpemU6ICR0b3BiYXItYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWlucHV0LWhlaWdodDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4zNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IC4zNXJlbTtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbiwgYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAuMzVyZW0gKyByZW0tY2FsYygxKTtcbiAgICAgICAgcGFkZGluZy10b3A6IC4zNXJlbSArIHJlbS1jYWxjKDEpO1xuICAgICAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vIHRvcDogLTFweDtcblxuICAgICAgICAvLyBDb3JyZWN0cyBhIHNsaWdodCBtaXNhbGlnbm1lbnQgd2hlbiBwdXQgbmV4dCB0byBhbiBpbnB1dCBmaWVsZFxuICAgICAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVGl0bGUgQXJlYVxuICAgICAgLnRpdGxlLWFyZWEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLm5hbWUge1xuICAgICAgICBmb250LXNpemU6ICRyZW0tYmFzZTtcbiAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAvLyBAaWYgJHRvcGJhci1tZW51LWljb24tcG9zaXRpb24gPT0gJGRlZmF1bHQtZmxvYXQge2Zsb2F0OiAkb3Bwb3NpdGUtZGlyZWN0aW9uO31cblxuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgcCwgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci10aXRsZS13ZWlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gTWVudSB0b2dnbGUgYnV0dG9uIG9uIHNtYWxsIGRldmljZXNcbiAgICAgIC50b2dnbGUtdG9wYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9ufTogMDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbWVudS1saW5rLXdlaWdodDtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJHRvcGJhci1tZW51LWxpbmstdHJhbnNmb3JtO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWRkaW5nIHRoZSBjbGFzcyBcIm1lbnUtaWNvblwiIHdpbGwgYWRkIHRoZSAzLWxpbmUgaWNvbiBwZW9wbGUgbG92ZSBhbmQgYWRvcmUuXG4gICAgICAgICYubWVudS1pY29uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICAgICAgICB0b3A6IDUwJTtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTU4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1tZW51LWxpbmstY29sb3I7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmcrcmVtLWNhbGMoMjUpIDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAvLyBAaW5jbHVkZSBoYW1idXJnZXIgaWNvblxuICAgICAgICAgICAgICAvL1xuICAgICAgICAgICAgICAvLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgdGhlIGljb24gd2l0aCB0aHJlZSBsaW5lcyBha2EgdGhlIGhhbWJ1cmdlciBpY29uLCB0aGUgbWVudS1pY29uIG9yIHRoZSBuYXZpY29uXG4gICAgICAgICAgICAgIC8vICR3aWR0aCAtIFdpZHRoIG9mIGhhbWJ1cmdlciBpY29uXG4gICAgICAgICAgICAgIC8vICRsZWZ0IC0gSWYgZmFsc2UsIGljb24gd2lsbCBiZSBjZW50ZXJlZCBob3Jpem9udGFsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtXG4gICAgICAgICAgICAgIC8vICR0b3AgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIHZlcnRpY2FsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtXG4gICAgICAgICAgICAgIC8vICR0aGlja25lc3MgLSB0aGlja25lc3Mgb2YgbGluZXMgaW4gaGFtYnVyZ2VyIGljb24sIHNldCB2YWx1ZSBpbiBweFxuICAgICAgICAgICAgICAvLyAkZ2FwIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4XG4gICAgICAgICAgICAgIC8vICRjb2xvciAtIGljb24gY29sb3JcbiAgICAgICAgICAgICAgLy8gJGhvdmVyLWNvbG9yIC0gaWNvbiBjb2xvciBkdXJpbmcgaG92ZXIsIGhlcmUgaXQgaXNuJ3Qgc2V0IGIvYyBpdCB3b3VsZCBvdmVycmlkZSAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkXG4gICAgICAgICAgICAgIC8vICRvZmZjYW52YXMgLSBTZXQgdG8gZmFsc2Ugb2YgQGluY2x1ZGUgaW4gdG9wYmFyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigxNnB4LCBmYWxzZSwgMCwgMXB4LCA2cHgsICR0b3BiYXItbWVudS1pY29uLWNvbG9yLCBcIlwiLCBmYWxzZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIENoYW5nZSB0aGluZ3MgdXAgd2hlbiB0aGUgdG9wLWJhciBpcyBleHBhbmRlZFxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgLnRpdGxlLWFyZWEgeyBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnOyB9XG5cbiAgICAgICAgLnRvZ2dsZS10b3BiYXIge1xuICAgICAgICAgIGEgeyBjb2xvcjogJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDtcbiAgICAgIHNwYW46OmFmdGVyIHtcbiAgICAgICAgICAgICAgLy8gU2hoLCBkb24ndCB0ZWxsLCBidXQgYm94LXNoYWRvd3MgY3JlYXRlIHRoZSBtZW51IGljb24gOilcbiAgICAgICAgICAgICAgLy8gQ2hhbmdlIHRoZSBjb2xvciBvZiB0aGUgYmFycyB3aGVuIHRoZSBtZW51IGlzIGV4cGFuZGVkLCB1c2luZyBnaXZlbiB0aGlja25lc3MgZnJvbSBoYW1idXJnZXIoKSBhYm92ZVxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMCA3cHggMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMCAxNHB4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmlnaHQgYW5kIExlZnQgTmF2aWdhdGlvbiB0aGF0IHN0YWNrZWQgYnkgZGVmYXVsdFxuICAgIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKCRkZWZhdWx0LWZsb2F0LCAkdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQpO1xuXG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6ICRyZW0tYmFzZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuZGl2aWRlcixcbiAgICAgIFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJHRvcGJhci1kaXZpZGVyLWJvcmRlci10b3A7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIHVsIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1iZztcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdG9wYmFyLWxpbmstZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLWxpbmstd2VpZ2h0O1xuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICR0b3BiYXItbGluay10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmJ1dHRvbi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24uc3VjY2VzcyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24uYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvcik7IH1cbiAgICAgICAgICAmLmJ1dHRvbi53YXJuaW5nIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokd2FybmluZy1jb2xvcik7IH1cbiAgICAgICAgICAmLmJ1dHRvbi5pbmZvIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvcik7IH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbGluay1mb250LXNpemU7XG4gICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgICAgICYuc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgICAgICYuc3VjY2VzcyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAgICAgJi5hbGVydCB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGFsZXJ0LWNvbG9yKTsgfVxuICAgICAgICAgICYud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAgICAgJi5pbmZvIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvcik7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFwcGx5IHRoZSBob3ZlciBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJjpob3Zlcjpub3QoLmhhcy1mb3JtKSA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcbiAgICAgICAgICBAaWYgKCR0b3BiYXItbGluay1iZy1ob3Zlcikge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3ZlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBBZGQgc29tZSBleHRyYSBwYWRkaW5nIGZvciBsaXN0IGl0ZW1zIGNvbnRhaW5zIGJ1dHRvbnNcbiAgICAgIC5oYXMtZm9ybSB7IHBhZGRpbmc6ICR0b3BiYXItbGluay1wYWRkaW5nOyB9XG5cbiAgICAgIC8vIFN0eWxpbmcgZm9yIGxpc3QgaXRlbXMgdGhhdCBoYXZlIGEgZHJvcGRvd24gd2l0aGluIHRoZW0uXG4gICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaWYgKCR0b3BiYXItYXJyb3dzKSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksICRkZWZhdWx0LWZsb2F0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZSAvIDIpIC0gMjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1vdmVkIHsgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gYTphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBTdHlsaW5nIGVsZW1lbnRzIGluc2lkZSBvZiBkcm9wZG93bnNcbiAgICAgIC5kcm9wZG93biB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDEwMCU7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItZHJvcGRvd24tbGluay13ZWlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICAmLnBhcmVudC1saW5rIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbGluay13ZWlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi50aXRsZSBoNSwgJi5wYXJlbnQtbGluayB7XG4gICAgICAgICAgICAvLyBCYWNrIEJ1dHRvblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItYmFjay1saW5rLXNpemU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgLy8gbGluZS1oZWlnaHQ6ICgkdG9wYmFyLWhlaWdodCAvIDIpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6bm9uZTsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmhhcy1mb3JtIHsgcGFkZGluZzogOHB4ICR0b3BiYXItbGluay1wYWRkaW5nOyB9XG4gICAgICAgICAgLmJ1dHRvbiwgYnV0dG9uIHsgdG9wOiBhdXRvOyB9XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXdlaWdodDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZyAycHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtdGV4dC10cmFuc2Zvcm07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuanMtZ2VuZXJhdGVkIHsgZGlzcGxheTogYmxvY2s7IH1cblxuXG4gICAgLy8gVG9wIEJhciBzdHlsZXMgaW50ZW5kZWQgZm9yIHNjcmVlbiBzaXplcyBhYm92ZSB0aGUgYnJlYWtwb2ludC5cbiAgICBAbWVkaWEgI3skdG9wYmFyLW1lZGlhLXF1ZXJ5fSB7XG4gICAgICAudG9wLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAudG9nZ2xlLXRvcGJhciB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgICAudGl0bGUtYXJlYSB7IGZsb2F0OiAkZGVmYXVsdC1mbG9hdDsgfVxuICAgICAgICAubmFtZSBoMSBhLFxuICAgICAgICAubmFtZSBoMiBhLFxuICAgICAgICAubmFtZSBoMyBhLFxuICAgICAgICAubmFtZSBoNCBhLFxuICAgICAgICAubmFtZSBoNSBhLFxuICAgICAgICAubmFtZSBoNiBhIHsgd2lkdGg6IGF1dG87IH1cblxuICAgICAgICBpbnB1dCxcbiAgICAgICAgLmJ1dHRvbixcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaW5wdXQtaGVpZ2h0O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6ICgoJHRvcGJhci1oZWlnaHQgLSAkdG9wYmFyLWlucHV0LWhlaWdodCkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZXhwYW5kZWQgeyBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnOyB9XG4gICAgICB9XG5cbiAgICAgIC5jb250YWluLXRvLWdyaWQgLnRvcC1iYXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkdG9wYmFyLW1hcmdpbi1ib3R0b207XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihub25lLDAsMCk7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgICAgIC5qcy1nZW5lcmF0ZWQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWxpbmstYmctaG92ZXIpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpub3QoLmhhcy1mb3JtKSB7XG4gICAgICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWxpbmstYmctaG92ZXIpIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5hY3RpdmU6bm90KC5oYXMtZm9ybSkge1xuICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhhcy1kcm9wZG93biB7XG4gICAgICAgICAgQGlmKCR0b3BiYXItYXJyb3dzKSB7XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nICsgJHRvcGJhci1saW5rLWRyb3Bkb3duLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemUsIHJnYmEoJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3IsICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhKSwgdG9wKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemUgLyAyKTtcbiAgICAgICAgICAgICAgICB0b3A6ICgkdG9wYmFyLWhlaWdodCAvIDIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5tb3ZlZCB7IHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmhvdmVyLCAmLm5vdC1jbGljazpob3ZlciB7XG4gICAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID4gYTpmb2N1cyArIC5kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kcm9wZG93biBsaS5oYXMtZHJvcGRvd24ge1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWRyb3Bkb3duLWFycm93cykge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwYmJcIjtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRvcDogYXV0bztcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoLmhhcy1mb3JtKTpub3QoLmFjdGl2ZSkge1xuICAgICAgICAgICAgICA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICY6aG92ZXIgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1saW5rLWJnLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgQGlmICgkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXIpIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWJnO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBTZWNvbmQgTGV2ZWwgRHJvcGRvd25zXG4gICAgICAgICAgICAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTAwJTtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gdWwgPiAuZGl2aWRlcixcbiAgICAgICAgPiB1bCA+IFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWZvcm0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZztcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQb3NpdGlvbiBvdmVycmlkZXMgZm9yIHVsLnJpZ2h0IGFuZCB1bC5sZWZ0XG4gICAgICAgIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICAgICAgICBsaSAuZHJvcGRvd24ge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuXG4gICAgICAgICAgICBsaSAuZHJvcGRvd24geyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMDAlOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC4jeyRkZWZhdWx0LWZsb2F0fSB7XG4gICAgICAgICAgbGkgLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICAgICAgICAgICAgbGkgLmRyb3Bkb3duIHsgI3skZGVmYXVsdC1mbG9hdH06IDEwMCU7IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gRGVncmFkZSBncmFjZWZ1bGx5IHdoZW4gSmF2YXNjcmlwdCBpcyBkaXNhYmxlZC4gRGlzcGxheXMgZHJvcGRvd24gYW5kIGNoYW5nZXNcbiAgICAgIC8vIGJhY2tncm91bmQgJiB0ZXh0IGNvbG9yIG9uIGhvdmVyLlxuICAgICAgLm5vLWpzIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgLy8gQXBwbHkgdGhlIGhvdmVyIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xuICAgICAgICAgICY6aG92ZXIgPiBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItbGluay1iZy1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgICAmOmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oYXMtZHJvcGRvd24ge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgPiAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICA+IGE6Zm9jdXMgKyAuZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKSB7XG4gICAgLnRvcC1iYXIuZXhwYW5kZWQgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAuaGFzLWRyb3Bkb3duLm1vdmVkID4gLmRyb3Bkb3duIHtcbiAgICAgICAgY2xpcDppbml0aWFsO1xuICAgICAgfVxuICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgY2xpcDppbml0aWFsO1xuICAgICAgfVxuICAgICAgLy8gVGhpcyB3YXMgbmVlZGVkIGFzIHBhcmVudCB1bCdzIGhhZCBwYWRkaW5nLCB3aGljaCB0aGUgY2xpcDogd2FzIGFsbG93aW5nIGNvbnRlbnQgdG8gcGVhayB0aHJvdWdoXG4gICAgICAuaGFzLWRyb3Bkb3duOm5vdCgubW92ZWQpID4gdWwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIHtcbiAgICAudG9wLWJhci5leHBhbmRlZCAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgIC5oYXMtZHJvcGRvd24ubW92ZWQgPiAuZHJvcGRvd24ge1xuICAgICAgICBjbGlwOmluaXRpYWw7XG4gICAgICB9XG4gICAgICAuZHJvcGRvd24ge1xuICAgICAgICBjbGlwOmluaXRpYWw7XG4gICAgICB9XG4gICAgICAvLyBUaGlzIHdhcyBuZWVkZWQgYXMgcGFyZW50IHVsJ3MgaGFkIHBhZGRpbmcsIHdoaWNoIHRoZSBjbGlwOiB3YXMgYWxsb3dpbmcgY29udGVudCB0byBwZWFrIHRocm91Z2hcbiAgICAgIC5oYXMtZHJvcGRvd246bm90KC5tb3ZlZCkgPiB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4kaW5jbHVkZS1odG1sLXR5cGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXNcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuJGhlYWRlci1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJGhlYWRlci1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJGhlYWRlci10b3AtbWFyZ2luOiAuMnJlbSAhZGVmYXVsdDtcbiRoZWFkZXItYm90dG9tLW1hcmdpbjogLjVyZW0gIWRlZmF1bHQ7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHNpemVzXG4kaDEtZm9udC1zaXplOiByZW0tY2FsYyg0NCkgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiByZW0tY2FsYygzNykgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiByZW0tY2FsYygyNykgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiByZW0tY2FsYygyMykgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgc2l6ZSByZWR1Y3Rpb24gb24gc21hbGwgc2NyZWVuc1xuJGgxLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kaDItZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiRoMy1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XG4kaDQtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDUpICFkZWZhdWx0O1xuJGg1LWZvbnQtcmVkdWN0aW9uOiAwICFkZWZhdWx0O1xuJGg2LWZvbnQtcmVkdWN0aW9uOiAwICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIGhvdyBzdWJoZWFkZXJzIGFyZSBzdHlsZWQuXG4kc3ViaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xuJHN1YmhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQSBnZW5lcmFsIDxzbWFsbD4gc3R5bGluZ1xuJHNtYWxsLWZvbnQtc2l6ZTogNjAlICFkZWZhdWx0O1xuJHNtYWxsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHBhcmFncmFwaHNcbiRwYXJhZ3JhcGgtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHBhcmFncmFwaC1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWxpbmUtaGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWFzaWRlLWxpbmUtaGVpZ2h0OiAxLjM1ICFkZWZhdWx0O1xuJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSA8Y29kZT4gdGFnc1xuJGNvZGUtY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGNvZGUtYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogNzAlKSAhZGVmYXVsdDtcbiRjb2RlLWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kY29kZS1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGNvZGUtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkY29kZS1iYWNrZ3JvdW5kLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTAlKSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIpIHJlbS1jYWxjKDUpIHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYW5jaG9yc1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcbiRhbmNob3ItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYW5jaG9yLWZvbnQtY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgPGhyPiBlbGVtZW50XG4kaHItYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRoci1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm8gIWRlZmF1bHQ7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsaXN0c1xuJGxpc3QtZm9udC1mYW1pbHk6ICRwYXJhZ3JhcGgtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kbGlzdC1mb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplICFkZWZhdWx0O1xuJGxpc3QtbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjFyZW0gIWRlZmF1bHQ7XG4kbGlzdC1vcmRlcmVkLXNpZGUtbWFyZ2luOiAxLjRyZW0gIWRlZmF1bHQ7XG4kbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ6IDAgIWRlZmF1bHQ7XG4kbGlzdC1uZXN0ZWQtbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTogLjNyZW0gIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGJsb2NrcXVvdGVzXG4kYmxvY2txdW90ZS1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMjMlKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBBY3JvbnltIHN0eWxlc1xuJGFjcm9ueW0tdW5kZXJsaW5lOiAxcHggZG90dGVkICRnYWluc2Jvcm8gIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHBhZGRpbmcgYW5kIG1hcmdpblxuJG1pY3JvZm9ybWF0LXBhZGRpbmc6IHJlbS1jYWxjKDEwIDEyKSAhZGVmYXVsdDtcbiRtaWNyb2Zvcm1hdC1tYXJnaW46IHJlbS1jYWxjKDAgMCAyMCAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRtaWNyb2Zvcm1hdC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZnVsbCBuYW1lIGZvbnQgc3R5bGVzXG4kbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWZ1bGxuYW1lLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdW1tYXJ5IGZvbnQgc3R5bGVzXG4kbWljcm9mb3JtYXQtc3VtbWFyeS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBwYWRkaW5nXG4kbWljcm9mb3JtYXQtYWJici1wYWRkaW5nOiByZW0tY2FsYygwIDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8gVGV4dCBhbGlnbm1lbnQgY2xhc3MgbmFtZXNcbiRhbGlnbi1jbGFzcy1uYW1lczpcbiAgc21hbGwtb25seSxcbiAgc21hbGwsXG4gIG1lZGl1bS1vbmx5LFxuICBtZWRpdW0sXG4gIGxhcmdlLW9ubHksXG4gIGxhcmdlLFxuICB4bGFyZ2Utb25seSxcbiAgeGxhcmdlLFxuICB4eGxhcmdlLW9ubHksXG4gIHh4bGFyZ2U7XG5cbi8vIFRleHQgYWxpZ25tZW50IGJyZWFrcG9pbnRzXG4kYWxpZ24tY2xhc3MtYnJlYWtwb2ludHM6XG4gICRzbWFsbC1vbmx5LFxuICAkc21hbGwtdXAsXG4gICRtZWRpdW0tb25seSxcbiAgJG1lZGl1bS11cCxcbiAgJGxhcmdlLW9ubHksXG4gICRsYXJnZS11cCxcbiAgJHhsYXJnZS1vbmx5LFxuICAkeGxhcmdlLXVwLFxuICAkeHhsYXJnZS1vbmx5LFxuICAkeHhsYXJnZS11cDtcblxuLy8gR2VuZXJhdGVzIHRleHQgYWxpZ24gYW5kIGp1c3RpZnkgY2xhc3Nlc1xuQG1peGluIGFsaWduLWNsYXNzZXN7XG4gIC50ZXh0LWxlZnQgICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIC50ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkYWxpZ24tY2xhc3MtbmFtZXMpIHtcbiAgICBAbWVkaWEgI3sobnRoKCRhbGlnbi1jbGFzcy1icmVha3BvaW50cywgJGkpKX0ge1xuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtbGVmdCB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyhudGgoJGFsaWduLWNsYXNzLW5hbWVzLCAkaSkpfS10ZXh0LWNlbnRlciAgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gVHlwb2dyYXBoeSBQbGFjZWhvbGRlcnNcbi8vXG5cbi8vIFRoZXNlIHdpbGwgdGhyb3cgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGlmIHVzZWQgd2l0aGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gbGVhZCB7XG4gIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUgKyByZW0tY2FsYygzLjUpO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5AbWl4aW4gc3ViaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkc3ViaGVhZGVyLWZvbnQtY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLXRvcC1tYXJnaW47XG4gIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItYm90dG9tLW1hcmdpbjtcbn1cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0eXBlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzIHtcbiAgICAvLyBSZXNwb25zaXZlIFRleHQgYWxpZ25tZW50XG4gICAgQGluY2x1ZGUgYWxpZ24tY2xhc3NlcztcblxuICAgIC8qIFR5cG9ncmFwaHkgcmVzZXRzICovXG4gICAgZGl2LFxuICAgIGRsLFxuICAgIGR0LFxuICAgIGRkLFxuICAgIHVsLFxuICAgIG9sLFxuICAgIGxpLFxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2LFxuICAgIHByZSxcbiAgICBmb3JtLFxuICAgIHAsXG4gICAgYmxvY2txdW90ZSxcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBtYXJnaW46MDtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICB9XG5cbiAgICAvKiBEZWZhdWx0IExpbmsgU3R5bGVzICovXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGFuY2hvci1mb250LWNvbG9yO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3ItaG92ZXI7XG4gICAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIFx0dGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcgeyBib3JkZXI6bm9uZTsgfVxuICAgIH1cblxuICAgIC8qIERlZmF1bHQgcGFyYWdyYXBoIHN0eWxlcyAqL1xuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRwYXJhZ3JhcGgtZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6ICRwYXJhZ3JhcGgtZm9udC1zaXplO1xuICAgICAgZm9udC13ZWlnaHQ6ICRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgICAmLmxlYWQgeyBAaW5jbHVkZSBsZWFkOyB9XG5cbiAgICAgICYgYXNpZGUge1xuICAgICAgICBmb250LXNpemU6ICRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zaXplO1xuICAgICAgICBmb250LXN0eWxlOiAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWFzaWRlLWxpbmUtaGVpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlZmF1bHQgaGVhZGVyIHN0eWxlcyAqL1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgY29sb3I6ICRoZWFkZXItZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItYm90dG9tLW1hcmdpbjtcbiAgICAgIG1hcmdpbi10b3A6ICRoZWFkZXItdG9wLW1hcmdpbjtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgICBzbWFsbCB7XG4gICAgICAgIGNvbG9yOiAkc21hbGwtZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZSAtICRoMS1mb250LXJlZHVjdGlvbjsgfVxuICAgIGgyIHsgZm9udC1zaXplOiAkaDItZm9udC1zaXplIC0gJGgyLWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemUgLSAkaDMtZm9udC1yZWR1Y3Rpb247IH1cbiAgICBoNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZSAtICRoNC1mb250LXJlZHVjdGlvbjsgfVxuICAgIGg1IHsgZm9udC1zaXplOiAkaDUtZm9udC1zaXplIC0gJGg1LWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemUgLSAkaDYtZm9udC1yZWR1Y3Rpb247IH1cblxuICAgIC5zdWJoZWFkZXIgeyBAaW5jbHVkZSBzdWJoZWFkZXI7IH1cblxuICAgIGhyIHtcbiAgICAgIGJvcmRlcjogJGhyLWJvcmRlci1zdHlsZSAkaHItYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaHItYm9yZGVyLXdpZHRoIDAgMDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAkaHItbWFyZ2luIDAgKCRoci1tYXJnaW4gLSByZW0tY2FsYygkaHItYm9yZGVyLXdpZHRoKSk7XG4gICAgfVxuXG4gICAgLyogSGVscGZ1bCBUeXBvZ3JhcGh5IERlZmF1bHRzICovXG4gICAgZW0sXG4gICAgaSB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBzdHJvbmcsXG4gICAgYiB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2RlLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1zdHlsZTogJGNvZGUtYm9yZGVyLXN0eWxlO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkY29kZS1ib3JkZXItc2l6ZTtcbiAgICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLyogTGlzdHMgKi9cbiAgICB1bCxcbiAgICBvbCxcbiAgICBkbCB7XG4gICAgICBmb250LWZhbWlseTogJGxpc3QtZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6ICRsaXN0LWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5lLWhlaWdodDtcbiAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgICAgJi5uby1idWxsZXQge1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIHVsLFxuICAgICAgICAgIG9sIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFVub3JkZXJlZCBMaXN0cyAqL1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgdWwsXG4gICAgICAgIG9sIHtcbiAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LW5lc3RlZC1tYXJnaW47XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zcXVhcmUsXG4gICAgICAmLmNpcmNsZSxcbiAgICAgICYuZGlzYyB7XG4gICAgICAgIGxpIHVsIHsgbGlzdC1zdHlsZTogaW5oZXJpdDsgfVxuICAgICAgfVxuXG4gICAgICAmLnNxdWFyZSB7IGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlOyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luO31cbiAgICAgICYuY2lyY2xlIHsgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxuICAgICAgJi5kaXNjIHsgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luO31cbiAgICAgICYubm8tYnVsbGV0IHsgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIH1cblxuICAgIC8qIE9yZGVyZWQgTGlzdHMgKi9cbiAgICBvbCB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW47XG4gICAgICBsaSB7XG4gICAgICAgIHVsLFxuICAgICAgICBvbCB7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1uZXN0ZWQtbWFyZ2luO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBEZWZpbml0aW9uIExpc3RzICovXG4gICAgZGwge1xuICAgICAgZHQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tO1xuICAgICAgICBmb250LXdlaWdodDogJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0O1xuICAgICAgfVxuICAgICAgZGQgeyBtYXJnaW4tYm90dG9tOiAkZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b207IH1cbiAgICB9XG5cbiAgICAvKiBBYmJyZXZpYXRpb25zICovXG4gICAgYWJicixcbiAgICBhY3JvbnltIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDkwJTtcbiAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWhlbHAtdmFsdWU7XG4gICAgfVxuICAgIGFiYnIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAmW3RpdGxlXSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRhY3JvbnltLXVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBCbG9ja3F1b3RlcyAqL1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgICBjaXRlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU7XG4gICAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMjAxNCBcXDAwMjBcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIGEsXG4gICAgICAgIGE6dmlzaXRlZCB7XG4gICAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBibG9ja3F1b3RlLFxuICAgIGJsb2NrcXVvdGUgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1mb250LWNvbG9yO1xuICAgIH1cblxuICAgIC8qIE1pY3JvZm9ybWF0cyAqL1xuICAgIC52Y2FyZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46ICRtaWNyb2Zvcm1hdC1tYXJnaW47XG4gICAgICBib3JkZXI6ICRtaWNyb2Zvcm1hdC1ib3JkZXItd2lkdGggJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZSAkbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yO1xuICAgICAgcGFkZGluZzogJG1pY3JvZm9ybWF0LXBhZGRpbmc7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIC5mbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC13ZWlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJG1pY3JvZm9ybWF0LWZ1bGxuYW1lLWZvbnQtc2l6ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudmV2ZW50IHtcbiAgICAgIC5zdW1tYXJ5IHsgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OyB9XG5cbiAgICAgIGFiYnIge1xuICAgICAgICBjdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkbWljcm9mb3JtYXQtYWJici1mb250LWRlY29yYXRpb247XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkbWljcm9mb3JtYXQtYWJici1mb250LXdlaWdodDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAkbWljcm9mb3JtYXQtYWJici1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7IGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmUtaGVpZ2h0OyB9XG4gICAgICBoMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTsgfVxuICAgICAgaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemU7IH1cbiAgICAgIGgzIHsgZm9udC1zaXplOiAkaDMtZm9udC1zaXplOyB9XG4gICAgICBoNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTsgfVxuICAgICAgaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemU7IH1cbiAgICAgIGg2IHsgZm9udC1zaXplOiAkaDYtZm9udC1zaXplOyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAndHlwZSc7XG5cbi8vIE9mZiBDYW52YXMgVGFiIEJhciBWYXJpYWJsZXNcbiRpbmNsdWRlLWh0bWwtb2ZmLWNhbnZhcy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiR0YWJiYXItYmc6ICRvaWwgIWRlZmF1bHQ7XG4kdGFiYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpICFkZWZhdWx0O1xuJHRhYmJhci1pY29uLXdpZHRoOiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJHRhYmJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRhYmJhci1taWRkbGUtcGFkZGluZzogMCByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG5cbi8vIE9mZiBDYW52YXMgRGl2aWRlciBTdHlsZXNcbiR0YWJiYXItbGVmdC1zZWN0aW9uLWJvcmRlcjogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpICFkZWZhdWx0O1xuJHRhYmJhci1yaWdodC1zZWN0aW9uLWJvcmRlcjogJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyO1xuXG5cbi8vIE9mZiBDYW52YXMgVGFiIEJhciBIZWFkZXJzXG4kdGFiYmFyLWhlYWRlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiR0YWJiYXItaGVhZGVyLWxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItaGVhZGVyLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBNZW51IFZhcmlhYmxlc1xuJG9mZi1jYW52YXMtd2lkdGg6IHJlbS1jYWxjKDI1MCkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iZzogJG9pbCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAtMzAlKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJnLWFjdGl2ZTogc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTMwJSkgIWRlZmF1bHQ7XG5cbi8vIE9mZiBDYW52YXMgTWVudSBMaXN0IFZhcmlhYmxlc1xuJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZzogLjNyZW0gcmVtLWNhbGMoMTUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtY29sb3I6ICRhbHVtaW51bSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWJnOiAkdHVhdGFyYSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b206IG5vbmUgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW46MCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxpbmstcGFkZGluZzogcmVtLWNhbGMoMTAsIDE1KSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxpbmstY29sb3I6IHJnYmEoJHdoaXRlLCAuNykgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1saW5rLWJvcmRlci1ib3R0b206IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1iZywgJGxpZ2h0bmVzczogLTI1JSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWJnOiAjNDQ0ICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1ib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1ib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1ob3Zlci1iZzogc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmFjay1iZywgJGxpZ2h0bmVzczogLTMwJSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLWJvdHRvbTogbm9uZSAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBNZW51IEljb24gVmFyaWFibGVzXG4kdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24taG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkbGlnaHRuZXNzOiAtMzAlKSAhZGVmYXVsdDtcblxuJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDM1KSAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLXdpZHRoOiAkdGFiYmFyLWljb24td2lkdGggIWRlZmF1bHQ7XG4kdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24tcGFkZGluZzogMCAhZGVmYXVsdDtcblxuJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0OiBmYWxzZSAhZGVmYXVsdDtcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wOiBmYWxzZSAhZGVmYXVsdDtcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzOiAxcHggIWRlZmF1bHQ7XG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcDogNnB4ICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIEJhY2stTGluayBPdmVybGF5XG4kb2ZmLWNhbnZhcy1vdmVybGF5LXRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktY3Vyc29yOiBwb2ludGVyICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1ib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoJGJsYWNrLCAuNSksIDRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgLjIpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcblxuLy8gVHJhbnNpdGlvbiBWYXJpYWJsZXNcbiRtZW51LXNsaWRlOiBcInRyYW5zZm9ybSA1MDBtcyBlYXNlXCIgIWRlZmF1bHQ7XG5cblxuLy8gTUlYSU5TXG4vLyBSZW1vdmUgdHJhbnNpdGlvbiBmbGlja2VyIG9uIHBob25lc1xuQG1peGluIGtpbGwtZmxpY2tlciB7XG4gIC8vIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDB4KTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8vIEJhc2ljIHByb3BlcnRpZXMgZm9yIHRoZSBjb250ZW50IHdyYXBzXG5AbWl4aW4gd3JhcC1iYXNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1peGluIHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopO1xuICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eik7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHR4LCAkdHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eik7XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopXG59XG5cbi8vIGJhc2ljIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcyBtZW51IGNvbnRhaW5lclxuQG1peGluIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuICAqIHsgQGluY2x1ZGUga2lsbC1mbGlja2VyOyB9XG4gIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSAwcztcbiAgd2lkdGg6ICRvZmYtY2FudmFzLXdpZHRoO1xuICB6LWluZGV4OiAxMDAxO1xuXG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4vLyBPRkYgQ0FOVkFTIFdSQVBcbi8vIFdyYXAgdmlzaWJsZSBjb250ZW50IGFuZCBwcmV2ZW50IHNjcm9sbCBiYXJzXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuICBAaW5jbHVkZSB3cmFwLWJhc2U7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICYubW92ZS1yaWdodCxcbiAgJi5tb3ZlLWxlZnQgeyBtaW4taGVpZ2h0OiAxMDAlOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbn1cblxuLy8gSU5ORVIgV1JBUFxuLy8gTWFpbiBjb250ZW50IGFyZWEgdGhhdCBtb3ZlcyB0byByZXZlYWwgdGhlIG9mZi1jYW52YXMgbmF2XG5AbWl4aW4gaW5uZXItd3JhcCB7XG4gIC8vIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgLy8gcmVtb3ZlZCBmb3Igbm93IHRpbGwgY2hyb21lIGZpeGVzIGJhY2tmYWNlIGlzc3VlXG4gIEBpbmNsdWRlIHdyYXAtYmFzZTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC0jeyRtZW51LXNsaWRlfTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LSN7JG1lbnUtc2xpZGV9O1xuICAtbXMtdHJhbnNpdGlvbjogLW1zLSN7JG1lbnUtc2xpZGV9O1xuICAtby10cmFuc2l0aW9uOiAtby0jeyRtZW51LXNsaWRlfTtcbiAgdHJhbnNpdGlvbjogI3skbWVudS1zbGlkZX07XG59XG5cbi8vIFRBQiBCQVJcbi8vIFRoaXMgaXMgdGhlIHRhYiBiYXIgYmFzZVxuQG1peGluIHRhYi1iYXItYmFzZSB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcblxuICAvLyBiYXNlIHN0eWxlc1xuICBiYWNrZ3JvdW5kOiAkdGFiYmFyLWJnO1xuICBjb2xvcjogJHRhYmJhci1jb2xvcjtcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICR0YWJiYXItbGluZS1oZWlnaHQ7XG5cbiAgLy8gbWFrZSBzdXJlIGl0J3MgYmVsb3cgdGhlIC5leGl0LW9mZi1jYW52YXMgbGlua1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIHotaW5kZXg6IDk5OTtcblxuICAvLyBUeXBvZ3JhcGh5XG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGNvbG9yOiAkdGFiYmFyLWhlYWRlci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJHRhYmJhci1oZWFkZXItd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlYWRlci1saW5lLWhlaWdodDtcbiAgICBtYXJnaW46ICR0YWJiYXItaGVhZGVyLW1hcmdpbjtcbiAgfVxuICBoMSwgaDIsIGgzLCBoNCB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxufVxuXG4vLyBTTUFMTCBTRUNUSU9OU1xuLy8gVGhlc2UgYXJlIHNtYWxsIHNlY3Rpb25zIG9uIHRoZSBsZWZ0IGFuZCByaWdodCB0aGF0IGNvbnRhaW4gdGhlIG9mZi1jYW52YXMgdG9nZ2xlIGJ1dHRvbnM7XG5AbWl4aW4gdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uKSB7XG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogJHRhYmJhci1pY29uLXdpZHRoO1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGJvcmRlci1yaWdodDogJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IDFweCAwIDAgc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogMTMlKTtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGJvcmRlci1sZWZ0OiAkdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IC0xcHggMCAwIHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC01MCUpO1xuICAgIHJpZ2h0OjA7XG4gIH1cbn1cblxuQG1peGluIHRhYi1iYXItc2VjdGlvbiB7XG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIHBhZGRpbmc6ICR0YWJiYXItbWlkZGxlLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gICAgJi5sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICYucmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5cbiAgLy8gc3RpbGwgbmVlZCB0byBtYWtlIHRoZXNlIG5vbi1wcmVzZW50YXRpb25hbFxuICAmLmxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6ICR0YWJiYXItaWNvbi13aWR0aDtcbiAgfVxuICAmLnJpZ2h0IHtcbiAgICBsZWZ0OiAkdGFiYmFyLWljb24td2lkdGg7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgJi5taWRkbGUge1xuICAgIGxlZnQ6ICR0YWJiYXItaWNvbi13aWR0aDtcbiAgICByaWdodDogJHRhYmJhci1pY29uLXdpZHRoO1xuICB9XG59XG5cbi8vIE9GRiBDQU5WQVMgTElTVFxuLy8gVGhpcyBpcyB0aGUgbGlzdCBvZiBsaW5rcyBpbiB0aGUgb2ZmLWNhbnZhcyBtZW51XG5AbWl4aW4gb2ZmLWNhbnZhcy1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46MDtcbiAgcGFkZGluZzowO1xuXG4gIGxpIHtcbiAgICBsYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1sYWJlbC1iZztcbiAgICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b207XG4gICAgICBib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wO1xuICAgICAgY29sb3I6ICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6ICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDtcbiAgICAgIG1hcmdpbjogJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luO1xuICAgICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1saW5rLWJvcmRlci1ib3R0b207XG4gICAgICBjb2xvcjogJG9mZi1jYW52YXMtbGluay1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGluay1wYWRkaW5nO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnLWhvdmVyO1xuICAgICAgfVxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iZy1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8gQkFDSyBMSU5LXG4vLyBUaGlzIGlzIGFuIG92ZXJsYXkgdGhhdCwgd2hlbiBjbGlja2VkLCB3aWxsIHRvZ2dsZSBvZmYgdGhlIG9mZiBjYW52YXMgbWVudVxuQG1peGluIGJhY2stbGluayB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcblxuICBib3gtc2hhZG93OiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJveC1zaGFkb3c7XG4gIGN1cnNvcjogJG9mZi1jYW52YXMtb3ZlcmxheS1jdXJzb3I7XG4gIHRyYW5zaXRpb246ICRvZmYtY2FudmFzLW92ZXJsYXktdHJhbnNpdGlvbjtcblxuICAvLyBmaWxsIHRoZSBzY3JlZW5cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMjtcblxuICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBPZmYtQ2FudmFzIFN1Ym1lbnUgQ2xhc3Nlc1xuLy9cbkBtaXhpbiBvZmYtY2FudmFzLXN1Ym1lbnUoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgKiB7IEBpbmNsdWRlIGtpbGwtZmxpY2tlcjsgfVxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnO1xuICBib3R0b206IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAkb2ZmLWNhbnZhcy13aWR0aDtcbiAgei1pbmRleDogMTAwMjtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC0jeyRtZW51LXNsaWRlfTtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LSN7JG1lbnUtc2xpZGV9O1xuICAtbXMtdHJhbnNpdGlvbjogLW1zLSN7JG1lbnUtc2xpZGV9O1xuICAtby10cmFuc2l0aW9uOiAtby0jeyRtZW51LXNsaWRlfTtcbiAgdHJhbnNpdGlvbjogI3skbWVudS1zbGlkZX07XG5cbiAgLy9iYWNrIGJ1dHRvbiBzdHlsZSBsaWtlIGxhYmVsXG4gIC5iYWNrID4gYSB7XG4gICAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmFjay1iZztcbiAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci1ib3R0b207XG4gICAgYm9yZGVyLXRvcDogJG9mZi1jYW52YXMtYmFjay1ib3JkZXItdG9wO1xuICAgIGNvbG9yOiAkb2ZmLWNhbnZhcy1sYWJlbC1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJG9mZi1jYW52YXMtbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgcGFkZGluZzogJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZztcbiAgICB0ZXh0LXRyYW5zZm9ybTogJG9mZi1jYW52YXMtbGFiZWwtdGV4dC10cmFuc2Zvcm07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJhY2staG92ZXItYmc7XG4gICAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci1ib3R0b207XG4gICAgICBib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A7XG4gICAgfVxuXG4gICAgbWFyZ2luOiAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW47XG4gICAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vTGVmdCBkb3VibGUgYW5nbGUgcXVvdGUgb3IgUmlnaHQgZG91YmxlIGFuZ2xlIHF1b3RlIGNoYXJzXG5AbWl4aW4gaWNvbi1kb3VibGUtYXJyb3dzICgkcG9zaXRpb24pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBjb250ZW50OiBcIlxcQUJcIjtcbiAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgIH1cbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBjb250ZW50OiBcIlxcQkJcIjtcbiAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgIH1cbiAgfVxuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi8vXG4vLyBERUZBVUxUIENMQVNTRVNcbi8vXG5AaW5jbHVkZSBleHBvcnRzKFwib2ZmY2FudmFzXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtb2ZmLWNhbnZhcy1jbGFzc2VzIHtcblxuICAgIC5vZmYtY2FudmFzLXdyYXAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXA7IH1cbiAgICAuaW5uZXItd3JhcCB7IEBpbmNsdWRlIGlubmVyLXdyYXA7IH1cblxuICAgIC50YWItYmFyIHsgQGluY2x1ZGUgdGFiLWJhci1iYXNlOyB9XG5cbiAgICAubGVmdC1zbWFsbCB7IEBpbmNsdWRlIHRhYmJhci1zbWFsbC1zZWN0aW9uKCRwb3NpdGlvbjogbGVmdCk7IH1cbiAgICAucmlnaHQtc21hbGwgeyBAaW5jbHVkZSB0YWJiYXItc21hbGwtc2VjdGlvbigkcG9zaXRpb246IHJpZ2h0KTsgfVxuXG4gICAgLnRhYi1iYXItc2VjdGlvbiB7IEBpbmNsdWRlIHRhYi1iYXItc2VjdGlvbjsgfVxuXG4gICAgLy8gTUVOVSBCVVRUT05cbiAgICAvLyBUaGlzIGlzIGEgbGl0dGxlIGJvbnVzLiBZb3UgZG9uJ3QgbmVlZCBpdCBmb3Igb2ZmIGNhbnZhcyB0byB3b3JrLiBNaXhpbnMgdG8gYmUgd3JpdHRlbiBpbiB0aGUgZnV0dXJlLlxuICAgIC50YWItYmFyIC5tZW51LWljb24ge1xuICAgICAgY29sb3I6ICR0YWJiYXItbWVudS1pY29uLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6ICR0YWJiYXItbWVudS1pY29uLWhlaWdodDtcbiAgICAgIHBhZGRpbmc6ICR0YWJiYXItbWVudS1pY29uLXBhZGRpbmc7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWluZGVudDogJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgIHdpZHRoOiAkdGFiYmFyLW1lbnUtaWNvbi13aWR0aDtcblxuICAgICAgLy8gQGluY2x1ZGUgZm9yIHRoZSBoYW1idXJnZXIgbWVudS1pY29uXG4gICAgICAvL1xuICAgICAgLy8gQXJndW1lbnRzIGFzIGZvbGxvd3M6ICgkd2lkdGgsICRsZWZ0LCAkdG9wLCAkdGhpY2tuZXNzLCAkZ2FwLCAkY29sb3IsICRob3Zlci1jb2xvcilcbiAgICAgIC8vICR3aWR0aCAtIFdpZHRoIG9mIGhhbWJ1cmdlciBpY29uIGluIHJlbSBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoLlxuICAgICAgLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0PSBGYWxzZVxuICAgICAgLy8gJHRvcCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgdmVydGljYWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW0gRGVmYXVsdDogPSBGYWxzZVxuICAgICAgLy8gJHRoaWNrbmVzcyAtIHRoaWNrbmVzcyBvZiBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4IERlZmF1bHQ6ICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzID0gMXB4XG4gICAgICAvLyAkZ2FwIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBsaW5lcyBpbiBoYW1idXJnZXIgaWNvbiwgc2V0IHZhbHVlIGluIHB4IERlZmF1bHQ6ICR0YWJiYXItaGFtYnVyZ2VyLWljb24tZ2FwID0gNnB4XG4gICAgICAvLyAkY29sb3IgLSBpY29uIGNvbG9yIERlZmF1bHQ6ICR0YWJiYXItbWVudS1pY29uLWNvbG9yXG4gICAgICAvLyAkaG92ZXItY29sb3IgLSBpY29uIGNvbG9yIHdoZW4gaG92ZXJlZCBEZWZhdWx0OiAkdGFiYmFyLW1lbnUtaWNvbi1ob3ZlclxuICAgICAgLy8gJG9mZmNhbnZhcyAtIFNldCB0byB0cnVlXG4gICAgICBAaW5jbHVkZSBoYW1idXJnZXIoJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aCwgJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0LCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcCwgJHRhYmJhci1oYW1idXJnZXItaWNvbi10aGlja25lc3MsICR0YWJiYXItaGFtYnVyZ2VyLWljb24tZ2FwLCAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvciwgJHRhYmJhci1tZW51LWljb24taG92ZXIsIHRydWUpXG4gICAgfVxuXG4gICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbjogbGVmdCk7IH1cbiAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbjogcmlnaHQpOyB9XG5cbiAgICB1bC5vZmYtY2FudmFzLWxpc3QgeyBAaW5jbHVkZSBvZmYtY2FudmFzLWxpc3Q7IH1cblxuXG4gICAgLy8gQU5JTUFUSU9OIENMQVNTRVNcbiAgICAvLyBUaGVzZSBjbGFzc2VzIGFyZSBhZGRlZCB3aXRoIEpTIGFuZCB0cmlnZ2VyIHRoZSBhY3R1YWwgYW5pbWF0aW9uLlxuICAgIC5tb3ZlLXJpZ2h0IHtcbiAgICAgID4gLmlubmVyLXdyYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgkb2ZmLWNhbnZhcy13aWR0aCwwLDApO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazt9XG4gICAgfVxuXG4gICAgLm1vdmUtbGVmdCB7XG4gICAgICA+IC5pbm5lci13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLSgkb2ZmLWNhbnZhcy13aWR0aCksMCwwKTtcblxuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cbiAgICAub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51LCAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTAwMztcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLWxlZnQge1xuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuICAgIC5vZmZjYW52YXMtb3ZlcmxhcC1yaWdodCB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cblxuICAgIC8vIE9sZGVyIGJyb3dzZXJzXG4gICAgLm5vLWNzc3RyYW5zZm9ybXMge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHsgbGVmdDogLSgkb2ZmLWNhbnZhcy13aWR0aCk7IH1cbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgeyByaWdodDogLSgkb2ZmLWNhbnZhcy13aWR0aCk7IH1cblxuICAgICAgLm1vdmUtbGVmdCA+IC5pbm5lci13cmFwIHsgcmlnaHQ6ICRvZmYtY2FudmFzLXdpZHRoOyB9XG4gICAgICAubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHsgbGVmdDogJG9mZi1jYW52YXMtd2lkdGg7IH1cbiAgICB9XG5cbiAgICAubGVmdC1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb246IGxlZnQpO1xuICAgICAgJi5tb3ZlLXJpZ2h0LCAmLm9mZmNhbnZhcy1vdmVybGFwLXJpZ2h0LCAmLm9mZmNhbnZhcy1vdmVybGFwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCUsMCwwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXN1Ym1lbnUoJHBvc2l0aW9uOiByaWdodCk7XG4gICAgICAmLm1vdmUtbGVmdCwgJi5vZmZjYW52YXMtb3ZlcmxhcC1sZWZ0LCAmLm9mZmNhbnZhcy1vdmVybGFwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCUsMCwwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcbiAgICAgIH1cbiAgICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgdWwub2ZmLWNhbnZhcy1saXN0IGxpLmhhcy1zdWJtZW51ID4gYTphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB1bC5vZmYtY2FudmFzLWxpc3QgbGkuaGFzLXN1Ym1lbnUgPiBhOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogcmlnaHQpO1xuICAgICAgfVxuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB1bC5vZmYtY2FudmFzLWxpc3QgbGkuaGFzLXN1Ym1lbnUgPiBhOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gRm91bmRhdGlvbiBWaXNpYmlsaXR5IENsYXNzZXNcbi8vXG4kaW5jbHVkZS1odG1sLXZpc2liaWxpdHktY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuJGluY2x1ZGUtYWNjZXNzaWJpbGl0eS1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcblxuLy9cbi8vIE1lZGlhIENsYXNzIE5hbWVzXG4vL1xuLy8gVmlzaWJpbGl0eSBCcmVha3BvaW50c1xuJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplczpcbiAgc21hbGwsXG4gIG1lZGl1bSxcbiAgbGFyZ2UsXG4gIHhsYXJnZSxcbiAgeHhsYXJnZTtcblxuJHZpc2liaWxpdHktYnJlYWtwb2ludC1xdWVyaWVzOlxuICB1bnF1b3RlKCRzbWFsbC11cCksXG4gIHVucXVvdGUoJG1lZGl1bS11cCksXG4gIHVucXVvdGUoJGxhcmdlLXVwKSxcbiAgdW5xdW90ZSgkeGxhcmdlLXVwKSxcbiAgdW5xdW90ZSgkeHhsYXJnZS11cCk7XG5cbkBtaXhpbiB2aXNpYmlsaXR5LWxvb3Age1xuICBAZWFjaCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQgaW4gJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcyB7XG4gICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6ICgpO1xuXG4gICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogKCk7XG5cbiAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6ICgpO1xuICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6ICgpO1xuXG4gICAgQGVhY2ggJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xuICAgICAgQGlmIGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgPCBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgLy8gU21hbGxlciB0aGFuIGN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cblxuICAgICAgfSBAZWxzZSBpZiBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnQpID4gaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50KSB7XG4gICAgICAgIC8vIExhcmdlciB0aGFuIGN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cblxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAjeyRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludH0gZGlzcGxheXMgKi9cbiAgICBAbWVkaWEgI3tudGgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1xdWVyaWVzLCBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQpKX0ge1xuICAgICAgI3skdmlzaWJpbGl0eS1pbmhlcml0LWxpc3R9IHtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgI3skdmlzaWJpbGl0eS1ub25lLWxpc3R9IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGlmICRpbmNsdWRlLWFjY2Vzc2liaWxpdHktY2xhc3NlcyAhPSBmYWxzZSB7XG4gICAgICAgICN7JHZpc2liaWxpdHktdmlzaWJsZS1saXN0fSB7XG4gICAgICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktaGlkZGVuLWxpc3R9IHtcbiAgICAgICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGlmICRpbmNsdWRlLXRhYmxlLXZpc2liaWxpdHktY2xhc3NlcyAhPSBmYWxzZSB7XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ2aXNpYmlsaXR5XCIpe1xuICBAaWYgJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xuXG4gIEBpbmNsdWRlIHZpc2liaWxpdHktbG9vcDtcblxuICAvKiBPcmllbnRhdGlvbiB0YXJnZXRpbmcgKi9cbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICB0YWJsZSB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0aGVhZCB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIH1cbiAgdGJvZHkge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB9XG4gIHRyIHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIEBtZWRpYSAjeyRsYW5kc2NhcGV9IHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbiAgICB0YWJsZSB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRoZWFkIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRib2R5IHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRyIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAjeyRwb3J0cmFpdH0ge1xuICAgIC5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0LFxuICAgIC5zaG93LWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICAgIHRhYmxlIHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGhlYWQge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdHIge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgLyogVG91Y2gtZW5hYmxlZCBkZXZpY2UgdGFyZ2V0aW5nICovXG4gIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAudG91Y2ggLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gIHRhYmxlLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGFibGUuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRoZWFkLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGJvZHkuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0ci5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0ZC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGguc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAvKiBTY3JlZW4gcmVhZGVyLXNwZWNpZmljIGNsYXNzZXMgKi9cbiAgLnNob3ctZm9yLXNyIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBPbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGVzIGlmIHlvdSB3YW50IHRoZW0uXG4gICAgQGlmICRpbmNsdWRlLXByaW50LXN0eWxlcyB7XG4gICAgICAvKlxuICAgICAgICogUHJpbnQgc3R5bGVzLlxuICAgICAgICpcbiAgICAgICAqIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiB3d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgICAgICogQ3JlZGl0IHRvIFBhdWwgSXJpc2ggYW5kIEhUTUw1IEJvaWxlcnBsYXRlIChodG1sNWJvaWxlcnBsYXRlLmNvbSlcbiAgICAgICovXG4gICAgICAucHJpbnQtb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgKiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zICovXG4gICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cblxuICAgICAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuXG4gICAgICAgIC8vIERvbid0IHNob3cgbGlua3MgZm9yIGltYWdlcywgb3IgamF2YXNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgICAgICAuaXIgYTphZnRlcixcbiAgICAgICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICAgICAgICBhW2hyZWZePVwiI1wiXTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IH1cblxuICAgICAgICBwcmUsXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhbHVtaW51bTtcbiAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLyogaDVicC5jb20vdCAqLyB9XG5cbiAgICAgICAgdHIsXG4gICAgICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgQHBhZ2UgeyBtYXJnaW46IC41Y207IH1cblxuICAgICAgICBwLFxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgICAgd2lkb3dzOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgICAgICAuaGlkZS1vbi1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICAucHJpbnQtb25seSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgICAgfVxuICAgIH1cblxuICAvKiBQcmludCB2aXNpYmlsaXR5ICovXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQnJlYWRjcnVtYiBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyLlxuJGNydW1iLWJnOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA1NSUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBwYWRkaW5nIGFyb3VuZCB0aGUgYnJlYWRjcnVtYnMuXG4kY3J1bWItcGFkZGluZzogcmVtLWNhbGMoOSAxNCA5KSAhZGVmYXVsdDtcbiRjcnVtYi1zaWRlLXBhZGRpbmc6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbiRjcnVtYi1mdW5jdGlvbi1mYWN0b3I6IC0xMCUgIWRlZmF1bHQ7XG4kY3J1bWItYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjcnVtYi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGNydW1iLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGNydW1iLWJnLCAkbGlnaHRuZXNzOiAkY3J1bWItZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRjcnVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHZhcmlvdXMgdGV4dCBzdHlsZXMgZm9yIGJyZWFkY3J1bWJzLlxuJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDogJG9pbCAhZGVmYXVsdDtcbiRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kY3J1bWItZm9udC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRjcnVtYi1saW5rLWRlY29yOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWJzXG4kY3J1bWItc2xhc2gtY29sb3I6ICRiYXNlICFkZWZhdWx0O1xuJGNydW1iLXNsYXNoOiBcIi9cIiAhZGVmYXVsdDtcblxuLy9cbi8vIEJyZWFkY3J1bWIgTWl4aW5zXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBjb250YWluZXIgYXJvdW5kIG91ciBicmVhZGNydW1ic1xuQG1peGluIGNydW1iLWNvbnRhaW5lciB7XG4gIGJvcmRlci1zdHlsZTogJGNydW1iLWJvcmRlci1zdHlsZTtcbiAgYm9yZGVyLXdpZHRoOiAkY3J1bWItYm9yZGVyLXNpemU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6ICRjcnVtYi1wYWRkaW5nO1xuXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBjb2xvciBhbmQgYm9yZGVyIGNvbWUgdGhyb3VnaC5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNydW1iLWJnO1xuICBib3JkZXItY29sb3I6ICRjcnVtYi1ib3JkZXItY29sb3I7XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBicmVhZGNydW1iIHN0eWxlcyBmcm9tIGxpc3QgaXRlbXMuXG5AbWl4aW4gY3J1bWJzIHtcblxuICAvLyBBIG5vcm1hbCBzdGF0ZSB3aWxsIG1ha2UgdGhlIGxpbmtzIGxvb2sgYW5kIGFjdCBsaWtlIGNsaWNrYWJsZSBicmVhZGNydW1icy5cbiAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yO1xuICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gIGZvbnQtc2l6ZTogJGNydW1iLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRjcnVtYi1mb250LXNpemU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06ICRjcnVtYi1mb250LXRyYW5zZm9ybTtcblxuICAmOmhvdmVyIGEsICY6Zm9jdXMgYSB7IHRleHQtZGVjb3JhdGlvbjogJGNydW1iLWxpbmstZGVjb3I7IH1cblxuICBhIHtcbiAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBDdXJyZW50IGlzIGZvciB0aGUgbGluayBvZiB0aGUgY3VycmVudCBwYWdlXG4gICYuY3VycmVudCB7XG4gICAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLWN1cnJlbnQ7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuICAgIH1cblxuICAgICY6aG92ZXIsICY6aG92ZXIgYSxcbiAgICAmOmZvY3VzLCAmOmZvY3VzIGEgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgfVxuXG4gIC8vIFVuYXZhaWxhYmxlIHJlbW92ZWQgY29sb3IgYW5kIGxpbmsgc3R5bGVzIHNvIGl0IGxvb2tzIGluYWN0aXZlLlxuICAmLnVuYXZhaWxhYmxlIHtcbiAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3ItdW5hdmFpbGFibGU7XG4gICAgYSB7IGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTsgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmhvdmVyIGEsXG4gICAgJjpmb2N1cyxcbiAgICBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZC12YWx1ZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29sb3I6ICRjcnVtYi1zbGFzaC1jb2xvcjtcbiAgICBjb250ZW50OiBcIiN7JGNydW1iLXNsYXNofVwiO1xuICAgIG1hcmdpbjogMCAkY3J1bWItc2lkZS1wYWRkaW5nO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDFweDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJyZWFkY3J1bWJzXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXMge1xuICAgIC5icmVhZGNydW1icyB7XG4gICAgICBAaW5jbHVkZSBjcnVtYi1jb250YWluZXI7XG4gICAgICBAaW5jbHVkZSByYWRpdXMoJGNydW1iLXJhZGl1cyk7XG5cbiAgICAgID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIGNydW1icztcbiAgICAgIH1cbiAgICB9XG4gICAgLyogQWNjZXNzaWJpbGl0eSAtIGhpZGVzIHRoZSBmb3J3YXJkIHNsYXNoICovXG4gICAgW2FyaWEtbGFiZWw9XCJicmVhZGNydW1ic1wiXSBbYXJpYS1oaWRkZW49XCJ0cnVlXCJdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgSW4gZGllc2UgRGF0ZWkgd2VyZGVuIGFsbGUgZWlnZW5lbiBDU1NfQW53ZWlzdW5nZW4gZ2VzY2hyaWViZW5cbiAgICAtICAgVmFyaWFibGVuIGJpdHRlIGluIGRlciBEYXRlaSBfc2V0dGluZ3MgZGVmaW5pZXJlblxuICAgIC0gICBGYXJiZW4gYml0dGUgYXVjaCBpbiBkZXIgU2V0dGluZ3MgZGVmaW5pZXJlblxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTY2hyaWZ0YXJ0ZW4gbGFkZW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIGFsbGdlbWVpbmVzIExheW91dFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5ib2R5e1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJhY2tncm91bmRfY29sb3I7XG5cdGZvbnQtc2l6ZTpyZW0tY2FsYygxNyk7XG59XG5cbnAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xufVxuXG5oZWFkZXIge1xuICAgLy8gYmFja2dyb3VuZDp1cmwoJy4uLy4uL2ltZy9oZWFkZXItYmFja2dyb3VuZC5naWYnKSBjZW50ZXIgY2VudGVyIHJlcGVhdC14IHRyYW5zcGFyZW50O1xufVxuI21haW4tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206NTBweDtcbn1cbiNsb2dvIHtcbiAgICAvL2hlaWdodDogMTEzcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206MjBweDtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL2NcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBIYXVwdMO8YmVyc2NocmlmdGVuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEZvcm1hdGllcnVuZ2VuIHVtIGRpZSBNaXR0ZWxsaW5pZSBkZXIgaDEgYXVmIGRlciBTdGFydHNlaXRlIGRhcnp1c3RlbGxlblxuaDEge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgY29sb3I6ICRjb2xvcl9oMTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG5cdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5oMTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRoMS1saW5lIDUwJSwgJGgxLWxpbmUgNTAlKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxcHggMXB4O1xufVxuXG5oMTo6YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0OiByZW0tY2FsYygxMjApIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSDEgSG9tZSB6ZW50cmllcnRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4jaG9tZSBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jaG9tZSBoMTo6YmVmb3JlLFxuI2hvbWUgaDE6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNlMWUxZTEgNTAlLCAjZTFlMWUxIDUwJSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMXB4IDFweDtcbn1cblxuI2hvbWUgaDE6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuI2hvbWUgaDE6OmFmdGVyIHtcbiAgICBib3JkZXItbGVmdDogMS41ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi5scy1zbGlkZSBoMXtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmgxX2JvcmRlcl9ib3R0b217XG5cdGZsb2F0OmxlZnQ7XG5cdGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRoMV9ib3JkZXJfYm90dG9tX2NvbG9yO1xuXHRwYWRkaW5nLWJvdHRvbToxMHB4O1xuXHRtYXJnaW4tYm90dG9tOjIwcHg7XG5cdHBhZGRpbmctcmlnaHQ6NDBweDtcblx0bWluLXdpZHRoOjMwMHB4O1xufVxuLmgxX2JvcmRlcl9ib3R0b20gaDF7XG5cdGRpc3BsYXk6aW5saW5lO1xufVxuaDJ7XG4gICAgY29sb3I6ICRjb2xvcl9oMjtcbiAgICBmb250LXNpemU6cmVtX2NhbGMoMjApO1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcblx0bWFyZ2luLWJvdHRvbTozMHB4O1xufVxuaDN7XG4gICAgY29sb3I6ICRjb2xvcl9oMztcblx0Zm9udC1zaXplOnJlbV9jYWxjKDE1KTtcbn1cbmg0e1xuICAgIGNvbG9yOiAkY29sb3JfaDM7XG5cdGZvbnQtc2l6ZTpyZW1fY2FsYygxNSk7XG59XG5oNXtcbiAgICBjb2xvcjogJGNvbG9yX2gzO1xuXHRmb250LXNpemU6cmVtX2NhbGMoMTUpO1xufVxuXG5oNi5taWRsaW5le1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OjFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRjb2xvcl9oNjtcbiAgICB3aWR0aDo4MHB4O1xuICAgIG1hcmdpbjphdXRvO1xufVxuaDMuY29sb3VyZWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokdWViZXJzY2hyaWZ0X2ZhcmJpZ19oaW50ZXJncnVuZDtcbiAgICBjb2xvcjokdWViZXJzY2hyaWZ0X2ZhcmJpZ190ZXh0O1xuICAgIGZvbnQtc2l6ZTpyZW1fY2FsYygxNSk7XG4gICAgcGFkZGluZzpyZW0tY2FsYygxMCk7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbn1cbmg0IHtcbiAgICBjb2xvcjogJGNvbG9yX2g0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuaDUge1xuICAgIGNvbG9yOiAkY29sb3JfaDU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmg2IHtcbiAgICBjb2xvcjogJG1haW5Db2xvckJsdWU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygwKTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIMOcYmVyc2NocmlmdCBtaXQgSWNvblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uaGVhZGxpbmVfaWNvbl9jb250YWluZXJ7XG4gICAgZGlzcGxheTp0YWJsZTtcblx0bWFyZ2luLWJvdHRvbToyMHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblxufVxuLmhlYWRsaW5lX2ljb25fY29udGFpbmVyIGRpdi5pY29uX2NvbnRhaW5lcntcblx0ZGlzcGxheTp0YWJsZS1jZWxsO1xuXHR2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XG5cdHBhZGRpbmctbGVmdDogODBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3MDApKSB7XG4gICAgLmhlYWRsaW5lX2ljb25fY29udGFpbmVyIGRpdi5pY29uX2NvbnRhaW5lcntcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDoxcHg7XG5cdFx0aGVpZ2h0OjFweDtcbiAgICB9XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIExpbmtzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbmF7XG4gICAgY29sb3IgICA6ICAgJGxpbmtfY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG59XG5cbmE6aG92ZXJ7XG4gICAgY29sb3IgICA6ICAgJGxpbmtfY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBhbGxnZW1laW5lIEhpbGZza2xhc3NlblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4ucGFkZGluZy1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4ucm93IHtcbiAgICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuLmZ1bGwtd2lkdGgge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5sZWZ0IGltZyB7XG4gICAgcGFkZGluZzowIDIwcHggMTBweCAwICFpbXBvcnRhbnQ7XG59XG5cbi5yaWdodCBpbWcge1xuICAgIHBhZGRpbmc6MCAwIDIwcHggMCAhaW1wb3J0YW50O1xufVxuLm5vLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDA7XG59XG5oZWFkZXIgdWwgbGkgYSB7XG5cbn1cbi5ib3JkZXItYm90dG9tLWhlYWRfaW1hZ2V7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRib3JkZXJfYm90dG9tX2hlYWRfaW1hZ2U7XG59XG5cbi5yYWRpdXMge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI5KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIC8vYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRtYWluQ29sb3JZZWxsb3c7XG59XG51bCwgdGFibGV7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMik7XG59XG4jbWFpbi1jb250ZW50IGRpdi5lbGVtZW50LWNvbnRhaW5lciBwLCAjbWFpbi1jb250ZW50IGRpdi5lbGVtZW50LWNvbnRhaW5lciB1bCB7XG5cdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMik7XG59XG5cbiNtYWluLWNvbnRlbnQgZGl2LmVsZW1lbnQtY29udGFpbmVyIHVsIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTI1KTtcbn1cblxuLnBhbmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICAgIHBhZGRpbmc6IDI1cHggMThweCAxMHB4IDM4cHg7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG5kaXYuZWxlbWVudC1jb250YWluZXI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUpO1xufVxuXG4uaW5saW5lLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIGFsbGdlbWVpbmVyIEJMb2NrXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5ibG9ja19iYWNrZ3JvdW5ke1xuICAgIGJhY2tncm91bmQtY29sb3I6ICAgJGJsb2NrX2JhY2tncm91bmQ7XG4gICAgcGFkZGluZzpyZW0tY2FsYygyMCk7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XG59XG4uZWxlbWVudC1jb250YWluZXJ7XG4gICAgLy9tYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTokZWxlbWVudF9hYnN0YW5kX3VudGVuO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRWluemVsbmVzIEJpbGRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLnNpbmdsZUltYWdlIGltZ3tcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYygyMCk7XG59XG4uc2luZ2xlSW1hZ2V7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XG4gICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMjApO1xufVxuLm11bHRpbWVkaWFfcm93e1xuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDMwKTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBUZXh0LUltYWdlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbHtcblx0ZGlzcGxheTp0YWJsZS1jZWxsO1xuXHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcbn1cblxuLnRleHQtaW1hZ2UgZGl2LnRleHQtaW1hZ2UtY29sLWxlZnR7XG5cdHBhZGRpbmctcmlnaHQ6MjBweDtcbn1cblxuLnRleHQtaW1hZ2UgLnJpZ2h0IGltZyxcbi50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbCBpbWd7XG4gICAgYm9yZGVyOiByZW0tY2FsYygzKSBzb2xpZCAkYm9yZGVyLXNpbmdsZS1pbWFnZTtcblx0cGFkZGluZzogcmVtLWNhbGMoNikgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnRleHQtaW1hZ2UgZGl2LnRleHQtaW1hZ2UtY29sLXRleHR7XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOnRvcDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4udGV4dC1pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xufVxuXG4udGV4dC1pbWFnZSAuaW1hZ2UtbGVnZW5kLWNvbnRhaW5lcntcbiAgICBtYXJnaW46MTBweCAwIDIwcHggMDtcbn1cbi5yaWdodCAuaW1hZ2UtbGVnZW5kLWNvbnRhaW5lcntcbiAgICBwYWRkaW5nLWxlZnQ6MjBweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoNzUwKSkge1xuICAgIC50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbHtcblx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdHdpZHRoOjEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cdC50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbC1sZWZ0e1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdH1cblx0IC50ZXh0LWltYWdlIGRpdi50ZXh0LWltYWdlLWNvbCBpbWd7XG5cdFx0XHRwYWRkaW5nOjVweDtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdCB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGFyc3RlbGx1bmcgdm9uIFplaWNoZW5zYXR6LWljb25zXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5pY29ue1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgd2lkdGg6cmVtLWNhbGMoMzApO1xuICAgIGhlaWdodDoxcHg7XG59XG5cbi5pY29uX3JvdW5ke1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJ1dHRvbl9pY29uX2JhY2tncm91bmRjb2xvcjtcbiAgICB3aWR0aDpyZW0tY2FsYygyMCk7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDIwKTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyMCk7XG4gICAgZmxvYXQ6bGVmdDtcbn1cbi5pY29uX3JvdW5kOmhvdmVye1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRidXR0b25faWNvbl9ob3Zlcl9iYWNrZ3JvdW5kY29sb3I7XG5cbn1cbi5pY29uX3JvdW5kX3RleHR7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOnJlbS1jYWxjKC0xKTtcbiAgICBsZWZ0OnJlbS1jYWxjKDcpO1xuICAgIGNvbG9yOiRidXR0b25faWNvbl9jb2xvcjtcbiAgICBmb250LXdlaWdodDo3MDA7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFRhYnNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLnRhYnN7XG5cbn1cbnVsLnRhYnMgLnRhYi10aXRsZXtcblx0Ym9yZGVyOnNvbGlkIDFweCAkdGFiX3RpdGxlX2JvcmRlci1jb2xvcjtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHRvcDoxcHg7XG5cdG1hcmdpbi1yaWdodDozcHg7XG59XG51bC50YWJzIC50YWItdGl0bGUgYXtcblx0YmFja2dyb3VuZC1jb2xvcjokdGFiX3RpdGxlX2JhY2tncm91bmQtY29sb3I7XG59XG51bC50YWJzIGxpLmFjdGl2ZXtcblx0Ym9yZGVyLWJvdHRvbS1jb2xvcjokdGFiX2NvbnRlbnRfYmFja2dyb3VuZC1jb2xvcjtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHRvcDoxcHg7XG5cdHotaW5kZXg6MTU7XG59XG51bC50YWJzIGxpLmFjdGl2ZSBhe1xuXHRmb250LXdlaWdodDpib2xkO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiR0YWJfdGl0bGVfYWN0aXZlX2JhY2tncm91bmQtY29sb3I7XG59XG4udGFicy1jb250ZW50IGRpdntcblx0Ym9yZGVyOnNvbGlkIDFweCAkdGFiX2NvbnRlbnRfYm9yZGVyLWNvbG9yO1xuXHR6LWluZGV4OjEwO1xufVxuLnRhYnMtY29udGVudCBkaXYuY29udGVudHtcblx0cGFkZGluZzoxMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiR0YWJfY29udGVudF9iYWNrZ3JvdW5kLWNvbG9yO1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg1MDApKSB7XG4gICAgdWwudGFicyAudGFiLXRpdGxle1xuXHRcdGZsb2F0Om5vbmU7XG5cdFx0d2lkdGg6MTAwJTtcbiAgICB9XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIHZpZGVvZ2FsZXJpZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5kaXYudmlkZW9nYWxlcmllIHtcbiAgICBtYXJnaW4tdG9wOjUwcHg7XG59XG4udmlkZW9nYWxlcmllIGg2e1xuICAgIG1hcmdpbi1ib3R0b206MjBweDtcbn1cbi52aWRlb2dhbGVyaWUgcC52aWRlb190aXRsZXtcbiAgICBjb2xvcjokdGV4dGZhcmJlX3N0YW5kYXJkO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQklsZGVyZ2FsZXJpZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5kaXYuaW1hZ2UtZ2FsZXJ5e1xuICAgIG1hcmdpbi10b3A6MjBweDtcbiAgICBtYXJnaW4tYm90dG9tOjIwcHg7XG59XG5kaXYuaW1hZ2UtZ2FsZXJ5IGxpe1xuXG59XG4uaW1hZ2UtZ2FsZXJ5LXVudGVydGl0ZWx7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6MTBweDtcbiB9XG4gZGl2LmltYWdlLWdhbGVyeS10ZXh0e1xuICAgIG1hcmdpbjogMDtcbiB9XG5cbi5pbWFnZS1nYWxlcnktdGV4dCBwe1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG4uaW1hZ2UtZ2FsZXJ5IGltZy5pbWFnZV9mYWRpbmdfZWZmZWt0e1xuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG59XG4uaW1hZ2UtZ2FsZXJ5IGltZy5pbWFnZV9mYWRpbmdfZWZmZWt0OmhvdmVye1xuXHRvcGFjaXR5OiAwLjUwO1xuXHRmaWx0ZXI6YWxwaGEob3BhY2l0eT01MCk7XG4gICAgLW1vei1vcGFjaXR5OiAwLjUwO1xuICAgIG9wYWNpdHk6IDAuNTA7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vKlxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCbG9ja2VsZW1lbnQgU3RhcnRzZWl0ZSAoc2FuZGVyKVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uc3RhcnRzZWl0ZV9ibG9jayBsaXtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbn1cblxuLnN0YXJ0c2VpdGVfYmxvY2sgbGkgZGl2e1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGxpZ2h0X2dyZXk7XG4gICAgcGFkZGluZy1ib3R0b206NXB4O1xufVxuXG4uc3RhcnRzZWl0ZV9ibG9jayBkaXYuaW1hZ2VfZmFkaW5nX2VmZmVrdCwgLmJsb2NrX2VsZW1lbnQgZGl2LmltYWdlX2ZhZGluZ19lZmZla3R7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG5cdHdpZHRoOjEwMCU7XG4gICAgcGFkZGluZy1ib3R0b206NjUlO1xuICAgIGJhY2tncm91bmQtc2l6ZToxMDAlIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbn1cbi5ibG9ja19lbGVtZW50IGRpdi5pbWFnZV9mYWRpbmdfZWZmZWt0e1xuICAgIHBhZGRpbmctYm90dG9tOjU1JTtcbn1cblxuLnN0YXJ0c2VpdGVfYmxvY2sgZGl2LmltYWdlX2ZhZGluZ19lZmZla3Q6aG92ZXIsIC5ibG9ja19lbGVtZW50IGRpdi5pbWFnZV9mYWRpbmdfZWZmZWt0OmhvdmVye1xuICAgIGJhY2tncm91bmQtc2l6ZToxMDMlIDEwMyU7XG4gICAgZmlsdGVyOmFscGhhKG9wYWNpdHk9NTApO1xuICAgIC1tb3otb3BhY2l0eTogMC41MDtcbiAgICBvcGFjaXR5OiAwLjUwO1xufVxuXG4uc3RhcnRzZWl0ZV9ibG9jayBsaSBkaXYgaDJ7XG4gICAgcGFkZGluZy10b3A6MTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgY29sb3I6JGRhcmtfZ3JleTtcbn1cbi5zdGFydHNlaXRlX2Jsb2NrIGxpIGRpdiBoNntcbiAgICBtYXJnaW4tYm90dG9tOjE1cHg7XG59XG4uc3RhcnRzZWl0ZV9ibG9jayBsaSB1bHtcbiAgICBtYXJnaW46NXB4O1xuICAgIG1hcmdpbi10b3A6MTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZSA7XG59XG4uc3RhcnRzZWl0ZV9ibG9jayBsaSB1bCBsaSwuc3RhcnRzZWl0ZV9ibG9jayBsaSB1bCBsaSBhe1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHRfZ3JleTtcbiAgICBwYWRkaW5nOjVweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG59XG4uc3RhcnRzZWl0ZV9ibG9jayBsaSB1bCBsaSBhe1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6OTAlO1xuICAgIG1hcmdpbi1sZWZ0OjEwJTtcbiAgICBib3JkZXI6IDA7XG59XG4uc3RhcnRzZWl0ZV9ibG9jayBsaSB1bCBsaTpob3ZlciwgLnN0YXJ0c2VpdGVfYmxvY2sgbGkgdWwgbGk6aG92ZXIgYSwgLnN0YXJ0c2VpdGVfYmxvY2sgbGkgdWwgbGkgYTpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRtaWRfZ3JleTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbn1cbi5zdGFydHNlaXRlX2Jsb2NrIGxpIHVsIGxpIGRpdi5pY29ue1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRvcDozcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tbGVmdDoxMHB4O1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4qL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQkxvY2stQ29udGFpbmVyXG4vLyBLbGFzc2VuLCB3ZW5uIEluaGFsdGUgYWxzIEJsw7Zja2UgZGFyZ2VzdGVsbHQgd2VyZGVuICh6LkIuIGF1ZiBTdGFydHNlaXRlKVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uYmxvY2tfZWxlbV9jb250YWluZXJ7XG5cbn1cbi5ibG9ja19lbGVtX2NvbnRhaW5lciBsaSBkaXZ7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHBhZGRpbmctYm90dG9tOjVweDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG59XG4uYmxvY2tfZWxlbV9jb250YWluZXIgbGk+ZGl2e1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRibG9ja19lbGVtX2JhY2tncm91bmQ7XG59XG4uYmxvY2tfZWxlbV9jb250YWluZXIgbGkgZGl2IGF7XG5cdHRleHQtZGVjb3JhdGlvbjpub25lO1xufVxuLmJsb2NrX2VsZW1fY29udGFpbmVyIGxpIGRpdiBkaXZ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG4uYmxvY2tfZWxlbV9jb250YWluZXIgZGl2LmltYWdlX2ZhZGluZ19lZmZla3QsXG4uYmxvY2tfZWxlbV9jb250YWluZXIgaW1nLmltYWdlX2ZhZGluZ19lZmZla3R7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6MTAwJSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG59XG5cblxuLmJsb2NrX2VsZW1fY29udGFpbmVyIGRpdjpob3ZlciAuaW1hZ2VfZmFkaW5nX2VmZmVrdHtcbiAgICBmaWx0ZXI6YWxwaGEob3BhY2l0eT01MCk7XG4gICAgLW1vei1vcGFjaXR5OiAwLjUwO1xuICAgIG9wYWNpdHk6IDAuNTA7XG59XG5cbi5ibG9ja19lbGVtX2NvbnRhaW5lciAubGlua19wZmVpbHtcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoJy4uLy4uL2ltZy9pY29uX3BmZWlsLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6NTAlO1xuXHRcdHRvcDotMjVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LTI1cHg7XG4gICAgICAgIHotaW5kZXg6NTA7XG5cdFx0d2lkdGg6NTBweDtcblx0XHRoZWlnaHQ6NTBweDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC41cyBsaW5lYXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcbiAgICAgICAgYm9yZGVyOiAwO1xufVxuLmJsb2NrX2VsZW1fY29udGFpbmVyIGRpdjpob3ZlciAubGlua19wZmVpbHtcblx0XHR0b3A6LTQwcHg7XG5cdFx0d2lkdGg6NzBweDtcblx0XHRoZWlnaHQ6NzBweDtcblx0XHRtYXJnaW4tbGVmdDotMzVweDtcblx0XHR6LWluZGV4OjUwO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCbG9ja2VsZW1lbnQgTmF2aWdhdGlvbiAoaGFtbWVyKVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4ubmF2aV9ibG9jayBsaSBkaXZ7XG5cdGJhY2tncm91bmQtY29sb3I6JG5hdmlfYmxvY2tfYmFja2dyb3VuZDtcbiAgICBjb2xvcjokbmF2aV9ibG9ja19jb2xvcjtcbn1cbi5uYXZpX2Jsb2NrIGxpIGRpdiBkaXZ7XG4gICAgcGFkZGluZzoxMHB4O1xuICAgIC8vYm9yZGVyLXRvcDoycHggc29saWQgICRuYXZpX2Jsb2NrX2JvcmRlcl90b3BfaGVhZGxpbmU7XG5cdHotaW5kZXg6MTtcbn1cbi5uYXZpX2Jsb2NrIGxpIGRpdiBoMntcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbmF2aV9ibG9ja19ib3JkZXJfYm90dG9tX2hlYWRsaW5lO1xuICAgIGNvbG9yOiRuYXZpX2Jsb2NrX2NvbG9yX2hlYWRsaW5lO1xuICAgIHBhZGRpbmctYm90dG9tOjEwcHg7XG4gICAgcGFkZGluZy10b3A6MTVweDtcbn1cbi5uYXZpX2Jsb2NrIGxpOmhvdmVyIGRpdi5uYXZpX2Jsb2NrX2VsZW17XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxvY2tfZWxlbV9iYWNrZ3JvdW5kX2hvdmVyO1xufVxuLm5hdmlfYmxvY2sgZGl2LmJsb2NrX3RleHRfY29udGFpbmVye1xuXHRwYWRkaW5nLWJvdHRvbTo1cHg7XG59XG4ubmF2aV9ibG9jayBkaXYuYmxvY2tfdGV4dF9jb250YWluZXIgaDJ7XG5cdG1hcmdpbi1ib3R0b206OHB4O1xufVxuLm5hdmlfYmxvY2sgZGl2LmJsb2NrX3RleHRfY29udGFpbmVyIHB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCbG9ja2VsZW1lbnQgTGlua2xpc3RlICgpXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5saW5rbGlzdGVfYmxvY2sgbGl7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcbn1cbi5saW5rbGlzdGVfYmxvY2sgbGkgZGl2e1xuICAgIGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9iYWNrZ3JvdW5kO1xufVxuXG4ubGlua2xpc3RlX2Jsb2NrIGxpIGRpdiBoMntcbiAgICBwYWRkaW5nLXRvcDoxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXHRtYXJnaW4tYm90dG9tOjEwcHg7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGNvbG9yOiRsaW5rbGlzdGVfdWViZXJzY2hyaWZ0X2NvbG9yO1xufVxuLmxpbmtsaXN0ZV9ibG9jayBsaSBkaXYgaDZ7XG4gICAgbWFyZ2luLWJvdHRvbToxNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfdWViZXJzY2hyaWZ0X2NvbG9yO1xufVxuLmxpbmtsaXN0ZV9ibG9jayBsaSB1bHtcbiAgICBtYXJnaW46NXB4O1xuICAgIG1hcmdpbi10b3A6MTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOmluc2lkZTtcbn1cbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGksLmxpbmtsaXN0ZV9ibG9jayBsaSB1bCBsaSBhe1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XG4gICAgY29sb3I6JGxpbmtsaXN0ZV9saW5rc19jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfYmFja2dyb3VuZDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gICAgcGFkZGluZzo1cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xufVxuLmxpbmtsaXN0ZV9ibG9jayBsaSB1bCBsaSBhe1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6OTAlO1xuICAgIG1hcmdpbi1sZWZ0OjEwJTtcbiAgICBib3JkZXI6IDA7XG59XG4ubGlua2xpc3RlX2Jsb2NrIGxpIHVsIGxpOmhvdmVyLCAubGlua2xpc3RlX2Jsb2NrIGxpIHVsIGxpOmhvdmVyIGEsIC5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGkgYTpob3ZlcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaW5rbGlzdGVfbGlua3NfaG92ZXJfYmFja2dyb3VuZDtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcblx0Y29sb3I6JGxpbmtsaXN0ZV9saW5rc19ob3Zlcl9jb2xvcjtcbn1cbi5saW5rbGlzdGVfYmxvY2sgbGkgdWwgbGkgZGl2Lmljb257XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdG9wOjNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIG1hcmdpbi1sZWZ0OjEwcHg7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9ja19kaXYge1xuICAgIGJvcmRlcjogNnB4IHNvbGlkICRncmV5O1xufVxuXG4ubGlua2xpc3RlX2ljb25fYmxvY2sgLmxpbmtsaXN0ZV9saW5rX2ljb25fYmxvY2tfc3VidGl0bGUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoOTUpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyOSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9jayAubGlua2xpc3RlX2ljb25fYmxvY2tfaGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMyk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE3KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNob21lIHVsLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKC0xMCkgcmVtLWNhbGMoLTUwKTtcbn1cblxuI2hvbWUgbGkubGlua2xpc3RlX2ljb25fYmxvY2tfbGlzdCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDUwKTtcbn1cblxuI2hvbWUgLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpIGEge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbiNob21lIC5jb250ZW50X3JpZ2h0IC5lbGVtZW50LWNvbnRhaW5lcjpudGgtY2hpbGQoMikge1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUHJvZHVrdGRhdGVuYmFua1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiNwcm9kdWN0LWNhdGVnb3J5LXByb2R1Y3RzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMxIDkgMCA5KTtcbn1cblxuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnByb2R1Y3Qtc3ViY2F0ZWdvcnktZGVzY3JpcHRpb24tY29udGFpbmVyIHNwYW4sXG4ucHJvZHVjdC1jYXRlZ29yeS1kZXNjcmlwdGlvbi1jb250YWluZXIgc3Bhbixcbi5wcm9kdWN0LWNhdGVnb3J5LXByb2R1Y3RzLWRlc2NyaXB0aW9uLWNvbnRhaW5lciBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNyk7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoNjMpO1xuICAgICYuc2VhcmNoLXJlc3VsdCB7XG4gICAgICBmb250LXNpemU6cmVtLWNhbGMoMTYpO1xuICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMjApO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtZGVzY3JpcHRpb24tY29udGFpbmVyIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnByb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtZGVzY3JpcHRpb24tY29udGFpbmVyIGg2IHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMyk7XG59XG5cbi5wcm9kdWN0cy1jYXRlZ29yeS1wcm9kdWN0cy1zaG9ydC1kZXNjcmlwdGlvbiBwIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoNzUpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDApO1xufVxuLnByb2R1Y3RzLWNhdGVnb3J5LXByb2R1Y3RzLXNob3J0LWRlc2NyaXB0aW9uIHtcbiAgJi5zZWFyY2gtcmVzdWx0IHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNCk7XG4gICAgICBsaW5lLWhlaWdodDpyZW0tY2FsYygxNSk7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG59XG5cbiNwcm9kdWN0LWRldGFpbHMtY29udGFpbmVyIHtcbiAgICBib3JkZXI6IDZweCBzb2xpZCAkZ3JleTtcbn1cblxuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyIHtcbiAgICBib3JkZXI6IDZweCBzb2xpZCAkZ3JleTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG59XG5cbiNwcm9kdWN0LWRldGFpbHMtY29udGFpbmVyID4gLnJvdyB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIyKTtcbn1cblxuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyIC5saW5rbGlzdGVfaWNvbl9ibG9ja19kaXYge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHByb2R1Y3RzLWJvcmRlcjtcbiAgICBib3JkZXItdG9wOiBub25lO1xufVxuXG4jcHJvZHVjdC1jYXRlZ29yeS1wcm9kdWN0cy1jb250YWluZXIgLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX2xpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyIC5saW5rbGlzdGVfaWNvbl9ibG9ja19kaXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbn1cblxudWwucHJvZHVjdC1zdWJjYXRlZ29yeS1saXN0LFxudWwucHJvZHVjdC1jYXRlZ29yeS1saXN0IHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKC0zMCk7XG59XG5cbi5wcm9kdWN0LXN1YmNhdGVnb3J5LWxpc3QgbGksXG4ucHJvZHVjdC1jYXRlZ29yeS1saXN0IGxpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG59XG5cbiNwcm9kdWN0LWNhdGVnb3J5LXByb2R1Y3RzLWNvbnRhaW5lciB7XG4gICAgLy9tYXJnaW4tdG9wOiByZW0tY2FsYyg3Nyk7XG59XG4vLyNwcm9kdWN0LWNhdGVnb3J5LXByb2R1Y3RzLWNvbnRhaW5lciAubGlua2xpc3RlX2ljb25fYmxvY2sgLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX2xpc3QgLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX2RpdjpudGgtY2hpbGQoNCkge1xuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyICNsaW5rbGlzdGUtaWNvbi1ibG9jay1kaXYtNCB7XG4gICAgYm9yZGVyOiBub25lO1xufVxuI3Byb2R1Y3QtY2F0ZWdvcnktcHJvZHVjdHMtY29udGFpbmVyIC5lbGVtZW50LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xufVxuXG4ucHJvZHVjdC1jYXRlZ29yeS1saXN0IC5pbWFnZV9mYWRpbmdfZWZmZWt0LFxuLnByb2R1Y3Qtc3ViY2F0ZWdvcnktbGlzdCAuaW1hZ2VfZmFkaW5nX2VmZmVrdCB7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVtLWNhbGMoMSkgc29saWQgJHByb2RjdXRzLW92ZXJ2aWV3LXBpY3R1cmUtYm9yZGVyLWJvdHRvbTtcbn1cblxuI21hbnVmYWN0dXJlciB7XG4gICAgYmFja2dyb3VuZDogJG1hbnVmYWN0dXJlci1jaG9vc2UtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDIpIHNvbGlkICRtYW51ZmFjdHVyZXItY2hvb3NlLWJvcmRlcjtcbn1cblxuI21hbnVmYWN0dXJlci10ZXh0IHtcbiAgICBjb2xvcjogJG1hbnVmYWN0dXJlci1jaG9vc2UtdGV4dC1jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg2NCk7XG59XG5cbiNtYW51ZmFjdHVyZXItc2VsZWN0IHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDE0KSAwO1xuICAgIGNvbG9yOiAjNzM3MTZiO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbiNtYW51ZmFjdHVyZXItc2VsZWN0IHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgJG1hbnVmYWN0dXJlci1jaG9vc2UtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltZy9zZWxlY3QtYXJyb3cucG5nXCIpIG5vLXJlcGVhdCAwIGNlbnRlcjtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNCk7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNCk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzNSk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG59XG5cbnNlbGVjdCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vIFByb2R1a3QgRGV0YWlscyAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4jcHJvZHVjdC1kZXRhaWxzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjIpO1xufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWhpbnQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcHJvZHVjdHMtYm9yZGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWxvbmctZGVzY3JpcHRpb24gdGFibGUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuI3Byb2R1Y3QtZGV0YWlscy1sb25nLWRlc2NyaXB0aW9uIHRhYmxlIHRyIHRkOmZpcnN0LWNoaWxke1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgd2lkdGg6IDQwJTtcbn1cblxuI3Byb2R1Y3QtZGV0YWlscy1sb25nLWRlc2NyaXB0aW9uIHRhYmxlIHRyIHRkIHtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbiNwcm9kdWN0LWRldGFpbHMtbG9uZy1kZXNjcmlwdGlvbiB0YWJsZSB0ci5ldmVuLCB0YWJsZSB0ci5hbHQsIHRhYmxlIHRyOm50aC1vZi10eXBlKDJuKSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cbiNwcm9kdWN0LWRldGFpbHMtbG9nbyB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE3KVxufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWhlYWRsaW5lIHtcbiAgICBjb2xvcjogIzAwNzBCODtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcbn1cblxuLmltYWdlLWJsdWVsaW5lLFxuLnByb2R1Y3QtZGV0YWlscy1oZWFkbGluZS11bmRlcmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0dXJxdW9pc2U7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICBtYXJnaW46IDAgMCByZW0tY2FsYygxNikgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiByZW0tY2FsYygxMTMpO1xufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWltYWdlcyB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyZXk7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjkzKTtcbn1cblxuI3Byb2R1Y3QtZGV0YWlscy1pbWFnZS10aHVtYm5haWxzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWltYWdlLXRodW1ibmFpbHMgbGkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE5KVxufVxuXG4jcHJvZHVjdC1kZXRhaWxzLWltYWdlLXRodW1ibmFpbHMgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cbiNwcm9kdWN0LWRldGFpbHMtaW1hZ2UtZ2FsbGVyeSBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4ucHJvZHVjdC1kZXRhaWxzLWRvd25sb2FkICB7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDM1KTtcbn1cbi5wcm9kdWN0LWRldGFpbHMtZG93bmxvYWQgaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5pbWFnZS1ibHVlbGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCbG9ja2VsZW1lbnQgTGlua2xpc3RlIG1pdCBJY29uIChzYW5kZXIgLSBTZXJ2aWNlIClcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpe1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2xpbmtzX2JhY2tncm91bmQ7XG59XG4ubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgZGl2e1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokbGlua2xpc3RlX2xpbmtzX2JhY2tncm91bmQ7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSBkaXYgaDJ7XG4gICAgcGFkZGluZy10b3A6MTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbToxMHB4O1xuXHRtYXJnaW4tYm90dG9tOjEwcHg7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XG4gICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgIGNvbG9yOiRsaW5rbGlzdGVfaWNvbl91ZWJlcnNjaHJpZnRfY29sb3I7XG5cdGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX3VlYmVyc2NocmlmdF9iYWNrZ3JvdW5kO1xufVxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIGRpdiBoNntcbiAgICBtYXJnaW4tYm90dG9tOjE1cHg7XG5cdGJhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX3VlYmVyc2NocmlmdF9jb2xvcjtcbn1cblxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIGRpdiBoNi5taWRsaW5le1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkdHVycXVvaXNlO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNCk7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bHtcbiAgICBtYXJnaW46MTBweCAwIDAgMDtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6JGxpbmtsaXN0ZV9pY29uX2xpbmtzX2JhY2tncm91bmQ7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjppbnNpZGU7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSwubGlua2xpc3RlX2ljb25fYmxvY2sgbGkgdWwgbGkgYXtcbiAgICBjb2xvcjogJHByb2R1Y3RzLW5hbWUtY29sb3I7XG5cdGZvbnQtc2l6ZTpyZW0tY2FsYygxNSk7XG4gICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gICAgcGFkZGluZzo1cHg7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbn1cblxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpe1xuXHRtYXJnaW4tYm90dG9tOjVweDtcbn1cblxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpIGF7XG5cdGRpc3BsYXk6dGFibGUtY2VsbDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrIGxpIHVsIGxpIGF7XG4gICAgYm9yZGVyOiAwO1xuICAgIGRpc3BsYXk6YmxvY2s7XG5cdGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmc6IDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5saW5rbGlzdGVfaWNvbl9ibG9ja19pY29ue1xuXHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0cmlnaHQ6MTBweDtcbn1cblxubGkubGlua2xpc3RlX2ljb25fYmxvY2tfbGlzdDpob3ZlciB+IC5saW5rbGlzdGVfaWNvbl9ibG9ja19tb3JlLFxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX21vcmU6aG92ZXIsIC5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSBhOmhvdmVyIH4gLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX21vcmV7XG4gICAgYmFja2dyb3VuZDogJG1haW5Db2xvckJsdWUgdXJsKCcuLi8uLi9pbWcvaG9tZS1saXN0LWFycm93LWhvdmVyLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4vLy5saW5rbGlzdGVfaWNvbl9ibG9ja19saXN0IGRpdiB1bCBsaTpob3ZlciB+IC5saW5rbGlzdGVfaWNvbl9ibG9ja19tb3JlIHtcbi8vICAgIGJhY2tncm91bmQ6ICRtYWluQ29sb3JCbHVlIHVybCgnLi4vLi4vaW1nL2hvbWUtbGlzdC1hcnJvdy1ob3Zlci5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbi8vfVxuXG5cbi5saW5rbGlzdGVfaWNvbl9ibG9jayBsaSB1bCBsaSBkaXYuaWNvbntcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB0b3A6M3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWxlZnQ6MTBweDtcbn1cblxuLmxpbmtsaXN0ZV9pY29uX2Jsb2NrX21vcmUge1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vLi4vaW1nL2hvbWUtbGlzdC1hcnJvdy5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDQpIHNvbGlkICRncmV5O1xuICAgIGhlaWdodDogcmVtLWNhbGMoMjkpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjYpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMyk7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFRvcC1OYXZpXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEhpbnRlcmdydW5kZmFyYmUgTWVuw7wsIHdlbm4gZXMgw7xiZXIgZGllIGdlc2FtdGUgQmlsZHNjaGlybWJyZWl0ZSBnZWh0XG4udG9wX2Jhcl9jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICRtYWluQ29sb3JCbHVlO1xufVxuXG4udG9wX2Jhcl9jb250YWluZXIuc2hvd3tcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR0b3BiYXItYmctY29sb3I7XG59XG4udG9wLWJhci1yb3cuYm9yZGVyQm90dG9tIHtcblx0Ym9yZGVyLWJvdHRvbTo0cHggc29saWQgJHRvcGJhcl9ib3JkZXJfYm90dG9tX2NvbG9yO1xufVxuXG4udG9wLWJhci1zZWN0aW9uIHVsID4gbGkge1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzApO1xufVxuXG4udG9wLWJhci1zZWN0aW9uIHVsIGxpIHVsIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiB1bCBsaSB7XG4gICAgLy9iYWNrZ3JvdW5kOiByZWQ7XG59XG5cbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOm5vdCguYnV0dG9uKSB7XG5cdGNvbG9yOiAkd2hpdGU7XG59XG5cbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaTpub3QoLmhhcy1mb3JtKSBhOmhvdmVyOm5vdCguYnV0dG9uKSxcbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiBsaS5hY3RpdmU6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xuICAgIGNvbG9yOiAkdG9wYmFyX2FjdGl2ZV9hbmRfaG92ZXJfY29sb3I7XG59XG5cbi50b3AtYmFyLm5vY29sb3IgLnRvcC1iYXItc2VjdGlvbiB1bC5kcm9wZG93biB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAxMTIsIDE4NCwgLjgpO1xufVxuXG4udG9wLWJhci5ub2NvbG9yIC50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xuXHRjb2xvcjokd2hpdGU7XG59XG4udG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaTpub3QoLmhhcy1mb3JtKTpub3QoLmFjdGl2ZSkgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnRvcC1iYXItc2VjdGlvbiB1bCA+IGxpID4gYSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRvcC1iYXItc2VjdGlvbiB1bCBsaSB1bCBsaSA+IGEge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODNiN2Q0O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4udG9wLWJhci1zZWN0aW9uIHVsIGxpIHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDhweDtcbn1cblxuLnRvcC1iYXItc2VjdGlvbiB1bCBsaSB1bCBsaS5hY3RpdmUsXG4udG9wLWJhci1zZWN0aW9uIHVsIGxpIHVsIGxpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHRfZ3JleTtcbn1cblxuLnRvcC1iYXItc2VjdGlvbiB1bC5kcm9wZG93bntcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyBWZXJzY2hpZWJ1bmcgZGVzIGVyc3RlbiBFaW50cmFnZXMgdW0gZWluZW4gYmVzdGltbXRlbiBXZXJ0IG5hY2ggcmVjaHRzXG4udG9wLWJhci1zZWN0aW9uIHVsLm5hdl9sZWZ0X2FkZF9tYXJnaW57XG5cdG1hcmdpbi1sZWZ0OiAwO1xufVxuLypcbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkgYXtcblx0Y29sb3I6JHdoaXRlO1xuXHRib3JkZXItYm90dG9tOm5vbmU7XG5cdHBhZGRpbmc6MjBweDtcblx0cGFkZGluZy10b3A6MjBweDtcblx0cGFkZGluZy1ib3R0b206MjBweDtcbn1cbiovXG4vLyBXZW5uIGJlaSB6d2Vpc3BhbHRpZ2VtIExheW91dCBkZXIgVW50ZXJtZW7DvHMgKFNhbmRlcikgZWluIEZha2VlaW50cmFnIG5vcndlbmRpZyBpc3QsIHdpcmQgaWhtIGhpZXJcbi8vIGRlciBDdXJzb3IgdmVyc3RlbGx0XG4udG9wLWJhci1zZWN0aW9uIHVsLmRyb3Bkb3duIGxpLm5vX2xpbmsgYXtcblx0Y3Vyc29yOmRlZmF1bHQ7XG59XG5cbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkubm9fbGluayBhOmhvdmVye1xuXHR0ZXh0LWRlY29yYXRpb246bm9uZTtcbn1cbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGkgYSBpbWd7XG5cdHBhZGRpbmctcmlnaHQ6MjBweDtcblx0d2lkdGg6NTBweDtcbn1cbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbil7XG5cdC8vYm9yZGVyLWJvdHRvbTpzb2xpZCAxcHggJGxpZ2h0X2dyZXk7XG5cdC8vYm9yZGVyLXJpZ2h0OnNvbGlkIDFweCAkbGlnaHRfZ3JleTtcblx0Ly9ib3JkZXItbGVmdDpzb2xpZCAxcHggJGxpZ2h0X2dyZXk7XG5cdC8vbGluZS1oZWlnaHQ6ODBweDtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRsO8Z3QgZGVyIFRvcC1OYXZpIGVpbmVuIEVpbmJsZW5kLUVmZmVrdCBoaW56dVxuLy8gZ2VmdW5kZW4gYXVmOlxuLy8gaHR0cDovL2ZvdW5kYXRpb24uenVyYi5jb20vZm9ydW0vcG9zdHMvODI2OC1pZGVhLWZhZGUtaW4tdG9wLW1lbnUtZHJvcGRvd25zLS0tYW55LWZlZWRiYWNrXG4vL1xuLy8gU2xpZGUtRG93biBzY2hlaW50IG5pY2h0IHp1IGZ1bmt0aW9uaWVyZW4gKGxhdXQgRm9yZW4pXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuJi5ob3ZlciwgJi5ub3QtY2xpY2s6aG92ZXIge1xuICAgICYgPiAuZHJvcGRvd24ge1xuICAgICAgICBvcGFjaXR5OiAxOyAvL0FkZCB0aGlzIGxpbmUuXG4gICAgfVxufVxuLmRyb3Bkb3duIHtcbiAgIG9wYWNpdHk6IDA7IC8vQWRkIHRoaXMgbGluZS5cbiAgIC8vIEhpZXIga2FubiBkaWUgR2VzY2h3aW5kaWdlaXQgZ2XDpG5kZXJ0IHdlcmRlblxuICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24ob3BhY2l0eSwgMTAwMG1zLCBlYXNlKTsgLy9BZGQgdGhpcyBsaW5lLlxuIH1cblxuIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHtcbiAgICB1bCBsaSB7XG4gICAgICAgIC8vIEFwcGx5IHRoZSBob3ZlciBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJjpob3ZlciA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgICAvLyBBcHBseSB0aGUgYWN0aXZlIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xuICAgICAgICAmOmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5oYXMtZHJvcGRvd24ge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICYgPiAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTsgLy9BZGQgdGhpcyBsaW5lLlxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTTElERVIgU3RhcnRzZWl0ZVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4ubGF5ZXJzbGlkZXItY2FwdGlvbiB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogNDUwcHg7XG59XG4ubGF5ZXJzbGlkZXItY2FwdGlvbi10ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XG59XG4ubGF5ZXJzbGlkZXItY29udGFpbmVyIHtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxheWVyc2xpZGVyX2JvcmRlcjtcbn1cbi5sYXllcnNsaWRlci1jb250YWluZXIgcCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkbGF5ZXJzbGlkZXJfYm94X3RleHRfY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbn1cbi5sYXllcnNsaWRlci1idWxsZXRzLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5scy1zbGlkZSA+ICogaDEgLCAuc2xpZGVyX2JveCBoMXtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICBtYXJnaW46IDEwcHggMjBweCAwIDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG5cdGNvbG9yOiRsYXllcnNsaWRlcl9ib3hfaGVhZGxpbmVfY29sb3I7XG59XG4ubHMtc2xpZGUgPiAqIGg0IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxheWVyc2xpZGVyX2JveF90ZXh0X2NvbG9yO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGF5ZXJzbGlkZXJfYm94X3RleHRfY29sb3I7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgbWFyZ2luOiAwIDIwcHggMTBweCAyMHB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDVweCAwIDVweCAwO1xuICAgIGNvbG9yOiRsYXllcnNsaWRlcl9ib3hfdGV4dF9jb2xvcjtcbn1cbi5scy1zbGlkZSA+ICogYSB7XG4gICAgbGVmdDogMzAlO1xufVxuLmxzLXNsaWRlID4gLnNsaWRlcl9ib3h7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICAgJGxheWVyc2xpZGVyX2JveF9jb2xvcjtcbn1cblxuLmxheWVyX3RleHRfYW5pbXtcbiAgICBjb2xvcjokbGF5ZXJzbGlkZXJfdGV4dF9jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM1KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbn1cblxuLmxheWVyX3RleHRfYW5pbV8xe1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYyg1NSk7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xufVxuLmxheWVyX3RleHRfYW5pbV8ye1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYyg3MCk7XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xufVxuLmxheWVyX3RleHRfYW5pbV8ze1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYyg5MCk7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xufVxuLmxheWVyX3RleHRfYW5pbV80e1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYyg2MCk7XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xufVxuXG5cbi5sYXllcl90ZXh0X2FuaW0ge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgYm9yZGVyOiByZW0tY2FsYyg0KSBzb2xpZCAkbWFpbkNvbG9yQmx1ZTtcbiAgICBwYWRkaW5nOiAyOHB4IDI3cHggMjBweCAyN3B4O1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoOTU0KTtcbiAgICBsZWZ0OiByZW0tY2FsYygzNTApICFpbXBvcnRhbnQ7XG59XG5cbi5vdmVybGF5LW1vcmUtaW5mby1jb250YWluZXIge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLm92ZXJsYXktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm92ZXJsYXktdGV4dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5vdmVybGF5LW1vcmUtaW5mbyB7XG4gICAgYmFja2dyb3VuZDogJG1haW5Db2xvckJsdWU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKSByZW0tY2FsYygyOSk7XG4gICAgbWFyZ2luOiAwIDMwcHggMCAwO1xufVxuXG4uYWRkaXRpb25hbC1zdHlsZXMge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB0b3A6IHJlbS1jYWxjKDIwNSkgIWltcG9ydGFudDtcbn1cblxuLmFkZGl0aW9uYWwtc3R5bGVzLWxpbmUtYnJlYWsge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB0b3A6IHJlbS1jYWxjKDE3NSkgIWltcG9ydGFudDtcbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIE5BViBDQU5WQVNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLm9mZi1jYW52YXMtd3JhcCAudGFiLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi50YWItYmFyIGgxIHtcbiAgICAvL2NvbG9yOiAkbmF2X2NhbnZhc190YWJfY29sb3I7XG59XG51bC5vZmYtY2FudmFzLWxpc3QgbGkgbGFiZWwge1xuICAgIC8vYmFja2dyb3VuZDogJGdyZWVuO1xuICAgIC8vY29sb3I6ICRuYXZfY2FudmFzX21lbnVfY29sb3JfbGlzdDtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vICAgIEtvbnRha3Rcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuIC5jb250YWluZXJfa29udGFrdHtcbiAgICBtYXJnaW4tdG9wOjIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygzMCk7XG59XG5cbiBkaXYucm93IGRpdi5rb250YWt0e1xuICAgIGJhY2tncm91bmQtY29sb3I6JGtvbnRha3RfYmFja2dyb3VuZF9jb2xvcjtcbiAgICBjb2xvcjoka29udGFrdF9jb2xvcjtcblx0cGFkZGluZzoyMHB4O1xuXHRwYWRkaW5nLWxlZnQ6NDBweDtcbiB9XG4gZGl2LnJvdyBkaXYua29udGFrdCBhe1xuICAgIGNvbG9yOiRrb250YWt0X2xpbmtfY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbn1cbiBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDApKSB7XG4gICAgZGl2LnJvdyBkaXYua29udGFrdHtcbiAgICAgICAgcGFkZGluZzoxMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MTBweDtcbiAgICB9XG4gICAgIGRpdi5yb3cgZGl2LmtvbnRha3QgcHtcbiAgICAgICAgIGZvbnQtc2l6ZTowLjhlbTtcbiAgICAgfVxufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gICAgQW5mYWhydFxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4jYW5mYWhydC1jb250YWluZXIge1xuICAgIGJvcmRlcjogcmVtLWNhbGMoNikgc29saWQgJGdyZXk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzEpIHJlbS1jYWxjKDMxKSByZW0tY2FsYygxNSkgcmVtLWNhbGMoMzEpO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gICAgaW1hZ2UudHBsXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5zaW5nbGUtaW1hZ2UgaW1nIHtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAkYm9yZGVyLXNpbmdsZS1pbWFnZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg4KTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEZPT1RFUlxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5mb290ZXIge1xuICAgIGJhY2tncm91bmQ6ICM2NDY0NjQgdXJsKFwiLi4vLi4vaW1nL2Zvb3Rlci1iYWNrZ3JvdW5kLmpwZ1wiKSBuby1yZXBlYXQ7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAyMXB4O1xuXG4gICAgLmZvb3RlckxpbmtzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4jZm9vdGVyLW5hdiB7XG5cdGZsb2F0OmxlZnQ7XG4gICAgbWluLWhlaWdodDogcmVtLWNhbGMoMzY1KTtcblx0cG9zaXRpb246cmVsYXRpdmU7XG5cdHdpZHRoOjEwMCU7XG59XG5cbiNmb290ZXItbmF2IHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuI2Zvb3Rlci1uYXYgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vZmxvYXQ6IGxlZnQ7XG59XG5cbiNmb290ZXItbmF2IHVsIGxpIHVsIGxpIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkd2hpdGU7XG59XG5cbiNmb290ZXItbmF2IGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI2Zvb3Rlci1uYXYgdWwgbGkgdWwgbGkgYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbiNmb290ZXItbmF2IHVsIHVsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW4tdG9wOjE1cHg7XG59XG5cbiNmb290ZXItbmF2IHVsIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTcpO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbiNmb290ZXItbmF2IHVsIHVsIGxpIGEge1xuICAgIGNvbG9yOiAkZm9vdGVyX3RleHQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiNmb290ZXItbmF2IHVsIHVsIGxpIGE6aG92ZXJ7XG5cdGNvbG9yOiAkZm9vdGVyX3RleHRfaG92ZXI7XG59XG4jZm9vdGVyLWFkZHJlc3Mge1xuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAyMCAzMCAyMCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoMTAyNCkpIHtcbiAgI2Zvb3Rlci1hZGRyZXNzIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxMDAgMzAgMTAwKTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3MDApKSB7XG4gICNmb290ZXItYWRkcmVzcyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMjAgMzAgMjApO1xuICB9XG59XG5cbiNmb290ZXItYWRkcmVzcyBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbn1cblxuI2Zvb3Rlci1hZGRyZXNzIHAge1xuICAgIGNvbG9yOiAkZm9vdGVyX2ltcHJpbnQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luOiAwO1xuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cblxuI2Zvb3Rlci1hZGRyZXNzIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbiNmb290ZXItdG9wQnV0dG9uIHtcblx0cG9zaXRpb246YWJzb2x1dGU7XG5cdHRvcDotMTBweDtcblx0cmlnaHQ6IDA7XG5cdGRpc3BsYXk6YmxvY2s7XG5cdHdpZHRoOjQ1cHg7XG5cdGhlaWdodDo0NXB4O1xuXHRiYWNrZ3JvdW5kOnVybCgnLi4vLi4vaW1nL3RvcF9saW5rLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xufVxuXG4jZm9vdGVyLW5hdi1zbWFsbCB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUXVpY2stU2VhcmNoXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8qXG4ucXVpY2stc2VhcmNoLWljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtLWNhbGMoMTApO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGJhY2tncm91bmQ6dXJsKCcuLi8uLi9pbWcvaWNvbi1zdWNoZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogcmVtLWNhbGMoMTI1NSkpIHtcbiAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgIGhlaWdodDogNTRweDtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0xMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiovXG4ucXVpY2stc2VhcmNoLWZvcm0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vdG9wOiByZW0tY2FsYygxMTcpO1xuICAgIHJpZ2h0OiAwO1xuICAgIC8vbGVmdDogMDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDM2NSk7XG4gICAgcGFkZGluZzogMCByZW0tY2FsYyg1NSk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjoxcHggc29saWQgJGxpZ2h0X2dyZXk7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggNXB4IDEycHggLTVweCByZ2JhKDAsMCwwLDAuNzUpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDVweCAxMnB4IC01cHggcmdiYSgwLDAsMCwwLjc1KTtcbiAgICBib3gtc2hhZG93OiAwcHggNXB4IDEycHggLTVweCByZ2JhKDAsMCwwLDAuNzUpO1xuXG4gICAgaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUxKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDUxKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgIC8qIEZpcmVmb3ggMTkrICovXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBjbGVhciBpbmhlcml0YW5jZVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0blN1Ym1pdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNTUpO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUxKTtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2ltZy9pY29uX3NlYXJjaC5wbmcnKSBuby1yZXBlYXQgNXB4IDFweCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIC5jbG9zZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDU1KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi8uLi9pbWcvaWNvbl9xdWlja3NlYXJjaF9jbG9zZS5wbmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbi5zZWFyY2gtcmVzdWx0e1xuICAuc2VhcmNoLXJlc3VsdHMge1xuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgfVxuXG5cdGRpdi5zci1pdGVte1xuXHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRzZWFyY2hfcmVzdWx0c19ib3JkZXJfY29sb3I7XG5cdFx0bWFyZ2luLWJvdHRvbToyMHB4O1xuXHR9XG5cdHNwYW4uc3ItaGlnaGxpZ2h0e1xuXHRcdGJhY2tncm91bmQtY29sb3I6JHNlYXJjaF9yZXN1bHRzX2hpZ2hsaWdodF9jb2xvcjtcblx0fVxuXHRkaXYucmVzdWx0Q291bnR7XG5cdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJHNlYXJjaF9yZXN1bHRzX2JvcmRlcl9jb2xvcjtcblx0XHRwYWRkaW5nLWJvdHRvbToyMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206MjBweDtcblx0fVxuXG5cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIE1lZGlhLVFVZXJpZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYygxMjgwKSkge1xuICAgICNsb2dvIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDExMzUpKSB7XG4gICAgI2Zvb3Rlci1uYXYgYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgNzBweCAwIDA7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDk5OSkpIHtcbiAgICAvL2Zvb3RlcixcbiAgICAucmVzcG9uc2Utb2ZmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmltYWdlLW5vLXBhZGRpbmcge1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI25hdi1pbXBhZ2IsXG4gICAgLnRvcC1iYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5vZmYtY2FudmFzLXdyYXAgLnRhYi1iYXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2lkZWJhcixcbiAgICAubmV3cy10ZXh0LFxuICAgIC5uZXdzLXRpdGxlLFxuICAgIC5wYW5lbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEFuc3ByZWNocGFydG5lclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uZWxlbWVudC1jb250YWluZXItYW5zcHJlY2hwYXJ0bmVyIGltZ3tcblx0Ym9yZGVyOiByZW0tY2FsYyg0KSBzb2xpZCAkYm9yZGVyLXNpbmdsZS1pbWFnZTtcblx0bWFyZ2luOjEwcHg7XG4gICAgbWF4LXdpZHRoOjI1MHB4O1xuXHRwYWRkaW5nOiByZW0tY2FsYyg4KTtcblx0d2lkdGg6MTAwJTtcbn1cblxuLmVsZW1lbnQtY29udGFpbmVyLWFuc3ByZWNocGFydG5lciBkaXYudm9sbGVyTmFtZUJveHtcbiAgICBwYWRkaW5nOiAxMHB4IDVweCA1cHggMjVweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICMwMDNCNjk7XG5cdC8vYmFja2dyb3VuZCAgICAgICAgICAgICAgIDogI2ZmZmZmZiB1cmwoJy4uLy4uL2ltZy9hbnNwcmVjaHBhcnRuZXItcXVhZHJhdC5wbmcnKSBuby1yZXBlYXQgMyUgNTUlO1xufVxuLmVsZW1lbnQtY29udGFpbmVyLWFuc3ByZWNocGFydG5lciBkaXYucG9zaXRpb25Cb3h7XG5cdHBhZGRpbmcgICAgICAgICAgICAgICAgICA6IDBweCA1cHggMHB4IDI1cHg7XG5cdC8vZm9udC1zaXplICAgICAgICAgICAgICAgIDogcmVtLWNhbGMoMTIpO1xuXHRmb250LXdlaWdodCAgICAgICAgICAgICAgOiA0MDA7XG59XG5cbi5lbGVtZW50LWNvbnRhaW5lci1hbnNwcmVjaHBhcnRuZXIgZGl2LnRleHRCb3h7XG4gICAgcGFkZGluZyAgICAgICAgICAgICAgICAgIDogMHB4IDVweCAwcHggMjVweDtcblx0Zm9udC1zaXplICAgICAgICAgICAgICAgIDogcmVtLWNhbGMoMTQpO1xuXHRmb250LXdlaWdodCAgICAgICAgICAgICAgOiA0MDA7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIExpc3RlIC8gQWtrb3JkaW9uXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbnVsLmxpc3Rle1xuICAgIG1hcmdpbi10b3A6NDBweDtcbn1cbnVsLmxpc3RlIGg1Lmxpc3RlX2FjY29yZGlvbntcbiAgICBjdXJzb3I6cG9pbnRlcjtcbn1cbnVsLmxpc3RlIHtcbiAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XG59XG51bC5saXN0ZSBsaXtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaXN0ZV9iYWNrZ3JvdW5kY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZzoxMHB4O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xufVxudWwubGlzdGUgaDV7XG4gICAgbWFyZ2luOnJlbS1jYWxjKDApO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMCk7XG4gICAgY29sb3I6JGxpc3RlX2hlYWRfY29sb3I7XG4gICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDIwKTtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbn1cbnVsLmxpc3RlIGxpIGRpdi5ha2tvcmRpb25fdGV4dHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRsaXN0ZV90ZXh0X2JhY2tncm91bmRjb2xvcjtcbiAgICBjb2xvcjokbGlzdGVfdGV4dF9jb2xvcjtcbiAgICBwYWRkaW5nOjEwcHg7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDEwKTtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNsaWRlciBmw7xyIEJpbGRlciAobG9nb19saW5rX3NsaWRlcilcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmxvZ29fbGlua19zbGlkZXJfY29udGFpbmVye1xuICAgIHBhZGRpbmctdG9wOjIwcHg7XG59XG4ubG9nb19saW5rX3NsaWRlcl9jb250YWluZXIgaDF7XG4gICAgY29sb3I6JGxvZ29fbGlua19zbGlkZXJfaGVhZGxpbmU7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDIwKTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIGxldHRlci1zcGFjaW5nOnJlbS1jYWxjKDQpO1xuICAgIHBhZGRpbmctYm90dG9tOjIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTo1cHg7XG59XG4ubG9nb19saW5rX3NsaWRlcl9jb250YWluZXIgaDEuY2VudGVyZWR7XG4gICAgbWFyZ2luOmF1dG87XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG4ubG9nb19saW5rX3NsaWRlcl9jb250YWluZXIgaDEudW5kZXJsaW5le1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsb2dvX2xpbmtfc2xpZGVyX3VuZGVybGluZTtcbn1cbi5sb2dvX2xpbmtfc2xpZGVye1xuICAgIG1hcmdpbi10b3A6MTVweDtcblxuICAgIC5zbGljay10cmFja3tcbiAgICAgICAgcGFkZGluZy1ib3R0b206MjBweDtcbiAgICB9XG4gICAgYnV0dG9uLnNsaWNrLXByZXYge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDoxMHB4O1xuICAgICAgICB0b3A6MTAwJTtcbiAgICAgICAgei1pbmRleDo5OTk7XG4gICAgfVxuICAgIGJ1dHRvbi5zbGljay1wcmV2OmJlZm9yZSAge1xuICAgICAgICBjb2xvcjogJG5ld3Nfc2xpZGVyX3ByZXZfbmV4dF9idXR0b25zO1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgfVxuICAgIGJ1dHRvbi5zbGljay1uZXh0IHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OjIwcHg7XG4gICAgICAgIHRvcDoxMDAlO1xuICAgICAgICB6LWluZGV4Ojk5OTtcbiAgICB9XG4gICAgYnV0dG9uLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRuZXdzX3NsaWRlcl9wcmV2X25leHRfYnV0dG9ucztcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcHJlc3N1bVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4jcXVpY2stc2VhcmNoLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5pbXByaW50IGxpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCkgMDtcbn1cblxuLmltcHJpbnQgbGkgYSBpbWcge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IHJlbS1jYWxjKDc0NSkpIHtcbiAgICAuaW1wcmludCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg2MDApKSB7XG4gICAgLmltcHJpbnQgbGk6Zmlyc3QtY2hpbGR7XG5cdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuXHQgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG5cdC5oZWFkZXItaW1wcmludC1wYWRkaW5nIHtcblx0XHRwYWRkaW5nLXRvcDpyZW0tY2FsYygwKTtcblx0XHRwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg1KTtcblx0XHRwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMCk7XG5cdFx0cGFkZGluZy1yaWdodDpyZW0tY2FsYygxMCk7XG5cdH1cbn1cblxuLmltcHJpbnQgYSxcbi5pbXByaW50IGE6aG92ZXIsXG4uaW1wcmludCBhOmFjdGl2ZSxcbi5pbXByaW50IGE6dmlzaXRlZCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogJGhlYWRlcl9zdWJuYXZpX2NvbG9yO1xufVxuLmltcHJpbnQgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uaGVhZGVyLWltcHJpbnQtcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDUpO1xuICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygwKTtcbiAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDE1KTtcbn1cblxuLmltcHJpbnQgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTaWRlLU5hdiAgIC0gIGxpbmtlIE5hdmlnYXRpb25cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLnNpZGUtbmF2IHtcbiAgICBwYWRkaW5nOiAwO1xufVxuLnNpZGUtbmF2LXRpdGxle1xuXHRjb2xvcjokc2lkZW5hdl9jb2xvcjtcblx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgJHNpZGVuYXZfdGl0bGVfYm9yZGVyX2JvdHRvbV9jb2xvcjtcblx0cGFkZGluZy1ib3R0b206MTVweDtcblx0dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuXHRmb250LXdlaWdodDpib2xkO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRtYXJnaW4tdG9wOjEwcHg7XG59XG4uc2lkZS1uYXYgbGkge1xuICAgIGJhY2tncm91bmQ6ICRzaWRlbmF2X2JhY2tncm91bmRfY29sb3I7XG5cdC8vcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuLy8gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRzaWRlbmF2X2JvcmRlcl9ib3R0b21fY29sb3I7XG59XG4uc2lkZS1uYXYgbGkgYTpob3Zlcjpub3QoLmJ1dHRvbiksIC5zaWRlLW5hdiBsaSBhOmZvY3VzOm5vdCguYnV0dG9uKSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGVhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGVuYXZfaG92ZXJfYmFja2dyb3VuZF9jb2xvcjtcbiAgICBjb2xvcjogJHNpZGVuYXZfaG92ZXJfY29sb3I7XG59XG4uc2lkZS1uYXYgbGkuYWN0aXZlID4gYTpmaXJzdC1jaGlsZDpub3QoLmJ1dHRvbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWRlbmF2X2FjdGl2ZV9iYWNrZ3JvdW5kX2NvbG9yO1xuXHRjb2xvcjokc2lkZW5hdl9hY3RpdmVfY29sb3I7XG59XG4uc2lkZS1uYXYgbGkgdWwgbGl7XG5cdG1hcmdpbi1sZWZ0OjIwcHg7XG5cdGJvcmRlci1ib3R0b206IDA7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTSURFQkFSXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5zaWRlYmFyLWhlYWQgaDEge1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkbmV3c19oZWFkbGluZV9ib3JkZXI7XG4gICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRuZXdzX2hlYWRsaW5lX2JvcmRlcjtcbiAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIC8vbWFyZ2luLXRvcDo1MHB4O1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIE5ld3NibG9ja1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBOZXdzYmxvY2tcbi5uZXdzLWRhdGUge1xuICAgIGJhY2tncm91bmQ6ICRuZXdzX2RhdGVfYmFja2dyb3VuZGNvbG9yO1xuICAgIGhlaWdodDogNzVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgY29sb3I6ICRuZXdzX2RhdGVfY29sb3I7XG4gICAgcGFkZGluZzogMTBweCAwcHggNXB4IDVweDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLm5ld3MtbW9udGgge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiA1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm5ld3MteWVhciB7XG4gICAgLy9mb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICBwYWRkaW5nLWxlZnQ6NXB4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRvcDotNnB4O1xufVxuXG4ubmV3cy10aXRsZSB7XG4gICAgYmFja2dyb3VuZDogJG5ld3NfYmFja2dyb3VuZGNvbG9yO1xuICAgIC8vcGFkZGluZy1sZWZ0OiAxLjJyZW07XG4gICAgLy9wYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgY29sb3I6ICRuZXdzX3RleHQhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDoxMHB4O1xufVxuXG4ubmV3cy10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgIGNvbG9yOiAkbmV3c190aXRsZV9jb2xvcjtcbn1cblxuLm5ld3MtdGV4dCB7XG4gICAgYmFja2dyb3VuZDogJG5ld3NfYmFja2dyb3VuZGNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICAvL3BhZGRpbmc6IDI1cHggMThweCAwIDM4cHg7XG59XG4ubmV3cy10ZXh0IGltZ3tcbiAgICBwYWRkaW5nLWJvdHRvbToxMHB4O1xufVxuLm5ld3MtdGV4dCBwIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbn1cbi5zbGlkZXJfdGV4dHtcblxufVxuLm5ld3NibG9ja3tcblxufVxuLm5ld3NibG9jayBpbWd7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLXByZXYge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGxlZnQ6MTBweDtcbiAgICB0b3A6MTAwJTtcbiAgICB6LWluZGV4Ojk5OTtcbn1cbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLXByZXY6YmVmb3JlICB7XG4gICAgY29sb3I6ICRuZXdzX3NsaWRlcl9wcmV2X25leHRfYnV0dG9ucztcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbn1cblxuLm5ld3NibG9jayBidXR0b24uc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgcmlnaHQ6MjBweDtcbiAgICB0b3A6MTAwJTtcbiAgICB6LWluZGV4Ojk5OTtcbn1cbi5uZXdzYmxvY2sgYnV0dG9uLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb2xvcjogJG5ld3Nfc2xpZGVyX3ByZXZfbmV4dF9idXR0b25zO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBmb250LXdlaWdodDpib2xkO1xufVxuLm5ld3NibG9jayB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IC04JSFpbXBvcnRhbnQ7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEZhY2Vib29rLU5ld3Ncbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmZhY2Vib29rX25ld3N7XG5cbiAgICAuaXRlbXtcbiAgICAgICAgYmFja2dyb3VuZDogJGZhY2Vib29rX25ld3NfYmFja2dyb3VuZF9jb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo1cHg7XG4gICAgICAgIHBhZGRpbmc6MTBweCAxMHB4IDEwcHggMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICAkZmFjZWJvb2tfbmV3c19ib3JkZXJfY29sb3I7XG4gICAgfVxuICAgIGRpdi5pdGVtIHNwYW4uaGVhZGxpbmV7XG4gICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgfVxuICAgIGRpdi5pdGVtIHNwYW4uZGF0ZXtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZmFjZWJvb2tfbmV3c19kYXRlX2JhY2tncm91bmRfY29sb3I7XG4gICAgICAgIGNvbG9yOiRmYWNlYm9va19uZXdzX2RhdGVfY29sb3I7XG4gICAgICAgIHBhZGRpbmc6MnB4O1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNpZGViYXItQmxvY2stSW5mb3JtYXRpb25lblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4uc2lkZWJhcl9pbmZvcm1hdGlvbmVue1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHNpZGViYXJfaW5mb3JtYXRpb25lbl9iYWNrZ3JvdW5kO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOjIwcHg7XG59XG4uc2lkZWJhcl9pbmZvcm1hdGlvbmVuIGRpdntcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoNSk7XG4gICAgcGFkZGluZy1yaWdodDpyZW0tY2FsYyg1KTtcbn1cblxuLnNpZGViYXJfaW5mb3JtYXRpb25lbiBoNHtcbiAgICBwYWRkaW5nLWJvdHRvbToxMHB4O1xuICAgIGJvcmRlci1ib3R0b206JG1pZF9ncmV5IDFweCBzb2xpZDtcbn1cblxuLnNpZGViYXJfaW5mb3JtYXRpb25lbiBoM3tcbiAgICBjb2xvcjokZGFya19yZWQ7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE0KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpZGViYXJfaW5mb3JtYXRpb25lbiBoMXtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRtaWRfZ3JleTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTpzb2xpZCAzcHggJHNpZGViYXJfaW5mb3JtYXRpb25lbl9ib3JkZXJfY29sb3I7XG4gICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDIwKTtcbiAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDIwKTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDMwKTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoMTAwMCkpIHtcbiAgICAuc2lkZWJhcl9pbmZvcm1hdGlvbmVuIGgxe1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTcpO1xuICAgIH1cbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJ1dHRvbnNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuYnV0dG9uLCAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uX2JhY2tncm91bmRjb2xvcjtcbiAgICBjb2xvcjogJGJ1dHRvbl9jb2xvcjtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbSAxLjE4NzVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xufVxuLy8gRGVyIEJ1dHRvbiBpbSBMYXllclNsaWRlciBkYXJmIGtlaW5lIHRyYW5zaXRpb24gaGFiZW4sIHNvbnN0IGJsaXR6dCBlciB6d2lzY2hlbmR1cmNoIGF1ZlxuLmxzLXNsaWRlIC5idXR0b257XG4gICAgdHJhbnNpdGlvbjpub25lO1xufVxuYnV0dG9uOmhvdmVyLCBidXR0b246Zm9jdXMsIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b25faG92ZXJfYmFja2dyb3VuZGNvbG9yO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gIEFORlJBR0UgRk9STVVMQVIgIyBLb250YWt0Zm9ydW1sYXJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmFuZnJhZ2Uge1xuICAgIHBhZGRpbmc6MjRweCAxOHB4IDAgMzJweDtcbn1cblxuLmxvZ28tYW5mcmFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xufVxuXG4uYW5mcmFnZSBsYWJlbCB7XG4gICAgY29sb3I6ICRzY2huZWxsYW5mcmFnZV9sYWJlbF9jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5hbmZyYWdlIGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiAkc2NobmVsbGFuZnJhZ2VfaW5wdXRfYmFja2dyb3VuZF9jb2xvcjtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbn1cbi5hbmZyYWdlLWJvcmRlci1wYWRkaW5nIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNjaG5lbGxhbmZyYWdlX2JvcmRlcl9jb2xvcjtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAwO1xufVxuLmFuZnJhZ2UgcCB7XG4gICAgY29sb3I6ICRzY2huZWxsYW5mcmFnZV9jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYW5mcmFnZSBoMiB7XG4gICAgY29sb3I6ICRzY2huZWxsYW5mcmFnZV9jb2xvcl9oMjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmFuZnJhZ2UgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogJHNjaG5lbGxhbmZyYWdlX2J1dHRvbl9iYWNrZ3JvdW5kX2NvbG9yO1xuICAgIGNvbG9yOiAkc2NobmVsbGFuZnJhZ2VfYnV0dG9uX2NvbG9yO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmctcmVjYXB0Y2hhe1xuICAgIG1hcmdpbi1ib3R0b206MjBweDtcbn1cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gS29udGFrdGZvcm11bGFyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiNrb250YWt0LWZvcm0ge1xuICAgIGJvcmRlcjogcmVtLWNhbGMoNikgc29saWQgJGdyZXk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjApIHJlbS1jYWxjKDMxKSByZW0tY2FsYygxNSkgcmVtLWNhbGMoMzEpO1xufVxuXG4uY29udGFjdC1mb3JtLWNvbnRlbnR7XG5cdGlucHV0LCB0ZXh0YXJlYXtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiRrb250YWt0Zm9ybV9pbnB1dF9iYWNrZ3JvdW5kX2NvbG9yO1xuXHRcdGJvcmRlcjoxcHggc29saWQgJGtvbnRha3Rmb3JtX2lucHV0X2JvcmRlcl9jb2xvcjtcblx0fVxuXHRpbnB1dDpob3ZlciwgaW5wdXQ6Zm9jdXMgLHRleHRhcmVhOmhvdmVyLHRleHRhcmVhOmZvY3Vze1xuXHRcdGJhY2tncm91bmQtY29sb3I6JGtvbnRha3Rmb3JtX2lucHV0X2FrdGl2X2JhY2tncm91bmRfY29sb3I7XG5cdH1cbn1cbi8vIFdlbm4gZGFzIEZvcm11bGFyIGluIGVpbmVyIFNwYWx0ZSBsaWVndCwgZGFubiB6ZWlnZSBlcyBudXIgZWluc3BhbHRpZyBhblxuZGl2LmxhcmdlLTYgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02LGRpdi5sYXJnZS00IC5jb250YWN0LWZvcm0tY29udGVudCBkaXYubGFyZ2UtNiwgZGl2LmxhcmdlLTMgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02e1xuXHRkaXNwbGF5OmJsb2NrO1xuXHR3aWR0aDoxMDAlO1xufVxuZGl2LmxhcmdlLTYgLmNvbnRhY3QtZm9ybS1jb250ZW50ICwgZGl2LmxhcmdlLTQgLmNvbnRhY3QtZm9ybS1jb250ZW50ICwgZGl2LmxhcmdlLTMgLmNvbnRhY3QtZm9ybS1jb250ZW50e1xuXHRmaWVsZHNldC5yZWNhcHRjaGFfZm9ybXtcblx0XHQvL3Bvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdC8vbGVmdDotMTBweDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlcjowO1xuXHRcdHBhZGRpbmctdG9wOjEwcHg7XG5cdH1cbn1cblxuLmxhbmd1YWdlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb250YWN0LWZvcm0tY29udGVudCBpbnB1dCwgLmNvbnRhY3QtZm9ybS1jb250ZW50IHRleHRhcmVhIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29udGFjdC1mb3JtLWJvcmRlcjtcbn1cblxuI2NvbnRhY3QtaGludCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbnRleHRhcmVhIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgLW1vei1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0Nik7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApXG59XG5cbi5jb250YWN0LWZvcm0tY29udGVudCB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxNDYpICFpbXBvcnRhbnQ7XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAgICBNZWhyc3BhbHRpZ2VyIFRleHRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLm11bHRpY29sdW1uXzJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xufVxuLm11bHRpY29sdW1uXzN7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xufVxuLm11bHRpY29sdW1uXzR7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIC1tb3otY29sdW1uLWNvdW50OiA0O1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA0O1xufVxuXG4vLyBWZXJoaW5kZXJlIGRlbiBVbXJidWNoIGluIGJlc3RpbW10ZW4gRWxlbWVudGVuXG4ubXVsdGljb2x1bW5fMiB0YWJsZSwubXVsdGljb2x1bW5fMyB0YWJsZSwubXVsdGljb2x1bW5fNCB0YWJsZXtcbiAgICAtd2Via2l0LWNvbHVtbi1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xufVxuXG4vLyBWZXJyaW5nZXJlIGRpZSBTcGFsdGVuYW56YWhsIGJlaSBrbGVpbmVyZXIgQXVmbMO2c3VuZ1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg5MDApKSB7XG4gICAgLm11bHRpY29sdW1uXzN7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgIH1cbiAgICAubXVsdGljb2x1bW5fNHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgIH1cbn1cbi8vIEFiIGhpZXIgbnVyIG5vY2ggZWluc3BhbHRpZ1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiByZW0tY2FsYyg3MDApKSB7XG4gICAgLm11bHRpY29sdW1uXzJ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcbiAgICB9XG4gICAgLm11bHRpY29sdW1uXzN7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcbiAgICB9XG4gICAgLm11bHRpY29sdW1uXzR7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAxO1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogcmVtLWNhbGMoOTk5KSkge1xuICAgICNmb290ZXItbmF2IHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG5cbmRpdi5sYXJnZS00IC5jb250YWN0LWZvcm0tY29udGVudCBkaXYubGFyZ2UtNiwgZGl2LmxhcmdlLTMgLmNvbnRhY3QtZm9ybS1jb250ZW50IGRpdi5sYXJnZS02e1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcblxuXG59XG5kaXYubGFyZ2UtNCAuY29udGFjdC1mb3JtLWNvbnRlbnQgLCBkaXYubGFyZ2UtMyAuY29udGFjdC1mb3JtLWNvbnRlbnR7XG4gICAgZmllbGRzZXQucmVjYXB0Y2hhX2Zvcm17XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBsZWZ0Oi0xMHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZy10b3A6MTBweDtcbiAgICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gICAgUGFyYWxsYXhcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLnBhcmFsbGF4LXJvdyB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICYuZWxlbWVudC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgfVxufVxuXG4ucGFyYWxsYXgtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLmltYWdlLXNob3ctYm9yZGVyIHtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRib3JkZXItc2luZ2xlLWltYWdlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbn1cblxuLmRvd25sb2FkLWxpc3Qge1xuICAgIC5kb3dubG9hZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHAge1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZG93bmxvYWQtaWNvbiB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vLi4vaW1nL2Rvd25sb2FkX2ljb24uc3ZnJyk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNtYWluLWNvbnRlbnQge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6IHJlbS1jYWxjKDEzMDApKSB7XG4gICAgI21haW4tY29udGVudCBkaXYuZWxlbWVudC1jb250YWluZXIgdWwge1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDApO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG5cbiAgICAjbWFpbi1jb250ZW50IHtcbiAgICAgICAgLnNpZGViYXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cblxuICAgICAgICAuZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRpcmVjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMCk7XG59XG5AbWVkaWEgb25seSBwcmludCB7XG5cbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUdBOzs4RUFFOEU7QUl1VjVFLEFBQUksSUFBQSxBQUFBLG1CQUFtQixDQUFDO0VBQ3RCLFdBQVcsRUFBRSxlQUFnQixHQUM5Qjs7QUFFRCxBQUFJLElBQUEsQUFBQSxvQkFBb0IsQ0FBQztFQUN2QixXQUFXLEVBQUUsT0FBRztFQUNoQixLQUFLLEVIa0NNLEdBQUcsR0dqQ2Y7O0FBRUQsQUFBSSxJQUFBLEFBQUEseUJBQXlCLENBQUM7RUFDNUIsV0FBVyxFQUFFLGtDQUFHO0VBQ2hCLEtBQUssRUg2Qk0sR0FBRyxHRzVCZjs7QUFFRCxBQUFJLElBQUEsQUFBQSxxQkFBcUIsQ0FBQztFQUN4QixXQUFXLEVBQUUsa0NBQUc7RUFDaEIsS0FBSyxFRmhSQyxVQUFVLEdFaVJqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSwwQkFBMEIsQ0FBQztFQUM3QixXQUFXLEVBQUUsNkRBQUc7RUFDaEIsS0FBSyxFRnJSQyxVQUFVLEdFc1JqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSxvQkFBb0IsQ0FBQztFQUN2QixXQUFXLEVBQUUsK0JBQUc7RUFDaEIsS0FBSyxFRjFSQyxPQUFVLEdFMlJqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSx5QkFBeUIsQ0FBQztFQUM1QixXQUFXLEVBQUUsb0RBQUc7RUFDaEIsS0FBSyxFRi9SQyxPQUFVLEdFZ1NqQjs7QUFFRCxBQUFJLElBQUEsQUFBQSxxQkFBcUIsQ0FBQztFQUN4QixXQUFXLEVBQUUsaUNBQUc7RUFDaEIsS0FBSyxFQWxGTyxTQUFTLEdBbUZ0Qjs7QUFFRCxBQUFJLElBQUEsQUFBQSwwQkFBMEIsQ0FBQztFQUM3QixXQUFXLEVBQUUsdURBQUc7RUFDaEIsS0FBSyxFQXZGTyxTQUFTLEdBd0Z0Qjs7QUFFRCxBQUFJLElBQUEsQUFBQSxz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a0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxrQkFBa0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxlQUFlLEVBQUUsQUFBRSxFQUFBLEFBQUEsZUFBZSxFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLG1CQUFtQixFQUFFLEFBQUUsRUFBQSxBQUFBLG1CQUFtQixFQUFFLEFBQUUsRUFBQSxBQUFBLGdCQUFnQixFQUFFLEFBQUUsRUFBQSxBQUFBLGdCQUFnQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLGtCQUFrQixFQUFFLEFBQUUsRUFBQSxBQUFBLGtCQUFrQixFQUFFLEFBQUUsRUFBQSxBQUFBLGVBQWUsRUFBRSxBQUFFLEVBQUEsQUFBQSxlQUFlLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsc0JBQXNCLEVBQUUsQUFBRSxFQUFBLEFBQUEsc0JBQXNCLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFB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QSxrQkFBa0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxrQkFBa0IsRUFBRSxBQUFFLEVBQUEsQUFBQSxlQUFlLEVBQUUsQUFBRSxFQUFBLEFBQUEsZUFBZSxFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLG1CQUFtQixFQUFFLEFBQUUsRUFBQSxBQUFBLG1CQUFtQixFQUFFLEFBQUUsRUFBQSxBQUFBLGdCQUFnQixFQUFFLEFBQUUsRUFBQSxBQUFBLGdCQUFnQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLHFCQUFxQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLG9CQUFvQixFQUFFLEFBQUUsRUFBQSxBQUFBLGtCQUFrQixFQUFFLEFBQUUsRUFBQSxBQUFBLGtCQUFrQixFQUFFLEFBQUUsRUFBQSxBQUFBLGVBQWUsRUFBRSxBQUFFLEVBQUEsQUFBQSxlQUFlLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsbUJBQW1CLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEsZ0JBQWdCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEscUJBQXFCLEVBQUUsQUFBRSxFQUFBLEFBQUEsc0JBQXNCLEVBQUUsQUFBRSxFQUFBLEFBQUEsc0JBQXNCLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFBRSxFQUFBLEFBQUEsb0JBQW9CLEVBQUUsQUFB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Q2pFLFFBQVEsQUFBQSxlQUFlLENBQUE7RUFDbkIsUUFBUSxFQUFDLFFBQVM7RUFDbEIsSUFBSSxFQUFDLEtBQU07RUFDWCxPQUFPLEVBQUUsQ0FBRTtFQUNYLE1BQU0sRUFBQyxDQUFFO0VBQ1QsV0FBVyxFQUFDLElBQUssR0FDcEI7O0FBTUwsQUFBQSxhQUFhLENBQUM7RUFDVixNQUFNLEVBQUUsS0FBTTtFQUNkLFVBQVUsRUFBRSxXQUFZLEdBTTNCO0VBUkQsQUFBQSxhQUFhLEFBSVIsa0JBQWtCLENBQUM7SUFDaEIsT0FBTyxFQUFFLENBQUU7SUFDWCxhQUFhLEVyQnZ3RVgsT0FBVSxHcUJ3d0VmOztBQUdMLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixRQUFRLEVBQUUsUUFBUztFQUNuQixRQUFRLEVBQUUsTUFBTztFQUNqQixNQUFNLEVBQUUsSUFBSztFQUNiLEtBQUssRUFBRSxJQUFLLEdBQ2Y7O0FBR0QsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLE1BQU0sRXJCcHhFQSxTQUFVLENxQm94RUksS0FBSyxDdEJ0MUVQLE9BQU87RXNCdTFFekIsT0FBTyxFckJyeEVELFFBQVUsR3FCc3hFbkI7O0FBRUQsQUFPSSxjQVBVLENBT1YsY0FBYyxBQUNULE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxrQ0FBRztFQUNaLGFBQWEsRXJCbHlFZixTQUFVLEdxQm15RVg7O0FBSVQsQUFDSSxhQURTLENBQ1QsUUFBUSxDQUFDO0VBQ0wsWUFBWSxFQUFFLENBQUUsR0FDbkI7O0FBR0wsTUFBTSxNQUFELE1BQU0sTUFBTSxTQUFTLEVBQUUsUUFBUTtFQUNoQyxBQUFvQyxhQUF2QixDQUFDLEdBQUcsQUFBQSxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7SUFDbkMsTUFBTSxFckI5eUVtQixDQUFDLEdxQit5RTdCO0VBRUQsQUFBQSxFQUFFLENBQUM7SUFDQyxXQUFXLEVyQm56RVQsU0FBVSxHcUJvekVmO0VBRUQsQUFDSSxhQURTLENBQ1QsUUFBUSxDQUFDO0lBQ0wsWUFBWSxFckJ4ekVkLFNBQVUsR3FCeXpFWDtFQUhMLEFBS0ksYUFMUyxDQUtULFVBQVUsQ0FBQztJQUNQLGFBQWEsRXJCNXpFZixTQUFVLEdxQjZ6RVg7O0FBSVQsQUFBQSxVQUFVLENBQUM7RUFDUCxhQUFhLEVyQmowRWdCLENBQUMsR3FCazBFakM7O0F2Qi8zRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OytFQXVCK0UiLCJuYW1lcyI6W119 */
