@import url(https://fonts.googleapis.com/css?family=Bitter);
/*Start Settings*/
/* Full-Width */
/* Full-Width */
/* Background for the top bar */
/* Full-Width */
/* Fading background color for the top bar */
/* Height and margin */
/* Control Input height for top bar */
/* Controlling the styles for the title in the top bar */
/* Set the link colors and styles for top-level nav */
/* Style the top bar dropdown elements */
/* Top menu icon styles */
/* Transitions and breakpoint styles */
/* Divider Styles */
/* Sticky Class */
/* Full-Width */
/* Full-Width */
/* We use these to set padding and hover factor */
/* These style the titles */
/* For sections inside the main-menu area */
/* Want to control border size, here ya go! */
/* For sections inside the main-menu area */
/* Font controls */
/* Control the color of the background and some size options */
/* For sections inside the main-menu area */
/* We use these to control header font styles */
/* We use these to control header font sizes */
/* These control how subheaders are styled. */
/* A general <small> styling */
/* We use these to style paragraphs */
/* We use these to style <code> tags */
/* We use these to style anchors */
/* We use these to style the <hr> element */
/* We use these to style lists */
/* We use these to style blockquotes */
/* Acronym styles */
/* We use these to control padding and margin */
/* We use these to control the border styles */
/* We use these to control full name font styles */
/* We use this to control the summary font styles */
/* We use this to control abbr padding */
/* We use this to control abbr font styles */
/* We use these to control the background and border styles */
/* We use this % to control how much we darken things on hover */
/* We use these to set default inner padding and bottom margin */
/* We use these to set default font colors */
/* We use these to build padding for buttons. */
/* We use this to control the display property. */
/* We use these to control button text styles. */
/* We use these to control various hover effects. */
/* We use these to control button border styles. */
/* We use this to set the default radius used throughout the core. */
/* We use this to set default opacity for disabled buttons. */
/* These control the background color for the table and even rows */
/* These control the table cell border style */
/* These control the table head styles */
/* These control the row padding and font styles */
/* These are for controlling the display and margin of tables */
/* We use this to set the background color for the breadcrumb container */
/* We use these to set the padding around the breadcrumbs. */
/* We use these to control border styles. */
/* We use these to set various text styles for breadcrumbs. */
/* We use these to control the slash between breadcrumbs */
/* We use this to control the definition */
/*End Settings*/
.flex-row {
  display: flex; }

.flex-cell {
  flex: 1; }

meta.foundation-version {
  font-family: "/5.2.1/"; }

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

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

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

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

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

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

html, body {
  height: 100%; }

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

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

body {
  background: #141414;
  color: #141414;
  padding: 0;
  margin: 0;
  font-family: Tahoma, Helvetica, sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  position: relative;
  cursor: default; }

a:hover, .itemds-fragment-edit:hover, .itemds-fragment-delete:hover, .itemds-fragment-resize: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 {
  max-width: none !important; }

.left {
  float: left !important; }

.right {
  float: right !important; }

.clearfix {
  *zoom: 1; }
  .clearfix:before, .clearfix:after {
    content: " ";
    display: table; }
  .clearfix:after {
    clear: both; }

.hide {
  display: none; }

.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 {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1; }
  .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 {
    width: auto;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
    margin-top: 0;
    margin-bottom: 0;
    max-width: none;
    *zoom: 1; }
    .row .row:before, .row .row:after {
      content: " ";
      display: table; }
    .row .row:after {
      clear: both; }
    .row .row.collapse {
      width: auto;
      margin: 0;
      max-width: none;
      *zoom: 1; }
      .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; }

@media only screen {
  .column.small-centered, .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none !important; }
  .column.small-uncentered, .columns.small-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left !important; }
  .column.small-uncentered.opposite, .columns.small-uncentered.opposite {
    float: right; }
  .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%; }
  [class*="column"] + [class*="column"]:last-child {
    float: right; }
  [class*="column"] + [class*="column"].end {
    float: left; }
  .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, .small-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    float: left; } }

@media only screen and (min-width:40.063em) {
  .column.medium-centered, .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none !important; }
  .column.medium-uncentered, .columns.medium-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left !important; }
  .column.medium-uncentered.opposite, .columns.medium-uncentered.opposite {
    float: right; }
  .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%; }
  [class*="column"] + [class*="column"]:last-child {
    float: right; }
  [class*="column"] + [class*="column"].end {
    float: left; }
  .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, .medium-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    float: left; }
  .push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

@media only screen and (min-width:64.063em) {
  .column.large-centered, .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none !important; }
  .column.large-uncentered, .columns.large-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left !important; }
  .column.large-uncentered.opposite, .columns.large-uncentered.opposite {
    float: right; }
  .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%; }
  [class*="column"] + [class*="column"]:last-child {
    float: right; }
  [class*="column"] + [class*="column"].end {
    float: left; }
  .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, .large-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    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 {
  *zoom: 1;
  margin-bottom: 0; }
  .accordion:before, .accordion:after {
    content: " ";
    display: table; }
  .accordion:after {
    clear: both; }
  .accordion dd {
    display: block;
    margin-bottom: 0 !important; }
    .accordion dd.active > a, .accordion dd.active > .itemds-fragment-edit, .accordion dd.active > .itemds-fragment-delete, .accordion dd.active > .itemds-fragment-resize {
      background: #e8e8e8; }
    .accordion dd > a, .accordion dd > .itemds-fragment-edit, .accordion dd > .itemds-fragment-delete, .accordion dd > .itemds-fragment-resize {
      background: #efefef;
      color: #222;
      padding: 1rem;
      display: block;
      font-family: Tahoma, Helvetica, sans-serif;
      font-size: 1rem; }
      .accordion dd > a:hover, .accordion dd > .itemds-fragment-edit:hover, .accordion dd > .itemds-fragment-delete:hover, .accordion dd > .itemds-fragment-resize:hover {
        background: #e3e3e3; }
  .accordion .content {
    display: none;
    padding: 0.9375rem; }
    .accordion .content.active {
      display: block;
      background: #fff; }

.alert-box {
  border-style: solid;
  border-width: 1px;
  display: block;
  font-weight: normal;
  margin-bottom: 1.25rem;
  position: relative;
  padding: 0.875rem 1.5rem 0.875rem 0.875rem;
  font-size: 0.8125rem;
  background-color: #f95602;
  border-color: #d64902;
  color: #fff; }
  .alert-box .close {
    font-size: 1.375rem;
    padding: 9px 6px 4px;
    line-height: 0;
    position: absolute;
    top: 50%;
    margin-top: -0.6875rem;
    right: 0.25rem;
    color: #333;
    opacity: 0.3; }
    .alert-box .close:hover, .alert-box .close:focus {
      opacity: 0.5; }
  .alert-box.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  .alert-box.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
  .alert-box.success {
    background-color: #88b564;
    border-color: #75a44e;
    color: #fff; }
  .alert-box.alert, .alert-box.voucher-edit-action-cancel {
    background-color: #ed6f6f;
    border-color: #e84444;
    color: #fff; }
  .alert-box.secondary {
    background-color: #a79a93;
    border-color: #93837b;
    color: #fff; }
  .alert-box.warning {
    background-color: #f08a24;
    border-color: #de770f;
    color: #fff; }
  .alert-box.info {
    background-color: #a0d3e8;
    border-color: #74bfdd;
    color: #3b3430; }

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

@media only screen {
  .small-block-grid-1 > li {
    width: 100%;
    list-style: none; }
    .small-block-grid-1 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
    .small-block-grid-1 > li:nth-child(1n) {
      padding-left: 0rem;
      padding-right: 0rem; }
  .small-block-grid-2 > li {
    width: 50%;
    list-style: none; }
    .small-block-grid-2 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
    .small-block-grid-2 > li:nth-child(2n+1) {
      padding-left: 0rem;
      padding-right: 0.9375rem; }
    .small-block-grid-2 > li:nth-child(2n) {
      padding-left: 0.9375rem;
      padding-right: 0rem; }
  .small-block-grid-3 > li {
    width: 33.33333%;
    list-style: none; }
    .small-block-grid-3 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
    .small-block-grid-3 > li:nth-child(3n+1) {
      padding-left: 0rem;
      padding-right: 1.25rem; }
    .small-block-grid-3 > li:nth-child(3n+2) {
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
    .small-block-grid-3 > li:nth-child(3n) {
      padding-left: 1.25rem;
      padding-right: 0rem; }
  .small-block-grid-4 > li {
    width: 25%;
    list-style: none; }
    .small-block-grid-4 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
    .small-block-grid-4 > li:nth-child(4n+1) {
      padding-left: 0rem;
      padding-right: 1.40625rem; }
    .small-block-grid-4 > li:nth-child(4n+2) {
      padding-left: 0.46875rem;
      padding-right: 0.9375rem; }
    .small-block-grid-4 > li:nth-child(4n+3) {
      padding-left: 0.9375rem;
      padding-right: 0.46875rem; }
    .small-block-grid-4 > li:nth-child(4n) {
      padding-left: 1.40625rem;
      padding-right: 0rem; }
  .small-block-grid-5 > li {
    width: 20%;
    list-style: none; }
    .small-block-grid-5 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
    .small-block-grid-5 > li:nth-child(5n+1) {
      padding-left: 0rem;
      padding-right: 1.5rem; }
    .small-block-grid-5 > li:nth-child(5n+2) {
      padding-left: 0.375rem;
      padding-right: 1.125rem; }
    .small-block-grid-5 > li:nth-child(5n+3) {
      padding-left: 0.75rem;
      padding-right: 0.75rem; }
    .small-block-grid-5 > li:nth-child(5n+4) {
      padding-left: 1.125rem;
      padding-right: 0.375rem; }
    .small-block-grid-5 > li:nth-child(5n) {
      padding-left: 1.5rem;
      padding-right: 0rem; }
  .small-block-grid-6 > li {
    width: 16.66667%;
    list-style: none; }
    .small-block-grid-6 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
    .small-block-grid-6 > li:nth-child(6n+1) {
      padding-left: 0rem;
      padding-right: 1.5625rem; }
    .small-block-grid-6 > li:nth-child(6n+2) {
      padding-left: 0.3125rem;
      padding-right: 1.25rem; }
    .small-block-grid-6 > li:nth-child(6n+3) {
      padding-left: 0.625rem;
      padding-right: 0.9375rem; }
    .small-block-grid-6 > li:nth-child(6n+4) {
      padding-left: 0.9375rem;
      padding-right: 0.625rem; }
    .small-block-grid-6 > li:nth-child(6n+5) {
      padding-left: 1.25rem;
      padding-right: 0.3125rem; }
    .small-block-grid-6 > li:nth-child(6n) {
      padding-left: 1.5625rem;
      padding-right: 0rem; }
  .small-block-grid-7 > li {
    width: 14.28571%;
    list-style: none; }
    .small-block-grid-7 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
    .small-block-grid-7 > li:nth-child(7n+1) {
      padding-left: 0rem;
      padding-right: 1.60714rem; }
    .small-block-grid-7 > li:nth-child(7n+2) {
      padding-left: 0.26786rem;
      padding-right: 1.33929rem; }
    .small-block-grid-7 > li:nth-child(7n+3) {
      padding-left: 0.53571rem;
      padding-right: 1.07143rem; }
    .small-block-grid-7 > li:nth-child(7n+4) {
      padding-left: 0.80357rem;
      padding-right: 0.80357rem; }
    .small-block-grid-7 > li:nth-child(7n+5) {
      padding-left: 1.07143rem;
      padding-right: 0.53571rem; }
    .small-block-grid-7 > li:nth-child(7n+6) {
      padding-left: 1.33929rem;
      padding-right: 0.26786rem; }
    .small-block-grid-7 > li:nth-child(7n) {
      padding-left: 1.60714rem;
      padding-right: 0rem; }
  .small-block-grid-8 > li {
    width: 12.5%;
    list-style: none; }
    .small-block-grid-8 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
    .small-block-grid-8 > li:nth-child(8n+1) {
      padding-left: 0rem;
      padding-right: 1.64063rem; }
    .small-block-grid-8 > li:nth-child(8n+2) {
      padding-left: 0.23438rem;
      padding-right: 1.40625rem; }
    .small-block-grid-8 > li:nth-child(8n+3) {
      padding-left: 0.46875rem;
      padding-right: 1.17188rem; }
    .small-block-grid-8 > li:nth-child(8n+4) {
      padding-left: 0.70313rem;
      padding-right: 0.9375rem; }
    .small-block-grid-8 > li:nth-child(8n+5) {
      padding-left: 0.9375rem;
      padding-right: 0.70313rem; }
    .small-block-grid-8 > li:nth-child(8n+6) {
      padding-left: 1.17188rem;
      padding-right: 0.46875rem; }
    .small-block-grid-8 > li:nth-child(8n+7) {
      padding-left: 1.40625rem;
      padding-right: 0.23438rem; }
    .small-block-grid-8 > li:nth-child(8n) {
      padding-left: 1.64063rem;
      padding-right: 0rem; }
  .small-block-grid-9 > li {
    width: 11.11111%;
    list-style: none; }
    .small-block-grid-9 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
    .small-block-grid-9 > li:nth-child(9n+1) {
      padding-left: 0rem;
      padding-right: 1.66667rem; }
    .small-block-grid-9 > li:nth-child(9n+2) {
      padding-left: 0.20833rem;
      padding-right: 1.45833rem; }
    .small-block-grid-9 > li:nth-child(9n+3) {
      padding-left: 0.41667rem;
      padding-right: 1.25rem; }
    .small-block-grid-9 > li:nth-child(9n+4) {
      padding-left: 0.625rem;
      padding-right: 1.04167rem; }
    .small-block-grid-9 > li:nth-child(9n+5) {
      padding-left: 0.83333rem;
      padding-right: 0.83333rem; }
    .small-block-grid-9 > li:nth-child(9n+6) {
      padding-left: 1.04167rem;
      padding-right: 0.625rem; }
    .small-block-grid-9 > li:nth-child(9n+7) {
      padding-left: 1.25rem;
      padding-right: 0.41667rem; }
    .small-block-grid-9 > li:nth-child(9n+8) {
      padding-left: 1.45833rem;
      padding-right: 0.20833rem; }
    .small-block-grid-9 > li:nth-child(9n) {
      padding-left: 1.66667rem;
      padding-right: 0rem; }
  .small-block-grid-10 > li {
    width: 10%;
    list-style: none; }
    .small-block-grid-10 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
    .small-block-grid-10 > li:nth-child(10n+1) {
      padding-left: 0rem;
      padding-right: 1.6875rem; }
    .small-block-grid-10 > li:nth-child(10n+2) {
      padding-left: 0.1875rem;
      padding-right: 1.5rem; }
    .small-block-grid-10 > li:nth-child(10n+3) {
      padding-left: 0.375rem;
      padding-right: 1.3125rem; }
    .small-block-grid-10 > li:nth-child(10n+4) {
      padding-left: 0.5625rem;
      padding-right: 1.125rem; }
    .small-block-grid-10 > li:nth-child(10n+5) {
      padding-left: 0.75rem;
      padding-right: 0.9375rem; }
    .small-block-grid-10 > li:nth-child(10n+6) {
      padding-left: 0.9375rem;
      padding-right: 0.75rem; }
    .small-block-grid-10 > li:nth-child(10n+7) {
      padding-left: 1.125rem;
      padding-right: 0.5625rem; }
    .small-block-grid-10 > li:nth-child(10n+8) {
      padding-left: 1.3125rem;
      padding-right: 0.375rem; }
    .small-block-grid-10 > li:nth-child(10n+9) {
      padding-left: 1.5rem;
      padding-right: 0.1875rem; }
    .small-block-grid-10 > li:nth-child(10n) {
      padding-left: 1.6875rem;
      padding-right: 0rem; }
  .small-block-grid-11 > li {
    width: 9.09091%;
    list-style: none; }
    .small-block-grid-11 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
    .small-block-grid-11 > li:nth-child(11n+1) {
      padding-left: 0rem;
      padding-right: 1.70455rem; }
    .small-block-grid-11 > li:nth-child(11n+2) {
      padding-left: 0.17045rem;
      padding-right: 1.53409rem; }
    .small-block-grid-11 > li:nth-child(11n+3) {
      padding-left: 0.34091rem;
      padding-right: 1.36364rem; }
    .small-block-grid-11 > li:nth-child(11n+4) {
      padding-left: 0.51136rem;
      padding-right: 1.19318rem; }
    .small-block-grid-11 > li:nth-child(11n+5) {
      padding-left: 0.68182rem;
      padding-right: 1.02273rem; }
    .small-block-grid-11 > li:nth-child(11n+6) {
      padding-left: 0.85227rem;
      padding-right: 0.85227rem; }
    .small-block-grid-11 > li:nth-child(11n+7) {
      padding-left: 1.02273rem;
      padding-right: 0.68182rem; }
    .small-block-grid-11 > li:nth-child(11n+8) {
      padding-left: 1.19318rem;
      padding-right: 0.51136rem; }
    .small-block-grid-11 > li:nth-child(11n+9) {
      padding-left: 1.36364rem;
      padding-right: 0.34091rem; }
    .small-block-grid-11 > li:nth-child(11n+10) {
      padding-left: 1.53409rem;
      padding-right: 0.17045rem; }
    .small-block-grid-11 > li:nth-child(11n) {
      padding-left: 1.70455rem;
      padding-right: 0rem; }
  .small-block-grid-12 > li {
    width: 8.33333%;
    list-style: none; }
    .small-block-grid-12 > li:nth-of-type(n) {
      clear: none; }
    .small-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; }
    .small-block-grid-12 > li:nth-child(12n+1) {
      padding-left: 0rem;
      padding-right: 1.71875rem; }
    .small-block-grid-12 > li:nth-child(12n+2) {
      padding-left: 0.15625rem;
      padding-right: 1.5625rem; }
    .small-block-grid-12 > li:nth-child(12n+3) {
      padding-left: 0.3125rem;
      padding-right: 1.40625rem; }
    .small-block-grid-12 > li:nth-child(12n+4) {
      padding-left: 0.46875rem;
      padding-right: 1.25rem; }
    .small-block-grid-12 > li:nth-child(12n+5) {
      padding-left: 0.625rem;
      padding-right: 1.09375rem; }
    .small-block-grid-12 > li:nth-child(12n+6) {
      padding-left: 0.78125rem;
      padding-right: 0.9375rem; }
    .small-block-grid-12 > li:nth-child(12n+7) {
      padding-left: 0.9375rem;
      padding-right: 0.78125rem; }
    .small-block-grid-12 > li:nth-child(12n+8) {
      padding-left: 1.09375rem;
      padding-right: 0.625rem; }
    .small-block-grid-12 > li:nth-child(12n+9) {
      padding-left: 1.25rem;
      padding-right: 0.46875rem; }
    .small-block-grid-12 > li:nth-child(12n+10) {
      padding-left: 1.40625rem;
      padding-right: 0.3125rem; }
    .small-block-grid-12 > li:nth-child(12n+11) {
      padding-left: 1.5625rem;
      padding-right: 0.15625rem; }
    .small-block-grid-12 > li:nth-child(12n) {
      padding-left: 1.71875rem;
      padding-right: 0rem; } }

@media only screen and (min-width:40.063em) {
  .medium-block-grid-1 > li {
    width: 100%;
    list-style: none; }
    .medium-block-grid-1 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
    .medium-block-grid-1 > li:nth-child(1n) {
      padding-left: 0rem;
      padding-right: 0rem; }
  .medium-block-grid-2 > li {
    width: 50%;
    list-style: none; }
    .medium-block-grid-2 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
    .medium-block-grid-2 > li:nth-child(2n+1) {
      padding-left: 0rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-2 > li:nth-child(2n) {
      padding-left: 0.9375rem;
      padding-right: 0rem; }
  .medium-block-grid-3 > li {
    width: 33.33333%;
    list-style: none; }
    .medium-block-grid-3 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
    .medium-block-grid-3 > li:nth-child(3n+1) {
      padding-left: 0rem;
      padding-right: 1.25rem; }
    .medium-block-grid-3 > li:nth-child(3n+2) {
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
    .medium-block-grid-3 > li:nth-child(3n) {
      padding-left: 1.25rem;
      padding-right: 0rem; }
  .medium-block-grid-4 > li {
    width: 25%;
    list-style: none; }
    .medium-block-grid-4 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
    .medium-block-grid-4 > li:nth-child(4n+1) {
      padding-left: 0rem;
      padding-right: 1.40625rem; }
    .medium-block-grid-4 > li:nth-child(4n+2) {
      padding-left: 0.46875rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-4 > li:nth-child(4n+3) {
      padding-left: 0.9375rem;
      padding-right: 0.46875rem; }
    .medium-block-grid-4 > li:nth-child(4n) {
      padding-left: 1.40625rem;
      padding-right: 0rem; }
  .medium-block-grid-5 > li {
    width: 20%;
    list-style: none; }
    .medium-block-grid-5 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
    .medium-block-grid-5 > li:nth-child(5n+1) {
      padding-left: 0rem;
      padding-right: 1.5rem; }
    .medium-block-grid-5 > li:nth-child(5n+2) {
      padding-left: 0.375rem;
      padding-right: 1.125rem; }
    .medium-block-grid-5 > li:nth-child(5n+3) {
      padding-left: 0.75rem;
      padding-right: 0.75rem; }
    .medium-block-grid-5 > li:nth-child(5n+4) {
      padding-left: 1.125rem;
      padding-right: 0.375rem; }
    .medium-block-grid-5 > li:nth-child(5n) {
      padding-left: 1.5rem;
      padding-right: 0rem; }
  .medium-block-grid-6 > li {
    width: 16.66667%;
    list-style: none; }
    .medium-block-grid-6 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
    .medium-block-grid-6 > li:nth-child(6n+1) {
      padding-left: 0rem;
      padding-right: 1.5625rem; }
    .medium-block-grid-6 > li:nth-child(6n+2) {
      padding-left: 0.3125rem;
      padding-right: 1.25rem; }
    .medium-block-grid-6 > li:nth-child(6n+3) {
      padding-left: 0.625rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-6 > li:nth-child(6n+4) {
      padding-left: 0.9375rem;
      padding-right: 0.625rem; }
    .medium-block-grid-6 > li:nth-child(6n+5) {
      padding-left: 1.25rem;
      padding-right: 0.3125rem; }
    .medium-block-grid-6 > li:nth-child(6n) {
      padding-left: 1.5625rem;
      padding-right: 0rem; }
  .medium-block-grid-7 > li {
    width: 14.28571%;
    list-style: none; }
    .medium-block-grid-7 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
    .medium-block-grid-7 > li:nth-child(7n+1) {
      padding-left: 0rem;
      padding-right: 1.60714rem; }
    .medium-block-grid-7 > li:nth-child(7n+2) {
      padding-left: 0.26786rem;
      padding-right: 1.33929rem; }
    .medium-block-grid-7 > li:nth-child(7n+3) {
      padding-left: 0.53571rem;
      padding-right: 1.07143rem; }
    .medium-block-grid-7 > li:nth-child(7n+4) {
      padding-left: 0.80357rem;
      padding-right: 0.80357rem; }
    .medium-block-grid-7 > li:nth-child(7n+5) {
      padding-left: 1.07143rem;
      padding-right: 0.53571rem; }
    .medium-block-grid-7 > li:nth-child(7n+6) {
      padding-left: 1.33929rem;
      padding-right: 0.26786rem; }
    .medium-block-grid-7 > li:nth-child(7n) {
      padding-left: 1.60714rem;
      padding-right: 0rem; }
  .medium-block-grid-8 > li {
    width: 12.5%;
    list-style: none; }
    .medium-block-grid-8 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
    .medium-block-grid-8 > li:nth-child(8n+1) {
      padding-left: 0rem;
      padding-right: 1.64063rem; }
    .medium-block-grid-8 > li:nth-child(8n+2) {
      padding-left: 0.23438rem;
      padding-right: 1.40625rem; }
    .medium-block-grid-8 > li:nth-child(8n+3) {
      padding-left: 0.46875rem;
      padding-right: 1.17188rem; }
    .medium-block-grid-8 > li:nth-child(8n+4) {
      padding-left: 0.70313rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-8 > li:nth-child(8n+5) {
      padding-left: 0.9375rem;
      padding-right: 0.70313rem; }
    .medium-block-grid-8 > li:nth-child(8n+6) {
      padding-left: 1.17188rem;
      padding-right: 0.46875rem; }
    .medium-block-grid-8 > li:nth-child(8n+7) {
      padding-left: 1.40625rem;
      padding-right: 0.23438rem; }
    .medium-block-grid-8 > li:nth-child(8n) {
      padding-left: 1.64063rem;
      padding-right: 0rem; }
  .medium-block-grid-9 > li {
    width: 11.11111%;
    list-style: none; }
    .medium-block-grid-9 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
    .medium-block-grid-9 > li:nth-child(9n+1) {
      padding-left: 0rem;
      padding-right: 1.66667rem; }
    .medium-block-grid-9 > li:nth-child(9n+2) {
      padding-left: 0.20833rem;
      padding-right: 1.45833rem; }
    .medium-block-grid-9 > li:nth-child(9n+3) {
      padding-left: 0.41667rem;
      padding-right: 1.25rem; }
    .medium-block-grid-9 > li:nth-child(9n+4) {
      padding-left: 0.625rem;
      padding-right: 1.04167rem; }
    .medium-block-grid-9 > li:nth-child(9n+5) {
      padding-left: 0.83333rem;
      padding-right: 0.83333rem; }
    .medium-block-grid-9 > li:nth-child(9n+6) {
      padding-left: 1.04167rem;
      padding-right: 0.625rem; }
    .medium-block-grid-9 > li:nth-child(9n+7) {
      padding-left: 1.25rem;
      padding-right: 0.41667rem; }
    .medium-block-grid-9 > li:nth-child(9n+8) {
      padding-left: 1.45833rem;
      padding-right: 0.20833rem; }
    .medium-block-grid-9 > li:nth-child(9n) {
      padding-left: 1.66667rem;
      padding-right: 0rem; }
  .medium-block-grid-10 > li {
    width: 10%;
    list-style: none; }
    .medium-block-grid-10 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
    .medium-block-grid-10 > li:nth-child(10n+1) {
      padding-left: 0rem;
      padding-right: 1.6875rem; }
    .medium-block-grid-10 > li:nth-child(10n+2) {
      padding-left: 0.1875rem;
      padding-right: 1.5rem; }
    .medium-block-grid-10 > li:nth-child(10n+3) {
      padding-left: 0.375rem;
      padding-right: 1.3125rem; }
    .medium-block-grid-10 > li:nth-child(10n+4) {
      padding-left: 0.5625rem;
      padding-right: 1.125rem; }
    .medium-block-grid-10 > li:nth-child(10n+5) {
      padding-left: 0.75rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-10 > li:nth-child(10n+6) {
      padding-left: 0.9375rem;
      padding-right: 0.75rem; }
    .medium-block-grid-10 > li:nth-child(10n+7) {
      padding-left: 1.125rem;
      padding-right: 0.5625rem; }
    .medium-block-grid-10 > li:nth-child(10n+8) {
      padding-left: 1.3125rem;
      padding-right: 0.375rem; }
    .medium-block-grid-10 > li:nth-child(10n+9) {
      padding-left: 1.5rem;
      padding-right: 0.1875rem; }
    .medium-block-grid-10 > li:nth-child(10n) {
      padding-left: 1.6875rem;
      padding-right: 0rem; }
  .medium-block-grid-11 > li {
    width: 9.09091%;
    list-style: none; }
    .medium-block-grid-11 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
    .medium-block-grid-11 > li:nth-child(11n+1) {
      padding-left: 0rem;
      padding-right: 1.70455rem; }
    .medium-block-grid-11 > li:nth-child(11n+2) {
      padding-left: 0.17045rem;
      padding-right: 1.53409rem; }
    .medium-block-grid-11 > li:nth-child(11n+3) {
      padding-left: 0.34091rem;
      padding-right: 1.36364rem; }
    .medium-block-grid-11 > li:nth-child(11n+4) {
      padding-left: 0.51136rem;
      padding-right: 1.19318rem; }
    .medium-block-grid-11 > li:nth-child(11n+5) {
      padding-left: 0.68182rem;
      padding-right: 1.02273rem; }
    .medium-block-grid-11 > li:nth-child(11n+6) {
      padding-left: 0.85227rem;
      padding-right: 0.85227rem; }
    .medium-block-grid-11 > li:nth-child(11n+7) {
      padding-left: 1.02273rem;
      padding-right: 0.68182rem; }
    .medium-block-grid-11 > li:nth-child(11n+8) {
      padding-left: 1.19318rem;
      padding-right: 0.51136rem; }
    .medium-block-grid-11 > li:nth-child(11n+9) {
      padding-left: 1.36364rem;
      padding-right: 0.34091rem; }
    .medium-block-grid-11 > li:nth-child(11n+10) {
      padding-left: 1.53409rem;
      padding-right: 0.17045rem; }
    .medium-block-grid-11 > li:nth-child(11n) {
      padding-left: 1.70455rem;
      padding-right: 0rem; }
  .medium-block-grid-12 > li {
    width: 8.33333%;
    list-style: none; }
    .medium-block-grid-12 > li:nth-of-type(n) {
      clear: none; }
    .medium-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; }
    .medium-block-grid-12 > li:nth-child(12n+1) {
      padding-left: 0rem;
      padding-right: 1.71875rem; }
    .medium-block-grid-12 > li:nth-child(12n+2) {
      padding-left: 0.15625rem;
      padding-right: 1.5625rem; }
    .medium-block-grid-12 > li:nth-child(12n+3) {
      padding-left: 0.3125rem;
      padding-right: 1.40625rem; }
    .medium-block-grid-12 > li:nth-child(12n+4) {
      padding-left: 0.46875rem;
      padding-right: 1.25rem; }
    .medium-block-grid-12 > li:nth-child(12n+5) {
      padding-left: 0.625rem;
      padding-right: 1.09375rem; }
    .medium-block-grid-12 > li:nth-child(12n+6) {
      padding-left: 0.78125rem;
      padding-right: 0.9375rem; }
    .medium-block-grid-12 > li:nth-child(12n+7) {
      padding-left: 0.9375rem;
      padding-right: 0.78125rem; }
    .medium-block-grid-12 > li:nth-child(12n+8) {
      padding-left: 1.09375rem;
      padding-right: 0.625rem; }
    .medium-block-grid-12 > li:nth-child(12n+9) {
      padding-left: 1.25rem;
      padding-right: 0.46875rem; }
    .medium-block-grid-12 > li:nth-child(12n+10) {
      padding-left: 1.40625rem;
      padding-right: 0.3125rem; }
    .medium-block-grid-12 > li:nth-child(12n+11) {
      padding-left: 1.5625rem;
      padding-right: 0.15625rem; }
    .medium-block-grid-12 > li:nth-child(12n) {
      padding-left: 1.71875rem;
      padding-right: 0rem; } }

@media only screen and (min-width:64.063em) {
  .large-block-grid-1 > li {
    width: 100%;
    list-style: none; }
    .large-block-grid-1 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
    .large-block-grid-1 > li:nth-child(1n) {
      padding-left: 0rem;
      padding-right: 0rem; }
  .large-block-grid-2 > li {
    width: 50%;
    list-style: none; }
    .large-block-grid-2 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
    .large-block-grid-2 > li:nth-child(2n+1) {
      padding-left: 0rem;
      padding-right: 0.9375rem; }
    .large-block-grid-2 > li:nth-child(2n) {
      padding-left: 0.9375rem;
      padding-right: 0rem; }
  .large-block-grid-3 > li {
    width: 33.33333%;
    list-style: none; }
    .large-block-grid-3 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
    .large-block-grid-3 > li:nth-child(3n+1) {
      padding-left: 0rem;
      padding-right: 1.25rem; }
    .large-block-grid-3 > li:nth-child(3n+2) {
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
    .large-block-grid-3 > li:nth-child(3n) {
      padding-left: 1.25rem;
      padding-right: 0rem; }
  .large-block-grid-4 > li {
    width: 25%;
    list-style: none; }
    .large-block-grid-4 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
    .large-block-grid-4 > li:nth-child(4n+1) {
      padding-left: 0rem;
      padding-right: 1.40625rem; }
    .large-block-grid-4 > li:nth-child(4n+2) {
      padding-left: 0.46875rem;
      padding-right: 0.9375rem; }
    .large-block-grid-4 > li:nth-child(4n+3) {
      padding-left: 0.9375rem;
      padding-right: 0.46875rem; }
    .large-block-grid-4 > li:nth-child(4n) {
      padding-left: 1.40625rem;
      padding-right: 0rem; }
  .large-block-grid-5 > li {
    width: 20%;
    list-style: none; }
    .large-block-grid-5 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
    .large-block-grid-5 > li:nth-child(5n+1) {
      padding-left: 0rem;
      padding-right: 1.5rem; }
    .large-block-grid-5 > li:nth-child(5n+2) {
      padding-left: 0.375rem;
      padding-right: 1.125rem; }
    .large-block-grid-5 > li:nth-child(5n+3) {
      padding-left: 0.75rem;
      padding-right: 0.75rem; }
    .large-block-grid-5 > li:nth-child(5n+4) {
      padding-left: 1.125rem;
      padding-right: 0.375rem; }
    .large-block-grid-5 > li:nth-child(5n) {
      padding-left: 1.5rem;
      padding-right: 0rem; }
  .large-block-grid-6 > li {
    width: 16.66667%;
    list-style: none; }
    .large-block-grid-6 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
    .large-block-grid-6 > li:nth-child(6n+1) {
      padding-left: 0rem;
      padding-right: 1.5625rem; }
    .large-block-grid-6 > li:nth-child(6n+2) {
      padding-left: 0.3125rem;
      padding-right: 1.25rem; }
    .large-block-grid-6 > li:nth-child(6n+3) {
      padding-left: 0.625rem;
      padding-right: 0.9375rem; }
    .large-block-grid-6 > li:nth-child(6n+4) {
      padding-left: 0.9375rem;
      padding-right: 0.625rem; }
    .large-block-grid-6 > li:nth-child(6n+5) {
      padding-left: 1.25rem;
      padding-right: 0.3125rem; }
    .large-block-grid-6 > li:nth-child(6n) {
      padding-left: 1.5625rem;
      padding-right: 0rem; }
  .large-block-grid-7 > li {
    width: 14.28571%;
    list-style: none; }
    .large-block-grid-7 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
    .large-block-grid-7 > li:nth-child(7n+1) {
      padding-left: 0rem;
      padding-right: 1.60714rem; }
    .large-block-grid-7 > li:nth-child(7n+2) {
      padding-left: 0.26786rem;
      padding-right: 1.33929rem; }
    .large-block-grid-7 > li:nth-child(7n+3) {
      padding-left: 0.53571rem;
      padding-right: 1.07143rem; }
    .large-block-grid-7 > li:nth-child(7n+4) {
      padding-left: 0.80357rem;
      padding-right: 0.80357rem; }
    .large-block-grid-7 > li:nth-child(7n+5) {
      padding-left: 1.07143rem;
      padding-right: 0.53571rem; }
    .large-block-grid-7 > li:nth-child(7n+6) {
      padding-left: 1.33929rem;
      padding-right: 0.26786rem; }
    .large-block-grid-7 > li:nth-child(7n) {
      padding-left: 1.60714rem;
      padding-right: 0rem; }
  .large-block-grid-8 > li {
    width: 12.5%;
    list-style: none; }
    .large-block-grid-8 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
    .large-block-grid-8 > li:nth-child(8n+1) {
      padding-left: 0rem;
      padding-right: 1.64063rem; }
    .large-block-grid-8 > li:nth-child(8n+2) {
      padding-left: 0.23438rem;
      padding-right: 1.40625rem; }
    .large-block-grid-8 > li:nth-child(8n+3) {
      padding-left: 0.46875rem;
      padding-right: 1.17188rem; }
    .large-block-grid-8 > li:nth-child(8n+4) {
      padding-left: 0.70313rem;
      padding-right: 0.9375rem; }
    .large-block-grid-8 > li:nth-child(8n+5) {
      padding-left: 0.9375rem;
      padding-right: 0.70313rem; }
    .large-block-grid-8 > li:nth-child(8n+6) {
      padding-left: 1.17188rem;
      padding-right: 0.46875rem; }
    .large-block-grid-8 > li:nth-child(8n+7) {
      padding-left: 1.40625rem;
      padding-right: 0.23438rem; }
    .large-block-grid-8 > li:nth-child(8n) {
      padding-left: 1.64063rem;
      padding-right: 0rem; }
  .large-block-grid-9 > li {
    width: 11.11111%;
    list-style: none; }
    .large-block-grid-9 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
    .large-block-grid-9 > li:nth-child(9n+1) {
      padding-left: 0rem;
      padding-right: 1.66667rem; }
    .large-block-grid-9 > li:nth-child(9n+2) {
      padding-left: 0.20833rem;
      padding-right: 1.45833rem; }
    .large-block-grid-9 > li:nth-child(9n+3) {
      padding-left: 0.41667rem;
      padding-right: 1.25rem; }
    .large-block-grid-9 > li:nth-child(9n+4) {
      padding-left: 0.625rem;
      padding-right: 1.04167rem; }
    .large-block-grid-9 > li:nth-child(9n+5) {
      padding-left: 0.83333rem;
      padding-right: 0.83333rem; }
    .large-block-grid-9 > li:nth-child(9n+6) {
      padding-left: 1.04167rem;
      padding-right: 0.625rem; }
    .large-block-grid-9 > li:nth-child(9n+7) {
      padding-left: 1.25rem;
      padding-right: 0.41667rem; }
    .large-block-grid-9 > li:nth-child(9n+8) {
      padding-left: 1.45833rem;
      padding-right: 0.20833rem; }
    .large-block-grid-9 > li:nth-child(9n) {
      padding-left: 1.66667rem;
      padding-right: 0rem; }
  .large-block-grid-10 > li {
    width: 10%;
    list-style: none; }
    .large-block-grid-10 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
    .large-block-grid-10 > li:nth-child(10n+1) {
      padding-left: 0rem;
      padding-right: 1.6875rem; }
    .large-block-grid-10 > li:nth-child(10n+2) {
      padding-left: 0.1875rem;
      padding-right: 1.5rem; }
    .large-block-grid-10 > li:nth-child(10n+3) {
      padding-left: 0.375rem;
      padding-right: 1.3125rem; }
    .large-block-grid-10 > li:nth-child(10n+4) {
      padding-left: 0.5625rem;
      padding-right: 1.125rem; }
    .large-block-grid-10 > li:nth-child(10n+5) {
      padding-left: 0.75rem;
      padding-right: 0.9375rem; }
    .large-block-grid-10 > li:nth-child(10n+6) {
      padding-left: 0.9375rem;
      padding-right: 0.75rem; }
    .large-block-grid-10 > li:nth-child(10n+7) {
      padding-left: 1.125rem;
      padding-right: 0.5625rem; }
    .large-block-grid-10 > li:nth-child(10n+8) {
      padding-left: 1.3125rem;
      padding-right: 0.375rem; }
    .large-block-grid-10 > li:nth-child(10n+9) {
      padding-left: 1.5rem;
      padding-right: 0.1875rem; }
    .large-block-grid-10 > li:nth-child(10n) {
      padding-left: 1.6875rem;
      padding-right: 0rem; }
  .large-block-grid-11 > li {
    width: 9.09091%;
    list-style: none; }
    .large-block-grid-11 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
    .large-block-grid-11 > li:nth-child(11n+1) {
      padding-left: 0rem;
      padding-right: 1.70455rem; }
    .large-block-grid-11 > li:nth-child(11n+2) {
      padding-left: 0.17045rem;
      padding-right: 1.53409rem; }
    .large-block-grid-11 > li:nth-child(11n+3) {
      padding-left: 0.34091rem;
      padding-right: 1.36364rem; }
    .large-block-grid-11 > li:nth-child(11n+4) {
      padding-left: 0.51136rem;
      padding-right: 1.19318rem; }
    .large-block-grid-11 > li:nth-child(11n+5) {
      padding-left: 0.68182rem;
      padding-right: 1.02273rem; }
    .large-block-grid-11 > li:nth-child(11n+6) {
      padding-left: 0.85227rem;
      padding-right: 0.85227rem; }
    .large-block-grid-11 > li:nth-child(11n+7) {
      padding-left: 1.02273rem;
      padding-right: 0.68182rem; }
    .large-block-grid-11 > li:nth-child(11n+8) {
      padding-left: 1.19318rem;
      padding-right: 0.51136rem; }
    .large-block-grid-11 > li:nth-child(11n+9) {
      padding-left: 1.36364rem;
      padding-right: 0.34091rem; }
    .large-block-grid-11 > li:nth-child(11n+10) {
      padding-left: 1.53409rem;
      padding-right: 0.17045rem; }
    .large-block-grid-11 > li:nth-child(11n) {
      padding-left: 1.70455rem;
      padding-right: 0rem; }
  .large-block-grid-12 > li {
    width: 8.33333%;
    list-style: none; }
    .large-block-grid-12 > li:nth-of-type(n) {
      clear: none; }
    .large-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; }
    .large-block-grid-12 > li:nth-child(12n+1) {
      padding-left: 0rem;
      padding-right: 1.71875rem; }
    .large-block-grid-12 > li:nth-child(12n+2) {
      padding-left: 0.15625rem;
      padding-right: 1.5625rem; }
    .large-block-grid-12 > li:nth-child(12n+3) {
      padding-left: 0.3125rem;
      padding-right: 1.40625rem; }
    .large-block-grid-12 > li:nth-child(12n+4) {
      padding-left: 0.46875rem;
      padding-right: 1.25rem; }
    .large-block-grid-12 > li:nth-child(12n+5) {
      padding-left: 0.625rem;
      padding-right: 1.09375rem; }
    .large-block-grid-12 > li:nth-child(12n+6) {
      padding-left: 0.78125rem;
      padding-right: 0.9375rem; }
    .large-block-grid-12 > li:nth-child(12n+7) {
      padding-left: 0.9375rem;
      padding-right: 0.78125rem; }
    .large-block-grid-12 > li:nth-child(12n+8) {
      padding-left: 1.09375rem;
      padding-right: 0.625rem; }
    .large-block-grid-12 > li:nth-child(12n+9) {
      padding-left: 1.25rem;
      padding-right: 0.46875rem; }
    .large-block-grid-12 > li:nth-child(12n+10) {
      padding-left: 1.40625rem;
      padding-right: 0.3125rem; }
    .large-block-grid-12 > li:nth-child(12n+11) {
      padding-left: 1.5625rem;
      padding-right: 0.15625rem; }
    .large-block-grid-12 > li:nth-child(12n) {
      padding-left: 1.71875rem;
      padding-right: 0rem; } }

.breadcrumbs {
  display: block;
  padding: 0.375rem 0.875rem 0.5625rem;
  overflow: hidden;
  margin-left: 0;
  list-style: none;
  border-style: solid;
  border-width: 1px;
  background-color: #f7f6f5;
  border-color: #e0dcd9;
  -webkit-border-radius: 3px;
  border-radius: 3px; }
  .breadcrumbs > * {
    margin: 0;
    float: left;
    font-size: 0.6875rem;
    text-transform: uppercase; }
    .breadcrumbs > *:hover a, .breadcrumbs > *:hover .itemds-fragment-edit, .breadcrumbs > *:hover .itemds-fragment-delete, .breadcrumbs > *:hover .itemds-fragment-resize, .breadcrumbs > *:focus a, .breadcrumbs > *:focus .itemds-fragment-edit, .breadcrumbs > *:focus .itemds-fragment-delete, .breadcrumbs > *:focus .itemds-fragment-resize {
      text-decoration: underline; }
    .breadcrumbs > * a, .breadcrumbs > * .itemds-fragment-edit, .breadcrumbs > * .itemds-fragment-delete, .breadcrumbs > * .itemds-fragment-resize, .breadcrumbs > * span {
      text-transform: uppercase;
      color: #f95602; }
    .breadcrumbs > *.current {
      cursor: default;
      color: #333333; }
      .breadcrumbs > *.current a, .breadcrumbs > *.current .itemds-fragment-edit, .breadcrumbs > *.current .itemds-fragment-delete, .breadcrumbs > *.current .itemds-fragment-resize {
        cursor: default;
        color: #333333; }
      .breadcrumbs > *.current:hover, .breadcrumbs > *.current:hover a, .breadcrumbs > *.current:hover .itemds-fragment-edit, .breadcrumbs > *.current:hover .itemds-fragment-delete, .breadcrumbs > *.current:hover .itemds-fragment-resize, .breadcrumbs > *.current:focus, .breadcrumbs > *.current:focus a, .breadcrumbs > *.current:focus .itemds-fragment-edit, .breadcrumbs > *.current:focus .itemds-fragment-delete, .breadcrumbs > *.current:focus .itemds-fragment-resize {
        text-decoration: none; }
    .breadcrumbs > *.unavailable {
      color: #999999; }
      .breadcrumbs > *.unavailable a, .breadcrumbs > *.unavailable .itemds-fragment-edit, .breadcrumbs > *.unavailable .itemds-fragment-delete, .breadcrumbs > *.unavailable .itemds-fragment-resize {
        color: #999999; }
      .breadcrumbs > *.unavailable:hover, .breadcrumbs > *.unavailable:hover a, .breadcrumbs > *.unavailable:hover .itemds-fragment-edit, .breadcrumbs > *.unavailable:hover .itemds-fragment-delete, .breadcrumbs > *.unavailable:hover .itemds-fragment-resize, .breadcrumbs > *.unavailable:focus, .breadcrumbs > *.unavailable a:focus, .breadcrumbs > *.unavailable .itemds-fragment-edit:focus, .breadcrumbs > *.unavailable .itemds-fragment-delete:focus, .breadcrumbs > *.unavailable .itemds-fragment-resize:focus {
        text-decoration: none;
        color: #999999;
        cursor: default; }
    .breadcrumbs > *:before {
      content: "/";
      color: #333333;
      margin: 0 0.75rem;
      position: relative;
      top: 1px; }
    .breadcrumbs > *:first-child:before {
      content: " ";
      margin: 0; }

button, .button {
  border-style: solid;
  border-width: 1px;
  cursor: pointer;
  font-family: Tahoma, Helvetica, sans-serif;
  font-weight: bold;
  line-height: normal;
  margin: 0 0 1.25rem;
  position: relative;
  text-decoration: none;
  text-align: center;
  display: inline-block;
  padding-top: 0.75rem;
  padding-right: 1.5rem;
  padding-bottom: 0.8125rem;
  padding-left: 1.5rem;
  font-size: 1rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */
  background-color: #f95602;
  border-color: #fd6418;
  color: white;
  -webkit-transition: background-color 300ms ease-out;
  -moz-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  padding-top: 0.75rem;
  padding-right: 1.5rem;
  padding-bottom: 0.8125rem;
  padding-left: 1.5rem;
  font-size: 1rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }
  button:hover, button:focus, .button:hover, .button:focus {
    background-color: #fd6418; }
  button:hover, button:focus, .button:hover, .button:focus {
    color: white; }
  button.secondary, .button.secondary {
    background-color: #a79a93;
    border-color: #b0a49e;
    color: white; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      background-color: #b0a49e; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      color: white; }
  button.success, .button.success {
    background-color: #88b564;
    border-color: #94bc74;
    color: white; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      background-color: #94bc74; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      color: white; }
  button.alert, button.voucher-edit-action-cancel, .button.alert, .button.voucher-edit-action-cancel {
    background-color: #ed6f6f;
    border-color: #ef7d7d;
    color: white; }
    button.alert:hover, button.voucher-edit-action-cancel:hover, button.alert:focus, button.voucher-edit-action-cancel:focus, .button.alert:hover, .button.voucher-edit-action-cancel:hover, .button.alert:focus, .button.voucher-edit-action-cancel:focus {
      background-color: #ef7d7d; }
    button.alert:hover, button.voucher-edit-action-cancel:hover, button.alert:focus, button.voucher-edit-action-cancel:focus, .button.alert:hover, .button.voucher-edit-action-cancel:hover, .button.alert:focus, .button.voucher-edit-action-cancel:focus {
      color: white; }
  button.large, .button.large {
    padding-top: 1rem;
    padding-right: 2rem;
    padding-bottom: 1.0625rem;
    padding-left: 2rem;
    font-size: 1.25rem;
    /*     @else                            { font-size: $padding - rem-calc(2); } */ }
  button.small, .button.small {
    padding-top: 0.5625rem;
    padding-right: 1.125rem;
    padding-bottom: 0.625rem;
    padding-left: 1.125rem;
    font-size: 0.8125rem;
    /*     @else                            { font-size: $padding - rem-calc(2); } */ }
  button.tiny, .button.tiny {
    padding-top: 0.4375rem;
    padding-right: 0.875rem;
    padding-bottom: 0.5rem;
    padding-left: 0.875rem;
    font-size: 0.6875rem;
    /*     @else                            { font-size: $padding - rem-calc(2); } */ }
  button.expand, .button.expand {
    padding-right: 0;
    padding-left: 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 {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  button.round, .button.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
  button.disabled, button[disabled], .button.disabled, .button[disabled] {
    background-color: #f95602;
    border-color: #fd6418;
    color: white;
    cursor: default;
    opacity: 0.6;
    -webkit-box-shadow: none;
    box-shadow: none; }
    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: #fd6418; }
    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: white; }
    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: #f95602; }
    button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .button[disabled].secondary {
      background-color: #a79a93;
      border-color: #b0a49e;
      color: white;
      cursor: default;
      opacity: 0.6;
      -webkit-box-shadow: none;
      box-shadow: none; }
      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: #b0a49e; }
      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: white; }
      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: #a79a93; }
    button.disabled.success, button[disabled].success, .button.disabled.success, .button[disabled].success {
      background-color: #88b564;
      border-color: #94bc74;
      color: white;
      cursor: default;
      opacity: 0.6;
      -webkit-box-shadow: none;
      box-shadow: none; }
      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: #94bc74; }
      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: white; }
      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: #88b564; }
    button.disabled.alert, button.disabled.voucher-edit-action-cancel, button[disabled].alert, button[disabled].voucher-edit-action-cancel, .button.disabled.alert, .button.disabled.voucher-edit-action-cancel, .button[disabled].alert, .button[disabled].voucher-edit-action-cancel {
      background-color: #ed6f6f;
      border-color: #ef7d7d;
      color: white;
      cursor: default;
      opacity: 0.6;
      -webkit-box-shadow: none;
      box-shadow: none; }
      button.disabled.alert:hover, button.disabled.voucher-edit-action-cancel:hover, button.disabled.alert:focus, button.disabled.voucher-edit-action-cancel:focus, button[disabled].alert:hover, button[disabled].voucher-edit-action-cancel:hover, button[disabled].alert:focus, button[disabled].voucher-edit-action-cancel:focus, .button.disabled.alert:hover, .button.disabled.voucher-edit-action-cancel:hover, .button.disabled.alert:focus, .button.disabled.voucher-edit-action-cancel:focus, .button[disabled].alert:hover, .button[disabled].voucher-edit-action-cancel:hover, .button[disabled].alert:focus, .button[disabled].voucher-edit-action-cancel:focus {
        background-color: #ef7d7d; }
      button.disabled.alert:hover, button.disabled.voucher-edit-action-cancel:hover, button.disabled.alert:focus, button.disabled.voucher-edit-action-cancel:focus, button[disabled].alert:hover, button[disabled].voucher-edit-action-cancel:hover, button[disabled].alert:focus, button[disabled].voucher-edit-action-cancel:focus, .button.disabled.alert:hover, .button.disabled.voucher-edit-action-cancel:hover, .button.disabled.alert:focus, .button.disabled.voucher-edit-action-cancel:focus, .button[disabled].alert:hover, .button[disabled].voucher-edit-action-cancel:hover, .button[disabled].alert:focus, .button[disabled].voucher-edit-action-cancel:focus {
        color: white; }
      button.disabled.alert:hover, button.disabled.voucher-edit-action-cancel:hover, button.disabled.alert:focus, button.disabled.voucher-edit-action-cancel:focus, button[disabled].alert:hover, button[disabled].voucher-edit-action-cancel:hover, button[disabled].alert:focus, button[disabled].voucher-edit-action-cancel:focus, .button.disabled.alert:hover, .button.disabled.voucher-edit-action-cancel:hover, .button.disabled.alert:focus, .button.disabled.voucher-edit-action-cancel:focus, .button[disabled].alert:hover, .button[disabled].voucher-edit-action-cancel:hover, .button[disabled].alert:focus, .button[disabled].voucher-edit-action-cancel:focus {
        background-color: #ed6f6f; }

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

.button-group {
  list-style: none;
  margin: 0;
  left: 0;
  *zoom: 1; }
  .button-group:before, .button-group:after {
    content: " ";
    display: table; }
  .button-group:after {
    clear: both; }
  .button-group li {
    margin: 0;
    float: left; }
    .button-group li > button, .button-group li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group li:first-child button, .button-group li:first-child .button {
      border-left: 0; }
    .button-group li:first-child {
      margin-left: 0; }
  .button-group.radius > * > button, .button-group.radius > * .button {
    border-left: 1px solid;
    border-color: rgba(255, 255, 255, 0.5); }
  .button-group.radius > *:first-child button, .button-group.radius > *:first-child .button {
    border-left: 0; }
  .button-group.radius > *:first-child, .button-group.radius > *:first-child > a, .button-group.radius > *:first-child > .itemds-fragment-edit, .button-group.radius > *:first-child > .itemds-fragment-delete, .button-group.radius > *:first-child > .itemds-fragment-resize, .button-group.radius > *:first-child > button, .button-group.radius > *:first-child > .button {
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }
  .button-group.radius > *:last-child, .button-group.radius > *:last-child > a, .button-group.radius > *:last-child > .itemds-fragment-edit, .button-group.radius > *:last-child > .itemds-fragment-delete, .button-group.radius > *:last-child > .itemds-fragment-resize, .button-group.radius > *:last-child > button, .button-group.radius > *:last-child > .button {
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }
  .button-group.round > * > button, .button-group.round > * .button {
    border-left: 1px solid;
    border-color: rgba(255, 255, 255, 0.5); }
  .button-group.round > *:first-child button, .button-group.round > *:first-child .button {
    border-left: 0; }
  .button-group.round > *:first-child, .button-group.round > *:first-child > a, .button-group.round > *:first-child > .itemds-fragment-edit, .button-group.round > *:first-child > .itemds-fragment-delete, .button-group.round > *:first-child > .itemds-fragment-resize, .button-group.round > *:first-child > button, .button-group.round > *:first-child > .button {
    -moz-border-radius-bottomleft: 1000px;
    -moz-border-radius-topleft: 1000px;
    -webkit-border-bottom-left-radius: 1000px;
    -webkit-border-top-left-radius: 1000px;
    border-bottom-left-radius: 1000px;
    border-top-left-radius: 1000px; }
  .button-group.round > *:last-child, .button-group.round > *:last-child > a, .button-group.round > *:last-child > .itemds-fragment-edit, .button-group.round > *:last-child > .itemds-fragment-delete, .button-group.round > *:last-child > .itemds-fragment-resize, .button-group.round > *:last-child > button, .button-group.round > *:last-child > .button {
    -moz-border-radius-bottomright: 1000px;
    -moz-border-radius-topright: 1000px;
    -webkit-border-bottom-right-radius: 1000px;
    -webkit-border-top-right-radius: 1000px;
    border-bottom-right-radius: 1000px;
    border-top-right-radius: 1000px; }
  .button-group.even-2 li {
    width: 50%; }
    .button-group.even-2 li > button, .button-group.even-2 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-2 li:first-child button, .button-group.even-2 li:first-child .button {
      border-left: 0; }
    .button-group.even-2 li button, .button-group.even-2 li .button {
      width: 100%; }
  .button-group.even-3 li {
    width: 33.33333%; }
    .button-group.even-3 li > button, .button-group.even-3 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-3 li:first-child button, .button-group.even-3 li:first-child .button {
      border-left: 0; }
    .button-group.even-3 li button, .button-group.even-3 li .button {
      width: 100%; }
  .button-group.even-4 li {
    width: 25%; }
    .button-group.even-4 li > button, .button-group.even-4 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-4 li:first-child button, .button-group.even-4 li:first-child .button {
      border-left: 0; }
    .button-group.even-4 li button, .button-group.even-4 li .button {
      width: 100%; }
  .button-group.even-5 li {
    width: 20%; }
    .button-group.even-5 li > button, .button-group.even-5 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-5 li:first-child button, .button-group.even-5 li:first-child .button {
      border-left: 0; }
    .button-group.even-5 li button, .button-group.even-5 li .button {
      width: 100%; }
  .button-group.even-6 li {
    width: 16.66667%; }
    .button-group.even-6 li > button, .button-group.even-6 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-6 li:first-child button, .button-group.even-6 li:first-child .button {
      border-left: 0; }
    .button-group.even-6 li button, .button-group.even-6 li .button {
      width: 100%; }
  .button-group.even-7 li {
    width: 14.28571%; }
    .button-group.even-7 li > button, .button-group.even-7 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-7 li:first-child button, .button-group.even-7 li:first-child .button {
      border-left: 0; }
    .button-group.even-7 li button, .button-group.even-7 li .button {
      width: 100%; }
  .button-group.even-8 li {
    width: 12.5%; }
    .button-group.even-8 li > button, .button-group.even-8 li .button {
      border-left: 1px solid;
      border-color: rgba(255, 255, 255, 0.5); }
    .button-group.even-8 li:first-child button, .button-group.even-8 li:first-child .button {
      border-left: 0; }
    .button-group.even-8 li button, .button-group.even-8 li .button {
      width: 100%; }

.button-bar {
  *zoom: 1; }
  .button-bar:before, .button-bar:after {
    content: " ";
    display: table; }
  .button-bar:after {
    clear: both; }
  .button-bar .button-group {
    float: left;
    margin-right: 0.625rem; }
    .button-bar .button-group div {
      overflow: hidden; }

/* Clearing Styles */
.clearing-thumbs, [data-clearing] {
  *zoom: 1;
  margin-bottom: 0;
  margin-left: 0;
  list-style: none; }
  .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: #333;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 998; }
  .clearing-blackout .clearing-close {
    display: block; }

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

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

.visible-img {
  height: 95%;
  position: relative; }
  .visible-img img {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -50%;
    max-height: 100%;
    max-width: 100%; }

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

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

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

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

@media only screen and (min-width:40.063em) {
  .clearing-main-prev, .clearing-main-next {
    position: absolute;
    height: 100%;
    width: 40px;
    top: 0; }
    .clearing-main-prev > span, .clearing-main-next > span {
      position: absolute;
      top: 50%;
      display: block;
      width: 0;
      height: 0;
      border: solid 12px; }
      .clearing-main-prev > span:hover, .clearing-main-next > span:hover {
        opacity: 0.8; }
  .clearing-main-prev {
    left: 0; }
    .clearing-main-prev > span {
      left: 5px;
      border-color: transparent;
      border-right-color: #ccc; }
  .clearing-main-next {
    right: 0; }
    .clearing-main-next > span {
      border-color: transparent;
      border-left-color: #ccc; }
  .clearing-main-prev.disabled, .clearing-main-next.disabled {
    opacity: 0.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 {
        display: block;
        width: 120px;
        min-height: inherit;
        float: left;
        overflow: hidden;
        margin-right: 0;
        padding: 0;
        position: relative;
        cursor: pointer;
        opacity: 0.4; }
        .clearing-assembled .clearing-container .carousel > ul li.fix-height img {
          height: 100%;
          max-width: none; }
        .clearing-assembled .clearing-container .carousel > ul li a.th, .clearing-assembled .clearing-container .carousel > ul li .th.itemds-fragment-edit, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-edit.itemds-image, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-edit.itemds-colorswatch, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-edit.itemds-textalign, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-edit.itemds-clipart-icon, .clearing-assembled .clearing-container .carousel > ul li .th.itemds-fragment-delete, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-delete.itemds-image, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-delete.itemds-colorswatch, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-delete.itemds-textalign, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-delete.itemds-clipart-icon, .clearing-assembled .clearing-container .carousel > ul li .th.itemds-fragment-resize, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-resize.itemds-image, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-resize.itemds-colorswatch, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-resize.itemds-textalign, .clearing-assembled .clearing-container .carousel > ul li .itemds-fragment-resize.itemds-clipart-icon, .clearing-assembled .clearing-container .carousel > ul li a.itemds-image, .clearing-assembled .clearing-container .carousel > ul li .itemds-image.itemds-fragment-edit, .clearing-assembled .clearing-container .carousel > ul li .itemds-image.itemds-fragment-delete, .clearing-assembled .clearing-container .carousel > ul li .itemds-image.itemds-fragment-resize, .clearing-assembled .clearing-container .carousel > ul li a.itemds-colorswatch, .clearing-assembled .clearing-container .carousel > ul li .itemds-colorswatch.itemds-fragment-edit, .clearing-assembled .clearing-container .carousel > ul li .itemds-colorswatch.itemds-fragment-delete, .clearing-assembled .clearing-container .carousel > ul li .itemds-colorswatch.itemds-fragment-resize, .clearing-assembled .clearing-container .carousel > ul li a.itemds-textalign, .clearing-assembled .clearing-container .carousel > ul li .itemds-textalign.itemds-fragment-edit, .clearing-assembled .clearing-container .carousel > ul li .itemds-textalign.itemds-fragment-delete, .clearing-assembled .clearing-container .carousel > ul li .itemds-textalign.itemds-fragment-resize, .clearing-assembled .clearing-container .carousel > ul li a.itemds-clipart-icon, .clearing-assembled .clearing-container .carousel > ul li .itemds-clipart-icon.itemds-fragment-edit, .clearing-assembled .clearing-container .carousel > ul li .itemds-clipart-icon.itemds-fragment-delete, .clearing-assembled .clearing-container .carousel > ul li .itemds-clipart-icon.itemds-fragment-resize {
          border: none;
          -webkit-box-shadow: 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: 0.8; }
  .clearing-assembled .clearing-container .visible-img {
    background: #333;
    overflow: hidden;
    height: 85%; }
  .clearing-close {
    position: absolute;
    top: 10px;
    right: 20px;
    padding-left: 0;
    padding-top: 0; } }

/* Foundation Dropdowns */
.f-dropdown {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  width: 100%;
  max-height: none;
  height: auto;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  margin-top: 2px;
  max-width: 200px; }
  .f-dropdown > *:first-child {
    margin-top: 0; }
  .f-dropdown > *:last-child {
    margin-bottom: 0; }
  .f-dropdown:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent transparent #fff transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -12px;
    left: 10px;
    z-index: 99; }
  .f-dropdown:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 7px;
    border-color: transparent transparent #cccccc transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -14px;
    left: 9px;
    z-index: 98; }
  .f-dropdown.right:before {
    left: auto;
    right: 10px; }
  .f-dropdown.right:after {
    left: auto;
    right: 9px; }
  .f-dropdown.drop-right {
    position: absolute;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    width: 100%;
    max-height: none;
    height: auto;
    background: #fff;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    z-index: 99;
    margin-top: 0;
    margin-left: 2px;
    max-width: 200px; }
    .f-dropdown.drop-right > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-right > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-right:before {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 6px;
      border-color: transparent #fff transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 10px;
      left: -12px;
      z-index: 99; }
    .f-dropdown.drop-right:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 7px;
      border-color: transparent #cccccc transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 9px;
      left: -14px;
      z-index: 98; }
  .f-dropdown.drop-left {
    position: absolute;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    width: 100%;
    max-height: none;
    height: auto;
    background: #fff;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    z-index: 99;
    margin-top: 0;
    margin-left: -2px;
    max-width: 200px; }
    .f-dropdown.drop-left > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-left > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-left:before {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 6px;
      border-color: transparent transparent transparent #fff;
      border-left-style: solid;
      position: absolute;
      top: 10px;
      right: -12px;
      left: auto;
      z-index: 99; }
    .f-dropdown.drop-left:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 7px;
      border-color: transparent transparent transparent #cccccc;
      border-left-style: solid;
      position: absolute;
      top: 9px;
      right: -14px;
      left: auto;
      z-index: 98; }
  .f-dropdown.drop-top {
    position: absolute;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    width: 100%;
    max-height: none;
    height: auto;
    background: #fff;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    z-index: 99;
    margin-top: -2px;
    margin-left: 0;
    max-width: 200px; }
    .f-dropdown.drop-top > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-top > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-top:before {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 6px;
      border-color: #fff transparent transparent transparent;
      border-top-style: solid;
      position: absolute;
      top: auto;
      bottom: -12px;
      left: 10px;
      right: auto;
      z-index: 99; }
    .f-dropdown.drop-top:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 7px;
      border-color: #cccccc transparent transparent transparent;
      border-top-style: solid;
      position: absolute;
      top: auto;
      bottom: -14px;
      left: 9px;
      right: auto;
      z-index: 98; }
  .f-dropdown li {
    font-size: 0.875rem;
    cursor: pointer;
    line-height: 1.125rem;
    margin: 0; }
    .f-dropdown li:hover, .f-dropdown li:focus {
      background: #eeeeee; }
    .f-dropdown li a, .f-dropdown li .itemds-fragment-edit, .f-dropdown li .itemds-fragment-delete, .f-dropdown li .itemds-fragment-resize {
      display: block;
      padding: 0.5rem;
      color: #555; }
  .f-dropdown.content {
    position: absolute;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    padding: 1.25rem;
    width: 100%;
    height: auto;
    max-height: none;
    background: #fff;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    z-index: 99;
    max-width: 200px; }
    .f-dropdown.content > *:first-child {
      margin-top: 0; }
    .f-dropdown.content > *:last-child {
      margin-bottom: 0; }
  .f-dropdown.tiny {
    max-width: 200px; }
  .f-dropdown.small {
    max-width: 300px; }
  .f-dropdown.medium {
    max-width: 500px; }
  .f-dropdown.large {
    max-width: 800px; }

.dropdown.button, button.dropdown {
  position: relative;
  padding-right: 3.5625rem; }
  .dropdown.button:before, button.dropdown:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    display: block;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
    top: 50%; }
  .dropdown.button:before, button.dropdown:before {
    border-width: 0.375rem;
    right: 1.40625rem;
    margin-top: -0.15625rem; }
  .dropdown.button:before, button.dropdown:before {
    border-color: #fff transparent transparent transparent; }
  .dropdown.button.tiny, button.dropdown.tiny {
    padding-right: 2.625rem; }
    .dropdown.button.tiny:before, button.dropdown.tiny:before {
      border-width: 0.375rem;
      right: 1.125rem;
      margin-top: -0.125rem; }
    .dropdown.button.tiny:before, button.dropdown.tiny:before {
      border-color: #fff transparent transparent transparent; }
  .dropdown.button.small, button.dropdown.small {
    padding-right: 3.0625rem; }
    .dropdown.button.small:before, button.dropdown.small:before {
      border-width: 0.4375rem;
      right: 1.3125rem;
      margin-top: -0.15625rem; }
    .dropdown.button.small:before, button.dropdown.small:before {
      border-color: #fff transparent transparent transparent; }
  .dropdown.button.large, button.dropdown.large {
    padding-right: 3.625rem; }
    .dropdown.button.large:before, button.dropdown.large:before {
      border-width: 0.3125rem;
      right: 1.71875rem;
      margin-top: -0.15625rem; }
    .dropdown.button.large:before, button.dropdown.large:before {
      border-color: #fff transparent transparent transparent; }
  .dropdown.button.secondary:before, button.dropdown.secondary:before {
    border-color: #333 transparent transparent transparent; }

.flex-video {
  position: relative;
  padding-top: 1.5625rem;
  padding-bottom: 67.5%;
  height: 0;
  margin-bottom: 1rem;
  overflow: hidden; }
  .flex-video.widescreen {
    padding-bottom: 56.34%; }
  .flex-video.vimeo {
    padding-top: 0; }
  .flex-video iframe, .flex-video object, .flex-video embed, .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* 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 {
      -moz-border-radius-bottomright: 0;
      -moz-border-radius-topright: 0;
      -webkit-border-bottom-right-radius: 0;
      -webkit-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 {
  font-size: 0.875rem;
  color: #4d4d4d;
  cursor: pointer;
  display: block;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0;
  /* Styles for required inputs */ }
  label.right {
    float: none;
    text-align: right; }
  label.inline {
    margin: 0 0 1rem 0;
    padding: 0.625rem 0; }
  label small {
    text-transform: capitalize;
    color: #676767; }

select {
  -webkit-appearance: none !important;
  background-color: #fafafa;
  background-image: url('data:image/svg+xml;base64, PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iM3B4IiB2aWV3Qm94PSIwIDAgNiAzIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA2IDMiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxwb2x5Z29uIHBvaW50cz0iNS45OTIsMCAyLjk5MiwzIC0wLjAwOCwwICIvPjwvc3ZnPg==');
  background-repeat: no-repeat;
  background-position: 97% center;
  border: 1px solid #cccccc;
  padding: 0.5rem;
  font-size: 0.875rem;
  -webkit-border-radius: 0;
  border-radius: 0; }
  select.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  select:hover {
    background-color: #f3f3f3;
    border-color: #999999; }

select::-ms-expand {
  display: none; }

@-moz-document url-prefix() {
  select {
    background: #fafafa; }

  select:hover {
    background: #f3f3f3; } }

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

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

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

.prefix.button.radius {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomleft: 3px;
  -moz-border-radius-topleft: 3px;
  -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 {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomright: 3px;
  -moz-border-radius-topright: 3px;
  -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 {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomleft: 1000px;
  -moz-border-radius-topleft: 1000px;
  -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 {
  -webkit-border-radius: 0;
  border-radius: 0;
  -moz-border-radius-bottomright: 1000px;
  -moz-border-radius-topright: 1000px;
  -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: #333;
  border-color: #cccccc; }
  span.prefix.radius, label.prefix.radius {
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }

span.postfix, label.postfix {
  background: #f2f2f2;
  border-left: none;
  color: #333;
  border-color: #cccccc; }
  span.postfix.radius, label.postfix.radius {
    -webkit-border-radius: 0;
    border-radius: 0;
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }

/* 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"], textarea {
  -webkit-appearance: none;
  background-color: #fff;
  font-family: inherit;
  border: 1px solid #cccccc;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-size: 0.875rem;
  margin: 0 0 1rem 0;
  padding: 0.5rem;
  height: 2.3125rem;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: -webkit-box-shadow 0.45s, border-color 0.45s ease-in-out;
  -moz-transition: -moz-box-shadow 0.45s, border-color 0.45s ease-in-out;
  transition: box-shadow 0.45s, border-color 0.45s ease-in-out;
  -webkit-transition: all 0.15s linear;
  -moz-transition: all 0.15s linear;
  transition: all 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, textarea:focus {
    -webkit-box-shadow: 0 0 5px #999999;
    -moz-box-shadow: 0 0 5px #999999;
    box-shadow: 0 0 5px #999999;
    border-color: #999999; }
  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, textarea:focus {
    background: #fafafa;
    border-color: #999999;
    outline: none; }
  input[type="text"][disabled], fieldset[disabled] input[type="text"], input[type="password"][disabled], fieldset[disabled] input[type="password"], input[type="date"][disabled], fieldset[disabled] input[type="date"], input[type="datetime"][disabled], fieldset[disabled] input[type="datetime"], input[type="datetime-local"][disabled], fieldset[disabled] input[type="datetime-local"], input[type="month"][disabled], fieldset[disabled] input[type="month"], input[type="week"][disabled], fieldset[disabled] input[type="week"], input[type="email"][disabled], fieldset[disabled] input[type="email"], input[type="number"][disabled], fieldset[disabled] input[type="number"], input[type="search"][disabled], fieldset[disabled] input[type="search"], input[type="tel"][disabled], fieldset[disabled] input[type="tel"], input[type="time"][disabled], fieldset[disabled] input[type="time"], input[type="url"][disabled], fieldset[disabled] input[type="url"], textarea[disabled], fieldset[disabled] textarea {
    background-color: #ddd; }
  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, textarea.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }

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

/* Add height value for select elements to match text input height */
select {
  height: 2.3125rem; }

/* 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%; }

/* We add basic fieldset styling */
fieldset {
  border: 1px solid #ddd;
  padding: 1.25rem;
  margin: 1.125rem 0; }
  fieldset legend {
    font-weight: bold;
    background: #fff;
    padding: 0 0.1875rem;
    margin: 0;
    margin-left: -0.1875rem; }

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

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

.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: #ed6f6f; }
.error small.error {
  display: block;
  padding: 0.375rem 0.5625rem 0.5625rem;
  margin-top: -1px;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: normal;
  font-style: italic;
  background: #ed6f6f;
  color: #fff; }
.error > label > small {
  color: #676767;
  background: transparent;
  padding: 0;
  text-transform: capitalize;
  font-style: normal;
  font-size: 60%;
  margin: 0;
  display: inline; }
.error span.error-message {
  display: block; }

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

label.error {
  color: #ed6f6f; }

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

/* Foundation Joyride */
.joyride-list {
  display: none; }

/* Default styles for the container */
.joyride-tip-guide {
  display: none;
  position: absolute;
  background: #333;
  color: #fff;
  z-index: 101;
  top: 0;
  left: 2.5%;
  font-family: inherit;
  font-weight: normal;
  width: 95%; }

.lt-ie9 .joyride-tip-guide {
  max-width: 800px;
  left: 50%;
  margin-left: -400px; }

.joyride-content-wrapper {
  width: 100%;
  padding: 1.125rem 1.25rem 1.5rem; }
  .joyride-content-wrapper .button {
    margin-bottom: 0 !important; }

/* Add a little css triangle pip, older browser just miss out on the fanciness of it */
.joyride-tip-guide .joyride-nub {
  display: block;
  position: absolute;
  left: 22px;
  width: 0;
  height: 0;
  border: 10px solid #333; }
  .joyride-tip-guide .joyride-nub.top {
    border-top-style: solid;
    border-color: #333;
    border-top-color: transparent !important;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    top: -20px; }
  .joyride-tip-guide .joyride-nub.bottom {
    border-bottom-style: solid;
    border-color: #333 !important;
    border-bottom-color: transparent !important;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    bottom: -20px; }
  .joyride-tip-guide .joyride-nub.right {
    right: -20px; }
  .joyride-tip-guide .joyride-nub.left {
    left: -20px; }

/* Typography */
.joyride-tip-guide h1, .joyride-tip-guide h2, .joyride-tip-guide h3, .joyride-tip-guide h4, .joyride-tip-guide h5, .joyride-tip-guide h6 {
  line-height: 1.25;
  margin: 0;
  font-weight: bold;
  color: #fff; }

.joyride-tip-guide p {
  margin: 0 0 1.125rem 0;
  font-size: 0.875rem;
  line-height: 1.3; }

.joyride-timer-indicator-wrap {
  width: 50px;
  height: 3px;
  border: solid 1px #555;
  position: absolute;
  right: 1.0625rem;
  bottom: 1rem; }

.joyride-timer-indicator {
  display: block;
  width: 0;
  height: inherit;
  background: #666; }

.joyride-close-tip {
  position: absolute;
  right: 12px;
  top: 10px;
  color: #777 !important;
  text-decoration: none;
  font-size: 24px;
  font-weight: normal;
  line-height: 0.5 !important; }
  .joyride-close-tip:hover, .joyride-close-tip:focus {
    color: #eee !important; }

.joyride-modal-bg {
  position: fixed;
  height: 100%;
  width: 100%;
  background: transparent;
  background: rgba(0, 0, 0, 0.5);
  z-index: 100;
  display: none;
  top: 0;
  left: 0;
  cursor: pointer; }

.joyride-expose-wrapper {
  background-color: #ffffff;
  position: absolute;
  border-radius: 3px;
  z-index: 102;
  -moz-box-shadow: 0 0 30px #ffffff;
  -webkit-box-shadow: 0 0 15px #ffffff;
  box-shadow: 0 0 15px #ffffff; }

.joyride-expose-cover {
  background: transparent;
  border-radius: 3px;
  position: absolute;
  z-index: 9999;
  top: 0;
  left: 0; }

/* Styles for screens that are at least 768px; */
@media only screen and (min-width:40.063em) {
  .joyride-tip-guide {
    width: 300px;
    left: inherit; }
    .joyride-tip-guide .joyride-nub.bottom {
      border-color: #333 !important;
      border-bottom-color: transparent !important;
      border-left-color: transparent !important;
      border-right-color: transparent !important;
      bottom: -20px; }
    .joyride-tip-guide .joyride-nub.right {
      border-color: #333 !important;
      border-top-color: transparent !important;
      border-right-color: transparent !important;
      border-bottom-color: transparent !important;
      top: 22px;
      left: auto;
      right: -20px; }
    .joyride-tip-guide .joyride-nub.left {
      border-color: #333 !important;
      border-top-color: transparent !important;
      border-left-color: transparent !important;
      border-bottom-color: transparent !important;
      top: 22px;
      left: -20px;
      right: auto; } }

.keystroke, kbd {
  background-color: #ededed;
  border-color: #dddddd;
  color: #222;
  border-style: solid;
  border-width: 1px;
  margin: 0;
  font-family: "Consolas", "Menlo", "Courier", monospace;
  font-size: inherit;
  padding: 0.125rem 0.25rem 0;
  -webkit-border-radius: 3px;
  border-radius: 3px; }

.label {
  font-weight: normal;
  font-family: Tahoma, Helvetica, sans-serif;
  text-align: center;
  text-decoration: none;
  line-height: 1;
  white-space: nowrap;
  display: inline-block;
  position: relative;
  margin-bottom: inherit;
  padding: 0.25rem 0.5rem 0.375rem;
  font-size: 0.6875rem;
  background-color: #f95602;
  color: #fff; }
  .label.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  .label.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
  .label.alert, .label.voucher-edit-action-cancel {
    background-color: #ed6f6f;
    color: #fff; }
  .label.success {
    background-color: #88b564;
    color: #fff; }
  .label.secondary {
    background-color: #a79a93;
    color: #fff; }

[data-magellan-expedition] {
  background: #fff;
  z-index: 50;
  min-width: 100%;
  padding: 10px; }
  [data-magellan-expedition] .sub-nav {
    margin-bottom: 0; }
    [data-magellan-expedition] .sub-nav dd {
      margin-bottom: 0; }
    [data-magellan-expedition] .sub-nav a, [data-magellan-expedition] .sub-nav .itemds-fragment-edit, [data-magellan-expedition] .sub-nav .itemds-fragment-delete, [data-magellan-expedition] .sub-nav .itemds-fragment-resize {
      line-height: 1.8em; }

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

  to {
    -webkit-transform: rotate(360deg); } }

@-moz-keyframes rotate {
  from {
    -moz-transform: rotate(0deg); }

  to {
    -moz-transform: rotate(360deg); } }

@-o-keyframes rotate {
  from {
    -o-transform: rotate(0deg); }

  to {
    -o-transform: rotate(360deg); } }

@keyframes rotate {
  from {
    transform: rotate(0deg); }

  to {
    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; }

.preloader {
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20px;
  margin-left: -20px;
  border: solid 3px;
  border-color: #555 #fff;
  -webkit-border-radius: 1000px;
  border-radius: 1000px;
  -webkit-animation-name: rotate;
  -webkit-animation-duration: 1.5s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  -moz-animation-name: rotate;
  -moz-animation-duration: 1.5s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: linear;
  -o-animation-name: rotate;
  -o-animation-duration: 1.5s;
  -o-animation-iteration-count: infinite;
  -o-animation-timing-function: linear;
  animation-name: rotate;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: linear; }

.orbit-container {
  overflow: hidden;
  width: 100%;
  position: relative;
  background: none; }
  .orbit-container .orbit-slides-container {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    -webkit-transform: translateZ(0); }
    .orbit-container .orbit-slides-container img {
      display: block;
      max-width: 100%; }
    .orbit-container .orbit-slides-container.fade > * {
      -webkit-transform: translate3d(0, 0, 0);
      opacity: 0.01;
      transition: opacity 0.25s ease-in-out;
      -moz-transition: opacity 0.25s ease-in-out;
      -webkit-transition: opacity 0.25s ease-in-out; }
      .orbit-container .orbit-slides-container.fade > *.animate-in {
        opacity: 1;
        z-index: 20;
        transition: opacity 500ms ease-in-out;
        -moz-transition: opacity 500ms ease-in-out;
        -webkit-transition: opacity 500ms ease-in-out; }
      .orbit-container .orbit-slides-container.fade > *.animate-out {
        opacity: 0.01;
        z-index: 10;
        transition: opacity 500ms ease-in-out;
        -moz-transition: opacity 500ms ease-in-out;
        -webkit-transition: opacity 500ms ease-in-out; }
    .orbit-container .orbit-slides-container.swipe-next > * {
      -webkit-transform: translate3d(100%, 0, 0); }
      .orbit-container .orbit-slides-container.swipe-next > *.animate-in {
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        -webkit-transition-duration: 500ms;
        -moz-transition-duration: 500ms;
        -o-transition-duration: 500ms;
        transition-duration: 500ms; }
      .orbit-container .orbit-slides-container.swipe-next > *.animate-out {
        -webkit-transform: translate3d(-100%, 0, 0);
        -moz-transform: translate3d(-100%, 0, 0);
        -ms-transform: translate3d(-100%, 0, 0);
        -o-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        -webkit-transition-duration: 500ms;
        -moz-transition-duration: 500ms;
        -o-transition-duration: 500ms;
        transition-duration: 500ms; }
    .orbit-container .orbit-slides-container.swipe-prev > * {
      -webkit-transform: translate3d(-100%, 0, 0);
      -moz-transform: translate3d(-100%, 0, 0);
      -ms-transform: translate3d(-100%, 0, 0);
      -o-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0); }
      .orbit-container .orbit-slides-container.swipe-prev > *.animate-in {
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        -webkit-transition-duration: 500ms;
        -moz-transition-duration: 500ms;
        -o-transition-duration: 500ms;
        transition-duration: 500ms; }
      .orbit-container .orbit-slides-container.swipe-prev > *.animate-out {
        -webkit-transform: translate3d(100%, 0, 0);
        -moz-transform: translate3d(100%, 0, 0);
        -ms-transform: translate3d(100%, 0, 0);
        -o-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        -webkit-transition-duration: 500ms;
        -moz-transition-duration: 500ms;
        -o-transition-duration: 500ms;
        transition-duration: 500ms; }
    .orbit-container .orbit-slides-container > * {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      -webkit-transform: translate3d(100%, 0, 0);
      -moz-transform: translate3d(100%, 0, 0);
      -ms-transform: translate3d(100%, 0, 0);
      -o-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0); }
      .orbit-container .orbit-slides-container > *.active {
        opacity: 1;
        top: 0;
        left: 0;
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0); }
      .orbit-container .orbit-slides-container > * .orbit-caption {
        position: absolute;
        bottom: 0;
        background-color: rgba(51, 51, 51, 0.8);
        color: #fff;
        width: 100%;
        padding: 0.625rem 0.875rem;
        font-size: 0.875rem; }
  .orbit-container .orbit-slide-number {
    position: absolute;
    top: 10px;
    left: 10px;
    font-size: 12px;
    color: #fff;
    background: rgba(0, 0, 0, 0);
    z-index: 10; }
    .orbit-container .orbit-slide-number span {
      font-weight: 700;
      padding: 0.3125rem; }
  .orbit-container .orbit-timer {
    position: absolute;
    top: 12px;
    right: 10px;
    height: 6px;
    width: 100px;
    z-index: 10; }
    .orbit-container .orbit-timer .orbit-progress {
      height: 3px;
      background-color: rgba(255, 255, 255, 0.3);
      display: block;
      width: 0%;
      position: relative;
      right: 20px;
      top: 5px; }
    .orbit-container .orbit-timer > span {
      display: none;
      position: absolute;
      top: 0px;
      right: 0;
      width: 11px;
      height: 14px;
      border: solid 4px #fff;
      border-top: none;
      border-bottom: none; }
    .orbit-container .orbit-timer.paused > span {
      right: -4px;
      top: 0px;
      width: 11px;
      height: 14px;
      border: inset 8px;
      border-right-style: solid;
      border-color: transparent transparent transparent #fff; }
      .orbit-container .orbit-timer.paused > span.dark {
        border-color: transparent transparent transparent #333; }
  .orbit-container:hover .orbit-timer > span {
    display: block; }
  .orbit-container .orbit-prev, .orbit-container .orbit-next {
    position: absolute;
    top: 45%;
    margin-top: -25px;
    width: 36px;
    height: 60px;
    line-height: 50px;
    color: white;
    background-color: none;
    text-indent: -9999px !important;
    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 {
      position: absolute;
      top: 50%;
      margin-top: -10px;
      display: block;
      width: 0;
      height: 0;
      border: inset 10px; }
  .orbit-container .orbit-prev {
    left: 0; }
    .orbit-container .orbit-prev > span {
      border-right-style: solid;
      border-color: transparent;
      border-right-color: #fff; }
    .orbit-container .orbit-prev:hover > span {
      border-right-color: #fff; }
  .orbit-container .orbit-next {
    right: 0; }
    .orbit-container .orbit-next > span {
      border-color: transparent;
      border-left-style: solid;
      border-left-color: #fff;
      left: 50%;
      margin-left: -4px; }
    .orbit-container .orbit-next:hover > span {
      border-left-color: #fff; }

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

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

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

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

@media only screen and (max-width: 40em) {
  .orbit-stack-on-small .orbit-slides-container {
    height: auto !important; }
  .orbit-stack-on-small .orbit-slides-container > * {
    position: relative;
    margin-left: 0% !important; }
  .orbit-stack-on-small .orbit-timer, .orbit-stack-on-small .orbit-next, .orbit-stack-on-small .orbit-prev, .orbit-stack-on-small .orbit-bullets {
    display: none; } }

ul.pagination {
  display: block;
  height: 1.5rem;
  margin-left: -0.3125rem; }
  ul.pagination li {
    height: 1.5rem;
    color: #222;
    font-size: 0.875rem;
    margin-left: 0.3125rem; }
    ul.pagination li a, ul.pagination li .itemds-fragment-edit, ul.pagination li .itemds-fragment-delete, ul.pagination li .itemds-fragment-resize {
      display: block;
      padding: 0.0625rem 0.625rem 0.0625rem;
      color: #999;
      -webkit-border-radius: 3px;
      border-radius: 3px; }
    ul.pagination li:hover a, ul.pagination li:hover .itemds-fragment-edit, ul.pagination li:hover .itemds-fragment-delete, ul.pagination li:hover .itemds-fragment-resize, ul.pagination li a:focus, ul.pagination li .itemds-fragment-edit:focus, ul.pagination li .itemds-fragment-delete:focus, ul.pagination li .itemds-fragment-resize:focus {
      background: #e6e6e6; }
    ul.pagination li.unavailable a, ul.pagination li.unavailable .itemds-fragment-edit, ul.pagination li.unavailable .itemds-fragment-delete, ul.pagination li.unavailable .itemds-fragment-resize {
      cursor: default;
      color: #999; }
    ul.pagination li.unavailable:hover a, ul.pagination li.unavailable:hover .itemds-fragment-edit, ul.pagination li.unavailable:hover .itemds-fragment-delete, ul.pagination li.unavailable:hover .itemds-fragment-resize, ul.pagination li.unavailable a:focus, ul.pagination li.unavailable .itemds-fragment-edit:focus, ul.pagination li.unavailable .itemds-fragment-delete:focus, ul.pagination li.unavailable .itemds-fragment-resize:focus {
      background: transparent; }
    ul.pagination li.current a, ul.pagination li.current .itemds-fragment-edit, ul.pagination li.current .itemds-fragment-delete, ul.pagination li.current .itemds-fragment-resize {
      background: #f95602;
      color: #fff;
      font-weight: bold;
      cursor: default; }
      ul.pagination li.current a:hover, ul.pagination li.current .itemds-fragment-edit:hover, ul.pagination li.current .itemds-fragment-delete:hover, ul.pagination li.current .itemds-fragment-resize:hover, ul.pagination li.current a:focus, ul.pagination li.current .itemds-fragment-edit:focus, ul.pagination li.current .itemds-fragment-delete:focus, ul.pagination li.current .itemds-fragment-resize:focus {
        background: #f95602; }
  ul.pagination li {
    float: left;
    display: block; }

/* Pagination centred wrapper */
.pagination-centered {
  text-align: center; }
  .pagination-centered ul.pagination li {
    float: none;
    display: inline-block; }

/* Panels */
.panel {
  border-style: solid;
  border-width: 0px;
  border-color: white;
  margin-bottom: 20px;
  padding: 20px;
  background: white; }
  .panel > :first-child {
    margin-top: 0; }
  .panel > :last-child {
    margin-bottom: 0; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6, .panel p {
    color: #141414; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6 {
    line-height: 1;
    margin-bottom: 0.625rem; }
    .panel h1.subheader, .panel h2.subheader, .panel h3.subheader, .panel h4.subheader, .panel h5.subheader, .panel h6.subheader {
      line-height: 1.4; }
  .panel.callout {
    border-style: solid;
    border-width: 0px;
    border-color: #fff5f1;
    margin-bottom: 20px;
    padding: 20px;
    background: #fff5f0; }
    .panel.callout > :first-child {
      margin-top: 0; }
    .panel.callout > :last-child {
      margin-bottom: 0; }
    .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6, .panel.callout p {
      color: #141414; }
    .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6 {
      line-height: 1;
      margin-bottom: 0.625rem; }
      .panel.callout h1.subheader, .panel.callout h2.subheader, .panel.callout h3.subheader, .panel.callout h4.subheader, .panel.callout h5.subheader, .panel.callout h6.subheader {
        line-height: 1.4; }
    .panel.callout a:not(.button), .panel.callout .itemds-fragment-edit:not(.button), .panel.callout .itemds-fragment-delete:not(.button), .panel.callout .itemds-fragment-resize:not(.button) {
      color: #f95602; }
  .panel.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }

/* Pricing Tables */
.pricing-table {
  border: solid 1px #ddd;
  margin-left: 0;
  margin-bottom: 1.25rem; }
  .pricing-table * {
    list-style: none;
    line-height: 1; }
  .pricing-table .title {
    background-color: #333;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #eee;
    font-weight: normal;
    font-size: 1rem;
    font-family: Tahoma, Helvetica, sans-serif; }
  .pricing-table .price {
    background-color: #f6f6f6;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #333;
    font-weight: normal;
    font-size: 2rem;
    font-family: Tahoma, Helvetica, sans-serif; }
  .pricing-table .description {
    background-color: #fff;
    padding: 0.9375rem;
    text-align: center;
    color: #777;
    font-size: 0.75rem;
    font-weight: normal;
    line-height: 1.4;
    border-bottom: dotted 1px #ddd; }
  .pricing-table .bullet-item {
    background-color: #fff;
    padding: 0.9375rem;
    text-align: center;
    color: #333;
    font-size: 0.875rem;
    font-weight: normal;
    border-bottom: dotted 1px #ddd; }
  .pricing-table .cta-button {
    background-color: #fff;
    text-align: center;
    padding: 1.25rem 1.25rem 0; }

/* Progress Bar */
.progress {
  background-color: #f6f6f6;
  height: 1.5625rem;
  border: 1px solid white;
  padding: 0.125rem;
  margin-bottom: 0.625rem; }
  .progress .meter {
    background: #f95602;
    height: 100%;
    display: block; }
  .progress.secondary .meter {
    background: #a79a93;
    height: 100%;
    display: block; }
  .progress.success .meter {
    background: #88b564;
    height: 100%;
    display: block; }
  .progress.alert .meter, .progress.alert .progress.voucher-edit-action-cancel {
    background: #ed6f6f;
    height: 100%;
    display: block; }
  .progress.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
    .progress.radius .meter {
      -webkit-border-radius: 2px;
      border-radius: 2px; }
  .progress.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
    .progress.round .meter {
      -webkit-border-radius: 999px;
      border-radius: 999px; }

.range-slider {
  display: block;
  position: relative;
  width: 100%;
  height: 1rem;
  border: 1px solid #ddd;
  margin: 1.25rem 0;
  touch-action: none;
  -ms-touch-action: none;
  background: #fafafa; }
  .range-slider.vertical-range {
    display: block;
    position: relative;
    width: 100%;
    height: 1rem;
    border: 1px solid #ddd;
    margin: 1.25rem 0;
    touch-action: none;
    -ms-touch-action: none;
    display: inline-block;
    width: 1rem;
    height: 12.5rem; }
    .range-slider.vertical-range .range-slider-handle {
      margin-top: 0;
      margin-left: -0.5rem;
      position: absolute;
      bottom: -10.5rem; }
    .range-slider.vertical-range .range-slider-active-segment {
      width: 0.875rem;
      height: auto;
      bottom: 0; }
  .range-slider.radius {
    background: #fafafa;
    -webkit-border-radius: 3px;
    border-radius: 3px; }
    .range-slider.radius .range-slider-handle {
      background: #f95602;
      -webkit-border-radius: 3px;
      border-radius: 3px; }
      .range-slider.radius .range-slider-handle:hover {
        background: #db4a02; }
  .range-slider.round {
    background: #fafafa;
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
    .range-slider.round .range-slider-handle {
      background: #f95602;
      -webkit-border-radius: 1000px;
      border-radius: 1000px; }
      .range-slider.round .range-slider-handle:hover {
        background: #db4a02; }

.range-slider-active-segment {
  display: inline-block;
  position: absolute;
  height: 0.875rem;
  background: #a69891; }

.range-slider-handle {
  display: inline-block;
  position: absolute;
  z-index: 1;
  top: -0.3125rem;
  width: 2rem;
  height: 1.375rem;
  border: 1px solid none;
  cursor: pointer;
  background: #f95602; }
  .range-slider-handle:hover {
    background: #db4a02; }

.reveal-modal-bg {
  position: fixed;
  height: 100%;
  width: 100%;
  background: #000;
  background: rgba(0, 0, 0, 0.45);
  z-index: 99;
  display: none;
  top: 0;
  left: 0; }

dialog, .reveal-modal {
  visibility: hidden;
  display: none;
  position: absolute;
  z-index: 100;
  width: 100vw;
  top: 0;
  left: 0;
  background-color: #fff;
  padding: 1.25rem;
  border: solid 1px #666;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); }
  @media only screen and (max-width: 40em) {
    dialog, .reveal-modal {
      height: 100vh;
      min-height: 100vh; } }
  @media only screen and (min-width:40.063em) {
    dialog, .reveal-modal {
      left: 50%; } }
  dialog .column, dialog .columns, .reveal-modal .column, .reveal-modal .columns {
    min-width: 0; }
  dialog > :first-child, .reveal-modal > :first-child {
    margin-top: 0; }
  dialog > :last-child, .reveal-modal > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width:40.063em) {
    dialog, .reveal-modal {
      margin-left: -40%;
      width: 80%; } }
  @media only screen and (min-width:40.063em) {
    dialog, .reveal-modal {
      top: 6.25rem; } }
  dialog .close-reveal-modal, .reveal-modal .close-reveal-modal {
    font-size: 2.5rem;
    line-height: 1;
    position: absolute;
    top: 0.5rem;
    right: 0.6875rem;
    color: #aaa;
    font-weight: bold;
    cursor: pointer; }

dialog[open] {
  display: block;
  visibility: visible; }

@media only screen and (min-width:40.063em) {
  dialog, .reveal-modal {
    padding: 1.875rem; }
    @media only screen and (min-width:40.063em) {
      dialog, .reveal-modal {
        top: 6.25rem; } }
    @media only screen and (min-width:40.063em) {
      dialog.tiny, .reveal-modal.tiny {
        margin-left: -15%;
        width: 30%; } }
    @media only screen and (min-width:40.063em) {
      dialog.small, .reveal-modal.small {
        margin-left: -20%;
        width: 40%; } }
    @media only screen and (min-width:40.063em) {
      dialog.medium, .reveal-modal.medium {
        margin-left: -30%;
        width: 60%; } }
    @media only screen and (min-width:40.063em) {
      dialog.large, .reveal-modal.large {
        margin-left: -35%;
        width: 70%; } }
    @media only screen and (min-width:40.063em) {
      dialog.xlarge, .reveal-modal.xlarge {
        margin-left: -47.5%;
        width: 95%; } }
  dialog.full, .reveal-modal.full {
    top: 0;
    left: 0;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0 !important; }
    @media only screen and (min-width:40.063em) {
      dialog.full, .reveal-modal.full {
        margin-left: -50vw;
        width: 100vw; } } }

@media print {
  dialog, .reveal-modal {
    background: #fff !important; } }

.side-nav {
  display: block;
  margin: 0;
  padding: 0.875rem 0;
  list-style-type: none;
  list-style-position: inside;
  font-family: Tahoma, Helvetica, sans-serif; }
  .side-nav li {
    margin: 0 0 0.4375rem 0;
    font-size: 0.875rem; }
    .side-nav li a:not(.button), .side-nav li .itemds-fragment-edit:not(.button), .side-nav li .itemds-fragment-delete:not(.button), .side-nav li .itemds-fragment-resize:not(.button) {
      display: block;
      color: #f95602; }
      .side-nav li a:not(.button):hover, .side-nav li .itemds-fragment-edit:not(.button):hover, .side-nav li .itemds-fragment-delete:not(.button):hover, .side-nav li .itemds-fragment-resize:not(.button):hover, .side-nav li a:not(.button):focus, .side-nav li .itemds-fragment-edit:not(.button):focus, .side-nav li .itemds-fragment-delete:not(.button):focus, .side-nav li .itemds-fragment-resize:not(.button):focus {
        color: #fe874b; }
    .side-nav li.active > a:first-child:not(.button), .side-nav li.active > .itemds-fragment-edit:first-child:not(.button), .side-nav li.active > .itemds-fragment-delete:first-child:not(.button), .side-nav li.active > .itemds-fragment-resize:first-child:not(.button) {
      color: #fe874b;
      font-weight: normal;
      font-family: Tahoma, Helvetica, sans-serif; }
    .side-nav li.divider {
      border-top: 1px solid;
      height: 0;
      padding: 0;
      list-style: none;
      border-top-color: white; }

.split.button {
  position: relative;
  padding-right: 5.0625rem; }
  .split.button span {
    display: block;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    border-left: solid 1px; }
    .split.button span:before {
      position: absolute;
      content: "";
      width: 0;
      height: 0;
      display: block;
      border-style: inset;
      top: 50%;
      left: 50%; }
    .split.button span:active {
      background-color: rgba(0, 0, 0, 0.1); }
  .split.button span {
    border-left-color: rgba(255, 255, 255, 0.5); }
  .split.button span {
    width: 3.09375rem; }
    .split.button span:before {
      border-top-style: solid;
      border-width: 0.375rem;
      top: 48%;
      margin-left: -0.375rem; }
  .split.button span:before {
    border-color: #fff transparent transparent transparent; }
  .split.button.secondary span {
    border-left-color: rgba(255, 255, 255, 0.5); }
  .split.button.secondary span:before {
    border-color: #fff transparent transparent transparent; }
  .split.button.alert span, .split.button.alert .split.button.voucher-edit-action-cancel {
    border-left-color: rgba(255, 255, 255, 0.5); }
  .split.button.success span {
    border-left-color: rgba(255, 255, 255, 0.5); }
  .split.button.tiny {
    padding-right: 3.75rem; }
    .split.button.tiny span {
      width: 2.25rem; }
      .split.button.tiny span:before {
        border-top-style: solid;
        border-width: 0.375rem;
        top: 48%;
        margin-left: -0.375rem; }
  .split.button.small {
    padding-right: 4.375rem; }
    .split.button.small span {
      width: 2.625rem; }
      .split.button.small span:before {
        border-top-style: solid;
        border-width: 0.4375rem;
        top: 48%;
        margin-left: -0.375rem; }
  .split.button.large {
    padding-right: 5.5rem; }
    .split.button.large span {
      width: 3.4375rem; }
      .split.button.large span:before {
        border-top-style: solid;
        border-width: 0.3125rem;
        top: 48%;
        margin-left: -0.375rem; }
  .split.button.expand {
    padding-left: 2rem; }
  .split.button.secondary span:before {
    border-color: #333 transparent transparent transparent; }
  .split.button.radius span {
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }
  .split.button.round span {
    -moz-border-radius-bottomright: 1000px;
    -moz-border-radius-topright: 1000px;
    -webkit-border-bottom-right-radius: 1000px;
    -webkit-border-top-right-radius: 1000px;
    border-bottom-right-radius: 1000px;
    border-top-right-radius: 1000px; }

.sub-nav {
  display: block;
  width: auto;
  overflow: hidden;
  margin: -0.25rem 0 1.125rem;
  padding-top: 0.25rem;
  margin-right: 0;
  margin-left: -0.75rem; }
  .sub-nav dt {
    text-transform: uppercase; }
  .sub-nav dt, .sub-nav dd, .sub-nav li {
    float: left;
    display: inline;
    margin-left: 1rem;
    margin-bottom: 0.625rem;
    font-family: Tahoma, Helvetica, sans-serif;
    font-weight: normal;
    font-size: 0.875rem;
    color: #f95602; }
    .sub-nav dt a, .sub-nav dt .itemds-fragment-edit, .sub-nav dt .itemds-fragment-delete, .sub-nav dt .itemds-fragment-resize, .sub-nav dd a, .sub-nav dd .itemds-fragment-edit, .sub-nav dd .itemds-fragment-delete, .sub-nav dd .itemds-fragment-resize, .sub-nav li a, .sub-nav li .itemds-fragment-edit, .sub-nav li .itemds-fragment-delete, .sub-nav li .itemds-fragment-resize {
      text-decoration: none;
      color: #f95602;
      padding: 0.1875rem 1rem; }
      .sub-nav dt a:hover, .sub-nav dt .itemds-fragment-edit:hover, .sub-nav dt .itemds-fragment-delete:hover, .sub-nav dt .itemds-fragment-resize:hover, .sub-nav dd a:hover, .sub-nav dd .itemds-fragment-edit:hover, .sub-nav dd .itemds-fragment-delete:hover, .sub-nav dd .itemds-fragment-resize:hover, .sub-nav li a:hover, .sub-nav li .itemds-fragment-edit:hover, .sub-nav li .itemds-fragment-delete:hover, .sub-nav li .itemds-fragment-resize:hover {
        color: #bb3f01; }
    .sub-nav dt.active a, .sub-nav dt.active .itemds-fragment-edit, .sub-nav dt.active .itemds-fragment-delete, .sub-nav dt.active .itemds-fragment-resize, .sub-nav dd.active a, .sub-nav dd.active .itemds-fragment-edit, .sub-nav dd.active .itemds-fragment-delete, .sub-nav dd.active .itemds-fragment-resize, .sub-nav li.active a, .sub-nav li.active .itemds-fragment-edit, .sub-nav li.active .itemds-fragment-delete, .sub-nav li.active .itemds-fragment-resize {
      -webkit-border-radius: 3px;
      border-radius: 3px;
      font-weight: normal;
      background: #f95602;
      padding: 0.1875rem 1rem;
      cursor: default;
      color: #fff; }
      .sub-nav dt.active a:hover, .sub-nav dt.active .itemds-fragment-edit:hover, .sub-nav dt.active .itemds-fragment-delete:hover, .sub-nav dt.active .itemds-fragment-resize:hover, .sub-nav dd.active a:hover, .sub-nav dd.active .itemds-fragment-edit:hover, .sub-nav dd.active .itemds-fragment-delete:hover, .sub-nav dd.active .itemds-fragment-resize:hover, .sub-nav li.active a:hover, .sub-nav li.active .itemds-fragment-edit:hover, .sub-nav li.active .itemds-fragment-delete:hover, .sub-nav li.active .itemds-fragment-resize:hover {
        background: #d64902; }

div.switch {
  position: relative;
  padding: 0;
  display: block;
  overflow: hidden;
  border-style: solid;
  border-width: 1px;
  margin-bottom: 1.25rem;
  height: 2.25rem;
  background: #fff;
  border-color: #cccccc; }
  div.switch label {
    position: relative;
    left: 0;
    z-index: 2;
    float: left;
    width: 50%;
    height: 100%;
    margin: 0;
    font-weight: bold;
    text-align: left;
    -webkit-transition: all 0.1s ease-out;
    -moz-transition: all 0.1s ease-out;
    transition: all 0.1s ease-out; }
  div.switch input {
    position: absolute;
    z-index: 3;
    opacity: 0;
    width: 100%;
    height: 100%;
    -moz-appearance: none; }
    div.switch input:hover, div.switch input:focus {
      cursor: pointer; }
  div.switch span:last-child {
    position: absolute;
    top: -1px;
    left: -1px;
    z-index: 1;
    display: block;
    padding: 0;
    border-width: 1px;
    border-style: solid;
    -webkit-transition: all 0.1s ease-out;
    -moz-transition: all 0.1s ease-out;
    transition: all 0.1s ease-out; }
  div.switch input:not(:checked) + label {
    opacity: 0; }
  div.switch input:checked {
    display: none !important; }
  div.switch input {
    left: 0;
    display: block !important; }
  div.switch input:first-of-type + label, div.switch input:first-of-type + span + label {
    left: -50%; }
  div.switch input:first-of-type:checked + label, div.switch input:first-of-type:checked + span + label {
    left: 0%; }
  div.switch input:last-of-type + label, div.switch input:last-of-type + span + label {
    right: -50%;
    left: auto;
    text-align: right; }
  div.switch input:last-of-type:checked + label, div.switch input:last-of-type:checked + span + label {
    right: 0%;
    left: auto; }
  div.switch span.custom {
    display: none !important; }
  form.custom div.switch .hidden-field {
    margin-left: auto;
    position: absolute;
    visibility: visible; }
  div.switch label {
    padding: 0;
    line-height: 2.3rem;
    font-size: 0.875rem; }
  div.switch input:first-of-type:checked ~ span:last-child {
    left: 100%;
    margin-left: -2.1875rem; }
  div.switch span:last-child {
    width: 2.25rem;
    height: 2.25rem; }
  div.switch span:last-child {
    border-color: #b3b3b3;
    background: #fff;
    background: -moz-linear-gradient(top, #fff 0%, #f2f2f2 100%);
    background: -webkit-linear-gradient(top, #fff 0%, #f2f2f2 100%);
    background: linear-gradient(to bottom, #fff 0%, #f2f2f2 100%);
    -webkit-box-shadow: 2px 0 10px 0 rgba(0, 0, 0, 0.07), 1000px 0 0 1000px #f8fbf6, -2px 0 10px 0 rgba(0, 0, 0, 0.07), -1000px 0 0 1000px #f5f5f5;
    box-shadow: 2px 0 10px 0 rgba(0, 0, 0, 0.07), 1000px 0 0 980px #f8fbf6, -2px 0 10px 0 rgba(0, 0, 0, 0.07), -1000px 0 0 1000px #f5f5f5; }
  div.switch:hover span:last-child, div.switch:focus span:last-child {
    background: #fff;
    background: -moz-linear-gradient(top, #fff 0%, #e6e6e6 100%);
    background: -webkit-linear-gradient(top, #fff 0%, #e6e6e6 100%);
    background: linear-gradient(to bottom, #fff 0%, #e6e6e6 100%); }
  div.switch:active {
    background: transparent; }
  div.switch.large {
    height: 2.75rem; }
    div.switch.large label {
      padding: 0;
      line-height: 2.3rem;
      font-size: 1.0625rem; }
    div.switch.large input:first-of-type:checked ~ span:last-child {
      left: 100%;
      margin-left: -2.6875rem; }
    div.switch.large span:last-child {
      width: 2.75rem;
      height: 2.75rem; }
  div.switch.small {
    height: 1.75rem; }
    div.switch.small label {
      padding: 0;
      line-height: 2.1rem;
      font-size: 0.75rem; }
    div.switch.small input:first-of-type:checked ~ span:last-child {
      left: 100%;
      margin-left: -1.6875rem; }
    div.switch.small span:last-child {
      width: 1.75rem;
      height: 1.75rem; }
  div.switch.tiny {
    height: 1.375rem; }
    div.switch.tiny label {
      padding: 0;
      line-height: 1.9rem;
      font-size: 0.6875rem; }
    div.switch.tiny input:first-of-type:checked ~ span:last-child {
      left: 100%;
      margin-left: -1.3125rem; }
    div.switch.tiny span:last-child {
      width: 1.375rem;
      height: 1.375rem; }
  div.switch.radius {
    -webkit-border-radius: 4px;
    border-radius: 4px; }
    div.switch.radius span:last-child {
      -webkit-border-radius: 3px;
      border-radius: 3px; }
  div.switch.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
    div.switch.round span:last-child {
      -webkit-border-radius: 999px;
      border-radius: 999px; }
    div.switch.round label {
      padding: 0 0.5625rem; }

@-webkit-keyframes webkitSiblingBugfix {
  from {
    position: relative; }

  to {
    position: relative; } }

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

.tabs {
  *zoom: 1;
  margin-bottom: 0 !important; }
  .tabs:before, .tabs:after {
    content: " ";
    display: table; }
  .tabs:after {
    clear: both; }
  .tabs dd {
    position: relative;
    margin-bottom: 0 !important;
    float: left; }
    .tabs dd > a, .tabs dd > .itemds-fragment-edit, .tabs dd > .itemds-fragment-delete, .tabs dd > .itemds-fragment-resize {
      display: block;
      background: #efefef;
      color: #222;
      padding: 1rem 2rem;
      font-family: Tahoma, Helvetica, sans-serif;
      font-size: 1rem; }
      .tabs dd > a:hover, .tabs dd > .itemds-fragment-edit:hover, .tabs dd > .itemds-fragment-delete:hover, .tabs dd > .itemds-fragment-resize:hover {
        background: #e1e1e1; }
    .tabs dd.active a, .tabs dd.active .itemds-fragment-edit, .tabs dd.active .itemds-fragment-delete, .tabs dd.active .itemds-fragment-resize {
      background: #fff; }
  .tabs.radius dd:first-child a, .tabs.radius dd:first-child .itemds-fragment-edit, .tabs.radius dd:first-child .itemds-fragment-delete, .tabs.radius dd:first-child .itemds-fragment-resize {
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    -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 dd:last-child .itemds-fragment-edit, .tabs.radius dd:last-child .itemds-fragment-delete, .tabs.radius dd:last-child .itemds-fragment-resize {
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    -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 {
    position: inherit;
    float: none;
    display: block;
    top: auto; }

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

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

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

/* Image Thumbnails */
.th, .itemds-image, .itemds-colorswatch, .itemds-textalign, .itemds-clipart-icon {
  line-height: 0;
  display: inline-block;
  border: solid 4px #fff;
  max-width: 100%;
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 200ms ease-out;
  -moz-transition: all 200ms ease-out;
  transition: all 200ms ease-out; }
  .th:hover, .itemds-image:hover, .itemds-colorswatch:hover, .itemds-textalign:hover, .itemds-clipart-icon:hover, .th:focus, .itemds-fragment-maintain-active, .itemds-image:focus, .itemds-colorswatch:focus, .itemds-colorswatch-selected, .itemds-image-selected, .itemds-textalign:focus, .itemds-textalign-selected, .itemds-clipart-icon:focus {
    -webkit-box-shadow: 0 0 6px 1px rgba(249, 86, 2, 0.5);
    box-shadow: 0 0 6px 1px rgba(249, 86, 2, 0.5); }
  .th.radius, .radius.itemds-image, .radius.itemds-colorswatch, .radius.itemds-textalign, .radius.itemds-clipart-icon {
    -webkit-border-radius: 3px;
    border-radius: 3px; }

/* Tooltips */
.has-tip {
  border-bottom: dotted 1px #ccc;
  cursor: help;
  font-weight: bold;
  color: #333; }
  .has-tip:hover, .has-tip:focus {
    border-bottom: dotted 1px #702601;
    color: #f95602; }
  .has-tip.tip-left, .has-tip.tip-right {
    float: none !important; }

.tooltip {
  display: none;
  position: absolute;
  z-index: 999;
  font-weight: normal;
  font-size: 0.875rem;
  line-height: 1.3;
  padding: 0.75rem;
  max-width: 85%;
  left: 50%;
  width: 100%;
  color: #fff;
  background: #333; }
  .tooltip > .nub {
    display: block;
    left: 5px;
    position: absolute;
    width: 0;
    height: 0;
    border: solid 5px;
    border-color: transparent transparent #333 transparent;
    top: -10px; }
    .tooltip > .nub.rtl {
      left: auto;
      right: 5px; }
  .tooltip.radius {
    -webkit-border-radius: 3px;
    border-radius: 3px; }
  .tooltip.round {
    -webkit-border-radius: 1000px;
    border-radius: 1000px; }
    .tooltip.round > .nub {
      left: 2rem; }
  .tooltip.opened {
    color: #f95602 !important;
    border-bottom: dotted 1px #702601 !important; }

.tap-to-close {
  display: block;
  font-size: 0.625rem;
  color: #777;
  font-weight: normal; }

@media only screen and (min-width:40.063em) {
  .tooltip > .nub {
    border-color: transparent transparent #333 transparent;
    top: -10px; }
  .tooltip.tip-top > .nub {
    border-color: #333 transparent transparent transparent;
    top: auto;
    bottom: -10px; }
  .tooltip.tip-left, .tooltip.tip-right {
    float: none !important; }
  .tooltip.tip-left > .nub {
    border-color: transparent transparent transparent #333;
    right: -10px;
    left: auto;
    top: 50%;
    margin-top: -5px; }
  .tooltip.tip-right > .nub {
    border-color: transparent #333 transparent transparent;
    right: auto;
    left: -10px;
    top: 50%;
    margin-top: -5px; } }

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

/* Wrapped around .top-bar to contain to grid width */
.contain-to-grid {
  width: 100%;
  background: #141414; }
  .contain-to-grid .top-bar {
    margin-bottom: 0.9375rem; }

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

.top-bar {
  overflow: hidden;
  height: 30px;
  line-height: 30px;
  position: relative;
  background: #141414;
  margin-bottom: 0.9375rem; }
  .top-bar ul {
    margin-bottom: 0;
    list-style: none; }
  .top-bar .row {
    max-width: none; }
  .top-bar form, .top-bar input {
    margin-bottom: 0; }
  .top-bar input {
    height: auto;
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
    font-size: 0.75rem; }
  .top-bar .button {
    padding-top: 0.45rem;
    padding-bottom: 0.35rem;
    margin-bottom: 0;
    font-size: 0.75rem; }
  .top-bar .title-area {
    position: relative;
    margin: 0; }
  .top-bar .name {
    height: 30px;
    margin: 0;
    font-size: 16px; }
    .top-bar .name h1 {
      line-height: 30px;
      font-size: 1.0625rem;
      margin: 0; }
      .top-bar .name h1 a, .top-bar .name h1 .itemds-fragment-edit, .top-bar .name h1 .itemds-fragment-delete, .top-bar .name h1 .itemds-fragment-resize {
        font-weight: bold;
        color: #fff;
        width: 50%;
        display: block;
        padding: 0 0px 0.9375rem; }
  .top-bar .toggle-topbar {
    position: absolute;
    right: 0;
    top: 0; }
    .top-bar .toggle-topbar a, .top-bar .toggle-topbar .itemds-fragment-edit, .top-bar .toggle-topbar .itemds-fragment-delete, .top-bar .toggle-topbar .itemds-fragment-resize {
      color: #fff;
      text-transform: uppercase;
      font-size: 0.8125rem;
      font-weight: bold;
      position: relative;
      display: block;
      padding: 0 0px 0.9375rem;
      height: 30px;
      line-height: 30px; }
    .top-bar .toggle-topbar.menu-icon {
      right: 0px 0.9375rem;
      top: 50%;
      margin-top: -16px;
      padding-left: 40px; }
      .top-bar .toggle-topbar.menu-icon a, .top-bar .toggle-topbar.menu-icon .itemds-fragment-edit, .top-bar .toggle-topbar.menu-icon .itemds-fragment-delete, .top-bar .toggle-topbar.menu-icon .itemds-fragment-resize {
        height: 34px;
        line-height: 33px;
        padding: 0;
        padding-right: 25px;
        color: #fff;
        position: relative; }
        .top-bar .toggle-topbar.menu-icon a::after, .top-bar .toggle-topbar.menu-icon .itemds-fragment-edit::after, .top-bar .toggle-topbar.menu-icon .itemds-fragment-delete::after, .top-bar .toggle-topbar.menu-icon .itemds-fragment-resize::after {
          content: "";
          position: absolute;
          right: 0;
          display: block;
          width: 16px;
          top: 0;
          height: 0;
          -webkit-box-shadow: 1px 10px 1px 1px #fff, 1px 16px 1px 1px #fff, 1px 22px 1px 1px #fff;
          box-shadow: 0 10px 0 1px #fff, 0 16px 0 1px #fff, 0 22px 0 1px #fff; }
  .top-bar.expanded {
    height: auto;
    background: transparent; }
    .top-bar.expanded .title-area {
      background: #141414; }
    .top-bar.expanded .toggle-topbar a, .top-bar.expanded .toggle-topbar .itemds-fragment-edit, .top-bar.expanded .toggle-topbar .itemds-fragment-delete, .top-bar.expanded .toggle-topbar .itemds-fragment-resize {
      color: #fff; }
      .top-bar.expanded .toggle-topbar a::after, .top-bar.expanded .toggle-topbar .itemds-fragment-edit::after, .top-bar.expanded .toggle-topbar .itemds-fragment-delete::after, .top-bar.expanded .toggle-topbar .itemds-fragment-resize::after {
        -webkit-box-shadow: 1px 10px 1px 1px #fff, 1px 16px 1px 1px #fff, 1px 22px 1px 1px #fff;
        box-shadow: 0 10px 0 1px #fff, 0 16px 0 1px #fff, 0 22px 0 1px #fff; }

.top-bar-section {
  left: 0;
  position: relative;
  width: auto;
  -webkit-transition: left 300ms ease-out;
  -moz-transition: left 300ms ease-out;
  transition: left 300ms ease-out; }
  .top-bar-section ul {
    width: 100%;
    height: auto;
    display: block;
    background: #141414;
    font-size: 16px;
    margin: 0; }
  .top-bar-section .divider, .top-bar-section [role="separator"] {
    border-top: solid 1px #1a1a1a;
    clear: both;
    height: 1px;
    width: 100%; }
  .top-bar-section ul li > a, .top-bar-section ul li > .itemds-fragment-edit, .top-bar-section ul li > .itemds-fragment-delete, .top-bar-section ul li > .itemds-fragment-resize {
    display: block;
    width: 100%;
    color: #fff;
    padding: 12px 0 12px 0;
    padding-left: 0px 0.9375rem;
    font-family: Tahoma, Helvetica, sans-serif;
    font-size: 0.8125rem;
    font-weight: bold;
    text-transform: none;
    background: #141414; }
    .top-bar-section ul li > a.button, .top-bar-section ul li > .button.itemds-fragment-edit, .top-bar-section ul li > .button.itemds-fragment-delete, .top-bar-section ul li > .button.itemds-fragment-resize {
      background: #f95602;
      font-size: 0.8125rem;
      padding-right: 0px 0.9375rem;
      padding-left: 0px 0.9375rem; }
      .top-bar-section ul li > a.button:hover, .top-bar-section ul li > .button.itemds-fragment-edit:hover, .top-bar-section ul li > .button.itemds-fragment-delete:hover, .top-bar-section ul li > .button.itemds-fragment-resize:hover {
        background: #b63e01; }
    .top-bar-section ul li > a.button.secondary, .top-bar-section ul li > .button.secondary.itemds-fragment-edit, .top-bar-section ul li > .button.secondary.itemds-fragment-delete, .top-bar-section ul li > .button.secondary.itemds-fragment-resize {
      background: #a79a93; }
      .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > .button.secondary.itemds-fragment-edit:hover, .top-bar-section ul li > .button.secondary.itemds-fragment-delete:hover, .top-bar-section ul li > .button.secondary.itemds-fragment-resize:hover {
        background: #978880; }
    .top-bar-section ul li > a.button.success, .top-bar-section ul li > .button.success.itemds-fragment-edit, .top-bar-section ul li > .button.success.itemds-fragment-delete, .top-bar-section ul li > .button.success.itemds-fragment-resize {
      background: #88b564; }
      .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > .button.success.itemds-fragment-edit:hover, .top-bar-section ul li > .button.success.itemds-fragment-delete:hover, .top-bar-section ul li > .button.success.itemds-fragment-resize:hover {
        background: #6b9648; }
    .top-bar-section ul li > a.button.alert, .top-bar-section ul li > .button.alert.itemds-fragment-edit, .top-bar-section ul li > .button.itemds-fragment-edit.voucher-edit-action-cancel, .top-bar-section ul li > .button.alert.itemds-fragment-delete, .top-bar-section ul li > .button.itemds-fragment-delete.voucher-edit-action-cancel, .top-bar-section ul li > .button.alert.itemds-fragment-resize, .top-bar-section ul li > .button.itemds-fragment-resize.voucher-edit-action-cancel, .top-bar-section ul li > a.button.voucher-edit-action-cancel, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-edit, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-delete, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-resize {
      background: #ed6f6f; }
      .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > .button.alert.itemds-fragment-edit:hover, .top-bar-section ul li > .button.itemds-fragment-edit.voucher-edit-action-cancel:hover, .top-bar-section ul li > .button.alert.itemds-fragment-delete:hover, .top-bar-section ul li > .button.itemds-fragment-delete.voucher-edit-action-cancel:hover, .top-bar-section ul li > .button.alert.itemds-fragment-resize:hover, .top-bar-section ul li > .button.itemds-fragment-resize.voucher-edit-action-cancel:hover, .top-bar-section ul li > a.button.voucher-edit-action-cancel:hover, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-edit:hover, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-delete:hover, .top-bar-section ul li > .button.voucher-edit-action-cancel.itemds-fragment-resize:hover {
        background: #e63737; }
  .top-bar-section ul li:hover:not(.has-form) > a, .top-bar-section ul li:hover:not(.has-form) > .itemds-fragment-edit, .top-bar-section ul li:hover:not(.has-form) > .itemds-fragment-delete, .top-bar-section ul li:hover:not(.has-form) > .itemds-fragment-resize {
    background: url(images/menugradient2.png) top #f95602;
    color: #fff; }
  .top-bar-section ul li.active > a, .top-bar-section ul li.active > .itemds-fragment-edit, .top-bar-section ul li.active > .itemds-fragment-delete, .top-bar-section ul li.active > .itemds-fragment-resize {
    background: url(images/menugradient2.png) top #f95602;
    color: #fff; }
    .top-bar-section ul li.active > a:hover, .top-bar-section ul li.active > .itemds-fragment-edit:hover, .top-bar-section ul li.active > .itemds-fragment-delete:hover, .top-bar-section ul li.active > .itemds-fragment-resize:hover {
      background: url(images/menugradient2.png) top #f95602;
      color: #fff; }
  .top-bar-section .has-form {
    padding: 0px 0.9375rem; }
  .top-bar-section .has-dropdown {
    position: relative; }
    .top-bar-section .has-dropdown > a:after, .top-bar-section .has-dropdown > .itemds-fragment-edit:after, .top-bar-section .has-dropdown > .itemds-fragment-delete:after, .top-bar-section .has-dropdown > .itemds-fragment-resize:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 5px;
      border-color: transparent transparent transparent rgba(255, 255, 255, 0.5);
      border-left-style: solid;
      margin-right: 0px 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, .top-bar-section .has-dropdown.moved > .itemds-fragment-edit:after, .top-bar-section .has-dropdown.moved > .itemds-fragment-delete:after, .top-bar-section .has-dropdown.moved > .itemds-fragment-resize:after {
        display: none; }
  .top-bar-section .dropdown {
    position: absolute;
    left: 100%;
    top: 0;
    z-index: 99;
    display: block;
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
    .top-bar-section .dropdown li {
      width: 100%;
      height: auto; }
      .top-bar-section .dropdown li a, .top-bar-section .dropdown li .itemds-fragment-edit, .top-bar-section .dropdown li .itemds-fragment-delete, .top-bar-section .dropdown li .itemds-fragment-resize {
        font-weight: normal;
        padding: 8px 0px 0.9375rem; }
        .top-bar-section .dropdown li a.parent-link, .top-bar-section .dropdown li .parent-link.itemds-fragment-edit, .top-bar-section .dropdown li .parent-link.itemds-fragment-delete, .top-bar-section .dropdown li .parent-link.itemds-fragment-resize {
          font-weight: bold; }
      .top-bar-section .dropdown li.title h5 {
        margin-bottom: 0; }
        .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown li.title h5 .itemds-fragment-edit, .top-bar-section .dropdown li.title h5 .itemds-fragment-delete, .top-bar-section .dropdown li.title h5 .itemds-fragment-resize {
          color: #fff;
          line-height: 15px;
          display: block; }
      .top-bar-section .dropdown li.has-form {
        padding: 8px 0px 0.9375rem; }
      .top-bar-section .dropdown li .button {
        top: auto; }
    .top-bar-section .dropdown label {
      padding: 8px 0px 0.9375rem 2px;
      margin-bottom: 0;
      text-transform: uppercase;
      color: #555;
      font-weight: bold;
      font-size: 0.625rem; }

.js-generated {
  display: block; }

@media only screen and (min-width:40.063em) {
  .top-bar {
    background: #141414;
    *zoom: 1;
    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 h1 .itemds-fragment-edit, .top-bar .name h1 .itemds-fragment-delete, .top-bar .name h1 .itemds-fragment-resize {
      width: auto; }
    .top-bar input, .top-bar .button {
      font-size: 0.875rem;
      position: relative;
      top: 7px; }
    .top-bar.expanded {
      background: #141414; }
  .contain-to-grid .top-bar {
    max-width: 62.5rem;
    margin: 0 auto;
    margin-bottom: 0.9375rem; }
  .top-bar-section {
    -webkit-transition: none 0 0;
    -moz-transition: none 0 0;
    transition: none 0 0;
    left: 0 !important; }
    .top-bar-section ul {
      width: auto;
      height: auto !important;
      display: inline; }
      .top-bar-section ul li {
        float: left; }
        .top-bar-section ul li .js-generated {
          display: none; }
    .top-bar-section li.hover > a:not(.button), .top-bar-section li.hover > .itemds-fragment-edit:not(.button), .top-bar-section li.hover > .itemds-fragment-delete:not(.button), .top-bar-section li.hover > .itemds-fragment-resize:not(.button) {
      background: url(images/menugradient2.png) top #f95602;
      color: #fff; }
    .top-bar-section li:not(.has-form) a:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-edit:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-delete:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-resize:not(.button) {
      padding: 0 0px 0.9375rem;
      line-height: 30px;
      background: #141414; }
      .top-bar-section li:not(.has-form) a:not(.button):hover, .top-bar-section li:not(.has-form) .itemds-fragment-edit:not(.button):hover, .top-bar-section li:not(.has-form) .itemds-fragment-delete:not(.button):hover, .top-bar-section li:not(.has-form) .itemds-fragment-resize:not(.button):hover {
        background: url(images/menugradient2.png) top #f95602; }
    .top-bar-section li.active:not(.has-form) a:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-edit:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-delete:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-resize:not(.button) {
      padding: 0 0px 0.9375rem;
      line-height: 30px;
      color: #fff;
      background: url(images/menugradient2.png) top #f95602; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover, .top-bar-section li.active:not(.has-form) .itemds-fragment-edit:not(.button):hover, .top-bar-section li.active:not(.has-form) .itemds-fragment-delete:not(.button):hover, .top-bar-section li.active:not(.has-form) .itemds-fragment-resize:not(.button):hover {
        background: url(images/menugradient2.png) top #f95602; }
    .top-bar-section .has-dropdown > a, .top-bar-section .has-dropdown > .itemds-fragment-edit, .top-bar-section .has-dropdown > .itemds-fragment-delete, .top-bar-section .has-dropdown > .itemds-fragment-resize {
      padding-right: 0px 0.9375rem20 !important; }
      .top-bar-section .has-dropdown > a:after, .top-bar-section .has-dropdown > .itemds-fragment-edit:after, .top-bar-section .has-dropdown > .itemds-fragment-delete:after, .top-bar-section .has-dropdown > .itemds-fragment-resize:after {
        content: "";
        display: block;
        width: 0;
        height: 0;
        border: inset 5px;
        border-color: rgba(255, 255, 255, 0.5) transparent transparent transparent;
        border-top-style: solid;
        margin-top: -2.5px;
        top: 15px; }
    .top-bar-section .has-dropdown.moved {
      position: relative; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        display: block;
        position: absolute !important;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 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 .dropdown li.has-dropdown > a:after, .top-bar-section .has-dropdown .dropdown li.has-dropdown > .itemds-fragment-edit:after, .top-bar-section .has-dropdown .dropdown li.has-dropdown > .itemds-fragment-delete:after, .top-bar-section .has-dropdown .dropdown li.has-dropdown > .itemds-fragment-resize:after {
      border: none;
      content: "\00bb";
      top: 1rem;
      margin-top: -1px;
      right: 5px;
      line-height: 1.2; }
    .top-bar-section .dropdown {
      left: 0;
      top: auto;
      background: transparent;
      min-width: 100%; }
      .top-bar-section .dropdown li a, .top-bar-section .dropdown li .itemds-fragment-edit, .top-bar-section .dropdown li .itemds-fragment-delete, .top-bar-section .dropdown li .itemds-fragment-resize {
        color: white;
        line-height: 1;
        white-space: nowrap;
        padding: 12px 0px 0.9375rem;
        background: #141414; }
      .top-bar-section .dropdown li label {
        white-space: nowrap;
        background: #333; }
      .top-bar-section .dropdown li .dropdown {
        left: 100%;
        top: 0; }
    .top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] {
      border-bottom: none;
      border-top: none;
      border-right: solid 1px #4e4e4e;
      clear: none;
      height: 30px;
      width: 0; }
    .top-bar-section .has-form {
      background: #141414;
      padding: 0 10px;
      height: 30px; }
    .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, .no-js .top-bar-section ul li:hover > .itemds-fragment-edit, .no-js .top-bar-section ul li:hover > .itemds-fragment-delete, .no-js .top-bar-section ul li:hover > .itemds-fragment-resize {
    background: url(images/menugradient2.png) top #f95602;
    color: #fff; }
  .no-js .top-bar-section ul li:active > a, .no-js .top-bar-section ul li:active > .itemds-fragment-edit, .no-js .top-bar-section ul li:active > .itemds-fragment-delete, .no-js .top-bar-section ul li:active > .itemds-fragment-resize {
    background: url(images/menugradient2.png) top #f95602;
    color: #fff; }
  .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; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width:120.063em) {
  .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; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width:120.063em) {
  .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, .itemds-fragment-edit, .itemds-fragment-delete, .itemds-fragment-resize {
  color: #f95602;
  text-decoration: none;
  line-height: inherit; }
  a:hover, .itemds-fragment-edit:hover, .itemds-fragment-delete:hover, .itemds-fragment-resize:hover, a:focus, .itemds-fragment-edit:focus, .itemds-fragment-delete:focus, .itemds-fragment-resize:focus {
    color: #e04c02; }
  a img, a .itemds-fragment-edit, a .itemds-fragment-delete, a .itemds-fragment-resize {
    border: none; }

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

/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  font-family: "Bitter", serif;
  font-weight: bold;
  font-style: normal;
  color: #f95602;
  text-rendering: optimizeLegibility;
  margin-top: 0.2em;
  margin-bottom: 0.5em;
  line-height: 1.4; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    font-size: 70%;
    color: #feb996;
    line-height: 0; }

h1 {
  font-size: 2.125rem; }

h2 {
  font-size: 1.6875rem; }

h3 {
  font-size: 1.375rem; }

h4 {
  font-size: 1.125rem; }

h5 {
  font-size: 1.125rem; }

h6 {
  font-size: 1em; }

.subheader {
  line-height: 1.4;
  color: #a79a93;
  font-weight: 300;
  margin-top: 0.2em;
  margin-bottom: 0.5em; }

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

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

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

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

code {
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: bold;
  color: #e52b2b; }

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

ul {
  margin-left: 1.125rem; }
  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.125rem; }
ul.circle {
  list-style-type: circle;
  margin-left: 1.125rem; }
ul.disc {
  list-style-type: disc;
  margin-left: 1.125rem; }
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.3em;
  font-weight: bold; }
dl dd {
  margin-bottom: 0.75rem; }

/* Abbreviations */
abbr, acronym {
  text-transform: uppercase;
  font-size: 90%;
  color: #141414;
  border-bottom: 1px dotted #dddddd;
  cursor: help; }

abbr {
  text-transform: none; }

/* 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: #fe9763; }
    blockquote cite:before {
      content: "\2014 \0020"; }
    blockquote cite a, blockquote cite .itemds-fragment-edit, blockquote cite .itemds-fragment-delete, blockquote cite .itemds-fragment-resize, blockquote cite a:visited, blockquote cite .itemds-fragment-edit:visited, blockquote cite .itemds-fragment-delete:visited, blockquote cite .itemds-fragment-resize:visited {
      color: #fe9763; }

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

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

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

@media only screen and (min-width:40.063em) {
  h1, h2, h3, h4, h5, h6 {
    line-height: 1.4; }
  h1 {
    font-size: 2.75rem; }
  h2 {
    font-size: 2.3125rem; }
  h3 {
    font-size: 1.6875rem; }
  h4 {
    font-size: 1.4375rem; } }

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

@media print {
  @page {
    margin: 0.5cm; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width:120.063em) {
  .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; } }

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

.inner-wrap {
  -webkit-backface-visibility: hidden;
  position: relative;
  width: 100%;
  *zoom: 1;
  -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: #333;
  color: #fff;
  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: #fff;
    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 {
  width: 2.8125rem;
  height: 2.8125rem;
  position: absolute;
  top: 0;
  border-right: solid 1px #1a1a1a;
  left: 0; }

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

.tab-bar-section {
  padding: 0 0.625rem;
  position: absolute;
  text-align: center;
  height: 2.8125rem;
  top: 0; }
  @media only screen and (min-width:40.063em) {
    .tab-bar-section {
      text-align: left; } }
  .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 {
  text-indent: 2.1875rem;
  width: 2.8125rem;
  height: 2.8125rem;
  display: block;
  line-height: 2.0625rem;
  padding: 0;
  color: #fff;
  position: relative; }
  .tab-bar .menu-icon span {
    position: absolute;
    display: block;
    height: 0;
    width: 1rem;
    top: 0.9375rem;
    left: 0.90625rem;
    -webkit-box-shadow: 1px 0px 1px 1px #FFF, 1px 7px 1px 1px #FFF, 1px 14px 1px 1px #FFF;
    box-shadow: 0 0px 0 1px #FFF, 0 7px 0 1px #FFF, 0 14px 0 1px #FFF; }
  .tab-bar .menu-icon:hover span {
    -webkit-box-shadow: 1px 0px 1px 1px #b3b3b3, 1px 7px 1px 1px #b3b3b3, 1px 14px 1px 1px #b3b3b3;
    box-shadow: 0 0px 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3; }

.left-off-canvas-menu {
  -webkit-backface-visibility: hidden;
  width: 15.625rem;
  top: 0;
  bottom: 0;
  position: absolute;
  overflow-y: auto;
  background: #333;
  z-index: 1001;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 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;
  width: 15.625rem;
  top: 0;
  bottom: 0;
  position: absolute;
  overflow-y: auto;
  background: #333;
  z-index: 1001;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 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;
  padding: 0;
  margin: 0; }
  ul.off-canvas-list li label {
    padding: 0.3rem 0.9375rem;
    color: #999;
    text-transform: uppercase;
    font-weight: bold;
    background: #444;
    border-top: 1px solid #5e5e5e;
    border-bottom: none;
    margin: 0; }
  ul.off-canvas-list li a, ul.off-canvas-list li .itemds-fragment-edit, ul.off-canvas-list li .itemds-fragment-delete, ul.off-canvas-list li .itemds-fragment-resize {
    display: block;
    padding: 0.66667rem;
    color: rgba(255, 255, 255, 0.7);
    border-bottom: 1px solid #262626;
    transition: background 300ms ease; }
    ul.off-canvas-list li a:hover, ul.off-canvas-list li .itemds-fragment-edit:hover, ul.off-canvas-list li .itemds-fragment-delete:hover, ul.off-canvas-list li .itemds-fragment-resize:hover {
      background: #242424; }

.move-right > .inner-wrap {
  -webkit-transform: translate3d(15.625rem, 0, 0);
  -moz-transform: translate3d(15.625rem, 0, 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;
  transition: background 300ms ease;
  cursor: pointer;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  display: block;
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1002;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  @media only screen and (min-width:40.063em) {
    .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: 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;
  transition: background 300ms ease;
  cursor: pointer;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  display: block;
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1002;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  @media only screen and (min-width:40.063em) {
    .move-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.csstransforms.no-csstransforms3d .left-off-canvas-menu {
  -webkit-transform: translate(-100%, 0);
  -moz-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  -o-transform: translate(-100%, 0);
  transform: translate(-100%, 0); }
.csstransforms.no-csstransforms3d .right-off-canvas-menu {
  -webkit-transform: translate(100%, 0);
  -moz-transform: translate(100%, 0);
  -ms-transform: translate(100%, 0);
  -o-transform: translate(100%, 0);
  transform: translate(100%, 0); }
.csstransforms.no-csstransforms3d .move-left > .inner-wrap {
  -webkit-transform: translate(-15.625rem, 0);
  -moz-transform: translate(-15.625rem, 0);
  -ms-transform: translate(-15.625rem, 0);
  -o-transform: translate(-15.625rem, 0);
  transform: translate(-15.625rem, 0); }
.csstransforms.no-csstransforms3d .move-right > .inner-wrap {
  -webkit-transform: translate(15.625rem, 0);
  -moz-transform: translate(15.625rem, 0);
  -ms-transform: translate(15.625rem, 0);
  -o-transform: translate(15.625rem, 0);
  transform: translate(15.625rem, 0); }

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

/* small displays */
@media only screen {
  .show-for-small-only, .show-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .hide-for-small-only, .hide-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  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; }
  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 !important; }
  th.show-for-small-only, td.show-for-small-only, th.show-for-small-up, td.show-for-small-up, th.show-for-small, td.show-for-small, th.show-for-small-down, td.show-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.hide-for-medium-up, td.hide-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* medium displays */
@media only screen and (min-width:40.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.show-for-medium-only, td.show-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.show-for-medium, td.show-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* large displays */
@media only screen and (min-width:64.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.show-for-large-only, td.show-for-large-only, th.show-for-large-up, td.show-for-large-up, th.show-for-large, td.show-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xlarge displays */
@media only screen and (min-width:90.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.show-for-xlarge-only, td.show-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.show-for-xlarge, td.show-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xxlarge displays */
@media only screen and (min-width:120.063em) {
  .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; }
  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; }
  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 !important; }
  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; }

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

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

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

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

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

@media only screen and (orientation: portrait) {
  /* Specific visibility for tables */
  .show-for-portrait, .hide-for-landscape {
    display: inherit !important; }
  .hide-for-portrait, .show-for-landscape {
    display: none !important; }
  table.show-for-portrait, table.hide-for-landscape {
    display: table; }
  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; }

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

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

.flex-row {
  display: flex; }

.flex-cell {
  flex: 1; }

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

/* libraries */
/*!
 * Ladda
 * http://lab.hakim.se/ladda
 * MIT licensed
 *
 * Copyright (C) 2015 Hakim El Hattab, http://hakim.se
 */
/*************************************
 * CONFIG
 */
/*************************************
 * MIXINS
 */
/*************************************
 * BUTTON BASE
 */
.ladda-button {
  position: relative; }

/* Spinner animation */
.ladda-button .ladda-spinner {
  position: absolute;
  z-index: 2;
  display: inline-block;
  width: 32px;
  height: 32px;
  top: 50%;
  margin-top: 0;
  opacity: 0;
  pointer-events: none; }

/* Button label */
.ladda-button .ladda-label {
  position: relative;
  z-index: 3; }

/* Progress bar */
.ladda-button .ladda-progress {
  position: absolute;
  width: 0;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.2);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.1s linear all !important;
  -moz-transition: 0.1s linear all !important;
  -ms-transition: 0.1s linear all !important;
  -o-transition: 0.1s linear all !important;
  transition: 0.1s linear all !important; }

.ladda-button[data-loading] .ladda-progress {
  opacity: 1;
  visibility: visible; }

/*************************************
 * EASING
 */
.ladda-button, .ladda-button .ladda-spinner, .ladda-button .ladda-label {
  -webkit-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;
  -moz-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;
  -ms-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;
  -o-transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important;
  transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) all !important; }

.ladda-button[data-style=zoom-in], .ladda-button[data-style=zoom-in] .ladda-spinner, .ladda-button[data-style=zoom-in] .ladda-label, .ladda-button[data-style=zoom-out], .ladda-button[data-style=zoom-out] .ladda-spinner, .ladda-button[data-style=zoom-out] .ladda-label {
  -webkit-transition: 0.3s ease all !important;
  -moz-transition: 0.3s ease all !important;
  -ms-transition: 0.3s ease all !important;
  -o-transition: 0.3s ease all !important;
  transition: 0.3s ease all !important; }

/*************************************
 * EXPAND LEFT
 */
.ladda-button[data-style=expand-right] .ladda-spinner {
  right: -6px; }
.ladda-button[data-style=expand-right][data-size="s"] .ladda-spinner, .ladda-button[data-style=expand-right][data-size="xs"] .ladda-spinner {
  right: -12px; }
.ladda-button[data-style=expand-right][data-loading] {
  padding-right: 56px; }
  .ladda-button[data-style=expand-right][data-loading] .ladda-spinner {
    opacity: 1; }
  .ladda-button[data-style=expand-right][data-loading][data-size="s"], .ladda-button[data-style=expand-right][data-loading][data-size="xs"] {
    padding-right: 40px; }

/*************************************
 * EXPAND RIGHT
 */
.ladda-button[data-style=expand-left] .ladda-spinner {
  left: 26px; }
.ladda-button[data-style=expand-left][data-size="s"] .ladda-spinner, .ladda-button[data-style=expand-left][data-size="xs"] .ladda-spinner {
  left: 4px; }
.ladda-button[data-style=expand-left][data-loading] {
  padding-left: 56px; }
  .ladda-button[data-style=expand-left][data-loading] .ladda-spinner {
    opacity: 1; }
  .ladda-button[data-style=expand-left][data-loading][data-size="s"], .ladda-button[data-style=expand-left][data-loading][data-size="xs"] {
    padding-left: 40px; }

/*************************************
 * EXPAND UP
 */
.ladda-button[data-style=expand-up] {
  overflow: hidden; }
  .ladda-button[data-style=expand-up] .ladda-spinner {
    top: -32px;
    left: 50%;
    margin-left: 0; }
  .ladda-button[data-style=expand-up][data-loading] {
    padding-top: 54px; }
    .ladda-button[data-style=expand-up][data-loading] .ladda-spinner {
      opacity: 1;
      top: 26px;
      margin-top: 0; }
    .ladda-button[data-style=expand-up][data-loading][data-size="s"], .ladda-button[data-style=expand-up][data-loading][data-size="xs"] {
      padding-top: 32px; }
      .ladda-button[data-style=expand-up][data-loading][data-size="s"] .ladda-spinner, .ladda-button[data-style=expand-up][data-loading][data-size="xs"] .ladda-spinner {
        top: 4px; }

/*************************************
 * EXPAND DOWN
 */
.ladda-button[data-style=expand-down] {
  overflow: hidden; }
  .ladda-button[data-style=expand-down] .ladda-spinner {
    top: 62px;
    left: 50%;
    margin-left: 0; }
  .ladda-button[data-style=expand-down][data-size="s"] .ladda-spinner, .ladda-button[data-style=expand-down][data-size="xs"] .ladda-spinner {
    top: 40px; }
  .ladda-button[data-style=expand-down][data-loading] {
    padding-bottom: 54px; }
    .ladda-button[data-style=expand-down][data-loading] .ladda-spinner {
      opacity: 1; }
    .ladda-button[data-style=expand-down][data-loading][data-size="s"], .ladda-button[data-style=expand-down][data-loading][data-size="xs"] {
      padding-bottom: 32px; }

/*************************************
 * SLIDE LEFT
 */
.ladda-button[data-style=slide-left] {
  overflow: hidden; }
  .ladda-button[data-style=slide-left] .ladda-label {
    position: relative; }
  .ladda-button[data-style=slide-left] .ladda-spinner {
    left: 100%;
    margin-left: 0; }
  .ladda-button[data-style=slide-left][data-loading] .ladda-label {
    opacity: 0;
    left: -100%; }
  .ladda-button[data-style=slide-left][data-loading] .ladda-spinner {
    opacity: 1;
    left: 50%; }

/*************************************
 * SLIDE RIGHT
 */
.ladda-button[data-style=slide-right] {
  overflow: hidden; }
  .ladda-button[data-style=slide-right] .ladda-label {
    position: relative; }
  .ladda-button[data-style=slide-right] .ladda-spinner {
    right: 100%;
    margin-left: 0;
    left: 16px; }
  .ladda-button[data-style=slide-right][data-loading] .ladda-label {
    opacity: 0;
    left: 100%; }
  .ladda-button[data-style=slide-right][data-loading] .ladda-spinner {
    opacity: 1;
    left: 50%; }

/*************************************
 * SLIDE UP
 */
.ladda-button[data-style=slide-up] {
  overflow: hidden; }
  .ladda-button[data-style=slide-up] .ladda-label {
    position: relative; }
  .ladda-button[data-style=slide-up] .ladda-spinner {
    left: 50%;
    margin-left: 0;
    margin-top: 1em; }
  .ladda-button[data-style=slide-up][data-loading] .ladda-label {
    opacity: 0;
    top: -1em; }
  .ladda-button[data-style=slide-up][data-loading] .ladda-spinner {
    opacity: 1;
    margin-top: 0; }

/*************************************
 * SLIDE DOWN
 */
.ladda-button[data-style=slide-down] {
  overflow: hidden; }
  .ladda-button[data-style=slide-down] .ladda-label {
    position: relative; }
  .ladda-button[data-style=slide-down] .ladda-spinner {
    left: 50%;
    margin-left: 0;
    margin-top: -2em; }
  .ladda-button[data-style=slide-down][data-loading] .ladda-label {
    opacity: 0;
    top: 1em; }
  .ladda-button[data-style=slide-down][data-loading] .ladda-spinner {
    opacity: 1;
    margin-top: 0; }

/*************************************
 * ZOOM-OUT
 */
.ladda-button[data-style=zoom-out] {
  overflow: hidden; }

.ladda-button[data-style=zoom-out] .ladda-spinner {
  left: 50%;
  margin-left: 32px;
  -webkit-transform: scale(2.5);
  -moz-transform: scale(2.5);
  -ms-transform: scale(2.5);
  -o-transform: scale(2.5);
  transform: scale(2.5); }

.ladda-button[data-style=zoom-out] .ladda-label {
  position: relative;
  display: inline-block; }

.ladda-button[data-style=zoom-out][data-loading] .ladda-label {
  opacity: 0;
  -webkit-transform: scale(0.5);
  -moz-transform: scale(0.5);
  -ms-transform: scale(0.5);
  -o-transform: scale(0.5);
  transform: scale(0.5); }

.ladda-button[data-style=zoom-out][data-loading] .ladda-spinner {
  opacity: 1;
  margin-left: 0;
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -o-transform: none;
  transform: none; }

/*************************************
 * ZOOM-IN
 */
.ladda-button[data-style=zoom-in] {
  overflow: hidden; }

.ladda-button[data-style=zoom-in] .ladda-spinner {
  left: 50%;
  margin-left: -16px;
  margin-top: -16px;
  -webkit-transform: scale(0.2);
  -moz-transform: scale(0.2);
  -ms-transform: scale(0.2);
  -o-transform: scale(0.2);
  transform: scale(0.2); }

.ladda-button[data-style=zoom-in] .ladda-label {
  position: relative;
  display: inline-block; }

.ladda-button[data-style=zoom-in][data-loading] .ladda-label {
  opacity: 0;
  -webkit-transform: scale(2.2);
  -moz-transform: scale(2.2);
  -ms-transform: scale(2.2);
  -o-transform: scale(2.2);
  transform: scale(2.2); }

.ladda-button[data-style=zoom-in][data-loading] .ladda-spinner {
  opacity: 1;
  margin-left: -16px;
  -webkit-transform: none;
  -moz-transform: none;
  -ms-transform: none;
  -o-transform: none;
  transform: none; }

/*************************************
 * CONTRACT
 */
.ladda-button[data-style=contract] {
  overflow: hidden;
  width: 100px; }

.ladda-button[data-style=contract] .ladda-spinner {
  left: 50%;
  margin-left: 0; }

.ladda-button[data-style=contract][data-loading] {
  border-radius: 50%;
  width: 52px; }

.ladda-button[data-style=contract][data-loading] .ladda-label {
  opacity: 0; }

.ladda-button[data-style=contract][data-loading] .ladda-spinner {
  opacity: 1; }

/*************************************
 * OVERLAY
 */
.ladda-button[data-style=contract-overlay] {
  overflow: hidden;
  width: 100px;
  box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0); }

.ladda-button[data-style=contract-overlay] .ladda-spinner {
  left: 50%;
  margin-left: 0; }

.ladda-button[data-style=contract-overlay][data-loading] {
  border-radius: 50%;
  width: 52px;
  /*outline: 10000px solid rgba( 0, 0, 0, 0.5 );*/
  box-shadow: 0px 0px 0px 2000px rgba(0, 0, 0, 0.8); }

.ladda-button[data-style=contract-overlay][data-loading] .ladda-label {
  opacity: 0; }

.ladda-button[data-style=contract-overlay][data-loading] .ladda-spinner {
  opacity: 1; }

.loading {
  -webkit-filter: blur(2px);
  -moz-filter: blur(2px);
  -ms-filter: blur(2px);
  -o-filter: blur(2px);
  filter: blur(2px); }

.loading-indicator-holder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999; }

/*!
 *  Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../../Theme/font-awesome/fonts/fontawesome-webfont.eot?v=4.0.3');
  src: url('../../Theme/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../../Theme/font-awesome/fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../../Theme/font-awesome/fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../../Theme/font-awesome/fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal; }

.fa, .itemds-textalign i, .itemds-textalign-selected i {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%; }

.fa-2x, .itemds-textalign i, .itemds-textalign-selected i {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-fw {
  width: 1.28571em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center; }
  .fa-li.fa-lg {
    left: -1.85714em; }

.fa-border {
  padding: 0.2em 0.25em 0.15em;
  border: solid 0.08em #eee;
  border-radius: 0.1em; }

.pull-right {
  float: right; }

.pull-left {
  float: left; }

.fa.pull-left, .itemds-textalign i.pull-left, .itemds-textalign-selected i.pull-left {
  margin-right: 0.3em; }
.fa.pull-right, .itemds-textalign i.pull-right, .itemds-textalign-selected i.pull-right {
  margin-left: 0.3em; }

.fa-spin {
  -webkit-animation: spin 2s infinite linear;
  -moz-animation: spin 2s infinite linear;
  -o-animation: spin 2s infinite linear;
  animation: spin 2s infinite linear; }

@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg); }

  100% {
    -moz-transform: rotate(359deg); } }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg); }

  100% {
    -webkit-transform: rotate(359deg); } }

@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg); }

  100% {
    -o-transform: rotate(359deg); } }

@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg); }

  100% {
    -ms-transform: rotate(359deg); } }

@keyframes spin {
  0% {
    transform: rotate(0deg); }

  100% {
    transform: rotate(359deg); } }

.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: scale(1, -1);
  -moz-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  -o-transform: scale(1, -1);
  transform: scale(1, -1); }

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle; }

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000"; }

.fa-music:before {
  content: "\f001"; }

.fa-search:before {
  content: "\f002"; }

.fa-envelope-o:before {
  content: "\f003"; }

.fa-heart:before {
  content: "\f004"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-o:before {
  content: "\f006"; }

.fa-user:before {
  content: "\f007"; }

.fa-film:before {
  content: "\f008"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-check:before {
  content: "\f00c"; }

.fa-times:before {
  content: "\f00d"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-signal:before {
  content: "\f012"; }

.fa-gear:before, .fa-cog:before {
  content: "\f013"; }

.fa-trash-o:before {
  content: "\f014"; }

.fa-home:before {
  content: "\f015"; }

.fa-file-o:before {
  content: "\f016"; }

.fa-clock-o:before {
  content: "\f017"; }

.fa-road:before {
  content: "\f018"; }

.fa-download:before {
  content: "\f019"; }

.fa-arrow-circle-o-down:before {
  content: "\f01a"; }

.fa-arrow-circle-o-up:before {
  content: "\f01b"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-play-circle-o:before {
  content: "\f01d"; }

.fa-rotate-right:before, .fa-repeat:before {
  content: "\f01e"; }

.fa-refresh:before {
  content: "\f021"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-lock:before {
  content: "\f023"; }

.fa-flag:before {
  content: "\f024"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-print:before {
  content: "\f02f"; }

.fa-camera:before {
  content: "\f030"; }

.fa-font:before {
  content: "\f031"; }

.fa-bold:before {
  content: "\f032"; }

.fa-italic:before {
  content: "\f033"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-list:before {
  content: "\f03a"; }

.fa-dedent:before, .fa-outdent:before {
  content: "\f03b"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-video-camera:before {
  content: "\f03d"; }

.fa-picture-o:before {
  content: "\f03e"; }

.fa-pencil:before {
  content: "\f040"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-tint:before {
  content: "\f043"; }

.fa-edit:before, .fa-pencil-square-o:before {
  content: "\f044"; }

.fa-share-square-o:before {
  content: "\f045"; }

.fa-check-square-o:before {
  content: "\f046"; }

.fa-arrows:before {
  content: "\f047"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-play:before {
  content: "\f04b"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-eject:before {
  content: "\f052"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-times-circle-o:before {
  content: "\f05c"; }

.fa-check-circle-o:before {
  content: "\f05d"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-mail-forward:before, .fa-share:before {
  content: "\f064"; }

.fa-expand:before {
  content: "\f065"; }

.fa-compress:before {
  content: "\f066"; }

.fa-plus:before {
  content: "\f067"; }

.fa-minus:before {
  content: "\f068"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-warning:before, .fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-plane:before {
  content: "\f072"; }

.fa-calendar:before {
  content: "\f073"; }

.fa-random:before {
  content: "\f074"; }

.fa-comment:before {
  content: "\f075"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-arrows-v:before {
  content: "\f07d"; }

.fa-arrows-h:before {
  content: "\f07e"; }

.fa-bar-chart-o:before {
  content: "\f080"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-key:before {
  content: "\f084"; }

.fa-gears:before, .fa-cogs:before {
  content: "\f085"; }

.fa-comments:before {
  content: "\f086"; }

.fa-thumbs-o-up:before {
  content: "\f087"; }

.fa-thumbs-o-down:before {
  content: "\f088"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-heart-o:before {
  content: "\f08a"; }

.fa-sign-out:before {
  content: "\f08b"; }

.fa-linkedin-square:before {
  content: "\f08c"; }

.fa-thumb-tack:before {
  content: "\f08d"; }

.fa-external-link:before {
  content: "\f08e"; }

.fa-sign-in:before {
  content: "\f090"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-upload:before {
  content: "\f093"; }

.fa-lemon-o:before {
  content: "\f094"; }

.fa-phone:before {
  content: "\f095"; }

.fa-square-o:before {
  content: "\f096"; }

.fa-bookmark-o:before {
  content: "\f097"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-facebook:before {
  content: "\f09a"; }

.fa-github:before {
  content: "\f09b"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-rss:before {
  content: "\f09e"; }

.fa-hdd-o:before {
  content: "\f0a0"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-hand-o-right:before {
  content: "\f0a4"; }

.fa-hand-o-left:before {
  content: "\f0a5"; }

.fa-hand-o-up:before {
  content: "\f0a6"; }

.fa-hand-o-down:before {
  content: "\f0a7"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-group:before, .fa-users:before {
  content: "\f0c0"; }

.fa-chain:before, .fa-link:before {
  content: "\f0c1"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-cut:before, .fa-scissors:before {
  content: "\f0c4"; }

.fa-copy:before, .fa-files-o:before {
  content: "\f0c5"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-save:before, .fa-floppy-o:before {
  content: "\f0c7"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-bars:before {
  content: "\f0c9"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-plus:before {
  content: "\f0d5"; }

.fa-money:before {
  content: "\f0d6"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-unsorted:before, .fa-sort:before {
  content: "\f0dc"; }

.fa-sort-down:before, .fa-sort-asc:before {
  content: "\f0dd"; }

.fa-sort-up:before, .fa-sort-desc:before {
  content: "\f0de"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-linkedin:before {
  content: "\f0e1"; }

.fa-rotate-left:before, .fa-undo:before {
  content: "\f0e2"; }

.fa-legal:before, .fa-gavel:before {
  content: "\f0e3"; }

.fa-dashboard:before, .fa-tachometer:before {
  content: "\f0e4"; }

.fa-comment-o:before {
  content: "\f0e5"; }

.fa-comments-o:before {
  content: "\f0e6"; }

.fa-flash:before, .fa-bolt:before {
  content: "\f0e7"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-paste:before, .fa-clipboard:before {
  content: "\f0ea"; }

.fa-lightbulb-o:before {
  content: "\f0eb"; }

.fa-exchange:before {
  content: "\f0ec"; }

.fa-cloud-download:before {
  content: "\f0ed"; }

.fa-cloud-upload:before {
  content: "\f0ee"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-bell-o:before {
  content: "\f0a2"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cutlery:before {
  content: "\f0f5"; }

.fa-file-text-o:before {
  content: "\f0f6"; }

.fa-building-o:before {
  content: "\f0f7"; }

.fa-hospital-o:before {
  content: "\f0f8"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-mobile-phone:before, .fa-mobile:before {
  content: "\f10b"; }

.fa-circle-o:before {
  content: "\f10c"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-circle:before {
  content: "\f111"; }

.fa-mail-reply:before, .fa-reply:before {
  content: "\f112"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-folder-o:before {
  content: "\f114"; }

.fa-folder-open-o:before {
  content: "\f115"; }

.fa-smile-o:before {
  content: "\f118"; }

.fa-frown-o:before {
  content: "\f119"; }

.fa-meh-o:before {
  content: "\f11a"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-keyboard-o:before {
  content: "\f11c"; }

.fa-flag-o:before {
  content: "\f11d"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-code:before {
  content: "\f121"; }

.fa-reply-all:before {
  content: "\f122"; }

.fa-mail-reply-all:before {
  content: "\f122"; }

.fa-star-half-empty:before, .fa-star-half-full:before, .fa-star-half-o:before {
  content: "\f123"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-crop:before {
  content: "\f125"; }

.fa-code-fork:before {
  content: "\f126"; }

.fa-unlink:before, .fa-chain-broken:before {
  content: "\f127"; }

.fa-question:before {
  content: "\f128"; }

.fa-info:before {
  content: "\f129"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-shield:before {
  content: "\f132"; }

.fa-calendar-o:before {
  content: "\f133"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-ticket:before {
  content: "\f145"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-minus-square-o:before {
  content: "\f147"; }

.fa-level-up:before {
  content: "\f148"; }

.fa-level-down:before {
  content: "\f149"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-pencil-square:before {
  content: "\f14b"; }

.fa-external-link-square:before {
  content: "\f14c"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-toggle-down:before, .fa-caret-square-o-down:before {
  content: "\f150"; }

.fa-toggle-up:before, .fa-caret-square-o-up:before {
  content: "\f151"; }

.fa-toggle-right:before, .fa-caret-square-o-right:before {
  content: "\f152"; }

.fa-euro:before, .fa-eur:before {
  content: "\f153"; }

.fa-gbp:before {
  content: "\f154"; }

.fa-dollar:before, .fa-usd:before {
  content: "\f155"; }

.fa-rupee:before, .fa-inr:before {
  content: "\f156"; }

.fa-cny:before, .fa-rmb:before, .fa-yen:before, .fa-jpy:before {
  content: "\f157"; }

.fa-ruble:before, .fa-rouble:before, .fa-rub:before {
  content: "\f158"; }

.fa-won:before, .fa-krw:before {
  content: "\f159"; }

.fa-bitcoin:before, .fa-btc:before {
  content: "\f15a"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-text:before {
  content: "\f15c"; }

.fa-sort-alpha-asc:before {
  content: "\f15d"; }

.fa-sort-alpha-desc:before {
  content: "\f15e"; }

.fa-sort-amount-asc:before {
  content: "\f160"; }

.fa-sort-amount-desc:before {
  content: "\f161"; }

.fa-sort-numeric-asc:before {
  content: "\f162"; }

.fa-sort-numeric-desc:before {
  content: "\f163"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-youtube-square:before {
  content: "\f166"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-youtube-play:before {
  content: "\f16a"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-adn:before {
  content: "\f170"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitbucket-square:before {
  content: "\f172"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-long-arrow-down:before {
  content: "\f175"; }

.fa-long-arrow-up:before {
  content: "\f176"; }

.fa-long-arrow-left:before {
  content: "\f177"; }

.fa-long-arrow-right:before {
  content: "\f178"; }

.fa-apple:before {
  content: "\f179"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-android:before {
  content: "\f17b"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-trello:before {
  content: "\f181"; }

.fa-female:before {
  content: "\f182"; }

.fa-male:before {
  content: "\f183"; }

.fa-gittip:before {
  content: "\f184"; }

.fa-sun-o:before {
  content: "\f185"; }

.fa-moon-o:before {
  content: "\f186"; }

.fa-archive:before {
  content: "\f187"; }

.fa-bug:before {
  content: "\f188"; }

.fa-vk:before {
  content: "\f189"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-arrow-circle-o-right:before {
  content: "\f18e"; }

.fa-arrow-circle-o-left:before {
  content: "\f190"; }

.fa-toggle-left:before, .fa-caret-square-o-left:before {
  content: "\f191"; }

.fa-dot-circle-o:before {
  content: "\f192"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-turkish-lira:before, .fa-try:before {
  content: "\f195"; }

.fa-plus-square-o:before {
  content: "\f196"; }

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width:120.063em) {
  .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; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

@media only screen and (min-width:120.063em) {
  .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; } }

/* small displays */
@media only screen {
  .show-for-small-only, .show-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .hide-for-small-only, .hide-for-small-up, .hide-for-small, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  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; }
  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 !important; }
  th.show-for-small-only, td.show-for-small-only, th.show-for-small-up, td.show-for-small-up, th.show-for-small, td.show-for-small, th.show-for-small-down, td.show-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.hide-for-medium-up, td.hide-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* medium displays */
@media only screen and (min-width:40.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.show-for-medium-only, td.show-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.show-for-medium, td.show-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* large displays */
@media only screen and (min-width:64.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.show-for-large-only, td.show-for-large-only, th.show-for-large-up, td.show-for-large-up, th.show-for-large, td.show-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xlarge displays */
@media only screen and (min-width:90.063em) {
  .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; }
  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; }
  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 !important; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, td.hide-for-small, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.show-for-xlarge-only, td.show-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.show-for-xlarge, td.show-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xxlarge displays */
@media only screen and (min-width:120.063em) {
  .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; }
  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; }
  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 !important; }
  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; }

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

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

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

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

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

@media only screen and (orientation: portrait) {
  /* Specific visibility for tables */
  .show-for-portrait, .hide-for-landscape {
    display: inherit !important; }
  .hide-for-portrait, .show-for-landscape {
    display: none !important; }
  table.show-for-portrait, table.hide-for-landscape {
    display: table; }
  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; }

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

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

.itemds-edit, .itemds-view {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.itemds-edit-panel {
  margin-left: 10px;
  margin-right: 10px; }

.itemds-imageupload-target {
  border: 3px dashed #a79a93;
  padding-top: 10px;
  padding-left: 10px;
  padding-right: 10px;
  transition: border 0.3s; }

.itemds-imageupload-target-active {
  border: 3px dashed #f95602; }

.itemds-view {
  display: inline-block;
  position: relative; }

.itemds-view-image {
  -moz-user-select: none;
  /* These user-select properties are inheritable, used to prevent text selection */
  -webkit-user-select: none;
  -ms-user-select: none;
  /* From IE10 only */
  user-select: none;
  /* Not valid CSS yet, as of July 2012 */
  -webkit-user-drag: none;
  /* Prevents dragging of images/divs etc */
  user-drag: none; }

.itemds-fragment, .itemds-fragment-content, .itemds-fragment-maintain {
  display: inline-block;
  position: absolute !important; }

.itemds-fragment-maintain {
  background: url('data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==');
  -webkit-transition: -webkit-box-shadow 0.3s;
  transition: box-shadow 0.3s; }

.itemds-fragment-maintain-controls {
  transition: opacity 0.3s; }

.itemds-fragment-maintain-controls-hidden {
  display: block;
  opacity: 0;
  height: 0;
  overflow: hidden; }

.itemds-fragment-maintain-hitspot {
  cursor: pointer;
  width: 100%;
  height: 100%; }

.itemds-fragment-edit {
  text-shadow: 1px 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000;
  position: absolute;
  bottom: 0px;
  left: 0px; }

.itemds-fragment-delete {
  text-shadow: 1px 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000;
  position: absolute;
  top: 0px;
  left: 0px; }

.itemds-fragment-resize {
  text-shadow: 1px 0 0 #000, 0 -1px 0 #000, 0 1px 0 #000, -1px 0 0 #000;
  cursor: move;
  position: absolute;
  bottom: 0px;
  right: 0px; }

.itemds-corner-nw {
  position: absolute;
  top: 0px;
  left: 0px; }

.itemds-corner-ne {
  position: absolute;
  top: 0px;
  right: 0px; }

.itemds-corner-sw {
  position: absolute;
  bottom: 0px;
  left: 0px; }

.itemds-corner-se {
  position: absolute;
  bottom: 0px;
  right: 0px; }

.itemds-colorswatch-grid {
  display: block;
  padding: 0;
  margin: 0;
  *zoom: 1; }
  .itemds-colorswatch-grid:before, .itemds-colorswatch-grid:after {
    content: " ";
    display: table; }
  .itemds-colorswatch-grid:after {
    clear: both; }
  .itemds-colorswatch-grid > li {
    display: block;
    height: auto;
    float: left;
    padding: 0 2.5px 5px; }
  .itemds-colorswatch-grid > li {
    width: 8.33333%;
    padding: 0 2.5px 5px;
    list-style: none; }
    .itemds-colorswatch-grid > li:nth-of-type(n) {
      clear: none; }
    .itemds-colorswatch-grid > li:nth-of-type(12n+1) {
      clear: both; }
    .itemds-colorswatch-grid > li:nth-child(12n+1) {
      padding-left: 0px;
      padding-right: 4.58333px; }
    .itemds-colorswatch-grid > li:nth-child(12n+2) {
      padding-left: 0.41667px;
      padding-right: 4.16667px; }
    .itemds-colorswatch-grid > li:nth-child(12n+3) {
      padding-left: 0.83333px;
      padding-right: 3.75px; }
    .itemds-colorswatch-grid > li:nth-child(12n+4) {
      padding-left: 1.25px;
      padding-right: 3.33333px; }
    .itemds-colorswatch-grid > li:nth-child(12n+5) {
      padding-left: 1.66667px;
      padding-right: 2.91667px; }
    .itemds-colorswatch-grid > li:nth-child(12n+6) {
      padding-left: 2.08333px;
      padding-right: 2.5px; }
    .itemds-colorswatch-grid > li:nth-child(12n+7) {
      padding-left: 2.5px;
      padding-right: 2.08333px; }
    .itemds-colorswatch-grid > li:nth-child(12n+8) {
      padding-left: 2.91667px;
      padding-right: 1.66667px; }
    .itemds-colorswatch-grid > li:nth-child(12n+9) {
      padding-left: 3.33333px;
      padding-right: 1.25px; }
    .itemds-colorswatch-grid > li:nth-child(12n+10) {
      padding-left: 3.75px;
      padding-right: 0.83333px; }
    .itemds-colorswatch-grid > li:nth-child(12n+11) {
      padding-left: 4.16667px;
      padding-right: 0.41667px; }
    .itemds-colorswatch-grid > li:nth-child(12n) {
      padding-left: 4.58333px;
      padding-right: 0px; }

.itemds-colorswatch {
  width: 20px;
  height: 20px; }

.itemds-colorswatch-selected {
  width: 20px;
  height: 20px; }

.itemds-font-grid {
  display: block;
  padding: 0;
  margin: 0;
  *zoom: 1; }
  .itemds-font-grid:before, .itemds-font-grid:after {
    content: " ";
    display: table; }
  .itemds-font-grid:after {
    clear: both; }
  .itemds-font-grid > li {
    display: block;
    height: auto;
    float: left;
    padding: 0 5px 10px; }
  .itemds-font-grid > li {
    width: 50%;
    padding: 0 5px 10px;
    list-style: none; }
    .itemds-font-grid > li:nth-of-type(n) {
      clear: none; }
    .itemds-font-grid > li:nth-of-type(2n+1) {
      clear: both; }
    .itemds-font-grid > li:nth-child(2n+1) {
      padding-left: 0px;
      padding-right: 5px; }
    .itemds-font-grid > li:nth-child(2n) {
      padding-left: 5px;
      padding-right: 0px; }

.itemds-font {
  border: solid 4px #fff;
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.2);
  font-size: 150%; }
  .itemds-font:hover, .itemds-font:focus, .itemds-font-selected {
    -webkit-box-shadow: 0 0 6px 1px rgba(249, 86, 2, 0.5);
    box-shadow: 0 0 6px 1px rgba(249, 86, 2, 0.5); }

.itemds-clipart-grid {
  display: block;
  padding: 0;
  margin: 0;
  *zoom: 1; }
  .itemds-clipart-grid:before, .itemds-clipart-grid:after {
    content: " ";
    display: table; }
  .itemds-clipart-grid:after {
    clear: both; }
  .itemds-clipart-grid > li {
    display: block;
    height: auto;
    float: left;
    padding: 0 5px 10px; }
  .itemds-clipart-grid > li {
    width: 33.33333%;
    padding: 0 5px 10px;
    list-style: none; }
    .itemds-clipart-grid > li:nth-of-type(n) {
      clear: none; }
    .itemds-clipart-grid > li:nth-of-type(3n+1) {
      clear: both; }
    .itemds-clipart-grid > li:nth-child(3n+1) {
      padding-left: 0px;
      padding-right: 6.66667px; }
    .itemds-clipart-grid > li:nth-child(3n+2) {
      padding-left: 3.33333px;
      padding-right: 3.33333px; }
    .itemds-clipart-grid > li:nth-child(3n) {
      padding-left: 6.66667px;
      padding-right: 0px; }

.itemds-clipart-icon {
  width: 100%; }

.cardtype-visa {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/visa.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-mastercard {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/mastercard.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-americanexpress {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/amex.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-discover {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/discover.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-jcb {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/jcb.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-dinersclub {
  opacity: 0.5;
  background-image: url(../../Theme/CreditCards/diners.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 45px; }

.cardtype-current {
  opacity: 1; }

/* Components */
.help-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f059";
  padding-right: 0; }

.help-box {
  border-style: solid;
  border-width: 0px;
  border-color: white;
  margin-bottom: 20px;
  padding: 20px;
  background: white; }
  .help-box > :first-child {
    margin-top: 0; }
  .help-box > :last-child {
    margin-bottom: 0; }
  .help-box h1, .help-box h2, .help-box h3, .help-box h4, .help-box h5, .help-box h6, .help-box p {
    color: #141414; }
  .help-box h1, .help-box h2, .help-box h3, .help-box h4, .help-box h5, .help-box h6 {
    line-height: 1;
    margin-bottom: 0.625rem; }
    .help-box h1.subheader, .help-box h2.subheader, .help-box h3.subheader, .help-box h4.subheader, .help-box h5.subheader, .help-box h6.subheader {
      line-height: 1.4; }

.help-box-hide {
  float: right; }
  .help-box-hide:before {
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    text-decoration: inherit;
    line-height: 1;
    content: "\f00d";
    padding-right: 0; }

.basic-dropdown {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  padding: 1.25rem;
  width: 100%;
  height: auto;
  max-height: none;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  margin-top: 2px;
  max-width: 200px;
  outline: none;
  max-height: auto; }
  .basic-dropdown > *:first-child {
    margin-top: 0; }
  .basic-dropdown > *:last-child {
    margin-bottom: 0; }
  .basic-dropdown:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent transparent #fff transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -12px;
    left: 10px;
    z-index: 99; }
  .basic-dropdown:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 7px;
    border-color: transparent transparent #cccccc transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -14px;
    left: 9px;
    z-index: 98; }
  .basic-dropdown.right:before {
    left: auto;
    right: 10px; }
  .basic-dropdown.right:after {
    left: auto;
    right: 9px; }

.basic-dropdown-right {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  padding: 1.25rem;
  width: 100%;
  height: auto;
  max-height: none;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  margin-top: 0;
  margin-left: 2px;
  max-width: 200px;
  outline: none;
  max-height: auto; }
  .basic-dropdown-right > *:first-child {
    margin-top: 0; }
  .basic-dropdown-right > *:last-child {
    margin-bottom: 0; }
  .basic-dropdown-right:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent #fff transparent transparent;
    border-right-style: solid;
    position: absolute;
    top: 10px;
    left: -12px;
    z-index: 99; }
  .basic-dropdown-right:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 7px;
    border-color: transparent #cccccc transparent transparent;
    border-right-style: solid;
    position: absolute;
    top: 9px;
    left: -14px;
    z-index: 98; }

.basic-dropdown-left {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  padding: 1.25rem;
  width: 100%;
  height: auto;
  max-height: none;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  margin-top: 0;
  margin-left: -2px;
  max-width: 200px;
  outline: none;
  max-height: auto; }
  .basic-dropdown-left > *:first-child {
    margin-top: 0; }
  .basic-dropdown-left > *:last-child {
    margin-bottom: 0; }
  .basic-dropdown-left:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent transparent transparent #fff;
    border-left-style: solid;
    position: absolute;
    top: 10px;
    right: -12px;
    left: auto;
    z-index: 99; }
  .basic-dropdown-left:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 7px;
    border-color: transparent transparent transparent #cccccc;
    border-left-style: solid;
    position: absolute;
    top: 9px;
    right: -14px;
    left: auto;
    z-index: 98; }

.basic-dropdown-top {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  padding: 1.25rem;
  width: 100%;
  height: auto;
  max-height: none;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  margin-top: -2px;
  margin-left: 0;
  max-width: 200px;
  outline: none;
  max-height: auto; }
  .basic-dropdown-top > *:first-child {
    margin-top: 0; }
  .basic-dropdown-top > *:last-child {
    margin-bottom: 0; }
  .basic-dropdown-top:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: #fff transparent transparent transparent;
    border-top-style: solid;
    position: absolute;
    top: auto;
    bottom: -12px;
    left: 10px;
    right: auto;
    z-index: 99; }
  .basic-dropdown-top:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 7px;
    border-color: #cccccc transparent transparent transparent;
    border-top-style: solid;
    position: absolute;
    top: auto;
    bottom: -14px;
    left: 9px;
    right: auto;
    z-index: 98; }

.basic-dropdown-closed {
  max-height: 0;
  overflow: hidden;
  padding-width: 0px;
  border-width: 0px; }

.basic-dropdown-open {
  max-height: 0;
  overflow: hidden;
  padding-width: 0px;
  border-width: 0px; }

.simplesearch-dropdown {
  position: absolute;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  width: 100%;
  max-height: none;
  height: auto;
  background: #fff;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  z-index: 99;
  max-width: 100%;
  overflow-x: hidden;
  background-color: #fafafa;
  outline: none;
  border-color: rgba(39, 41, 43, 0.15);
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.08); }
  .simplesearch-dropdown > *:first-child {
    margin-top: 0; }
  .simplesearch-dropdown > *:last-child {
    margin-bottom: 0; }

.simplesearch-dropdown-closed {
  max-height: 0;
  overflow: hidden;
  padding-width: 0px;
  border-width: 0px;
  overflow-y: hidden;
  transition: max-height 0.2s ease-out, padding-width 0s ease-out 0.2s, border-width 0s ease-out 0.2s; }

.simplesearch-dropdown-open {
  max-height: 9999px;
  max-height: 200px;
  overflow-y: scroll; }

.simplesearch-results {
  margin: 0rem; }

.simplesearch-result-selected, .simplesearch-result:hover {
  background-color: #d4d4d4; }

.simplesearch-result {
  list-style: none;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  padding-left: 0.5rem;
  padding-top: 0.1rem;
  padding-bottom: 0.1rem; }

.simplesearch-noresults {
  list-style: none;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  padding-left: 0.5rem;
  padding-top: 0.1rem;
  padding-bottom: 0.1rem; }

.simplesearch-loading {
  list-style: none;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  padding-left: 0.5rem;
  padding-top: 0.1rem;
  padding-bottom: 0.1rem; }

@keyframes loading-spinner-spin {
  to {
    transform: rotate(360deg); } }

.simplesearch-loading-spinner {
  display: inline-block;
  height: 1rem;
  width: 1rem;
  border: 2px solid #fff;
  border-right-color: #c30;
  border-top-color: #c30;
  border-radius: 100%;
  animation: loading-spinner-spin 800ms infinite linear; }

.simple-grid:focus {
  -webkit-transition: -webkit-box-shadow 0s, border-color 0s ease-in-out;
  -moz-transition: -moz-box-shadow 0s, border-color 0s ease-in-out;
  transition: box-shadow 0s, border-color 0s ease-in-out;
  outline: none; }
  .simple-grid:focus:focus {
    -webkit-box-shadow: 0 0 5px #999999;
    -moz-box-shadow: 0 0 5px #999999;
    box-shadow: 0 0 5px #999999;
    border-color: #999999; }

.simple-grid-item {
  padding: 0.5625rem 0.875rem 0.5625rem;
  overflow: hidden;
  margin-left: 0;
  list-style: none;
  border-style: solid;
  border-width: 1px;
  background-color: #e0dcd9;
  border-color: #e3dfdd; }

.simple-grid-item-active, .simple-grid-item:hover {
  padding: 0.5625rem 0.875rem 0.5625rem;
  overflow: hidden;
  margin-left: 0;
  list-style: none;
  border-style: solid;
  border-width: 1px;
  background-color: #cfc7c4;
  border-color: #d3cdca; }

.validate-error {
  background-color: red; }
  .validate-error input, .validate-error textarea, .validate-error select {
    margin-bottom: 0; }
  .validate-error input[type="checkbox"], .validate-error input[type="radio"] {
    margin-bottom: 1rem; }
  .validate-error > label > small {
    color: #676767;
    background: transparent;
    padding: 0;
    text-transform: capitalize;
    font-style: normal;
    font-size: 60%;
    margin: 0;
    display: inline; }
  .validate-error span.error-message {
    display: block; }

input.validate-error, textarea.validate-error, select.validate-error {
  margin-bottom: 0;
  background-color: #f8caca;
  border-color: #ed6f6f; }
  input.validate-error:focus, textarea.validate-error:focus, select.validate-error:focus {
    background-color: #f8caca;
    border-color: #ed6f6f; }

ul.validate-error-list {
  margin: 0px;
  background: #ed6f6f; }
  ul.validate-error-list :first-child {
    margin-top: -1px; }
  ul.validate-error-list :last-child {
    margin-bottom: 1rem; }

li.validate-error-item {
  list-style: none;
  display: block;
  padding: 0.375rem 0.5625rem 0.5625rem;
  font-size: 0.75rem;
  font-weight: normal;
  font-style: italic;
  background: #ed6f6f;
  color: #fff; }

/*!
 * Fancytree "bootstrap" skin (highlighting the node span instead of title-only).
 *
 * DON'T EDIT THE CSS FILE DIRECTLY, since it is automatically generated from
 * the LESS templates.
 */
/*******************************************************************************
 * Common Styles for Fancytree Skins.
 *
 * This section is automatically generated from the `skin-common.less` template.
 ******************************************************************************/
/*------------------------------------------------------------------------------
 * Helpers
 *----------------------------------------------------------------------------*/
.ui-helper-hidden {
  display: none; }

/*------------------------------------------------------------------------------
 * Container and UL / LI
 *----------------------------------------------------------------------------*/
ul.fancytree-container {
  list-style-position: outside;
  font-family: inherit;
  font-size: 0.9rem;
  line-height: 1.5rem;
  white-space: nowrap;
  padding: 3px;
  margin: 0;
  margin-bottom: 1.25rem;
  background-color: white;
  overflow: auto;
  min-height: 0%;
  position: relative; }

ul.fancytree-container ul {
  list-style-position: outside;
  font-family: inherit;
  font-size: 0.9rem;
  line-height: 1.5rem;
  white-space: nowrap;
  padding: 3px;
  margin: 0;
  margin-bottom: 1.25rem;
  background-color: white;
  overflow: auto;
  min-height: 0%;
  position: relative;
  padding: 0 0 0 16px;
  margin: 0; }

ul.fancytree-container li {
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none;
  -moz-background-clip: border;
  -moz-background-inline-policy: continuous;
  -moz-background-origin: padding;
  background-attachment: scroll;
  background-color: transparent;
  background-position: 0em 0em;
  background-repeat: repeat-y;
  background-image: none;
  margin: 0;
  padding: 1px 0 0 0; }

ul.fancytree-container li.fancytree-lastsib {
  background-image: none; }

ul.fancytree-no-connector > li {
  background-image: none; }

.ui-fancytree-disabled ul.fancytree-container {
  opacity: 0.5;
  background-color: silver; }

/*------------------------------------------------------------------------------
 * Common icon definitions
 *----------------------------------------------------------------------------*/
span.fancytree-empty, span.fancytree-vline, span.fancytree-expander, span.fancytree-icon, span.fancytree-checkbox, span.fancytree-radio, span.fancytree-drag-helper-img, #fancytree-drop-marker {
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: top;
  background-repeat: no-repeat;
  background-position: left;
  background-position: 0em 0em; }

span.fancytree-icon, span.fancytree-checkbox, span.fancytree-radio, span.fancytree-custom-icon {
  margin-top: 1px; }

/* Used by iconclass option */
span.fancytree-custom-icon {
  display: inline-block; }

/* Used by 'icon' node option: */
img.fancytree-icon {
  width: 1em;
  height: 1em;
  margin-left: 0.5em;
  margin-top: 1px;
  vertical-align: top;
  border-style: none; }

/*------------------------------------------------------------------------------
 * Expander icon
 *
 * Note: IE6 doesn't correctly evaluate multiples class names,
 *		 so we create combined class names that can be used in the CSS.
 *
 * Prefix: fancytree-exp-
 * 1st character: 'e': expanded, 'c': collapsed, 'n': no children
 * 2nd character (optional): 'd': lazy (Delayed)
 * 3rd character (optional): 'l': Last sibling
 *----------------------------------------------------------------------------*/
span.fancytree-expander {
  cursor: pointer; }

.fancytree-exp-n span.fancytree-expander, .fancytree-exp-nl span.fancytree-expander {
  background-image: none;
  cursor: default; }

/* Status node icons */
/*------------------------------------------------------------------------------
 * Checkbox icon
 *----------------------------------------------------------------------------*/
span.fancytree-checkbox {
  margin-left: 0.5em; }

/*------------------------------------------------------------------------------
 * Radiobutton icon
 * This is a customization, that may be activated by overriding the 'checkbox'
 * class name as 'fancytree-radio' in the tree options.
 *----------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------
 * Node type icon
 * Note: IE6 doesn't correctly evaluate multiples class names,
 *		 so we create combined class names that can be used in the CSS.
 *
 * Prefix: fancytree-ico-
 * 1st character: 'e': expanded, 'c': collapsed
 * 2nd character (optional): 'f': folder
 *----------------------------------------------------------------------------*/
span.fancytree-icon {
  margin-left: 0.5em; }

/* Documents */
/* Folders */
/*------------------------------------------------------------------------------
 * Node titles and highlighting
 *----------------------------------------------------------------------------*/
span.fancytree-node {
  /* See #117 */
  display: inherit;
  width: 100%; }

span.fancytree-title {
  display: inline-block;
  padding-left: 3px;
  padding-right: 3px;
  color: black;
  vertical-align: top;
  margin: 0px;
  margin-left: 3px;
  cursor: pointer; }

span.fancytree-node.fancytree-error span.fancytree-title {
  color: red; }

/*------------------------------------------------------------------------------
 * Drag'n'drop support
 *----------------------------------------------------------------------------*/
div.fancytree-drag-helper a, div.fancytree-drag-helper .itemds-fragment-edit, div.fancytree-drag-helper .itemds-fragment-delete, div.fancytree-drag-helper .itemds-fragment-resize {
  border: 1px solid gray;
  background-color: white;
  padding-left: 5px;
  padding-right: 5px;
  opacity: 0.8; }

/*** Drop marker icon *********************************************************/
#fancytree-drop-marker {
  width: 2em;
  position: absolute;
  margin: 0; }
  #fancytree-drop-marker:before {
    font-family: FontAwesome;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    text-decoration: inherit;
    line-height: 1;
    content: "\f061";
    padding-right: 0; }

#fancytree-drop-marker.fancytree-drop-after, #fancytree-drop-marker.fancytree-drop-before {
  width: 4em; }

/*** Source node while dragging ***********************************************/
span.fancytree-drag-source {
  background-color: #a79a93; }

span.fancytree-drag-source span.fancytree.title {
  color: gray; }

/*** Target node while dragging cursor is over it *****************************/
span.fancytree-drop-target.fancytree-drop-accept {
  background-color: #fe864a; }

span.fancytree-drop-target.fancytree-drop-after .fancytree-expander, span.fancytree-drop-target.fancytree-drop-before .fancytree-expander {
  visibility: visible; }

span.fancytree-drop-target .fancytree-expander {
  visibility: hidden; }

.fancytree-node.fancytree-drop-reject {
  background-color: #ed6f6f; }

/*------------------------------------------------------------------------------
 * 'table' extension
 *----------------------------------------------------------------------------*/
table.fancytree-ext-table {
  border-collapse: collapse; }

table.fancytree-ext-table span.fancytree-node {
  display: inline-block; }

/*------------------------------------------------------------------------------
 * 'columnview' extension
 *----------------------------------------------------------------------------*/
table.fancytree-ext-columnview tbody tr td {
  position: relative;
  border: 1px solid gray;
  vertical-align: top;
  overflow: auto; }

table.fancytree-ext-columnview tbody tr td > ul {
  padding: 0; }

table.fancytree-ext-columnview tbody tr td > ul li {
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none;
  -moz-background-clip: border;
  -moz-background-inline-policy: continuous;
  -moz-background-origin: padding;
  background-attachment: scroll;
  background-color: transparent;
  background-position: 0em 0em;
  background-repeat: repeat-y;
  background-image: none;
  /* no v-lines */
  margin: 0;
  padding: 1px 0 0 0; }

table.fancytree-ext-columnview span.fancytree-node {
  position: relative;
  /* allow positioning of embedded spans */
  display: inline-block; }

table.fancytree-ext-columnview span.fancytree-node.fancytree-expanded {
  background-color: #CBE8F6; }

table.fancytree-ext-columnview .fancytree-has-children span.fancytree-cv-right {
  position: absolute;
  right: 3px; }

/*------------------------------------------------------------------------------
 * 'filter' extension
 *----------------------------------------------------------------------------*/
.fancytree-ext-filter-dimm span.fancytree-node span.fancytree-title {
  color: silver;
  font-weight: lighter; }

.fancytree-ext-filter-dimm tr.fancytree-submatch span.fancytree-title, .fancytree-ext-filter-dimm span.fancytree-node.fancytree-submatch span.fancytree-title {
  color: black;
  font-weight: normal; }

.fancytree-ext-filter-dimm tr.fancytree-match span.fancytree-title, .fancytree-ext-filter-dimm span.fancytree-node.fancytree-match span.fancytree-title {
  color: black;
  font-weight: bold; }

.fancytree-ext-filter-hide tr.fancytree-hide, .fancytree-ext-filter-hide span.fancytree-node.fancytree-hide {
  display: none; }

.fancytree-ext-filter-hide tr.fancytree-submatch span.fancytree-title, .fancytree-ext-filter-hide span.fancytree-node.fancytree-submatch span.fancytree-title {
  color: silver;
  font-weight: lighter; }

.fancytree-ext-filter-hide tr.fancytree-match span.fancytree-title, .fancytree-ext-filter-hide span.fancytree-node.fancytree-match span.fancytree-title {
  color: black;
  font-weight: normal; }

/*------------------------------------------------------------------------------
 * 'wide' extension
 *----------------------------------------------------------------------------*/
ul.fancytree-ext-wide span.fancytree-node > span {
  position: relative;
  z-index: 2; }

ul.fancytree-ext-wide span.fancytree-node span.fancytree-title {
  position: relative;
  z-index: 1;
  width: 100%;
  padding-left: 503px;
  margin-left: -500px; }

/*******************************************************************************
 * Styles specific to this skin.
 *
 * This section is automatically generated from the `ui-fancytree.less` template.
 ******************************************************************************/
ul.fancytree-container ul {
  padding: 0 0 0 1.5em;
  margin: 0; }

/* Prevent focus frame */
.fancytree-container:focus {
  outline: none; }

span.fancytree-node {
  border: 1px solid transparent;
  border-radius: 3px;
  padding-left: 8px; }

span.fancytree-title {
  border-radius: 3px; }

span.fancytree-node.fancytree-selected {
  background-color: #80c780;
  border-color: #80c780; }

span.fancytree-node.fancytree-selected span.fancytree-title {
  background-color: #80c780; }

span.fancytree-node.fancytree-active {
  background-color: #fe864a; }

.fancytree-container.fancytree-treefocus span.fancytree-node:hover {
  background-color: #fe864a; }

.fancytree-container.fancytree-treefocus span.fancytree-node.fancytree-focused {
  border-color: #428bca; }

.fancytree-container.fancytree-treefocus span.fancytree-node.fancytree-selected {
  background-color: #5cb85c; }

.fancytree-container.fancytree-treefocus span.fancytree-node.fancytree-selected span.fancytree-title {
  background-color: #5cb85c; }

.fancytree-container.fancytree-treefocus span.fancytree-node.fancytree-active {
  background-color: #fd6417;
  border-color: #a79a93; }

/*******************************************************************************
 * 'table' extension
 */
table.fancytree-ext-table tbody tr td {
  border: 1px solid #eeeeee; }

table.fancytree-ext-table tbody tr.fancytree-selected {
  background-color: #80c780; }

table.fancytree-ext-table tbody tr.fancytree-selected span.fancytree-node {
  background-color: #80c780; }

table.fancytree-ext-table tbody tr.fancytree-selected span.fancytree-title {
  background-color: #80c780; }

table.fancytree-ext-table tbody tr.fancytree-active {
  background-color: #6aa3d5; }

table.fancytree-ext-table tbody tr.fancytree-active span.fancytree-node {
  background-color: #6aa3d5; }

table.fancytree-ext-table.fancytree-treefocus tbody tr:hover {
  background-color: #e9f2f9; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-focused span.fancytree-title {
  outline: 1px dotted #428bca; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-selected {
  background-color: #5cb85c; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-selected span.fancytree-node {
  background-color: #5cb85c; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-selected span.fancytree-title {
  background-color: #5cb85c; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-active {
  background-color: #428bca; }

table.fancytree-ext-table.fancytree-treefocus tbody tr.fancytree-active span.fancytree-node {
  background-color: #428bca; }

/*******************************************************************************
 * iconification
 */
.fancytree-has-children > .fancytree-expander:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f0fe";
  padding-right: 0; }

.fancytree-has-children.fancytree-expanded > .fancytree-expander:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f146";
  padding-right: 0; }

.fancytree-has-children.fancytree-expanded.fancytree-loading > .fancytree-expander:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f110";
  padding-right: 0; }

.fancytree-node > .fancytree-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f15b";
  padding-right: 0; }

.fancytree-node.fancytree-folder > .fancytree-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f07b";
  padding-right: 0; }

.fancytree-node.fancytree-folder.fancytree-expanded > .fancytree-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f07c";
  padding-right: 0; }

.fancytree-loading > .fancytree-expander:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f110";
  padding-right: 0; }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg); }

  100% {
    -webkit-transform: rotate(360deg); } }

.fancytree-loading > .fancytree-expander:before {
  -webkit-animation: spin 4s infinite linear; }

/*******************************************************************************
 * node buttons
 */
.fancytree-button-container {
  margin-left: 5px;
  display: none; }

.fancytree-container.fancytree-treefocus span.fancytree-node:hover .fancytree-button-container {
  display: inline; }

span.fancytree-node.fancytree-active .fancytree-button-container {
  display: inline; }

.fancytree-button {
  margin-left: 5px;
  margin-right: 5px;
  color: #141414; }

.websiteeditor-webcategory-addchild:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f067";
  padding-right: 0; }

.websiteeditor-webcategory-edit:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f040";
  padding-right: 0; }

.websiteeditor-webcategory-mirror:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f064";
  padding-right: 0; }

.websiteeditor-webcategory-delete:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f014";
  padding-right: 0; }

.websiteeditor-webcategory-refresh:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f021";
  padding-right: 0; }

.websiteeditor-webcategory-view:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f002";
  padding-right: 0; }

input[type="text"].binding-error, input[type="text"].binding-error {
  border: 4px dashed red !important;
  background-color: #F88 !important;
  margin-bottom: 0; }

.binding-error-message {
  display: block !important;
  padding: 0.33333rem 0.5rem 0.5rem !important;
  margin-top: -1px !important;
  margin-bottom: 0.88889rem !important;
  font-size: 0.66667rem !important;
  font-weight: normal !important;
  font-style: italic !important;
  background: #f04124 !important;
  color: white !important; }

.script-error {
  border: 4px dashed red !important;
  background-color: #F88 !important;
  font-size: 1.5rem !important;
  margin-bottom: 1rem !important; }

.fauxtable, .entityformfield-item-grid {
  background-color: white;
  margin-bottom: 1.25rem;
  padding: 3px; }

.fauxtable-header, .fauxtable .tableheader, .entityformfield-item-grid, .entityformfield-item-grid-header {
  background: #f95602;
  color: white !important;
  font-size: 0.875rem !important;
  font-weight: bold !important;
  padding: 0.5rem 0.625rem 0.625rem !important;
  margin: 0px !important; }

.fauxtable-row, .fauxtable .tablerow, .entityformfield-item-grid, .entityformfield-item-grid-row {
  color: #222222 !important;
  font-size: 0.875rem !important;
  line-height: 1.125rem !important;
  padding: 0.5625rem 0.625rem !important;
  margin: 0px !important; }

@media only screen and (min-width:40.063em) {
  .fauxtable-header .columns:first-child, .fauxtable-header .fauxtable .tableheader, .fauxtable .fauxtable-header .tableheader, .fauxtable-header .entityformfield-item-grid, .fauxtable-header .entityformfield-item-grid-header, .fauxtable-row .columns:first-child, .fauxtable-row .fauxtable .tablerow, .fauxtable .fauxtable-row .tablerow, .fauxtable-row .entityformfield-item-grid, .fauxtable-row .entityformfield-item-grid-row {
    padding-left: 0px !important; }
  .fauxtable-header .columns:last-child, .fauxtable-header .fauxtable .tableheader, .fauxtable .fauxtable-header .tableheader, .fauxtable-header .entityformfield-item-grid, .fauxtable-header .entityformfield-item-grid-header, .fauxtable-row .columns:last-child, .fauxtable-row .fauxtable .tablerow, .fauxtable .fauxtable-row .tablerow, .fauxtable-row .entityformfield-item-grid, .fauxtable-row .entityformfield-item-grid-row {
    padding-right: 0px !important; } }

.fauxtable-row:nth-of-type(odd), .fauxtable .tablerow:nth-of-type(odd), .entityformfield-item-grid, .entityformfield-item-grid-row:nth-of-type(odd) {
  background: #dedede; }

/* legacy class names */
.fauxtable .tablerow:nth-of-type(odd), .fauxtable .entityformfield-item-grid {
  background: #dedede; }

.entityformfield {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1; }
  .entityformfield:before, .entityformfield:after {
    content: " ";
    display: table; }
  .entityformfield:after {
    clear: both; }

.entityformfield-item-grid-header {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1; }
  .entityformfield-item-grid-header:before, .entityformfield-item-grid-header:after {
    content: " ";
    display: table; }
  .entityformfield-item-grid-header:after {
    clear: both; }

.entityformfield-item-grid-header-description {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 58.33333%;
  float: left; }

.entityformfield-item-grid-header-price {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 25%;
  float: left;
  text-align: right; }

.entityformfield-item-grid-header-qty {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 16.66667%;
  float: left;
  text-align: right; }

.entityformfield-item-grid-row {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1; }
  .entityformfield-item-grid-row:before, .entityformfield-item-grid-row:after {
    content: " ";
    display: table; }
  .entityformfield-item-grid-row:after {
    clear: both; }

@media only screen and (min-width:40.063em) {
  .entityformfield-item-grid-row-description {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 58.33333%;
    float: left; }
  .entityformfield-item-grid-row-price {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 25%;
    float: left;
    text-align: right; }
  .entityformfield-item-grid-row-value {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 16.66667%;
    float: left;
    text-align: right; } }

@media only screen and (max-width: 40em) {
  .entityformfield-item-grid-row-description {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
  .entityformfield-item-grid-row-price {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 50%;
    float: left;
    text-align: left; }
  .entityformfield-item-grid-row-value {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 50%;
    float: left;
    text-align: right; } }

/* Field Types */
@media only screen and (min-width:40.063em) {
  .entityformfield-fieldtype-Text_Input .entityformfield-label, .entityformfield-fieldtype-Address_Input .entityformfield-label, .entityformfield-fieldtype-Email_Input .entityformfield-label, .entityformfield-fieldtype-Url_Input .entityformfield-label, .entityformfield-fieldtype-Date_Input .entityformfield-label, .entityformfield-fieldtype-Checkbox_Input .entityformfield-label, .entityformfield-fieldtype-ListDropdown_Input .entityformfield-label {
    padding-left: 0;
    padding-right: 0;
    width: 50%;
    float: left; }
  .entityformfield-fieldtype-Text_Input .entityformfield-input, .entityformfield-fieldtype-Address_Input .entityformfield-input, .entityformfield-fieldtype-Email_Input .entityformfield-input, .entityformfield-fieldtype-Url_Input .entityformfield-input, .entityformfield-fieldtype-Date_Input .entityformfield-input, .entityformfield-fieldtype-Checkbox_Input .entityformfield-input, .entityformfield-fieldtype-ListDropdown_Input .entityformfield-input {
    padding-left: 0;
    padding-right: 0;
    width: 50%;
    float: left; } }

.splash, .splash:before, .splash:after {
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 1em;
  height: 4em; }

.splash:before, .splash:after {
  position: absolute;
  top: 0;
  content: ''; }

.splash:before {
  background: #f95602;
  left: -1.5em; }

.splash {
  background: #f95602;
  text-indent: -9999em;
  margin: 8em auto;
  position: relative;
  font-size: 11px;
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s; }

.splash:after {
  background: #f95602;
  left: 1.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s; }

@-webkit-keyframes load1 {
  0%, 80%, 100% {
    box-shadow: 0 0 #f95602;
    height: 4em; }

  40% {
    box-shadow: 0 -2em #f95602;
    height: 5em; } }

@keyframes load1 {
  0%, 80%, 100% {
    box-shadow: 0 0 #f95602;
    height: 4em; }

  40% {
    box-shadow: 0 -2em #f95602;
    height: 5em; } }

.js-not-rendered {
  display: none; }

.voucher-edit-actions {
  *zoom: 1;
  margin-bottom: 0 !important;
  margin-left: 0;
  list-style: none; }
  .voucher-edit-actions:before, .voucher-edit-actions:after {
    content: " ";
    display: table; }
  .voucher-edit-actions:after {
    clear: both; }
  .voucher-edit-actions.radius dd:first-child a, .voucher-edit-actions.radius dd:first-child .itemds-fragment-edit, .voucher-edit-actions.radius dd:first-child .itemds-fragment-delete, .voucher-edit-actions.radius dd:first-child .itemds-fragment-resize {
    -moz-border-radius-bottomleft: 3px;
    -moz-border-radius-topleft: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }
  .voucher-edit-actions.radius dd:last-child a, .voucher-edit-actions.radius dd:last-child .itemds-fragment-edit, .voucher-edit-actions.radius dd:last-child .itemds-fragment-delete, .voucher-edit-actions.radius dd:last-child .itemds-fragment-resize {
    -moz-border-radius-bottomright: 3px;
    -moz-border-radius-topright: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }
  .voucher-edit-actions.vertical dd {
    position: inherit;
    float: none;
    display: block;
    top: auto; }

.voucher-edit-action-edit {
  position: relative;
  margin-bottom: 0 !important;
  float: left; }
  .voucher-edit-action-edit > a, .voucher-edit-action-edit > .itemds-fragment-edit, .voucher-edit-action-edit > .itemds-fragment-delete, .voucher-edit-action-edit > .itemds-fragment-resize {
    display: block;
    background: #efefef;
    color: #222;
    padding: 1rem 2rem;
    font-family: Tahoma, Helvetica, sans-serif;
    font-size: 1rem; }
    .voucher-edit-action-edit > a:hover, .voucher-edit-action-edit > .itemds-fragment-edit:hover, .voucher-edit-action-edit > .itemds-fragment-delete:hover, .voucher-edit-action-edit > .itemds-fragment-resize:hover {
      background: #e1e1e1; }
  .voucher-edit-action-edit.active a, .voucher-edit-action-edit.active .itemds-fragment-edit, .voucher-edit-action-edit.active .itemds-fragment-delete, .voucher-edit-action-edit.active .itemds-fragment-resize {
    background: #fff; }

.voucher-edit-action-buttons {
  float: right; }

.voucher-edit-status {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1;
  padding-bottom: 1rem; }
  .voucher-edit-status:before, .voucher-edit-status:after {
    content: " ";
    display: table; }
  .voucher-edit-status:after {
    clear: both; }

.voucher-edit-status-messages {
  padding-left: 0;
  padding-right: 0;
  width: 66.66667%;
  float: left; }

.voucher-edit-status-message {
  border-style: solid;
  border-width: 1px;
  display: block;
  font-weight: normal;
  margin-bottom: 1.25rem;
  position: relative;
  padding: 0.875rem 1.5rem 0.875rem 0.875rem;
  font-size: 0.8125rem;
  background-color: #f95602;
  border-color: #d64902;
  color: #fff; }

.voucher-edit-status-totals-headers {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 16.66667%;
  float: left; }

.voucher-edit-status-totals {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 16.66667%;
  float: left;
  text-align: right; }

.voucher-edit-workspace-voucherinfo, .voucher-edit-workspace-addreceivers, .voucher-edit-workspace-adddistribution {
  *zoom: 1;
  margin-bottom: 1.5rem;
  width: 100%;
  display: none;
  float: left;
  padding: 0.9375rem 0;
  width: 100%; }
  .voucher-edit-workspace-voucherinfo:before, .voucher-edit-workspace-voucherinfo:after, .voucher-edit-workspace-addreceivers:before, .voucher-edit-workspace-addreceivers:after, .voucher-edit-workspace-adddistribution:before, .voucher-edit-workspace-adddistribution:after {
    content: " ";
    display: table; }
  .voucher-edit-workspace-voucherinfo:after, .voucher-edit-workspace-addreceivers:after, .voucher-edit-workspace-adddistribution:after {
    clear: both; }
  .voucher-edit-workspace-voucherinfo.active, .voucher-edit-workspace-addreceivers.active, .voucher-edit-workspace-adddistribution.active {
    display: block;
    float: none; }
  .voucher-edit-workspace-voucherinfo.contained, .voucher-edit-workspace-addreceivers.contained, .voucher-edit-workspace-adddistribution.contained {
    padding: 0.9375rem; }

.CodeMirror {
  border: 1px solid #9e9e9e; }

input[type="text"].elfinder-editrow-input {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 83.33333%;
  float: left; }

.elfinder-editrow-open {
  display: block;
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  border-style: solid;
  border-width: 1px;
  overflow: hidden;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 16.66667%;
  float: left; }

.header-grid {
  padding-bottom: 10px; }

.header-grid-row {
  display: flex; }

.header-grid-cell {
  flex: 1;
  border: 1px solid grey; }

.itemedit-catpath-category {
  list-style: 0.25rem; }

.itemedit-catpath-category-remove-row {
  padding-top: 0.5625rem;
  padding-right: 1.125rem;
  padding-bottom: 0.625rem;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }

.itemedit-catpath-category-remove-row-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f014";
  padding-right: 0; }

.itemedit-catpath-category-remove-item {
  padding-top: 0.5625rem;
  padding-right: 1.125rem;
  padding-bottom: 0.625rem;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }

.itemedit-catpath-category-remove-item-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f060";
  padding-right: 0; }

.itemedit-catpath-category-duplicate-row {
  padding-top: 0.5625rem;
  padding-right: 1.125rem;
  padding-bottom: 0.625rem;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }

.itemedit-catpath-category-duplicate-row-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f0ab";
  padding-right: 0; }

.itemedit-catpath-category-duplicate-intochildren {
  padding-top: 0.5625rem;
  padding-right: 1.125rem;
  padding-bottom: 0.625rem;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }

.itemedit-catpath-category-duplicate-intochildren-icon:before {
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  line-height: 1;
  content: "\f0a9";
  padding-right: 0; }
.itemedit-catpath-category-duplicate-intochildren-icon:before {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=$rotation);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

.itemedit-catpath-category-paths {
  display: inline-block; }

.itemedit-catpath-category-duplicate {
  padding-top: 0.5625rem;
  padding-right: 1.125rem;
  padding-bottom: 0.625rem;
  padding-left: 1.125rem;
  font-size: 0.8125rem;
  /*     @else                            { font-size: $padding - rem-calc(2); } */ }

.itemedit-catpath-category-select {
  display: inline-block;
  width: 9.375rem; }

.task-icon {
  content: url("/BRAIN/Images/help.gif"); }

.task-icon.task-icon-to-do {
  content: url("/BRAIN/Images/Icons/icon16-todos.png"); }

.task-icon.task-icon-appointment {
  content: url("/BRAIN/Images/Icons/icon16-calendar.png"); }

.task-icon.task-icon-phone-call {
  content: url("/BRAIN/Images/Icons/Phone16.png"); }

.k-column-menu [class*="column"] + [class*="column"]:last-child {
  float: unset; }

.k-column-menu [class*="column"] + [class*="column"].end {
  float: unset; }

.k-grid a.task-link, .k-grid .task-link.itemds-fragment-edit, .k-grid .task-link.itemds-fragment-delete, .k-grid .task-link.itemds-fragment-resize {
  color: #f95602; }

.purchaseorder-edit-header {
  display: flex; }

.purchaseorder-edit-header-cell {
  flex: 1;
  font-weight: bold; }

.purchaseorder-edit-cell {
  flex: 1; }

.dialog {
  visibility: hidden;
  display: none;
  position: absolute;
  z-index: 100;
  width: 100vw;
  top: 0;
  left: 0;
  background-color: #fff;
  padding: 0;
  border: solid 1px #666;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  display: flex;
  flex-direction: column;
  left: 0;
  right: 0; }
  @media only screen and (max-width: 40em) {
    .dialog {
      height: 100vh;
      min-height: 100vh; } }
  @media only screen and (min-width:40.063em) {
    .dialog {
      left: 50%; } }
  .dialog .column, .dialog .columns {
    min-width: 0; }
  .dialog > :first-child {
    margin-top: 0; }
  .dialog > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width:40.063em) {
    .dialog {
      margin-left: -40%;
      width: 80%; } }
  @media only screen and (min-width:40.063em) {
    .dialog {
      top: 6.25rem; } }

.dialog-header {
  margin: 0;
  padding: 20px;
  min-height: 20px;
  border-bottom: 1px solid #e6e6e6; }

.dialog-body {
  padding: 20px;
  flex: 1;
  border-bottom: 1px solid #e6e6e6; }

.dialog-controls {
  min-height: 32px;
  text-align: right;
  margin: 20px;
  padding-bottom: 20px; }
  .dialog-controls button, .dialog-controls .button {
    margin: 0px; }

.dialog-title {
  font-size: 1.2rem; }

.dialog-close {
  font-size: 2.5rem;
  line-height: 1;
  position: absolute;
  top: 0.5rem;
  right: 0.6875rem;
  color: #aaa;
  font-weight: bold;
  cursor: pointer; }

.dialog-xtiny {
  width: 20%;
  margin-left: -40%; }

.dialog-tiny {
  width: 30%;
  margin-left: -40%; }

.dialog-small {
  width: 40%; }

.dialog-medium {
  width: 60%; }

.dialog-large {
  width: 70%; }

.dialog-xlarge {
  width: 95%; }

.dialog-full {
  width: 100%; }

.item-search-itemno {
  font-weight: bold;
  display: inline; }

.item-search-description {
  font-size: 0.8rem;
  display: inline; }

.fileupload {
  min-height: 100px;
  border: 3px dashed #a79a93;
  padding: 10px;
  transition: border 0.3s;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  cursor: hand; }

.fileupload-message {
  align-items: center;
  justify-content: center; }

.fileupload-error {
  background-color: #ed6f6f;
  color: #fff;
  border: none; }

.fileupload-active {
  border: 3px dashed #f95602; }

.fileupload:hover {
  border: 3px dashed #f95602; }

.fileupload-progress {
  background-color: #f6f6f6;
  height: 1.5625rem;
  border: 1px solid white;
  padding: 0.125rem;
  margin-bottom: 0.625rem;
  margin-top: auto; }
  .fileupload-progress > span {
    background: #f95602;
    height: 100%;
    display: block; }
  .fileupload-progress > span.success {
    background: #88b564;
    height: 100%;
    display: block; }
  .fileupload-progress > span.alert, .fileupload-progress > span.voucher-edit-action-cancel {
    background: #ed6f6f;
    height: 100%;
    display: block; }

.fileupload-message-content {
  text-align: center;
  max-width: 50%; }

.fileupload-message-content-button {
  margin-bottom: 0px; }

.has-web-category-path {
  font-weight: bold;
  margin-left: 0;
  list-style: none;
  border-style: solid;
  border-width: 1px;
  background-color: #e0dcd9;
  border-color: #e3dfdd;
  margin-bottom: 1rem; }

.has-web-category-path-item:first-child {
  padding-left: 0.875rem; }

.has-web-category-path-item:last-child {
  padding-right: 0.875rem; }

.has-web-category-path-add {
  float: right;
  padding: 0.6rem;
  margin-bottom: 0rem;
  font-size: 0.8125rem; }

.has-web-category-path-item {
  padding-top: 0.5625rem;
  padding-bottom: 0.5625rem;
  display: inline-block; }

.has-web-category-path-item:hover {
  -webkit-transition: -webkit-box-shadow 0s, border-color 0s ease-in-out;
  -moz-transition: -moz-box-shadow 0s, border-color 0s ease-in-out;
  transition: box-shadow 0s, border-color 0s ease-in-out;
  outline: none;
  background-color: #cfc7c4;
  border-color: #d3cdca; }
  .has-web-category-path-item:hover:focus {
    -webkit-box-shadow: 0 0 5px #999999;
    -moz-box-shadow: 0 0 5px #999999;
    box-shadow: 0 0 5px #999999;
    border-color: #999999; }

.has-web-category-root-edits {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem;
  *zoom: 1;
  width: auto;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
  margin-top: 0;
  margin-bottom: 1rem;
  max-width: none; }
  .has-web-category-root-edits:before, .has-web-category-root-edits:after {
    content: " ";
    display: table; }
  .has-web-category-root-edits:after {
    clear: both; }

.has-web-category-root-edits-file {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

.has-web-category-empty-folder {
  text-align: center;
  font-weight: bold; }

.sub-panel {
  padding-top: 1.25rem;
  border-top: 1px solid #e6e6e6; }

/* Banner */
.banner-container {
  /*Important:*/
  position: relative;
  display: inline-block; }

.banner-spanner {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-indent: -5000px;
  z-index: 1;
  background-image: url('images/hitbox.gif'); }

/* End Banner */
.w2ui-overlay {
  z-index: 65538 !important; }

.prefix-checkbox {
  display: block;
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  border-style: solid;
  border-width: 1px;
  overflow: hidden;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem; }

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

/*Start foundationBase*/
body {
  background: #141414;
  line-height: 1.6em; }

.wrapper {
  background: transparent;
  width: auto;
  margin: 0px auto;
  padding: 0px;
  border-top: none;
  border-bottom: none;
  border-left: none;
  border-right: none;
  border-radius: 0px;
  box-shadow: none; }

.login {
  background: white;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  box-shadow: none;
  margin: 0px;
  padding: 0px; }

.login .row {
  background: none;
  color: white;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0px;
  box-shadow: none;
  text-align: right;
  margin: 0px auto;
  padding: 10px 4px 5px 4px; }

.login a.button, .login .button.itemds-fragment-edit, .login .button.itemds-fragment-delete, .login .button.itemds-fragment-resize, .login input {
  margin: 0px;
  height: 30px;
  line-height: 10px; }

.loginsearch .row {
  padding: 0px 0px 0px 10px; }

.loginsearch input[type="text"] {
  line-height: 30px;
  padding-top: 0px;
  padding-bottom: 0px; }

.masthead {
  background: white;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  box-shadow: none;
  margin: 0px;
  padding: 0px; }

.masthead .row {
  background: none;
  background-size: 100% 100%;
  color: none;
  position: relative;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: none;
  box-shadow: none;
  margin: 0px auto;
  padding: 0px; }

.ads {
  position: absolute;
  top: 0.9375rem;
  bottom: inherit;
  right: 0.625rem;
  left: inherit;
  width: 480px;
  height: 80px;
  z-index: 1; }

.top-menu {
  background: url(images/menugradient2.png) top #141414;
  background-size: contain !important;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #cccccc;
  border-radius: none;
  box-shadow: none;
  margin: 0px; }

.top-menu .top-bar, .top-bar.expanded .title-area {
  background: url(images/menugradient2.png) top #141414;
  background-size: contain !important;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: none;
  box-shadow: none; }

nav.top-bar {
  margin: 0px -0.9375rem; }

.top-bar.expanded {
  background: #141414; }

.top-bar a, .top-bar .itemds-fragment-edit, .top-bar .itemds-fragment-delete, .top-bar .itemds-fragment-resize, .toggle-topbar.menu-icon {
  font-family: Tahoma, Helvetica, sans-serif !important;
  font-weight: bold !important;
  text-shadow: none;
  background: url(images/menugradient2.png) top #141414 !important;
  background-size: contain !important; }

.top-bar .toggle-topbar.menu-icon {
  padding-right: 10px; }

@media only screen and (min-width:40.063em) {
  .top-bar-section li:not(.has-form) a:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-edit:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-delete:not(.button), .top-bar-section li:not(.has-form) .itemds-fragment-resize:not(.button), .top-bar-section li.active:not(.has-form) a:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-edit:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-delete:not(.button), .top-bar-section li.active:not(.has-form) .itemds-fragment-resize:not(.button) {
    padding: 0px 0.9375rem;
    line-height: 30px; }
  .top-bar-section .dropdown li:not(.has-form) a, .top-bar-section .dropdown li:not(.has-form) .itemds-fragment-edit, .top-bar-section .dropdown li:not(.has-form) .itemds-fragment-delete, .top-bar-section .dropdown li:not(.has-form) .itemds-fragment-resize {
    padding: 0.25rem 0.9375rem;
    line-height: 30px; }
  .top-bar-section .has-dropdown > a, .top-bar-section .has-dropdown > .itemds-fragment-edit, .top-bar-section .has-dropdown > .itemds-fragment-delete, .top-bar-section .has-dropdown > .itemds-fragment-resize {
    padding-right: 35px !important; }
  .top-bar-section .has-dropdown > a:after, .top-bar-section .has-dropdown > .itemds-fragment-edit:after, .top-bar-section .has-dropdown > .itemds-fragment-delete:after, .top-bar-section .has-dropdown > .itemds-fragment-resize:after {
    right: 10px; } }

.top-bar .active a, .top-bar .active .itemds-fragment-edit, .top-bar .active .itemds-fragment-delete, .top-bar .active .itemds-fragment-resize, .toggle-topbar.menu-icon:hover, .toggle-topbar.menu-icon:hover > a, .toggle-topbar.menu-icon:hover > .itemds-fragment-edit, .toggle-topbar.menu-icon:hover > .itemds-fragment-delete, .toggle-topbar.menu-icon:hover > .itemds-fragment-resize, .top-bar-section ul li:hover > a, .top-bar-section ul li:hover > .itemds-fragment-edit, .top-bar-section ul li:hover > .itemds-fragment-delete, .top-bar-section ul li:hover > .itemds-fragment-resize {
  background: url(images/menugradient2.png) top #f95602 !important;
  background-size: contain !important;
  transition: background-color 200ms ease-out 0s; }

.top-bar ul.dropdown {
  background: #141414 !important;
  min-width: 100%;
  box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); }

.top-bar ul.dropdown a, .top-bar ul.dropdown .itemds-fragment-edit, .top-bar ul.dropdown .itemds-fragment-delete, .top-bar ul.dropdown .itemds-fragment-resize {
  background: #141414 !important; }

.top-bar-section ul.dropdown li:hover > a, .top-bar-section ul.dropdown li:hover > .itemds-fragment-edit, .top-bar-section ul.dropdown li:hover > .itemds-fragment-delete, .top-bar-section ul.dropdown li:hover > .itemds-fragment-resize {
  background: #f95602 !important; }

@media only screen and (max-width: 40em) {
  .top-bar-section a, .top-bar-section .itemds-fragment-edit, .top-bar-section .itemds-fragment-delete, .top-bar-section .itemds-fragment-resize {
    background: #141414 !important;
    line-height: 30px; }
  .top-bar-section ul li > a, .top-bar-section ul li > .itemds-fragment-edit, .top-bar-section ul li > .itemds-fragment-delete, .top-bar-section ul li > .itemds-fragment-resize, .top-bar-section ul li > .itemds-fragment-editButtonBase, .top-bar-section .dropdown li a, .top-bar-section .dropdown li .itemds-fragment-edit, .top-bar-section .dropdown li .itemds-fragment-delete, .top-bar-section .dropdown li .itemds-fragment-resize, .top-bar-section .dropdown li .itemds-fragment-editButtonBase {
    padding: 0.25rem 0.9375rem; }
  .top-bar-section .active a, .top-bar-section .active .itemds-fragment-edit, .top-bar-section .active .itemds-fragment-delete, .top-bar-section .active .itemds-fragment-resize, .top-bar-section ul li:hover > a, .top-bar-section ul li:hover > .itemds-fragment-edit, .top-bar-section ul li:hover > .itemds-fragment-delete, .top-bar-section ul li:hover > .itemds-fragment-resize {
    background: #f95602 !important; } }

.main-menu .search, .mobilesearch .search {
  margin-top: 14px; }

.main-menu a, .main-menu .itemds-fragment-edit, .main-menu .itemds-fragment-delete, .main-menu .itemds-fragment-resize {
  display: inline-block;
  width: 100%; }

.main-menu .listblock, .main-menu .sublistblock {
  margin: 0px; }

.main-menu section .title {
  background-color: white !important;
  color: #141414 !important;
  border-width: 0px !important;
  Border-style: solid !important;
  border-color: #cccccc !important; }

.main-menu section .active .title {
  background-color: #141414 !important; }

.main-menu .title a, .main-menu .title .itemds-fragment-edit, .main-menu .title .itemds-fragment-delete, .main-menu .title .itemds-fragment-resize {
  color: #141414 !important;
  text-shadow: none;
  font-family: Tahoma, Helvetica, sans-serif;
  font-weight: bold;
  box-shadow: 0px -1px 2px rgba(0, 0, 0, 0.5) inset, 0px 1px 2px rgba(255, 255, 255, 0.5) inset;
  border-radius: 0px; }

.main-menu .listitem, .main-menu .subtitle {
  list-style-position: outside;
  list-style-type: none;
  position: relative; }

.main-menu .listitem a, .main-menu .listitem .itemds-fragment-edit, .main-menu .listitem .itemds-fragment-delete, .main-menu .listitem .itemds-fragment-resize {
  display: inline-block;
  border-width: 0px !important;
  border-style: solid !important;
  border-color: #cccccc !important;
  border-radius: 0px;
  background-color: white !important;
  color: #141414 !important;
  text-shadow: none;
  box-shadow: 0px -1px 2px rgba(0, 0, 0, 0.5) inset, 0px 1px 2px rgba(255, 255, 255, 0.5) inset;
  font-family: Tahoma, Helvetica, sans-serif;
  font-weight: bold;
  font-size: 0.875rem;
  padding: 0.625rem !important;
  white-space: nowrap;
  width: 100%;
  cursor: pointer;
  margin: 0;
  top: 0; }

.main-menu .listitem a:hover, .main-menu .listitem .itemds-fragment-edit:hover, .main-menu .listitem .itemds-fragment-delete:hover, .main-menu .listitem .itemds-fragment-resize:hover, .main-menu .listitem.selected a, .main-menu .listitem.selected .itemds-fragment-edit, .main-menu .listitem.selected .itemds-fragment-delete, .main-menu .listitem.selected .itemds-fragment-resize {
  background-color: #141414 !important;
  color: #f95602 !important; }

.main-menu .title.has-dropdown > a:after, .main-menu .title.has-dropdown > .itemds-fragment-edit:after, .main-menu .title.has-dropdown > .itemds-fragment-delete:after, .main-menu .title.has-dropdown > .itemds-fragment-resize:after, .main-menu .listitem.has-dropdown > a:after, .main-menu .listitem.has-dropdown > .itemds-fragment-edit:after, .main-menu .listitem.has-dropdown > .itemds-fragment-delete:after, .main-menu .listitem.has-dropdown > .itemds-fragment-resize:after {
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
  -moz-border-right-colors: none;
  -moz-border-top-colors: none;
  border-color: rgba(127, 127, 127, 0.5) transparent transparent;
  border-image: none;
  border-style: solid;
  border-width: 5px;
  content: "";
  display: block;
  position: absolute;
  top: 1.25rem;
  right: 10px;
  height: 0px;
  width: 0px; }

.main-menu .section-container {
  margin: 0px 0 1.25rem 0;
  width: auto;
  border-width: 0px;
  border-style: solid;
  border-color: #cccccc; }

.main-menu .section-container .section, .main-menu .listitem {
  margin-bottom: 4px; }

.main-menu .content {
  background: #f95602;
  color: white;
  box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25);
  padding: 0px !important;
  border-width: 0px !important;
  Border-style: solid !important;
  border-color: #cccccc !important; }

.main-menu .sublistblock {
  display: none;
  min-width: 12.5rem;
  box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25);
  position: absolute;
  left: 100%;
  top: 0px;
  z-index: 10; }

.main-menu .subtitle {
  padding: 0px; }

.main-menu .subtitle a, .main-menu .subtitle .itemds-fragment-edit, .main-menu .subtitle .itemds-fragment-delete, .main-menu .subtitle .itemds-fragment-resize, .main-menu .sublistblock .subtitle a, .main-menu .sublistblock .subtitle .itemds-fragment-edit, .main-menu .sublistblock .subtitle .itemds-fragment-delete, .main-menu .sublistblock .subtitle .itemds-fragment-resize {
  display: inline-block;
  background: #f95602 !important;
  color: white !important;
  text-shadow: none;
  box-shadow: none;
  font-family: Tahoma, Helvetica, sans-serif;
  font-weight: bold;
  padding: 0.625rem !important;
  white-space: nowrap;
  width: 100%;
  cursor: pointer;
  margin: 0;
  top: 0;
  border-radius: 0px; }

.main-menu .subtitle a:hover, .main-menu .subtitle .itemds-fragment-edit:hover, .main-menu .subtitle .itemds-fragment-delete:hover, .main-menu .subtitle .itemds-fragment-resize:hover, .main-menu .sublistblock .subtitle a:hover, .main-menu .sublistblock .subtitle .itemds-fragment-edit:hover, .main-menu .sublistblock .subtitle .itemds-fragment-delete:hover, .main-menu .sublistblock .subtitle .itemds-fragment-resize:hover {
  background: #c64302 !important;
  color: white !important; }

@media only screen and (min-width:40.063em) {
  .main-menu .listitem.has-dropdown:hover .sublistblock {
    display: inline-block; } }

.mid {
  background: white;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: none;
  box-shadow: none;
  margin: 0px;
  padding: 0px; }

.mid-row {
  background: none;
  color: #141414;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0px;
  box-shadow: none;
  margin: 0px auto;
  padding: 6px 0px 0px 0px; }

.main-content {
  background: none;
  color: #141414;
  padding-top: 0;
  padding-bottom: 0.625rem;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0px;
  box-shadow: none;
  min-height: 320px; }

.footer {
  background: #141414;
  border-top: 3px solid #a79a93;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: none;
  box-shadow: none;
  margin: 0px;
  padding: 0px; }

.footer footer {
  background: #141414;
  color: white !important;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: none;
  border-radius: 0px 0px 10px 10px;
  box-shadow: none;
  margin: 0px auto;
  padding: 10px 0px 20px; }

.footer, .footer a:link, .footer .itemds-fragment-edit:link, .footer .itemds-fragment-delete:link, .footer .itemds-fragment-resize:link, .footer a:visited, .footer .itemds-fragment-edit:visited, .footer .itemds-fragment-delete:visited, .footer .itemds-fragment-resize:visited {
  color: white !important; }

.footer a:hover, .footer .itemds-fragment-edit:hover, .footer .itemds-fragment-delete:hover, .footer .itemds-fragment-resize:hover, .footer a:active, .footer .itemds-fragment-edit:active, .footer .itemds-fragment-delete:active, .footer .itemds-fragment-resize:active {
  color: white !important;
  text-decoration: underline !important; }

.footer .address {
  color: #bfbfbf !important; }

h1, h2, h3, h4, h5, h6 {
  text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25); }

legend {
  font-family: "Bitter", serif;
  font-weight: bold !important;
  font-style: normal !important;
  color: #f95602 !important;
  text-shadow: 0px 1px 0px rgba(0, 0, 0, 0.25);
  background: none !important; }

div.panel {
  background: white;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5) inset, 0px 1px 2px white;
  border-radius: 6px; }

.button {
  background-image: url("images/menugradient2.png");
  background-size: contain;
  text-shadow: 0px -1px 0px #c64302; }

a.button, .button.itemds-fragment-edit, .button.itemds-fragment-delete, .button.itemds-fragment-resize {
  padding-top: 0.625rem;
  padding-boittom: 0.625rem; }

.button.secondary {
  text-shadow: 0px -1px 0px #908077; }

.section-container.auto > section > .title a, .section-container.auto > section > .title .itemds-fragment-edit, .section-container.auto > section > .title .itemds-fragment-delete, .section-container.auto > section > .title .itemds-fragment-resize, .section-container.auto > .section > .title a, .section-container.auto > .section > .title .itemds-fragment-edit, .section-container.auto > .section > .title .itemds-fragment-delete, .section-container.auto > .section > .title .itemds-fragment-resize {
  background-image: url(images/menugradient2.png);
  background-size: contain; }

.section-container.auto > section.active > .title a, .section-container.auto > section.active > .title .itemds-fragment-edit, .section-container.auto > section.active > .title .itemds-fragment-delete, .section-container.auto > section.active > .title .itemds-fragment-resize, .section-container.auto > .section.active > .title a, .section-container.auto > .section.active > .title .itemds-fragment-edit, .section-container.auto > .section.active > .title .itemds-fragment-delete, .section-container.auto > .section.active > .title .itemds-fragment-resize {
  background-image: url(images/menugradient2.png);
  background-size: contain; }

.section-container.auto > section > .title a, .section-container.auto > section > .title .itemds-fragment-edit, .section-container.auto > section > .title .itemds-fragment-delete, .section-container.auto > section > .title .itemds-fragment-resize, .section-container.auto > .section > .title a:hover, .section-container.auto > .section > .title .itemds-fragment-edit:hover, .section-container.auto > .section > .title .itemds-fragment-delete:hover, .section-container.auto > .section > .title .itemds-fragment-resize:hover {
  background-image: url(images/menugradient2.png);
  background-size: contain; }

#txtSearch, #txtSearch2 {
  padding-right: 30px !important; }

#txtSearch {
  margin-left: 5px; }

.searchbutton {
  position: absolute !important;
  top: 0px !important;
  right: 5px !important;
  height: 30px !important;
  padding: 0px !important;
  margin: 0px !important;
  background: none !important;
  color: rgba(0, 0, 0, 0.75) !important;
  font-size: 0.875rem !important;
  border: none !important; }

a.th img, a.th .th.itemds-fragment-edit, a.th .itemds-fragment-edit.itemds-image, a.th .itemds-fragment-edit.itemds-colorswatch, a.th .itemds-fragment-edit.itemds-textalign, a.th .itemds-fragment-edit.itemds-clipart-icon, a.th .th.itemds-fragment-delete, a.th .itemds-fragment-delete.itemds-image, a.th .itemds-fragment-delete.itemds-colorswatch, a.th .itemds-fragment-delete.itemds-textalign, a.th .itemds-fragment-delete.itemds-clipart-icon, a.th .th.itemds-fragment-resize, a.th .itemds-fragment-resize.itemds-image, a.th .itemds-fragment-resize.itemds-colorswatch, a.th .itemds-fragment-resize.itemds-textalign, a.th .itemds-fragment-resize.itemds-clipart-icon, a.th a.itemds-image, a.th .itemds-image.itemds-fragment-edit, a.th .itemds-image.itemds-fragment-delete, a.th .itemds-image.itemds-fragment-resize, a.th a.itemds-colorswatch, a.th .itemds-colorswatch.itemds-fragment-edit, a.th .itemds-colorswatch.itemds-fragment-delete, a.th .itemds-colorswatch.itemds-fragment-resize, a.th a.itemds-textalign, a.th .itemds-textalign.itemds-fragment-edit, a.th .itemds-textalign.itemds-fragment-delete, a.th .itemds-textalign.itemds-fragment-resize, a.th a.itemds-clipart-icon, a.th .itemds-clipart-icon.itemds-fragment-edit, a.th .itemds-clipart-icon.itemds-fragment-delete, a.th .itemds-clipart-icon.itemds-fragment-resize {
  width: 100%; }

a.preview, .preview.itemds-fragment-edit, .preview.itemds-fragment-delete, .preview.itemds-fragment-resize {
  position: absolute;
  bottom: -10px;
  left: 0px; }

#googlemap img {
  max-width: inherit !important; }

.color1text {
  color: #f95602; }

.color1background {
  background-color: #f95602; }

.color2text {
  color: #a79a93; }

.color2background {
  background-color: #a79a93; }

/* BirdDog Admin Panel */
#admin nav.top-bar {
  margin: 0px;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.5);
  font-family: Tahoma, Helvetica, sans-serif !important; }

#admin .top-bar, #admin .contain-to-grid, #admin .top-bar.expanded .title-area, #admin .top-bar.expanded .has-form, #admin .top-bar a, #admin .top-bar .itemds-fragment-edit, #admin .top-bar .itemds-fragment-delete, #admin .top-bar .itemds-fragment-resize, #admin .top-bar .itemds-fragment-editButtonBase, #admin .toggle-topbar.menu-icon {
  background: url(images/menugradient2.png) top #000000 !important;
  background-size: contain !important;
  font-weight: normal !important;
  font-size: 12px !important;
  color: #ffffff !important;
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.35);
  text-transform: none !important;
  font-family: Tahoma, Helvetica, sans-serif !important; }

#admin .top-bar-section a, #admin .top-bar-section .itemds-fragment-edit, #admin .top-bar-section .itemds-fragment-delete, #admin .top-bar-section .itemds-fragment-resize, #admin .top-bar-section .itemds-fragment-editButtonBase, #admin .top-bar .active a, #admin .top-bar .active .itemds-fragment-edit, #admin .top-bar .active .itemds-fragment-delete, #admin .top-bar .active .itemds-fragment-resize, #admin .top-bar .active .itemds-fragment-editButtonBase {
  background: #000000 !important;
  color: #ffffff !important;
  text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.35);
  text-transform: none !important;
  font-family: Tahoma, Helvetica, sans-serif !important;
  font-size: 12px !important; }

#admin .toggle-topbar.menu-icon:hover, #admin .toggle-topbar.menu-icon:hover > a, #admin .toggle-topbar.menu-icon:hover > .itemds-fragment-edit, #admin .toggle-topbar.menu-icon:hover > .itemds-fragment-delete, #admin .toggle-topbar.menu-icon:hover > .itemds-fragment-resize, #admin .toggle-topbar.menu-icon:hover > .itemds-fragment-editButtonBase, #admin .top-bar-section ul li:hover > a, #admin .top-bar-section ul li:hover > .itemds-fragment-edit, #admin .top-bar-section ul li:hover > .itemds-fragment-delete, #admin .top-bar-section ul li:hover > .itemds-fragment-resize, #admin .top-bar-section ul li:hover > .itemds-fragment-editButtonBase {
  background: #f95602 !important;
  color: #ffffff !important; }

#admin .top-bar.expanded .toggle-topbar a:after, #admin .top-bar.expanded .toggle-topbar .itemds-fragment-edit:after, #admin .top-bar.expanded .toggle-topbar .itemds-fragment-delete:after, #admin .top-bar.expanded .toggle-topbar .itemds-fragment-resize:after {
  box-shadow: 0 10px 0 1px #666, 0 16px 0 1px #666, 0 22px 0 1px #666 !important; }

#admin .top-bar-section ul li:hover > a, #admin .top-bar-section ul li:hover > .itemds-fragment-edit, #admin .top-bar-section ul li:hover > .itemds-fragment-delete, #admin .top-bar-section ul li:hover > .itemds-fragment-resize, #admin .top-bar-section ul li:hover > .itemds-fragment-editButtonBase {
  background: #f95602 !important; }

#admin .top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] {
  border-top: 1px solid #4E4E4E !important;
  border-bottom: 0px !important;
  display: block !important; }

@media only screen and (min-width:40.063em) {
  #admin nav.top-bar {
    height: 30px;
    line-height: 30px; }
  #admin .top-bar-section a, #admin .top-bar-section .itemds-fragment-edit, #admin .top-bar-section .itemds-fragment-delete, #admin .top-bar-section .itemds-fragment-resize, #admin .top-bar-section .itemds-fragment-editButtonBase {
    background: url(images/menugradient2.png) top #000000 !important;
    background-size: contain !important;
    text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.35);
    text-transform: none !important;
    font-family: Tahoma, Helvetica, sans-serif !important;
    font-size: 12px !important; }
  #admin .top-bar-section li:not(.has-form) a:not(.button), #admin .top-bar-section li:not(.has-form) .itemds-fragment-edit:not(.button), #admin .top-bar-section li:not(.has-form) .itemds-fragment-delete:not(.button), #admin .top-bar-section li:not(.has-form) .itemds-fragment-resize:not(.button) {
    line-height: 30px;
    color: #ffffff !important; }
  #admin .top-bar-section > ul > .divider, .top-bar-section > ul > [role="separator"] {
    height: 30px;
    border-right: 1px solid #4E4E4E !important;
    border-left: 0px !important; }
  #admin .top-bar .toggle-topbar.menu-icon a, #admin .top-bar .toggle-topbar.menu-icon .itemds-fragment-edit, #admin .top-bar .toggle-topbar.menu-icon .itemds-fragment-delete, #admin .top-bar .toggle-topbar.menu-icon .itemds-fragment-resize, #admin .top-bar .toggle-topbar.menu-icon .itemds-fragment-editButtonBase, #admin .top-bar .name {
    height: 30px;
    line-height: 30px; }
  #admin .top-bar-section ul li:hover > a, #admin .top-bar-section ul li:hover > .itemds-fragment-edit, #admin .top-bar-section ul li:hover > .itemds-fragment-delete, #admin .top-bar-section ul li:hover > .itemds-fragment-resize, #admin .top-bar-section ul li:hover > .itemds-fragment-editButtonBase {
    background: url(images/menugradient2.png) top #f95602 !important;
    background-size: contain !important; } }

/* End */
/* BirdDog Footer Links */
.BirdDogLink {
  font-size: 8pt !important;
  font-family: Tahoma, Helvetica, sans-serif !important;
  color: white;
  line-height: 12pt;
  text-align: center !important;
  margin-top: 20px; }

.BirdDogLink a:link, .BirdDogLink .itemds-fragment-edit:link, .BirdDogLink .itemds-fragment-delete:link, .BirdDogLink .itemds-fragment-resize:link, .BirdDogLink a:visited, .BirdDogLink .itemds-fragment-edit:visited, .BirdDogLink .itemds-fragment-delete:visited, .BirdDogLink .itemds-fragment-resize:visited {
  color: white;
  text-decoration: none; }

.BirdDogLink a:hover, .BirdDogLink .itemds-fragment-edit:hover, .BirdDogLink .itemds-fragment-delete:hover, .BirdDogLink .itemds-fragment-resize:hover, .BirdDogLink a:active, .BirdDogLink .itemds-fragment-edit:active, .BirdDogLink .itemds-fragment-delete:active, .BirdDogLink .itemds-fragment-resize:active {
  color: #f95602 !important;
  background: #000000 !important;
  text-decoration: underline overline !important; }

.top-right-icon {
  position: absolute;
  top: 0.5rem;
  right: 0.6875rem;
  cursor: pointer; }

/* Make-up for the lack of a proper vertical top-nav */
.subtitle {
  font-family: "Bitter", serif;
  background: white;
  color: #141414;
  text-shadow: none;
  padding: 0.625rem;
  margin: 0px !important; }

.subtitle:hover {
  background: #c64302; }

/* For Itemform3 */
.pricepanel.fixed {
  position: relative !important; }

@media only screen and (min-width:40.063em) {
  .pricepanel.fixed {
    width: 233px !important;
    left: auto !important;
    position: fixed !important; } }

/* Miscellaneous */
.poscolor {
  color: #2e8f34 !important; }

.negcolor {
  color: #9c2131 !important; }

.onsaleribbon {
  background: #f95602 !important;
  color: white !important;
  padding-left: 0.9375rem;
  position: relative; }

.onsaleribbon:after {
  content: url(images/icons/Sale48.png);
  display: block;
  position: absolute;
  bottom: -0.5625rem;
  right: 0.9375rem; }

.blogpost .posted {
  font-size: 12px;
  font-style: italic; }

.blogpost .posted .name:before {
  content: "Posted by "; }

.blogpost .posted .dateblock .fullday:before {
  content: " on "; }

.blogpost .posted .dateblock .fullday:after {
  content: ", "; }

input.hasDatepicker {
  margin: 0 1rem 1rem 0;
  display: inline-block; }

/*End foundationBase*/
/*Start Post*/
@media only screen and (min-width:40.063em) {
  nav.top-bar {
    margin: 0px !important; } }

/* Cookie Bar */
#cookie-bar {
  background: #111111;
  height: auto;
  line-height: 24px;
  color: #eeeeee;
  text-align: center;
  padding: 3px 0; }

#cookie-bar.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }

#cookie-bar.fixed.bottom {
  bottom: 0;
  top: auto; }

#cookie-bar p {
  margin: 0;
  padding: 0; }

#cookie-bar a, #cookie-bar .itemds-fragment-edit, #cookie-bar .itemds-fragment-delete, #cookie-bar .itemds-fragment-resize {
  color: #ffffff;
  display: inline-block;
  border-radius: 3px;
  text-decoration: none;
  padding: 0 6px;
  margin-left: 8px; }

#cookie-bar .cb-enable {
  background: #007700; }

#cookie-bar .cb-enable:hover {
  background: #009900; }

#cookie-bar .cb-disable {
  background: #990000; }

#cookie-bar .cb-disable:hover {
  background: #bb0000; }

#cookie-bar .cb-policy {
  background: #0033bb; }

#cookie-bar .cb-policy:hover {
  background: #0055dd; }

/*End Post*/
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlcyI6WyJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9BcHBfVGhlbWVzL0ZvdW5kYXRpb25PbmUvYXBwLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9BcHBfVGhlbWVzL0ZvdW5kYXRpb25PbmUvX3NldHRpbmdzLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9fbWFzdGVyLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9fZm91bmRhdGlvbkJhc2Uuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL0FwcF9UaGVtZXMvRm91bmRhdGlvbk9uZS9fcG9zdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9fZnVuY3Rpb25zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL19zZXR0aW5ncy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvX2ZsZXgtZ3JpZC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm91bmRhdGlvbi1leHRlbnNpb25zL19mb3Jtcy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvX2xhZGRhLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9fbG9hZGluZy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9faXRlbURlc2lnbmVyLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9fY2hlY2tvdXQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX2hlbHAuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9jb21wb25lbnRzL19zaW1wbGVzZWFyY2guc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX3NpbXBsZS1ncmlkLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9jb21wb25lbnRzL192YWxpZGF0ZS5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9fZmFuY3l0cmVlLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9jb21wb25lbnRzL193ZWJzaXRlZWRpdG9yLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9jb21wb25lbnRzL19rbm9ja291dC1kZWJ1Zy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9fZmF1eHRhYmxlLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9jb21wb25lbnRzL19lbnRpdHlmb3JtZmllbGQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX3NwbGFzaC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9hcC92b3VjaGVyL3ZvdWNoZXItZWRpdC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9fY29kZW1pcnJvci5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9mb3Jtcy9fZWxmaW5kZXItZWRpdHJvdy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9faGVhZGVyLWdyaWQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2FyZWFzL2ludmVudG9yeS9pdGVtcy9fZWRpdC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvYXJlYXMvYnJhaW4vaW5ib3gvX2luYm94LXRhc2stZ3JpZC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9hcC9wdXJjaGFzZU9yZGVyL19wdXJjaGFzZW9yZGVyLWVkaXQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX2RpYWxvZy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvY29tcG9uZW50cy9faXRlbS1zZWFyY2guc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX2ZpbGV1cGxvYWQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX2hhcy13ZWItY2F0ZWdvcnkuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2NvbXBvbmVudHMvX3BhbmVsLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2dyaWQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2FsZXJ0LWJveGVzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Jsb2NrLWdyaWQuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYnV0dG9uLWdyb3Vwcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2NsZWFyaW5nLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLWJ1dHRvbnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZmxleC12aWRlby5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19pbmxpbmUtbGlzdHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fam95cmlkZS5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19rZXlzdHJva2VzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2xhYmVscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19tYWdlbGxhbi5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wcmljaW5nLXRhYmxlcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wcm9ncmVzcy1iYXJzLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JhbmdlLXNsaWRlci5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fc2lkZS1uYXYuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fc3BsaXQtYnV0dG9ucy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19zdWItbmF2LnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190YWJsZXMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdGFicy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190aHVtYnMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9vbHRpcHMuc2NzcyIsImJvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190eXBlLnNjc3MiLCJib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX29mZmNhbnZhcy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9mb250LWF3ZXNvbWUvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9mb250LWF3ZXNvbWUvc2Nzcy9fbWl4aW5zLnNjc3MiLCJCaXJkRG9nU29mdHdhcmUuV2ViUHJvamVjdHMvQmlyZERvZ1NvZnR3YXJlLldlYi9UaGVtZS9mb250LWF3ZXNvbWUvc2Nzcy9fcGF0aC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm9udC1hd2Vzb21lL3Njc3MvX2NvcmUuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2ZvbnQtYXdlc29tZS9zY3NzL19sYXJnZXIuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2ZvbnQtYXdlc29tZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm9udC1hd2Vzb21lL3Njc3MvX2xpc3Quc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2ZvbnQtYXdlc29tZS9zY3NzL19ib3JkZXJlZC1wdWxsZWQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2ZvbnQtYXdlc29tZS9zY3NzL19zcGlubmluZy5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm9udC1hd2Vzb21lL3Njc3MvX3JvdGF0ZWQtZmxpcHBlZC5zY3NzIiwiQmlyZERvZ1NvZnR3YXJlLldlYlByb2plY3RzL0JpcmREb2dTb2Z0d2FyZS5XZWIvVGhlbWUvZm9udC1hd2Vzb21lL3Njc3MvX3N0YWNrZWQuc2NzcyIsIkJpcmREb2dTb2Z0d2FyZS5XZWJQcm9qZWN0cy9CaXJkRG9nU29mdHdhcmUuV2ViL1RoZW1lL2ZvbnQtYXdlc29tZS9zY3NzL19pY29ucy5zY3NzIiwiYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19nbG9iYWwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDS0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QU1MQTtFQUNFLFNBQVM7O0FBR1g7RUFDRSxNQUFNOztBK0VvU1IsSUFBSTtFQUdFLGFBQWE7O0FBQ25CLElBQUk7RUFJRSxhQUFhO0VBQ2IsT0FBTzs7QUFDYixJQUFJO0VBR0UsYUFBYTtFQUNiLE9oQmpQTjs7QWdCa1BBLElBQUk7RUFHRSxhQUFhO0VBQ2IsT0FBTzs7QUFDYixJQUFJO0VBR0UsYUFBYTtFQUNiLE9BQU87O0FBQ2IsSUFBSTtFQUdFLGFBQWE7RUFDYixP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QyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQXNDM0Y7SUFoRUksVUFBVTtJQXlCQSxNQUFtQjtJQUFrQyxPQUF3QjtFQTBDM0Y7SUFuRUksVUFBVTtJQTBCQSxPQUF3QjtJQUFrQyxNQUFtQjtFQTRDM0YsU0FBUztJQXRFTCxVQUFVO0lBWVYsY0FBYztJQUNkLGVBQWU7SUFnQndCLE9n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T0FBTyxPQUFPO0VxQ2xVUix1QnJDb1VzQztFcUNsVXhDLGVyQ2tVd0M7RXFDdlR0QywrQnJGNk5VO0VxRjVOViw0QnJGNE5VO0VxRjNOVixtQ3JGMk5VO0VxRjFOVixnQ3JGME5VO0VxRnhOWiwyQnJGd05ZO0VxRnZOWix3QnJGdU5ZOztBZ0QwRmhCLFFBQVEsT0FBTztFcUNwVVQsdUJyQ3FVdUM7RXFDblV6QyxlckNtVXlDO0VxQ3hUdkMsZ0NyRjZOVTtFcUY1TlYsNkJyRjROVTtFcUYzTlYsb0NyRjJOVTtFcUYxTlYsaUNyRjBOVTtFcUZ4TlosNEJyRndOWTtFcUZ2TloseUJyRnVOWTs7QWdEMkZoQixPQUFPLE9BQU87RXFDclVSLHVCckNzVXFDO0VxQ3BVdkMsZXJDb1V1QztFcUN6VHJDLCtCckY4Tlc7RXFGN05YLDRCckY2Tlc7RXFGNU5YLG1DckY0Tlc7RXFGM05YLGdDckYyTlc7RXFGek5iLDJCckZ5TmE7RXFGeE5iLHdCckZ3TmE7O0FnRDJGakIsUUFBUSxPQUFPO0VxQ3RVVCx1QnJDdVVzQztFcUNyVXhDLGVyQ3FVd0M7RXFDMVR0QyxnQ3JGOE5XO0VxRjdOWCw2QnJGNk5XO0VxRjVOWCxvQ3JGNE5XO0VxRjNOWCxpQ3JGMk5XO0VxRnpOYiw0QnJGeU5hO0VxRnhOYix5QnJGd05hOzs7QWdEOEZqQixJQUFJLFNBQVMsS0FBSztFQTNLZCxZQWxKYztFQW1KZCxjQUErQjtFQUdZLE9BakpyQjtFQXNKdEIsY0ExSndCO0VBNlQ1QixJQUFJLE9BQU8sU0FBUyxLQUFLLE9BQU87SXFDMVUxQix1QnJDMlUyQjtJcUN6VTdCLGVyQ3lVNkI7SXFDOVQzQiwrQnJGNk5VO0lxRjVOViw0QnJGNE5VO0lxRjNOVixtQ3JGMk5VO0lxRjFOVixnQ3JGME5VO0lxRnhOWiwyQnJGd05ZO0lxRnZOWix3QnJGdU5ZOztBZ0RrR2hCLElBQUksVUFBVSxLQUFLO0VBN0lmLFlBbkxjO0VBb0xkLGFBQTBCO0VBR2tCLE9BbEx0QjtFQXVMdEIsY0EzTHdCO0VBZ1U1QixJQUFJLFFBQVEsU0FBUyxLQUFLLFFBQVE7SXFDN1U1Qix1QnJDOFUyQjtJcUM1VTdCLGVyQzRVNkI7SXFDalUzQixnQ3JGNk5VO0lxRjVOViw2QnJGNE5VO0lxRjNOVixvQ3JGMk5VO0lxRjFOVixpQ3JGME5VO0lxRnhOWiw0QnJGd05ZO0lxRnZOWix5QnJGdU5ZOzs7QWdEdUdoQixLQUFLLGVBQWUsS0FBSyxtQkFBbUIsS0FBSyxlQUFlLEtBQUssbUJBQW1CLEtBQUsseUJBQXlCLEtBQUssZ0JBQWdCLEtBQUssZUFBZSxLQUFLLGdCQUFnQixLQUFLLGlCQUFpQixLQUFLLGlCQUFpQixLQUFLLGNBQWMsS0FBSyxlQUFlLEtBQUssY0FBYztFQWVwUixvQkFBb0I7RUF4UnhCLGtCQXBGZTtFQXFGZixhQXhGa0I7RUF5RmxCLFFBQVE7RUFFTixvQkFoRmU7RUFrRmpCLFlBbEZpQjtFQW1GakIsT0E3RmlCO0VBOEZqQixTQUFTO0VBQ1QsV0E5RmdCO0VBK0ZoQixRQUFRO0VBQ1IsU0FBUztFQUNULFFBQVM7RUFDVCxPQUFPO0VxQ2pCTCxpQnJDa0JrQjtFcUNqQmxCLG9CckNpQmtCO0VxQ2ZwQixZckNlb0I7RXFDaUNsQixvQkFBdUM7RUFDdkMsaUJBQWlDO0VBRW5DLFlBQXVCO0VBakVyQixvQkFBb0I7RUFDcEIsaUJBQWlCO0VBRW5CLFlBQVk7RUFnRWQsS0FBSyxhQUFhLFFBQVEsS0FBSyxpQkFBaUIsUUFBUSxLQUFLLGFBQWEsUUFBUSxLQUFLLGlCQUFpQixRQUFRLEtBQUssdUJBQXVCLFFBQVEsS0FBSyxjQUFjLFFBQVEsS0FBSyxhQUFhLFFBQVEsS0FBSyxjQUFjLFFBQVEsS0FBSyxlQUFlLFFBQVEsS0FBSyxlQUFlLFFBQVEsS0FBSyxZQUFZLFFBQVEsS0FBSyxhQUFhLFFBQVEsS0FBSyxZQUFZLFFBQVEsUUFBUTtJQUUxVyxvQkFBb0I7SUFDcEIsaUJBQWlCO0lBRW5CLFlBQVk7SUFDWixjckMzSXVCO0VBa0czQixLQUFLLGFBQWEsUUFBUSxLQUFLLGlCQUFpQixRQUFRLEtBQUssYUFBYSxRQUFRLEtBQUssaUJBQWlCLFFBQVEsS0FBSyx1QkFBdUIsUUFBUSxLQUFLLGNBQWMsUUFBUSxLQUFLLGFBQWEsUUFBUSxLQUFLLGNBQWMsUUFBUSxLQUFLLGVBQWUsUUFBUSxLQUFLLGVBQWUsUUFBUSxLQUFLLFlBQVksUUFBUSxLQUFLLGFBQWEsUUFBUSxLQUFLLFlBQVksUUFBUSxRQUFRO0lBRzVXLFlBdkdtQjtJQXdHbkIsY0F0R3VCO0lBdUd2QixTQUFTO0VBQ2IsS0FBSyxhQUFhLFlBQVksUUFBUSxXQUFXLEtBQUssZUFBZSxLQUFLLGlCQUFpQixZQUFZLFFBQVEsV0FBVyxLQUFLLG1CQUFtQixLQUFLLGFBQWEsWUFBWSxRQUFRLFdBQVcsS0FBSyxlQUFlLEtBQUssaUJBQWlCLFlBQVksUUFBUSxXQUFXLEtBQUssbUJBQW1CLEtBQUssdUJBQXVCLFlBQVksUUFBUSxXQUFXLEtBQUsseUJBQXlCLEtBQUssY0FBYyxZQUFZLFFBQVEsV0FBVyxLQUFLLGdCQUFnQixLQUFLLGFBQWEsWUFBWSxRQUFRLFdBQVcsS0FBSyxlQUFlLEtBQUssY0FBYyxZQUFZLFFBQVEsV0FBVyxLQUFLLGdCQUFnQixLQUFLLGVBQWUsWUFBWSxRQUFRLFdBQVcsS0FBSyxpQkFBaUIsS0FBSyxlQUFlLFlBQVksUUFBUSxXQUFXLEtBQUssaUJBQWlCLEtBQUssWUFBWSxZQUFZLFFBQVEsV0FBVyxLQUFLLGNBQWMsS0FBSyxhQUFhLFlBQVksUUFBUSxXQUFXLEtBQUssZUFBZSxLQUFLLFlBQVksWUFBWSxRQUFRLFdBQVcsS0FBSyxjQUFjLFFBQVEsWUFBWSxRQUFRLFdBQVc7SUFHLzZCLGtCQXZHakI7RUF5V3BCLEtBQUssYUFBYSxTQUFTLEtBQUssaUJBQWlCLFNBQVMsS0FBSyxhQUFhLFNBQVMsS0FBSyxpQkFBaUIsU0FBUyxLQUFLLHVCQUF1QixTQUFTLEtBQUssY0FBYyxTQUFTLEtBQUssYUFBYSxTQUFTLEtBQUssY0FBYyxTQUFTLEtBQUssZUFBZSxTQUFTLEtBQUssZUFBZSxTQUFTLEtBQUssWUFBWSxTQUFTLEtBQUssYUFBYSxTQUFTLEtBQUssWUFBWSxTQUFTLFFBQVE7SXFDcFd2WCx1QnJGME9VO0lxRnhPWixlckZ3T1k7OztBZ0RnSWhCLFFBQVE7RUFFRixRQUFROzs7QUFHZDtFQUVNLFFBQVM7OztBQUdmLEtBQUssZUFBZSxLQUFLLG1CQUFtQixLQUFLLGdCQUFnQjtFQUszRCxRQUFROztBQUNkLEtBQUssb0JBQW9CLE9BQU8sS0FBSyxpQkFBaUI7RUFJaEQsU0FBUztFQUNULGFBQTBCO0VBQzFCLGNBeFpTO0VBeVpULGVBQWU7RUFDZixnQkFBZ0I7OztBQUd0QixLQUFLO0VBRUMsT0FBTTs7O0FBR1o7RUFqTEUsUUFBUTtFQUNSLFNBdk5pQjtFQXdOakIsUUF2TmdCO0VBdU5sQixTQUFTO0lBSUwsYUF2TmlCO0lBd05qQixZQXpOUTtJQTBOUixTQXhOYTtJQXlOYixRQUFRO0lBQ1IsYUFBMEI7OztBQThLOUIsYUFBYSxPQUFPLEtBQUssUUFBUSxhQUFhLElBQUksUUFBUSxhQUFhLEtBQUs7RUFoSjFFLFNBQVM7RUFDVCxTQTdPNEI7RUE4TzVCLFlBN093QjtFQThPeEIsZUE1UmE7RUE2UmIsV0E5TzhCO0VBK085QixhQTlPZ0M7RUErT2hDLFlBOU8rQjtFQWtQL0IsWWhEdlJZO0VnRHdSK0IsT0FsUFo7QUEwWGpDLGFBQWEsSUFBSSxRQUFRLGFBQWEsS0FBSztFQUNYLFNBQVM7O0FBQ3pDLElBQUksUUFBUSxLQUFLO0VBckpmLFNBQVM7RUFDVCxTQTdPNEI7RUE4TzVCLFlBN093QjtFQThPeEIsZUE1UmE7RUE2UmIsV0E5TzhCO0VBK085QixhQTlPZ0M7RUErT2hDLFlBOU8rQjtFQWtQL0IsWWhEdlJZO0VnRHdSK0IsT0FsUFo7O0FBa1lqQyxPQUFPLE9BQU8sT0FBTyxVQUFVLE9BQU87RUFJOUIsZUFBZTtBQUN2QixPQUFPLEtBQUssbUJBQW1CLE9BQU8sS0FBSztFQUluQyxlQTdiTztBQThiZixPQUFPLE9BQU8sT0FBTyxLQUFLO0VBNUsyQixPaER0UXZDO0FnRHViZCxPQUFPLEtBQUs7RUExS1YsU0FBUztFQUNULFNBN080QjtFQThPNUIsWUE3T3dCO0VBOE94QixlQTVSYTtFQTZSYixXQTlPOEI7RUErTzlCLGFBOU9nQztFQStPaEMsWUE5TytCO0VBa1AvQixZaER2Ulk7RWdEd1IrQixPQWxQWjtBQXVaakMsU0FBUyxRQUFRO0VBRVAsT0FBTztFQUNQLFlBQVk7RUFDWixTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixXQUFXO0VBQ1gsUUFBUTtFQUNSLFNBQVM7QUFFbkIsT0FBTyxJQUFJO0VBR0gsU0FBUzs7QUFFakIsS0FBSyxRQUFRLFFBQVE7RUFJZixlQUFlOztBQUNyQixLQUFLO0VBNU1nRCxPaER0UXZDOztBaUR5QmQ7RUFqQkUsUUFBUTtFQUNSLGFBbkJpQztFQW9CakMsY0F0QjRCO0VBdUI1QixTQW5Cb0I7RUFvQnBCLFlBQVk7RUFDWixVQWxCcUI7RUFrQnZCLGVBQWU7SUFHWCxZQUFZO0lBQ1osT29Dc0xjO0lwQ3JMZCxhQUEwQjtJQUMxQixTQXJCa0I7SUFxQnRCLGVBQWUsS0FBSztNQUNWLFNBbkJxQjs7O0FDb0IvQjtFQUNvQixTQUFTOzs7QUFFN0I7RUFFTSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFlBekNXO0VBMENYLE9BbENtQjtFQW1DbkIsU0FBUztFQUNULEtBQUs7RUFDTCxNQUFtQjtFQUNuQixhQUFhO0VBQ2IsYUFBYTtFQUNiLE9BQU87O0FBQ2IsUUFBUTtFQUdGLFdBQVU7RUFDVixNQUFtQjtFQUNuQixhQUF5Qjs7QUFDL0I7RUFHTSxPQUFPO0VBRVAsU0ExRGdCO0VBMER0Qix5QkFBeUI7SUFFVCxlQUFlOzs7QUFJL0IsbUJBQW1CO0VBRVgsU0FBUztFQUNULFVBQVU7RUFDVixNQWpFc0I7RUFrRXRCLE9BQU87RUFDUCxRQUFRO0VBQ1IsUUFBUTtFQUFoQixtQkFBbUIsWUFBWTtJQUdyQixrQkFBa0I7SUFDbEIsY0E3RU87SUE4RVAsa0JBQWtCO0lBQ2xCLG1CQUFnQztJQUNoQyxvQkFBcUM7SUFDckMsS0FBTztFQUNqQixtQkFBbUIsWUFBWTtJQUVyQixxQkFBcUI7SUFDckIsY0FBYztJQUNkLHFCQUFxQjtJQUNyQixtQkFBZ0M7SUFDaEMsb0JBQXFDO0lBQ3JDLFFBQVU7RUFDcEIsbUJBQW1CLFlBQVk7SUFFYixPQUFTO0VBQTNCLG1CQUFtQixZQUFZO0lBQ2QsTUFBUTs7O0FBSXpCLG1CQUFtQixJQUFJLG1CQUFtQixJQUFJLG1CQUFtQixJQUFJLG1CQUFtQixJQUFJLG1CQUFtQixJQUFJLG1CQUFtQjtFQU9oSSxhQUFhO0VBQ2IsUUFBUTtFQUNSLGFBaEdzQjtFQWlHdEIsT0FuR21COztBQW9HekIsbUJBQW1CO0VBRWIsUUFBUTtFQUNSLFdBdEdrQjtFQXVHbEIsYUFBYTs7QUFDbkI7RUFHTSxPQXBHb0I7RUFxR3BCLFFBcEdxQjtFQXFHckIsUUFuSGU7RUFvSGYsVUFBVTtFQUNWLE9BQXdCO0VBQ3hCLFFBQVE7O0FBQ2Q7RUFFTSxTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7RUFDUixZQTdHb0I7O0FBOEcxQjtFQUdNLFVBQVU7RUFDVixPQUF3QjtFQUN4QixLQUFLO0VBQ0wsT0FBTztFQUNQLGlCQUFpQjtFQUNqQixXQWxIbUI7RUFtSG5CLGFBbEhxQjtFQW1IckIsYUFBYTtFQUFuQixrQkFBa0IsUUFBUSxrQkFBa0I7SUFHNUIsT0FBTzs7QUFDdkI7RUFHTSxVQUFVO0VBQ1YsUUFBUTtFQUNSLE9BQU87RUFDUCxZQUFZO0VBQ1osWUEzSGU7RUE0SGYsU0FBUztFQUNULFNBQVM7RUFDVCxLQUFLO0VBQ0wsTUFBbUI7RUFDbkIsUW1DNEhpQjs7QW5DM0h2QjtFQUdNLGtCQUFrQjtFQUNsQixVQUFVO0VBQ1YsZUFBZTtFQUNmLFNBQVM7RUFFUCxpQkFBaUI7RUFDakIsb0JBQW9CO0VBRXRCLFlBQVk7O0FBQ2xCO0VBR00sWUFBWTtFQUNaLGVBQWU7RUFDZixVQUFVO0VBQ1YsU0FBUztFQUNULEtBQUs7RUFDTCxNQUFNOzs7QUFLUjtFQUFKO0lBQzJCLE9BcExDO0lBb0xrQyxNQUFtQjtJQUNqRixtQkFBbUIsWUFBWTtNQUVuQixjQUFjO01BQ2QscUJBQXFCO01BQ3JCLG1CQUFnQztNQUNoQyxvQkFBcUM7TUFDckMsUUFBVTtJQUN0QixtQkFBbUIsWUFBWTtNQUVuQixjQUFjO01BQ2Qsa0JBQWtCO01BQ2xCLG9CQUFvQjtNQUF3QixxQkFBcUI7TUFDakUsS0E3TGtCO01BOExsQixNQUFNO01BQ04sT0FBUztJQUNyQixtQkFBbUIsWUFBWTtNQUVuQixjQUFjO01BQ2Qsa0JBQWtCO01BQ2xCLG1CQUFtQjtNQUNuQixxQkFBcUI7TUFDckIsS0F0TWtCO01BdU1sQixNQUFRO01BQ1IsT0FBTzs7QUNwS25CLFlBQVk7RUFoQlYsa0JBZmE7RUFnQmIsY0FBYztFQUdZLE9BM0JMO0VBOEJyQixjQXJCdUI7RUFzQnZCLGNBckJ1QjtFQXNCdkIsUUFBUTtFQUNSLGFBbkNlO0VBb0NmLFdBbkNvQjtFQW9DcEIsU0E5QmtCO0VrQ2tCZCx1QnJGME9VO0VxRnhPWixlckZ3T1k7O0FvRHRMaEI7RUE5REUsYUFWa0I7RUFXbEIsYXBEZ0JpQjtFb0RmakIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixhQUFhO0VBQ2IsYUFBYTtFQUNiLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQVNBLFNBaENEO0VBaUNHLFdBN0JDO0VBNkNoQixrQnBEbERLO0VvRHFEcUIsT0E3Q1A7RUEwRXZCLE1BQU07SWlDeERBLHVCckYwT1U7SXFGeE9aLGVyRndPWTtFb0RoTGhCLE1BQU07SWlDMURBLHVCakMyRDhDO0lpQ3pEaEQsZWpDeURnRDtFQUFwRCxNQUFNLFFBQU4sTTNCWkE7STJCdkJJLGtCcERwQ1U7SW9EdUNnQixPQTdDUDtFQStFdkIsTUFBTTtJQXJDRixrQnBEbkNZO0lvRHNDYyxPQTdDUDtFQWdGdkIsTUFBTTtJQXRDRixrQnBEN0NPO0lvRGdEbUIsT0E3Q1A7O0FDRnZCO0VBQ00sWUFQUTtFQVFSLFNBQVM7RUFDVCxXQUFXO0VBQ1gsU0FUYTtFQVNuQiwyQkFBMkI7SUFHbkIsZUFBZTtJQUF2QiwyQkFBMkIsU0FBUztNQUN2QixlQUFlO0lBQTVCLDJCQUEyQixTQUFTLEdBQXBDLDJCQUEyQixTekMyRTNCLHVCeUMzRUEsMkJBQTJCLFN6Q2lGM0IseUJ5Q2pGQSwyQkFBMkIsU3pDdUYzQjtNeUNyRlUsYUFBYTs7bUJDb0JFO0VBQXpCO0lBQ2UsbUJBQW1COztFQUFsQztJQUNhLG1CQUFtQjs7Z0JBRVY7RUFBdEI7SUFDZSxnQkFBZ0I7O0VBQS9CO0lBQ2EsZ0JBQWdCOztjQUVUO0VBQXBCO0lBQ2UsY0FBYzs7RUFBN0I7SUFDYSxjQUFjOztXQUdaO0VBQWY7SUFDYSxXQUFXOztFQUF4QjtJQUNXLFdBQVc7OztBQUl0QjtFQUNNLFVBQVU7RUFBaEIsbUJBQW1CO0lBSVgsaUJBQWlCO0lBQ2pCLFFBQVE7SUFBaEIsbUJBQW1CLEdBQUcsSUFBSSxtQkFBbUIsR0FBRyxHQUFHO01BSXZCLFNBQVM7SUFBckMsbUJBQW1CLEdBQUcsRUFBRTtNQUdDLFNBQVM7RUFDbEMsbUJBQW1CO0lBRU0sa0JBQWtCO0lBQTNDLG1CQUFtQixpQkFBaUI7TUFHdkIsU0FBUztNQUF0QixtQkFBbUIsaUJBQWlCLEdBQUc7UUFFWixTQUFTOztBQUtwQztFQUNNLFNBQVM7RUFDVCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFVBQVU7RUFDVixLQUFLO0VBQ0wsTUFBTTtFQUNOLFlBQVk7RUFDWixhQUFhO0VBQ2IsUUFBUTtFQUNSLGNBQWM7RStCakVkLHVCL0JrRWdCO0UrQmhFbEIsZS9CZ0VrQjtFQUVkLHdCQUF3QjtFQUN4Qiw0QkFBNEI7RUFDNUIsbUNBQW1DO0VBQ25DLG1DQUFtQztFQUNuQyxxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGdDQUFnQztFQUNoQyxnQ0FBZ0M7RUFDaEMsbUJBQW1CO0VBQ25CLHVCQUF1QjtFQUN2Qiw4QkFBOEI7RUFDOUIsOEJBQThCO0VBRWhDLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsMkJBQTJCO0VBQzNCLDJCQUEyQjs7QUFDakM7RUFHTSxVQUFVO0VBQ1YsT0FBTztFQUNQLFVBQVU7RUFDVixZQXJIZTtFQXFIckIsaUJBQWlCO0lBR1QsWUFBWTtJQUNaLFFBQVE7SUFDUixTQUFTO0lBQ1QsVUFBVTtJQUdWLG1CQUFtQjtJQUEzQixpQkFBaUIsd0JBQXdCO01BRTNCLFNBQVM7TUFBTyxXQUFXO0lBQXpDLGlCQUFpQix1QkFBdUIsUUFBUTtNQUd0QyxtQkFBbUI7TUFDbkIsU0FBUztNQUNULFlBQVk7TUFDWixpQkFBaUI7TUFDakIsb0JBQW9CO01BQTlCLGlCQUFpQix1QkFBdUIsUUFBUSxDQUFDO1FBRXJDLFNBQVM7UUFDVCxTQUFTO1FBQ1QsWUFBWTtRQUNaLGlCQUFpQjtRQUNqQixvQkFBb0I7TUFDaEMsaUJBQWlCLHVCQUF1QixRQUFRLENBQUM7UUFFckMsU0FBUztRQUNULFNBQVM7UUFDVCxZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLG9CQUFvQjtJQUVoQyxpQkFBaUIsdUJBQXVCLGNBQWM7TUFFNUMsbUJBQW1CO01BQTdCLGlCQUFpQix1QkFBdUIsY0FBYyxDQUFDO1FBRTNDLG1CQUFrQjtRQUNsQixnQkFBZTtRQUNmLGVBQWM7UUFDZCxjQUFhO1FBQ2IsV0FBVTtRQUNWLDZCQUE0QjtRQUM1QiwwQkFBeUI7UUFDekIsd0JBQXVCO1FBQ3ZCLHFCQUFvQjtNQUNoQyxpQkFBaUIsdUJBQXVCLGNBQWMsQ0FBQztRQUUzQyxtQkFBa0I7UUFDbEIsZ0JBQWU7UUFDZixlQUFjO1FBQ2QsY0FBYTtRQUNiLFdBQVU7UUFDViw2QkFBNEI7UUFDNUIsMEJBQXlCO1FBQ3pCLHdCQUF1QjtRQUN2QixxQkFBb0I7SUFFaEMsaUJBQWlCLHVCQUF1QixjQUFjO01BRzVDLG1CQUFrQjtNQUNsQixnQkFBZTtNQUNmLGVBQWM7TUFDZCxjQUFhO01BQ2IsV0FBVTtNQUFwQixpQkFBaUIsdUJBQXVCLGNBQWMsQ0FBQztRQUUzQyxtQkFBa0I7UUFDbEIsZ0JBQWU7UUFDZixlQUFjO1FBQ2QsY0FBYTtRQUNiLFdBQVU7UUFDViw2QkFBNEI7UUFDNUIsMEJBQXlCO1FBQ3pCLHdCQUF1QjtRQUN2QixxQkFBb0I7TUFDaEMsaUJBQWlCLHVCQUF1QixjQUFjLENBQUM7UUFFM0MsbUJBQWtCO1FBQ2xCLGdCQUFlO1FBQ2YsZUFBYztRQUNkLGNBQWE7UUFDYixXQUFVO1FBQ1YsNkJBQTRCO1FBQzVCLDBCQUF5QjtRQUN6Qix3QkFBdUI7UUFDdkIscUJBQW9CO0lBRWhDLGlCQUFpQiwwQkFBMEI7TUFHakMsVUFBVTtNQUNWLEtBQUs7TUFDTCxNQUFNO01BQ04sT0FBTztNQUNQLG1CQUFrQjtNQUNsQixnQkFBZTtNQUNmLGVBQWM7TUFDZCxjQUFhO01BQ2IsV0FBVTtNQUFwQixpQkFBaUIsMEJBQTBCLENBQUM7UUFHaEMsU0FBUztRQUNULEtBQUs7UUFDTCxNQUFNO1FBQ04sbUJBQWtCO1FBQ2xCLGdCQUFlO1FBQ2YsZUFBYztRQUNkLGNBQWE7UUFDYixXQUFVO01BQ3RCLGlCQUFpQiwwQkFBMEIsRUFBRTtRQUkvQixVQUFVO1FBQ1YsUUFBUTtRQUtWLGtCQTVPTztRQTZPUCxPQTVPZTtRQTZPZixPQUFPO1FBQ1AsU0EzT1k7UUE0T1osV0E5T2M7RUFpUDFCLGlCQUFpQjtJQUdULFVBQVU7SUFDVixLQUFLO0lBQ0wsTUFBbUI7SUFDbkIsV0FBVztJQUVYLE9Bbk93QjtJQW9PeEIsWUFyT2dCO0lBc09oQixTQUFTO0lBSmpCLGlCQUFpQixvQkFBb0I7TUFDdEIsYUFBYTtNQUFLLFNBak9KO0VBcU83QixpQkFBaUI7SUFHVCxVQUFVO0lBQ1YsS0FBSztJQUNMLE9BQXdCO0lBQ3hCLFFBQVE7SUFDUixPQUFPO0lBQ1AsU0FBUztJQUFqQixpQkFBaUIsYUFBYTtNQUdsQixRQUFRO01BQ1Isa0JBNVBLO01BNlBMLFNBQVM7TUFDVCxPQUFPO01BQ1AsVUFBVTtNQUNWLE9BQU87TUFDUCxLQUFLO0lBRWpCLGlCQUFpQixlQUFlO01BSXRCLFNBQVM7TUFDVCxVQUFVO01BQ1YsS0FBSztNQUNMLE9BQXdCO01BQ3hCLE9BQU87TUFDUCxRQUFRO01BQ1IsUUFBUTtNQUNSLFlBQVk7TUFDWixlQUFlO0lBSXpCLGlCQUFpQixZQUFZLFVBQVU7TUFFM0IsT0FBd0I7TUFDeEIsS0FBSztNQUNMLE9BQU87TUFDUCxRQUFRO01BQ1IsUUFBUTtNQUNSLG9CQUFvQjtNQUNwQixjQUFjO01BQTFCLGlCQUFpQixZQUFZLFVBQVUsSUFBSTtRQUU3QixjQUFjO0VBSTVCLGdCQUFnQixPQUFPLGVBQWU7SUFJRixTQUFTO0VBQTdDLGlCQUFpQixhQUFhLGlCQUFpQjtJQUt2QyxVQUFVO0lBQ1YsS0FBSztJQUNMLFlBQVk7SUFDWixPQUFPO0lBQ1AsUUFBUTtJQUNSLGFBQWE7SUFDYixPQUFPO0lBQ1Asa0JBdlRPO0lBd1RQLGFBQWE7SUFDYixTQUFTO0lBQWpCLGlCQUFpQixXQUFXLFFBQVEsaUJBQWlCLFdBQVc7TUFHdEQsa0JBM1RXO0lBNFRyQixpQkFBaUIsY0FBYyxNQUFNLGlCQUFpQixjQUFjO01BRzFELFVBQVU7TUFDVixLQUFLO01BQ0wsWUFBWTtNQUNaLFNBQVM7TUFDVCxPQUFPO01BQ1AsUUFBUTtNQUNSLFFBQVE7RUFFbEIsaUJBQWlCO0lBQ0csTUFBbUI7SUFBdkMsaUJBQWlCLGNBQWM7TUFFckIsb0JBQXFDO01BQ3JDLGNBQWM7TUFDZCxvQkEzVWM7SUE0VXhCLGlCQUFpQixXQUFXLFNBQVM7TUFFM0Isb0JBN1VvQjtFQStVOUIsaUJBQWlCO0lBQ0csT0FBd0I7SUFBNUMsaUJBQWlCLGNBQWM7TUFFckIsY0FBYztNQUNkLG1CQUFnQztNQUNoQyxtQkFyVmM7TUFzVmQsTUFBbUI7TUFDbkIsYUFBMEI7SUFDcEMsaUJBQWlCLFdBQVcsU0FBUztNQUUzQixtQkF6Vm9COztBQTRWOUI7RUFFK0IsWUFBWTs7QUFBM0M7RUFFTSxRQUFRO0VBQ1IsVUFBVTtFQUNWLFVBQVU7RUFDVixLQUFLO0VBQ0wsT0FBTztFQUNQLFlBQVk7RUFDWixTQUFTO0VBQWYsZUFBZTtJQUdQLFNBQVM7SUFDVCxPQWpXYztJQWtXZCxRQWxXYztJQW1XZCxZQXJXaUI7SUF1V2pCLE9BQU87SUFDUCxjQUErQjtJK0JqV2pDLHVCL0JrV2tCO0krQmhXcEIsZS9CZ1dvQjtJQUF4QixlQUFlLEVBQUU7TUFHUCxZQTNXc0I7SUE0V2hDLGVBQWUsRUFBRTtNQUVNLGNBQStCOztBQUt0RCxPQUFPLGlCQUFpQixhQUFhLE9BQU8saUJBQWlCO0VBRXZDLFNBQVM7QUFDL0IsT0FBTztFQUVnQixTQUFTOztBQUk1QjtFQUdKLE9BQU8saUJBQWlCLGFBQWEsT0FBTyxpQkFBaUI7SUFFckMsU0FBUztFQUNqQyxPQUFPO0lBRWtCLFNBQVM7O0FBSzlCO0VBQ0osc0JBQXNCO0lBQ1csUUFBUTtFQUF6QyxzQkFBc0IsMEJBQTBCO0lBRXRDLFVBQVU7SUFDVixhQUFhO0VBQ3ZCLHNCQUFzQixjQUFjLHNCQUFzQixhQUFhLHNCQUFzQixhQUFhLHNCQUFzQjtJQUl4RyxTQUFTOztBQzNTakMsRUFBRTtFQXhDRSxTQUFTO0VBQ1QsUUFwRmdCO0VBcUZoQixhQXBGZ0I7RUFvRnBCLEVBQUUsWUFBWTtJQUdSLFFBbkZpQjtJQW9GakIsT0FuRnFCO0lBb0ZyQixXQW5Gb0I7SUFvRnBCLGFBbkZpQjtJQW1GdkIsRUFBRSxZQUFZLEdBQUcsR0FBakIsRUFBRSxZQUFZLEczQ0hkLHVCMkNHQSxFQUFFLFlBQVksRzNDR2QseUIyQ0hBLEVBQUUsWUFBWSxHM0NTZDtNMkNOUSxTQUFTO01BQ1QsU0FwRmM7TUFxRmQsT0FwRnFCO004QmF2Qix1QnJGME9VO01xRnhPWixlckZ3T1k7SXVEaktoQixFQUFFLFlBQVksRUFBRSxPQUFPLEdBQXZCLEVBQUUsWUFBWSxFQUFFLE8zQ1ZoQix1QjJDVUEsRUFBRSxZQUFZLEVBQUUsTzNDSmhCLHlCMkNJQSxFQUFFLFlBQVksRUFBRSxPM0NFaEIseUIyQ0YwQixFQUFFLFlBQVksR0FBRyxDQUFDLFFBQWxCLEVBQUUsWUFBWSxHM0NWeEMscUIyQ1U0QyxRQUFsQixFQUFFLFlBQVksRzNDSnhDLHVCMkNJNEMsUUFBbEIsRUFBRSxZQUFZLEczQ0V4Qyx1QjJDRjRDO01BRzVCLFlBeEZZO0lBd0I1QixFQUFFLFlBQVksRUFBRSxhQUFhLEdBQTdCLEVBQUUsWUFBWSxFQUFFLGEzQ21EaEIsdUIyQ25EQSxFQUFFLFlBQVksRUFBRSxhM0N5RGhCLHlCMkN6REEsRUFBRSxZQUFZLEVBQUUsYTNDK0RoQjtNMkM3REksUUF2QmlDO01Bd0JqQyxPQXZCcUM7SUF3QnpDLEVBQUUsWUFBWSxFQUFFLFlBQVksT0FBTyxHQUFuQyxFQUFFLFlBQVksRUFBRSxZQUFZLE8zQytDNUIsdUIyQy9DQSxFQUFFLFlBQVksRUFBRSxZQUFZLE8zQ3FENUIseUIyQ3JEQSxFQUFFLFlBQVksRUFBRSxZQUFZLE8zQzJENUIseUIyQzNEc0MsRUFBRSxZQUFZLEVBQUUsYUFBYSxDQUFDLFFBQTlCLEVBQUUsWUFBWSxFQUFFLGEzQytDdEQscUIyQy9Db0UsUUFBOUIsRUFBRSxZQUFZLEVBQUUsYTNDcUR0RCx1QjJDckRvRSxRQUE5QixFQUFFLFlBQVksRUFBRSxhM0MyRHRELHVCMkMzRG9FO01BRXZELFlBekIyQjtJQWdDeEMsRUFBRSxZQUFZLEVBQUUsU0FBUyxHQUF6QixFQUFFLFlBQVksRUFBRSxTM0NzQ2hCLHVCMkN0Q0EsRUFBRSxZQUFZLEVBQUUsUzNDNENoQix5QjJDNUNBLEVBQUUsWUFBWSxFQUFFLFMzQ2tEaEI7TTJDaERNLFl2RHJERztNdURzREgsT0EvQitCO01BZ0MvQixhQS9CZ0M7TUFnQ2hDLFFBL0IyQjtNQStCakMsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLFFBQTFCLEVBQUUsWUFBWSxFQUFFLFMzQ2lDaEIscUIyQ2pDMEIsUUFBMUIsRUFBRSxZQUFZLEVBQUUsUzNDdUNoQix1QjJDdkMwQixRQUExQixFQUFFLFlBQVksRUFBRSxTM0M2Q2hCLHVCMkM3QzBCLFFBQVEsRUFBRSxZQUFZLEVBQUUsU0FBUyxDQUFDLFFBQTFCLEVBQUUsWUFBWSxFQUFFLFMzQ2lDbEQscUIyQ2pDNEQsUUFBMUIsRUFBRSxZQUFZLEVBQUUsUzNDdUNsRCx1QjJDdkM0RCxRQUExQixFQUFFLFlBQVksRUFBRSxTM0M2Q2xELHVCMkM3QzREO1FBRzVDLFl2RDNEUDtFdUQ2R1QsRUFBRSxZQUFZO0lBUVIsTzhCZ0dZO0k5Qi9GWixTQUFTOzs7QUFXZjtFQWhHZ0IsWUFBWTtFQTRFNUIscUJBQXFCLEVBQUUsWUFBWTtJQUs3QixPQUFPO0lBQ1AsU0FBUzs7O0FDdERmO0VBOUJJLGN4RHlaaUI7RXdEeFpqQixjeER5WmdCO0V3RHhaaEIsY0FBYztFQUNkLGV4RGtha0I7RXdEamFsQixTeERrYVk7RXdEaGFaLFl4RGxDSTtFd0RrQ1IsU0FBUztJQUdZLFlBQVk7RUFBakMsU0FBUztJQUNXLGVBQWU7RUFLbkMsT0FBTyxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksT0FBTyxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksT0FBTztJQUFGLE94RHhDL0Q7RXdEeUNSLE9BQU8sSUFBSSxPQUFPLElBQUksT0FBTyxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksT0FBTztJQUl0RCxhQUFhO0lBQUcsZUFBZTtJQUF2QyxPQUFPLEVBQUUsWUFBWSxPQUFPLEVBQUUsWUFBWSxPQUFPLEVBQUUsWUFBWSxPQUFPLEVBQUUsWUFBWSxPQUFPLEVBQUUsWUFBWSxPQUFPLEVBQUU7TUFDNUYsYUFBYTtFQVVuQyxNQUFNO0lBL0JGLGN4RHlaaUI7SXdEeFpqQixjeER5WmdCO0l3RHhaaEIsY0FBYztJQUNkLGV4RGtha0I7SXdEamFsQixTeERrYVk7SXdEaGFaLFlBNEJtQjtJQTVCdkIsTUFBTSxXQUFXO01BR0ksWUFBWTtJQUFqQyxNQUFNLFdBQVc7TUFDRyxlQUFlO0lBS25DLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUyxJQUFJLE1BQU0sU0FBUztNQUExRCxPeER4Qy9EO0l3RHlDUixNQUFNLFNBQVMsSUFBSSxNQUFNLFNBQVMsSUFBSSxNQUFNLFNBQVMsSUFBSSxNQUFNLFNBQVMsSUFBSSxNQUFNLFNBQVMsSUFBSSxNQUFNLFNBQVM7TUFJdEcsYUFBYTtNQUFHLGVBQWU7TUFBdkMsTUFBTSxTQUFTLEVBQUUsWUFBWSxNQUFNLFNBQVMsRUFBRSxZQUFZLE1BQU0sU0FBUyxFQUFFLFlBQVksTUFBTSxTQUFTLEVBQUUsWUFBWSxNQUFNLFNBQVMsRUFBRSxZQUFZLE1BQU0sU0FBUyxFQUFFO1FBQzVJLGFBQWE7SUFhbkMsTUFBTSxTQUFTLENBQUMsS0FBSyxVQUFyQixNQUFNLFM1Q3dCTixxQjRDeEJnQixLQUFLLFVBQXJCLE1BQU0sUzVDOEJOLHVCNEM5QmdCLEtBQUssVUFBckIsTUFBTSxTNUNvQ04sdUI0Q3BDZ0IsS0FBSztNQUVYLE94RG5FRDtFd0RxRVQsTUFBTTtJNkIzQ0EsdUJyRjBPVTtJcUZ4T1osZXJGd09ZOzs7QXlEdEloQjtFQTFFRSxRQW5EbUI7RUFvRG5CLGFBQTBCO0VBQzFCLGVBbEQwQjtFQWtENUIsZUFBZTtJQUdYLFlBQVk7SUFDWixhQUFhO0VBc0VqQixlQUFlO0lBL0RiLGtCQTFEZTtJQTJEZixTQTFEb0I7SUEyRHBCLFlBMURrQjtJQTJEbEIsT0ExRGtCO0lBMkRsQixhQTFEbUI7SUEyRG5CLFdBMURpQjtJQTJEakIsYXpEdENpQjtFeURpR25CLGVBQWU7SUFwRGIsa0JBOURlO0lBK0RmLFNBOURvQjtJQStEcEIsWUE5RGtCO0lBK0RsQixPQTlEa0I7SUErRGxCLGFBOURtQjtJQStEbkIsV0E5RGlCO0lBK0RqQixhekRuRGlCO0V5RGtHbkIsZUFBZTtJQXhDYixrQkFqRVM7SUFrRVQsU0FoRW1CO0lBaUVuQixZQWhFaUI7SUFpRWpCLE9BbkVpQjtJQW9FakIsV0FqRXFCO0lBa0VyQixhQWpFa0I7SUFrRWxCLGFBakV1QjtJQWtFdkIsZUFqRXlCO0VBbUczQixlQUFlO0lBM0JiLGtCQS9FUztJQWdGVCxTQXJFbUI7SUFzRW5CLFlBckVpQjtJQXNFakIsT0F4RWlCO0lBeUVqQixXQXRFcUI7SUF1RXJCLGFBdEVrQjtJQXVFbEIsZUF0RXlCO0VBNEYzQixlQUFlO0lBZmIsa0JBMUVhO0lBMkViLFlBMUVnQjtJQTJFaEIsU0ExRWtCOzs7QUNGcEI7RUFwQkUsa0JBdEJtQjtFQXVCbkIsUUF4Qm9CO0VBeUJwQixRQUFRO0VBQ1IsU0FoQmlCO0VBaUJqQixlQWhCMkI7RUFrQzdCLFVBQVU7SUFYUixZMURuQ087STBEb0NQLFFBQVE7SUFDUixTQUFTO0VBY1gsU0FBUyxXQUFXO0lBaEJsQixZMUQ5QlM7STBEK0JULFFBQVE7SUFDUixTQUFTO0VBZVgsU0FBUyxTQUFTO0lBakJoQixZMURwQmM7STBEcUJkLFFBQVE7SUFDUixTQUFTO0VBZ0JYLFNBQVMsT0FBTyxRQUFoQixTQUFTLE9BQVQsU2pDb0JBO0lpQ3RDRSxZMURyQlk7STBEc0JaLFFBQVE7SUFDUixTQUFTO0VBaUJYLFNBQVM7STJCNUJILHVCckYwT1U7SXFGeE9aLGVyRndPWTtJMEQ1TWhCLFNBQVMsUUFBUTtNMkI5QlgsdUIzQitCMkI7TTJCN0I3QixlM0I2QjZCO0VBQ2pDLFNBQVM7STJCaENILHVCM0JrQzBCO0kyQmhDNUIsZTNCZ0M0QjtJQUFoQyxTQUFTLE9BQU87TTJCbENWLHVCM0JtQzJCO00yQmpDN0IsZTNCaUM2Qjs7QUNxQ2pDO0VBMURFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsT0FuQ3VCO0VBb0N2QixRQW5Dd0I7RUFvQ3hCLFFBQVE7RUFDUixRQUFRO0VBQ1IsY0FBYztFQUNkLGtCQUFrQjtFQVdFLFlBM0NNO0VBc0Y1QixhQUFhO0lBN0RYLFNBQVM7SUFDVCxVQUFVO0lBQ1YsT0FuQ3VCO0lBb0N2QixRQW5Dd0I7SUFvQ3hCLFFBQVE7SUFDUixRQUFRO0lBQ1IsY0FBYztJQUNkLGtCQUFrQjtJQUVoQixTQUFTO0lBQ1QsT0FoQzhCO0lBaUM5QixRQWhDK0I7SUFvRm5DLGFBQWEsZ0JBQWdCO01BRW5CLFlBQVk7TUFDWixhQUE0QjtNQUM1QixVQUFVO01BQ1YsUUFBVTtJQUNwQixhQUFhLGdCQUFnQjtNQUVuQixPQUFPO01BQ1AsUUFBUTtNQUNSLFFBQVE7RUFFbEIsYUFBYTtJQXpEUyxZQTNDTTtJMEJXdEIsdUJyRjBPVTtJcUZ4T1osZXJGd09ZO0kyRC9JaEIsYUFBYSxRQUFRO01BakNELFkzRHBGWDtNcUYwQkgsdUJyRjBPVTtNcUZ4T1osZXJGd09ZO00yRDlLaEIsYUFBYSxRQUFRLG9CQUFvQjtRQUVyQyxZQXpEaUM7RUF3RnJDLGFBQWE7SUE3RFMsWUEzQ007STBCV3RCLHVCckYyT1c7SXFGek9iLGVyRnlPYTtJMkQ1SWpCLGFBQWEsT0FBTztNQXJDQSxZM0RwRlg7TXFGMEJILHVCckYyT1c7TXFGek9iLGVyRnlPYTtNMkQvS2pCLGFBQWEsT0FBTyxvQkFBb0I7UUFFcEMsWUF6RGlDOztBQTZGckM7RUFFTSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFFBQVE7RUFDUixZQUFZOztBQUNsQjtFQTNERSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxLQWxEaUM7RUFtRGpDLE9BckQwQjtFQXNEMUIsUUFyRDJCO0VBc0QzQixRQUFRO0VBQ1IsUUE5QzJCO0VBb0RULFkzRHBGWDtFMkRzRlQsb0JBQW9CO0lBRWhCLFlBekRpQzs7QUM4R3JDO0VBM0dFLFVBQVU7RUFDVixRQUFRO0VBQ1IsT0FBTztFQUNQLFlBakNzQjtFQWtDdEIsWUFuQ2tCO0VBb0NsQixTQUFTO0VBQ1QsU0FBUztFQUNULEtBQUs7RUFDTCxNQUFtQjs7QUF3R3JCLFFBQVE7RUE1RkosWUFBWTtFQUNaLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULE9BQU87RUFDUCxLQUFJO0VBQ0osTUFBbUI7RUE4Q1gsa0JBbkdNO0VBb0dELFNBakdNO0VBbUdQLFFBQVE7RUFLbEIsb0JBdkdjO0VBeUdoQixZQXpHZ0I7RUFrRGhCO0lBcUZKLFFBQVE7TUFwRkYsUUFBUTtNQUNSLFlBQVc7RUFFYjtJQWlGSixRQUFRO01BaEZGLE1BQW1CO0VBQ3pCLE9BQU8sU0FBUyxPQUFPLFVBQVUsY0FBYyxTQUFTLGNBQWM7SUFJdkQsV0FBVztFQUExQixTQUFTLGNBQWMsZ0JBQWdCO0lBR2pCLFlBQVk7RUFBbEMsU0FBUyxhQUFhLGdCQUFnQjtJQUNqQixlQUFlO0VBSWhDO0lBbUVKLFFBQVE7TUFsRUYsYUFBNEI7TUFDNUIsT0F4RWlCO0VBK0duQjtJQTBCSixRQUFRO01BekJGLEtBakhnQjtFQThJdEIsT0FBTyxxQkFBcUIsY0FBYztJQXBCeEMsV0FwSHVCO0lBcUh2QixhQUFhO0lBQ2IsVUFBVTtJQUNWLEtBdEhpQjtJQXVIakIsT0F0SGtCO0lBdUhsQixPQXRIbUI7SUF1SG5CLGFBdEhvQjtJQXVIcEIsUXlCOElxQjs7QXpCaEl2QixNQUFNO0VBR0wsU0FBUTtFQUNSLFlBQVk7O0FBR1Q7RUFFSixRQUFRO0lBckRTLFNBc0QwQjtJQXpDdkM7TUF3Q0osUUFBUTtRQXZDRixLQWpIZ0I7SUF1RWxCO01Ba0ZKLE1BQU0sT0FBTyxhQUFhO1FBakZwQixhQUE0QjtRQUM1QixPQWtGOEM7SUFwRmhEO01Bb0ZKLE1BQU0sUUFBUSxhQUFhO1FBbkZyQixhQUE0QjtRQUM1QixPQW1GOEM7SUFyRmhEO01BcUZKLE1BQU0sU0FBUyxhQUFhO1FBcEZ0QixhQUE0QjtRQUM1QixPQW9GZ0Q7SUF0RmxEO01Bc0ZKLE1BQU0sUUFBUSxhQUFhO1FBckZyQixhQUE0QjtRQUM1QixPQXFGOEM7SUF2RmhEO01BdUZKLE1BQU0sU0FBUyxhQUFhO1FBdEZ0QixhQUE0QjtRQUM1QixPQXNGK0M7RUFHckQsTUFBTSxPQUFPLGFBQWE7SUFHaEIsS0FBSTtJQUNKLE1BQUs7SUFDTCxRQUFRO0lBQ1IsWUFBVztJQUNYLGFBQWE7SUFsR25CO01BMkZKLE1BQU0sT0FBTyxhQUFhO1FBMUZwQixhQUE0QjtRQUM1QixPQTJGc0M7O0FBV3hDO0VBQ0osUUFBUTtJQUFBLFlBQVk7O0FDMUdwQjtFQW5DRSxTQUFTO0VBQ1QsUUFBUTtFQUNSLFNBM0NpQjtFQTRDakIsaUJBekNtQjtFQTBDbkIscUJBekN1QjtFQTBDdkIsYTdEZmlCO0U2RGVuQixVQUFVO0lBR04sUUE1Q21CO0lBNkNuQixXQXZDaUI7SUF1Q3JCLFVBQVUsR0FBRyxDQUFDLEtBQUssVUFBbkIsVUFBVSxHakRxQ1YscUJpRHJDYyxLQUFLLFVBQW5CLFVBQVUsR2pEMkNWLHVCaUQzQ2MsS0FBSyxVQUFuQixVQUFVLEdqRGlEVix1QmlEakRjLEtBQUs7TUFHYixTQUFTO01BQ1QsTzdEeERHO002RHdEVCxVQUFVLEdBQUcsQ0FBQyxLQUFLLFFBQVEsUUFBM0IsVUFBVSxHakRpQ1YscUJpRGpDYyxLQUFLLFFBQVEsUUFBM0IsVUFBVSxHakR1Q1YsdUJpRHZDYyxLQUFLLFFBQVEsUUFBM0IsVUFBVSxHakQ2Q1YsdUJpRDdDYyxLQUFLLFFBQVEsUUFBUSxVQUFVLEdBQUcsQ0FBQyxLQUFLLFFBQVEsUUFBM0IsVUFBVSxHakRpQzdDLHFCaURqQ2lELEtBQUssUUFBUSxRQUEzQixVQUFVLEdqRHVDN0MsdUJpRHZDaUQsS0FBSyxRQUFRLFFBQTNCLFVBQVUsR2pENkM3Qyx1QmlEN0NpRCxLQUFLLFFBQVE7UUFFOUMsT0E5Q1k7SUErQzVCLFVBQVUsRUFBRSxVQUFVLENBQUMsWUFBWSxLQUFLLFVBQXhDLFVBQVUsRUFBRSxVakQ4QloscUJpRDlCdUIsWUFBWSxLQUFLLFVBQXhDLFVBQVUsRUFBRSxVakRvQ1osdUJpRHBDdUIsWUFBWSxLQUFLLFVBQXhDLFVBQVUsRUFBRSxVakQwQ1osdUJpRDFDdUIsWUFBWSxLQUFLO01BR2xDLE9BbkR1QjtNQW9EdkIsYUFqRGlCO01Ba0RqQixhN0QvQmE7STZEZ0NuQixVQUFVLEVBQUU7TUFHTixZQUFZO01BQ1osUUFBUTtNQUNSLFNBQVM7TUFDVCxZQUFZO01BQ1osa0JBaERtQjs7QUN1SXpCLE1BQU07RUFsR0YsVUFBVTtFQWlFVixlQWpHdUI7RUFnQzNCLE1BQU0sUUFBUTtJQUlSLFNBQVM7SUFDVCxRQUFRO0lBQ1IsVUFBVTtJQUNWLE9BQXdCO0lBQ3hCLEtBQUs7SUFDTCxhQUEwQjtJQUFoQyxNQUFNLFFBQVEsSUFBSTtNQUlWLFVBQVU7TUFDVixTQUFTO01BQ1QsT0FBTztNQUNQLFFBQVE7TUFDUixTQUFTO01BQ1QsY0FBYztNQUNkLEtBQUs7TUFFTCxNQUFtQjtJQUMzQixNQUFNLFFBQVEsSUFBSTtNQUVELGtCQXpFYTtFQThFOUIsTUFBTSxRQUFRO0lBRVIsbUJBQWdDO0VBa0N0QyxNQUFNLFFBQVE7SUFFSCxPQWxHbUI7SUFrRzlCLE1BQU0sUUFBUSxJQUFJO01BRVYsa0JBQWtCO01BQ2xCLGNBcEdvQjtNQXFHcEIsS0FBSztNQUNMLGFBcEc2QjtFQXdIckMsTUFBTSxRQUFRLElBQUk7SUFDQSxjQUFjO0VBaEVoQyxNQUFNLE9BQU8sV0FBVztJQUVsQixtQkFBZ0M7RUE2RHRDLE1BQU0sT0FBTyxXQUFXLElBQUk7SUFDVixjQUFjO0VBaEVoQyxNQUFNLE9BQU8sT0FBTyxNQUFwQixNQUFNLE9BQU8sT0FBYixNQUFNLE9yQ2pCTjtJcUNtQk0sbUJBQWdDO0VBRnRDLE1BQU0sT0FBTyxTQUFTO0lBRWhCLG1CQUFnQztFQXlFdEMsTUFBTSxPQUFPO0lBbkVULGVBbkZ1QjtJQW1GM0IsTUFBTSxPQUFPLE1BQU07TUFFUixPQXBGbUI7TUFvRjlCLE1BQU0sT0FBTyxNQUFNLElBQUk7UUFFZixrQkFBa0I7UUFDbEIsY2hCbkdTO1FnQm9HVCxLQUFLO1FBQ0wsYUF0RjZCO0VBb0pyQyxNQUFNLE9BQU87SUF2RFQsZUExRnVCO0lBMEYzQixNQUFNLE9BQU8sT0FBTztNQUVULE9BM0ZtQjtNQTJGOUIsTUFBTSxPQUFPLE9BQU8sSUFBSTtRQUVoQixrQkFBa0I7UUFDbEIsY2hCaEhTO1FnQmlIVCxLQUFLO1FBQ0wsYUE3RjZCO0VBOElyQyxNQUFNLE9BQU87SUE1QlQsZUF4R3VCO0lBd0czQixNQUFNLE9BQU8sT0FBTztNQUVULE9BekdtQjtNQXlHOUIsTUFBTSxPQUFPLE9BQU8sSUFBSTtRQUVoQixrQkFBa0I7UUFDbEIsY0EzR29CO1FBNEdwQixLQUFLO1FBQ0wsYUEzRzZCO0VBaUlyQyxNQUFNLE9BQU87SUFDSSxjQUFjO0VBakIvQixNQUFNLE9BQU8sV0FBVyxJQUFJO0lBQ1YsY0FBYztFQWtCaEMsTUFBTSxPQUFPLFFBQVE7SXVCcklmLGdDckY2TlU7SXFGNU5WLDZCckY0TlU7SXFGM05WLG9DckYyTlU7SXFGMU5WLGlDckYwTlU7SXFGeE5aLDRCckZ3Tlk7SXFGdk5aLHlCckZ1Tlk7RThEdEZoQixNQUFNLE9BQU8sT0FBTztJdUJ2SWQsZ0N2QndJeUQ7SXVCdkl6RCw2QnZCdUl5RDtJdUJ0SXpELG9DdkJzSXlEO0l1QnJJekQsaUN2QnFJeUQ7SXVCbkkzRCw0QnZCbUkyRDtJdUJsSTNELHlCdkJrSTJEOztBQ2pFL0Q7RUE3REUsU0FBUztFQUNULE9BQU87RUFDUCxVQUFVO0VBQ1YsUUE3Q29CO0VBOENwQixhQTdDeUI7RUE4Q3pCLGNBQStCO0VBQy9CLGFBQTBCO0VBQTVCLFNBQVM7SUFHTCxnQkFBZ0I7RUFDcEIsU0FBUyxJQUFJLFNBQVMsSUFBSSxTQUFTO0lBSy9CLE9zQnFKYztJdEJwSmQsU0FBUztJQUNULGFBQTBCO0lBQzFCLGVBQWU7SUFDZixhL0RuQ2U7SStEb0NmLGFBdkRrQjtJQXdEbEIsV0ExRGdCO0lBMkRoQixPL0R2RUs7SStEdUVULFNBQVMsR0FBRyxHQUFaLFNBQVMsR25Ea0JULHVCbURsQkEsU0FBUyxHbkR3QlQseUJtRHhCQSxTQUFTLEduRDhCVCx5Qm1EOUJlLFNBQVMsR0FBRyxHQUFaLFNBQVMsR25Ea0J4Qix1Qm1EbEJlLFNBQVMsR25Ed0J4Qix5Qm1EeEJlLFNBQVMsR25EOEJ4Qix5Qm1EOUI4QixTQUFTLEdBQUcsR0FBWixTQUFTLEduRGtCdkMsdUJtRGxCOEIsU0FBUyxHbkR3QnZDLHlCbUR4QjhCLFNBQVMsR25EOEJ2QztNbUQzQk0saUJBM0RvQjtNQTREcEIsTy9EM0VHO00rRDRFSCxTQTVEWTtNQTREbEIsU0FBUyxHQUFHLENBQUMsUUFBYixTQUFTLEduRGFULHFCbURiYSxRQUFiLFNBQVMsR25EbUJULHVCbURuQmEsUUFBYixTQUFTLEduRHlCVCx1Qm1EekJhLFFBQVEsU0FBUyxHQUFHLENBQUMsUUFBYixTQUFTLEduRGE5QixxQm1EYmtDLFFBQWIsU0FBUyxHbkRtQjlCLHVCbURuQmtDLFFBQWIsU0FBUyxHbkR5QjlCLHVCbUR6QmtDLFFBQVEsU0FBUyxHQUFHLENBQUMsUUFBYixTQUFTLEduRGFuRCxxQm1EYnVELFFBQWIsU0FBUyxHbkRtQm5ELHVCbURuQnVELFFBQWIsU0FBUyxHbkR5Qm5ELHVCbUR6QnVEO1FBRS9DLE9BNURtQjtJQThEM0IsU0FBUyxFQUFFLFFBQVEsR0FBbkIsU0FBUyxFQUFFLFFuRFNYLHVCbURUQSxTQUFTLEVBQUUsUW5EZVgseUJtRGZBLFNBQVMsRUFBRSxRbkRxQlgseUJtRHJCc0IsU0FBUyxFQUFFLFFBQVEsR0FBbkIsU0FBUyxFQUFFLFFuRFNqQyx1Qm1EVHNCLFNBQVMsRUFBRSxRbkRlakMseUJtRGZzQixTQUFTLEVBQUUsUW5EcUJqQyx5Qm1EckI0QyxTQUFTLEVBQUUsUUFBUSxHQUFuQixTQUFTLEVBQUUsUW5EU3ZELHVCbURUNEMsU0FBUyxFQUFFLFFuRGV2RCx5Qm1EZjRDLFNBQVMsRUFBRSxRbkRxQnZEO015RTNFTSx1QnRCVGtCO01zQldwQixldEJYb0I7TUFtRWxCLGFBN0R1QjtNQThEdkIsWS9EckZHO00rRHNGSCxTQXRFWTtNQXVFWixRQTNEa0I7TUE0RGxCLE9BOURpQjtNQThEdkIsU0FBUyxFQUFFLFFBQVEsQ0FBQyxRQUFwQixTQUFTLEVBQUUsUW5EQ1gscUJtRERvQixRQUFwQixTQUFTLEVBQUUsUW5ET1gsdUJtRFBvQixRQUFwQixTQUFTLEVBQUUsUW5EYVgsdUJtRGJvQixRQUFRLFNBQVMsRUFBRSxRQUFRLENBQUMsUUFBcEIsU0FBUyxFQUFFLFFuREN2QyxxQm1ERGdELFFBQXBCLFNBQVMsRUFBRSxRbkRPdkMsdUJtRFBnRCxRQUFwQixTQUFTLEVBQUUsUW5EYXZDLHVCbURiZ0QsUUFBUSxTQUFTLEVBQUUsUUFBUSxDQUFDLFFBQXBCLFNBQVMsRUFBRSxRbkRDbkUscUJtREQ0RSxRQUFwQixTQUFTLEVBQUUsUW5ET25FLHVCbURQNEUsUUFBcEIsU0FBUyxFQUFFLFFuRGFuRSx1Qm1EYjRFO1FBRXBFLFlBakVrQjs7QUMrUDFCLEdBQUc7RUFoT0QsVUFBVTtFQUNWLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLGNBbERvQjtFQW1EcEIsY0FsRG9CO0VBbURwQixlQTNDcUI7RUE4SXJCLFFBQVE7RUFzQ04sWUEzTFE7RUE0TFIsY0EvTGtCO0VBcUR0QixHQUFHLFFBQVE7SUFJUCxVQUFVO0lBQ1YsTUFBbUI7SUFDbkIsU0FBUztJQUNULE9xQmdKYztJckIvSWQsT0FBTztJQUNQLFFBQVE7SUFDUixRQUFRO0lBQ1IsYUFBYTtJQUNiLFlxQjJJYztJQWxJZCxvQkFBb0I7SUFDcEIsaUJBQWlCO0lBRW5CLFlBQVk7RXJCUmQsR0FBRyxRQUFRO0lBS1AsVUFBVTtJQUNWLFNBQVM7SUFDVCxTQUFTO0lBQ1QsT0FBTztJQUNQLFFBQVE7SUFDUixpQkFBaUI7SUFBckIsR0FBRyxRQUFRLEtBQUssUUFBUSxHQUFHLFFBQVEsS0FBSztNQUtsQyxRcUIwTGlCO0VyQnhMdkIsR0FBRyxRQUFRLElBQUk7SUFJWCxVQUFVO0lBQ1YsS0FBSztJQUNMLE1BQW1CO0lBQ25CLFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULGNBekV5QjtJQTBFekIsY0F6RXlCO0lxQmtEekIsb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUVuQixZQUFZO0VyQndCZCxHQUFHLFFBQVEsS0FBSyxLQUFLLFlBQVk7SUFHRCxTQUFTO0VBQXpDLEdBQUcsUUFBUSxLQUFLO0lBR0UsU0FBUztFQUEzQixHQUFHLFFBQVE7SUFDRCxNQUFtQjtJQUFHLFNBQVM7RUFBekMsR0FBRyxRQUFRLEtBQUssaUJBQWlCLE9BQU8sR0FBRyxRQUFRLEtBQUssaUJBQWlCLE9BQU87SUFJekMsTUFBbUI7RUFBMUQsR0FBRyxRQUFRLEtBQUssY0FBYyxXQUFXLE9BQU8sR0FBRyxRQUFRLEtBQUssY0FBYyxXQUFXLE9BQU87SUFFakQsTUFBbUI7RUFBbEUsR0FBRyxRQUFRLEtBQUssZ0JBQWdCLE9BQU8sR0FBRyxRQUFRLEtBQUssZ0JBQWdCLE9BQU87SUFJekMsT0FBd0I7SUFBTSxNQUFtQjtJQUFNLFlxQnVGckU7RXJCdkZ2QixHQUFHLFFBQVEsS0FBSyxhQUFhLFdBQVcsT0FBTyxHQUFHLFFBQVEsS0FBSyxhQUFhLFdBQVcsT0FBTztJQUVoRCxPQUF3QjtJQUFJLE1BQW1CO0VBQTdGLEdBQUcsUUFBUSxJQUFJO0lBR0MsU0FBUztFQUF6QixJQUFJLFFBQVEsR0FBRyxRQUFRO0lBYW5CLGFBQWE7SUFDYixVQUFVO0lBQ1YsWUFBWTtFQWNoQixHQUFHLFFBQVE7SUFHUCxTQUFTO0lBQ1QsYUF1R1k7SUF0R1osV0FBVztFQUdmLEdBQUcsUUFBUSxLQUFLLGNBQWMsV0FBVyxJQUFJO0lBR3ZDLE1BQW1CO0lBQ25CLGFBQTBCO0VBRWhDLEdBQUcsUUFBUSxJQUFJO0lBR1gsT0FBTztJQUNQLFFBQVE7RUFxQlosR0FBRyxRQUFRLElBQUk7SUFHVCxjQUFjO0lBQ2QsWUEvS2E7SUFpTFgsWUFBWTtJQUNaLFlBQVk7SUFFZCxZQUFZO0lBSVYsb0JBQWdEO0lBS2xELFlBQWdEO0VBT3RELEdBQUcsT0FBTyxPQUFPLElBQUksYUFBYSxHQUFHLE9BQU8sT0FBTyxJQUFJO0lBRS9DLFlBdE1XO0lBd01ULFlBQVk7SUFDWixZQUFZO0lBRWQsWUFBWTtFQUVwQixHQUFHLE9BQU87SUFFSyxZQUFZO0VBOEMzQixHQUFHLE9BQU87SUF6SFIsUUFBUTtJQUFWLEdBQUcsT0FBTyxPQUFPO01BR2IsU0FBUztNQUNULGFBTlk7TUFPWixXQUFXO0lBR2YsR0FBRyxPQUFPLE9BQU8sS0FBSyxjQUFjLFdBQVcsSUFBSTtNQUc3QyxNQUFtQjtNQUNuQixhQUEwQjtJQUVoQyxHQUFHLE9BQU8sT0FBTyxJQUFJO01BR2pCLE9BQU87TUFDUCxRQUFRO0VBMEdaLEdBQUcsT0FBTztJQTVIUixRQUFRO0lBQVYsR0FBRyxPQUFPLE9BQU87TUFHYixTQUFTO01BQ1QsYUEySDhFO01BMUg5RSxXQUFXO0lBR2YsR0FBRyxPQUFPLE9BQU8sS0FBSyxjQUFjLFdBQVcsSUFBSTtNQUc3QyxNQUFtQjtNQUNuQixhQUEwQjtJQUVoQyxHQUFHLE9BQU8sT0FBTyxJQUFJO01BR2pCLE9BQU87TUFDUCxRQUFRO0VBNkdaLEdBQUcsT0FBTztJQS9IUixRQUFRO0lBQVYsR0FBRyxPQUFPLE1BQU07TUFHWixTQUFTO01BQ1QsYUE4SDZFO01BN0g3RSxXQUFXO0lBR2YsR0FBRyxPQUFPLE1BQU0sS0FBSyxjQUFjLFdBQVcsSUFBSTtNQUc1QyxNQUFtQjtNQUNuQixhQUEwQjtJQUVoQyxHQUFHLE9BQU8sTUFBTSxJQUFJO01BR2hCLE9BQU87TUFDUCxRQUFRO0VBZ0haLEdBQUcsT0FBTztJcUJ6UUosdUJyQjRRNkI7SXFCMVEvQixlckIwUStCO0lBQW5DLEdBQUcsT0FBTyxRQUFRLElBQUk7TXFCNVFoQix1QnJCNlFxQztNcUIzUXZDLGVyQjJRdUM7RUFDM0MsR0FBRyxPQUFPO0lxQjlRSix1QnJCaVI0QjtJcUIvUTlCLGVyQitROEI7SUFBbEMsR0FBRyxPQUFPLE9BQU8sSUFBSTtNcUJqUmYsdUJyQmtSc0M7TXFCaFJ4QyxlckJnUndDO0lBQTVDLEdBQUcsT0FBTyxPQUFPO01BQ0MsU0FBUzs7bUJBS2tCO0VBQTdDO0lBQTBFLFVBQVU7O0VBQXBGO0lBQXFHLFVBQVU7O0FDbE8vRztFQTFDRSxZakUwY1M7RWlFemNULGVqRWdlb0I7RWlFL2RwQixRQUFRO0VBQVYsTUFBTSxPQUFPLE1BQU07SUFJZixZakU1Q0s7SWlFOENULE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sTUFBTSxHQUFHO01BR2hFLFNqRTRjdUI7TWlFM2N2QixXakV3Y2U7TWlFdmNmLGFqRXljaUI7TWlFeGNqQixPakVqREE7TWlFa0RBLFlvQmdLVTtFcEIzSmxCLE1BQU0sR0FBRyxJQUFJLE1BQU0sR0FBRztJQUdoQixTakVtY3dCO0lpRWxjeEIsV2pFbWNnQjtJaUVsY2hCLE9qRW1jaUI7RWlFbGN2QixNQUFNLEVBQUUsT0FBTyxNQUFNLEVBQUUsTUFBTSxNQUFNLEVBQUU7SUFJWCxZakU2YU47RWlFNWFwQixNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLEdBQUcsSUFBSSxNQUFNLE1BQU0sR0FBRztJQU1yRSxTakUyYkE7SWlFM2J5QixhakV3YnJCOztBa0VuZnBCO0VtQm9IRSxPQUFNO0VuQmpIRixlQUFlO0VtQmlIckIsS0FBSyxTQUFTLEtBQUs7SUFDRyxTQUFTO0lBQUssU0FBUztFQUE3QyxLQUFLO0lBQ08sT0FBTztFbkJuSG5CLE1BQU07SUFFRSxVQUFVO0lBQ1YsZUFBZTtJQUNmLE9tQjhMVTtJbkI5TGxCLE1BQU0sS0FBSyxHQUFYLE1BQU0sS3REa0VOLHVCc0RsRUEsTUFBTSxLdER3RU4seUJzRHhFQSxNQUFNLEt0RDhFTjtNc0Q1RVUsU0FBUztNQUNULFlBdkJpQjtNQXdCakIsT0FyQm1CO01Bc0JuQixTQUFTO01BQ1QsYWxFSVM7TWtFSFQsV0F2QmtCO01BdUI1QixNQUFNLEtBQUssQ0FBQyxRQUFaLE1BQU0sS3REMkROLHFCc0QzRFksUUFBWixNQUFNLEt0RGlFTix1QnNEakVZLFFBQVosTUFBTSxLdER1RU4sdUJzRHZFWTtRQUNRLFlBMUJhO0lBMkJqQyxNQUFNLEVBQUUsUUFBUSxHQUFoQixNQUFNLEVBQUUsUXREeURSLHVCc0R6REEsTUFBTSxFQUFFLFF0RCtEUix5QnNEL0RBLE1BQU0sRUFBRSxRdERxRVI7TXNEcEVxQixZQTdCYTtFQWdDbEMsS0FBSyxRQUFRLEVBQUUsYUFBYSxHQUE1QixLQUFLLFFBQVEsRUFBRSxhdERxRGYsdUJzRHJEQSxLQUFLLFFBQVEsRUFBRSxhdEQyRGYseUJzRDNEQSxLQUFLLFFBQVEsRUFBRSxhdERpRWY7SXlFOURNLCtCckY2TlU7SXFGNU5WLDRCckY0TlU7SXFGM05WLG1DckYyTlU7SXFGMU5WLGdDckYwTlU7SXFGeE5aLDJCckZ3Tlk7SXFGdk5aLHdCckZ1Tlk7RWtFN05oQixLQUFLLFFBQVEsRUFBRSxZQUFZLEdBQTNCLEtBQUssUUFBUSxFQUFFLFl0RGtEZix1QnNEbERBLEtBQUssUUFBUSxFQUFFLFl0RHdEZix5QnNEeERBLEtBQUssUUFBUSxFQUFFLFl0RDhEZjtJeUU5RE0sZ0NyRjZOVTtJcUY1TlYsNkJyRjROVTtJcUYzTlYsb0NyRjJOVTtJcUYxTlYsaUNyRjBOVTtJcUZ4TlosNEJyRndOWTtJcUZ2TloseUJyRnVOWTtFa0V6TmhCLEtBQUssVUFBVTtJQUVMLFVBQVU7SUFDVixPQUFPO0lBQ1AsU0FBUztJQUNULEtBQUs7O0FBR2Y7RW1CaUZFLE9BQU07RW5CN0VGLGVBN0N1QjtFQThDdkIsT0FBTztFbUI0RWIsYUFBYSxTQUFTLGFBQWE7SUFDYixTQUFTO0lBQUssU0FBUztFQUE3QyxhQUFhO0lBQ0QsT0FBTztFbkI5RW5CLGdCQUFnQjtJQUVSLFNBQVM7SUFDVCxPbUIwSlU7SW5CekpWLFNBQVM7SUFDVCxPQUFPO0lBQWYsZ0JBQWdCLFFBQVE7TUFDTCxTQUFTO01BQU8sT0FBTztJQUExQyxnQkFBZ0IsUUFBUTtNQUNGLFNBcERDO0VBcUR2QixhQUFhO0lBRUwsU0FBUztJQUFqQixhQUFhLFlBQVk7TUFDSixTQUFTOztBQUcxQjtFQUNKLEtBQUs7SUFFSyxPQUFPO0lBQ1AsT21CMklRO0luQjFJUixlQTlEK0I7RUFpRXpDLGFBQWE7SUFFSCxPQUFPO0lBQ1AsT21Cb0lRO0luQm5JUixhQUEwQjs7QUFJcEMsT0FBTyxnQkFBZ0I7RUFFZixTQUFTO0VBQ1QsT0FBTzs7O0FDbkNmLEt2RDRFQSxlQVlBLHFCQWtCQSxtQkFvREE7RXVEcExFLGFBQWE7RUFDYixTQUFTO0VBQ1QsUUFBUTtFQUNSLFdBQVc7RUFFVCxvQkF6QmU7RUEyQmpCLFlBM0JpQjtFa0J1RWYsb0JBQW9CO0VBQ3BCLGlCQUFpQjtFQUVuQixZQUFZO0VsQi9DZCxHQUFHLFF2RDJGSCxhdUQzRkcsUXZEdUdILG1CdUR2R0csUXZEeUhILGlCdUR6SEcsUXZENktILG9CdUQ3S0csUUFBUSxHQUFHLFF2RG9CZCxrQ0F1RUEsYXVEM0ZjLFF2RHVHZCxtQnVEdkdjLFF2RDZHZCw4QkFNQSx3QkFNQSxpQnVEekhjLFF2RGlJZCw0QkE0Q0Esb0J1RDdLYztJQUtSLG9CQS9CbUI7SUFpQ3JCLFlBakNxQjtFQTRDekIsR0FBRyxTQUFBLE92RHlFSCxldUR6RUcsT3ZEcUZILHFCdURyRkcsT3ZEdUdILG1CdUR2R0csT3ZEMkpIO0l5RTFMTSx1QnJGME9VO0lxRnhPWixlckZ3T1k7OztBb0U1T2hCO0VBRU0sZUExQmtCO0VBMkJsQixRQXRCZ0I7RUF1QmhCLGFBM0JnQjtFQTRCaEIsT0EzQmU7RUEyQnJCLFFBQVEsUUFBUSxRQUFRO0lBSWhCLGVBOUJzQjtJQStCdEIsT3BFbENDO0VvRW1DVCxRQUFRLFdBQVcsUUFBUTtJQUdQLE9BQU87O0FBQzNCO0VBR00sU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0VBQ1QsYUFuQ2dCO0VBb0NoQixXQXJDYztFQXNDZCxhQW5DZ0I7RUFvQ2hCLFNBekNZO0VBMENaLFdBQVc7RUFDWCxNQUFtQjtFQUNuQixPQUFPO0VBQ1AsT0F6Q2U7RUEwQ2YsWUE3Q087RUE2Q2IsV0FBVztJQUdILFNBQVM7SUFDVCxNQXRDVztJQXVDWCxVQUFVO0lBQ1YsT0FBTztJQUNQLFFBQVE7SUFDUixRQUFRO0lBQ1IsY0FBYztJQUNkLEtBQU87SUFBZixXQUFXLElBQUk7TUFHTCxNQUFNO01BQ04sT0FoRFM7RUFrRG5CLFFBQVE7SWlCM0NGLHVCckYwT1U7SXFGeE9aLGVyRndPWTtFb0UzTGhCLFFBQVE7SWlCL0NGLHVCckYyT1c7SXFGek9iLGVyRnlPYTtJb0UxTGpCLFFBQVEsU0FBUztNQUVQLE1BQU07RUFFaEIsUUFBUTtJQUdBLE9BQU87SUFDUCxlQUFlOztBQUV2QjtFQUdNLFNBQVM7RUFDVCxXQTVFb0I7RUE2RXBCLE9BM0VxQjtFQTRFckIsYUE3RXNCOztBQWdGeEI7RUFDSixXQUFXO0lBRUQsY0FBYztJQUNkLEtBQU87RUFDakIsUUFBUSxXQUFXO0lBRVQsY0FBYztJQUNkLEtBQUs7SUFDTCxRQUFVO0VBQ3BCLFFBQVEsV0FBVyxRQUFRO0lBR0wsT0FBTztFQUE3QixRQUFRLFlBQVk7SUFHVixjQUFjO0lBQ2QsT0FBUztJQUNULE1BQU07SUFDTixLQUFLO0lBQ0wsWUEvRlM7RUFnR25CLFFBQVEsYUFBYTtJQUVYLGNBQWM7SUFDZCxPQUFPO0lBQ1AsTUFBUTtJQUNSLEtBQUs7SUFDTCxZQXRHUzs7QUNrRW5CLElBQUk7RUFNRSxhQUFhO0VBQ2IsT0FqQ2M7OztBQW9DcEI7RUFFTSxPQUFPO0VBQ1AsWXJFNUZFO0VxRTRGUixpQkFBaUI7SUFFQSxlckUyQk07O0FxRTFCdkI7RUFJTSxPQUFPO0VBQ1AsTUFBbUI7RUFDbkIsVUFBVTtFQUNWLEtBQUs7RUFDTCxTQUFTO0VBQWYsTUFBTSxTQUFTLEtBQUs7SUFHVixZQUFZO0lBQ1osUUFBUTtJQUNSLE9BQU87SUFDUCxZQUFZO0lBQXRCLE1BQU0sU0FBUyxLQUFLLFVBQVU7TUFHcEIsVUFBVTtNQUNWLE9BQU87TUFDUCxTQUFTO0lBQ25CLE1BQU0sU0FBUyxLQUFLLFVBQVU7TUFHcEIsU0FBUztNQUNULFlyRUNNOztBcUVFaEI7RUFHTSxVQUFVO0VBQ1YsUXJFTlU7RXFFT1YsYXJFUFU7RXFFUVYsVUFBVTtFQUNWLFlyRWpJRTtFcUVrSUYsZXJFVGlCO0VxRVN2QixTQUFTO0lBSUQsZUFBZTtJQUNmLFlBQVk7RUFDcEIsU0FBUztJQUVJLFdBQVc7RUFBeEIsU0FBUyxNQUFNLFNBQVM7SUFHVixlQUFlO0VBQTdCLFNBQVM7SUFFSyxRQUFRO0lBQU0sYUFBYTtJQUFRLGdCQUFnQjtJQUFRLFdBL0cvQztFQStHMUIsU0FBUztJQUdELGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLFdBckhrQjtFQXlIMUIsU0FBUztJQUlELFVBQVU7SUFDVixRQUFRO0VBQ2hCLFNBQVM7SUFHRCxRckUxQ1E7SXFFMkNSLFFBQVE7SUFDUixXakVoTEc7SWlFZ0xYLFNBQVMsTUFBTTtNQUdMLGFyRS9DTTtNcUVnRE4sV3JFeENlO01xRXlDZixRQUFRO01BQWxCLFNBQVMsTUFBTSxHQUFHLEdBQWxCLFNBQVMsTUFBTSxHekR0RmYsdUJ5RHNGQSxTQUFTLE1BQU0sR3pEaEZmLHlCeURnRkEsU0FBUyxNQUFNLEd6RDFFZjtReUQ0RVksYXJFNUNVO1FxRTZDVixPckV6Q1E7UXFFMENSLE9BQU87UUFDUCxTQUFTO1FBQ1QsU0FBUztFQUdyQixTQUFTO0lBSUQsVUFBVTtJQUNWLE9BQXdCO0lBQ3hCLEtBQUs7SUFBYixTQUFTLGVBQWUsR0FBeEIsU0FBUyxlekRyR1QsdUJ5RHFHQSxTQUFTLGV6RC9GVCx5QnlEK0ZBLFNBQVMsZXpEekZUO015RDRGVSxPckV4RFU7TXFFeURWLGdCckV0Qm1CO01xRXVCbkIsV3JFdEJtQjtNcUV1Qm5CLGFyRXRCZ0I7TXFFdUJoQixVQUFVO01BQ1YsU0FBUztNQUNULFNBQVM7TUFDVCxRckUxRU07TXFFMkVOLGFyRTNFTTtJcUU0RWhCLFNBQVMsY0FBYztNQUliLE9yRTFEWTtNcUUyRFosS0FBSztNQUNMLFlBQVk7TUFDWixjQUEyQjtNQUFyQyxTQUFTLGNBQWMsV0FBVyxHQUFsQyxTQUFTLGNBQWMsV3pEeEh2Qix1QnlEd0hBLFNBQVMsY0FBYyxXekRsSHZCLHlCeURrSEEsU0FBUyxjQUFjLFd6RDVHdkI7UXlEa0hZLFFBQVE7UUFDUixhQUFhO1FBQ2IsU0FBUztRQUNULGVBQWU7UUFDZixPckU1Q2E7UXFFNkNiLFVBQVU7UUFBdEIsU0FBUyxjQUFjLFdBQVcsQ0FBQyxTQUFuQyxTQUFTLGNBQWMsV3pEbkl2QixxQnlEbUltQyxTQUFuQyxTQUFTLGNBQWMsV3pEN0h2Qix1QnlENkhtQyxTQUFuQyxTQUFTLGNBQWMsV3pEdkh2Qix1QnlEdUhtQztVQUdyQixTQUFRO1VBQ1IsVUFBVTtVQUNWLE9BQXdCO1VBQ3hCLFNBQVM7VUFDVCxPQUFPO1VBQ1AsS0FBSTtVQUNKLFFBQVE7VUFHTixvQkFBcUM7VUFJdkMsWUFBaUM7RUFNL0MsUUFBUTtJQUlBLFFBQVE7SUFDUixZQUFZO0lBQXBCLFFBQVEsVUFBVTtNQUVJLFlyRW5QZDtJcUVxUFIsUUFBUSxVQUFVLGVBQWUsR0FBakMsUUFBUSxVQUFVLGV6RGxLbEIsdUJ5RGtLQSxRQUFRLFVBQVUsZXpENUpsQix5QnlENEpBLFFBQVEsVUFBVSxlekR0SmxCO015RHVKYyxPckUzRW1CO01xRTJFakMsUUFBUSxVQUFVLGVBQWUsQ0FBQyxTQUFsQyxRQUFRLFVBQVUsZXpEbktsQixxQnlEbUtrQyxTQUFsQyxRQUFRLFVBQVUsZXpEN0psQix1QnlENkprQyxTQUFsQyxRQUFRLFVBQVUsZXpEdkpsQix1QnlEdUprQztRQUlsQixvQkFBcUM7UUFJdkMsWUFBaUM7O0FBVS9DO0VBSU0sTUFBbUI7RUFDbkIsVUFBVTtFQUNWLE9BQU87RWdCak1ULG9CQUFvQjtFQUNwQixpQkFBaUI7RUFFbkIsWUFBWTtFaEIrTGQsaUJBQWlCO0lBR1QsT0FBTztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsWXJFclJBO0lxRXNSQSxXakVsU0c7SWlFbVNILFFBQVE7RUFDaEIsaUJBQWlCLFVBQVUsaUJBQWlCO0lBSXBDLFlBbE9vQjtJQW1PcEIsT0FBTztJQUNQLFFBQVE7SUFDUixPQUFPO0VBR2YsaUJBQWlCLEdBQUcsS0FBSyxHQUF6QixpQkFBaUIsR0FBRyxLekQvTXBCLHVCeUQrTUEsaUJBQWlCLEdBQUcsS3pEek1wQix5QnlEeU1BLGlCQUFpQixHQUFHLEt6RG5NcEI7SXlEcU1VLFNBQVM7SUFDVCxPQUFPO0lBQ1AsT3JFbktVO0lxRW9LVixTQUFTO0lBQ1QsY3JFMUpZO0lxRTJKWixhckU5UVM7SXFFK1FULFdyRWxLYztJcUVtS2QsYXJFcEtXO0lxRXFLWCxnQkEvUW1CO0lBZ1JuQixZckU3U0Y7SXFFNlNSLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxTQUExQixpQkFBaUIsR0FBRyxLQUFNLE96RDFOMUIsdUJ5RDBOQSxpQkFBaUIsR0FBRyxLQUFNLE96RHBOMUIseUJ5RG9OQSxpQkFBaUIsR0FBRyxLQUFNLE96RDlNMUI7TXlEaU5ZLFlyRXRUSDtNcUV1VEcsV3JFektZO01xRTBLWCxlckVwS1M7TXFFcUtULGNyRXJLUztNcUVxS3RCLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxPQUFPLFFBQWpDLGlCQUFpQixHQUFHLEtBQU0sT3pEaE8xQixxQnlEZ09pQyxRQUFqQyxpQkFBaUIsR0FBRyxLQUFNLE96RDFOMUIsdUJ5RDBOaUMsUUFBakMsaUJBQWlCLEdBQUcsS0FBTSxPekRwTjFCLHVCeURvTmlDO1FBRW5CLFlBQVk7SUFFMUIsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLE9BQU8sWUFBakMsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFV6RHBPakMsdUJ5RG9PQSxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sVXpEOU5qQyx5QnlEOE5BLGlCQUFpQixHQUFHLEtBQU0sT0FBTyxVekR4TmpDO015RDBOWSxZckUxVEQ7TXFFMFRYLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxPQUFPLFVBQVUsUUFBM0MsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFV6RHRPakMscUJ5RHNPMkMsUUFBM0MsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFV6RGhPakMsdUJ5RGdPMkMsUUFBM0MsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFV6RDFOakMsdUJ5RDBOMkM7UUFFN0IsWUFBWTtJQUUxQixpQkFBaUIsR0FBRyxLQUFLLENBQUMsT0FBTyxVQUFqQyxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sUXpEMU9qQyx1QnlEME9BLGlCQUFpQixHQUFHLEtBQU0sT0FBTyxRekRwT2pDLHlCeURvT0EsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFF6RDlOakM7TXlEZ09ZLFlyRXRUSTtNcUVzVGhCLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxPQUFPLFFBQVEsUUFBekMsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFF6RDVPakMscUJ5RDRPeUMsUUFBekMsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFF6RHRPakMsdUJ5RHNPeUMsUUFBekMsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLFF6RGhPakMsdUJ5RGdPeUM7UUFFM0IsWUFBWTtJQUUxQixpQkFBaUIsR0FBRyxLQUFLLENBQUMsT0FBTyxRQUFqQyxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sTXpEaFBqQyx1QnlEZ1BBLGlCQUFpQixHQUFHLEtBQU0sT3pEaFAxQixxQmFoQkEsNkI0Q2dRQSxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sTXpEMU9qQyx5QnlEME9BLGlCQUFpQixHQUFHLEtBQU0sT3pEMU8xQix1QmF0QkEsNkI0Q2dRQSxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sTXpEcE9qQyx5QnlEb09BLGlCQUFpQixHQUFHLEtBQU0sT3pEcE8xQix1QmE1QkEsNkI0Q2dRQSxpQkFBaUIsR0FBRyxLQUFLLENBQUMsTzVDaFExQiw2QjRDZ1FBLGlCQUFpQixHQUFHLEtBQU0sTzVDaFExQiwyQmJnQkEsdUJ5RGdQQSxpQkFBaUIsR0FBRyxLQUFNLE81Q2hRMUIsMkJic0JBLHlCeUQwT0EsaUJBQWlCLEdBQUcsS0FBTSxPNUNoUTFCLDJCYjRCQTtNeURzT1ksWXJFN1RFO01xRTZUZCxpQkFBaUIsR0FBRyxLQUFLLENBQUMsT0FBTyxNQUFNLFFBQXZDLGlCQUFpQixHQUFHLEtBQU0sT0FBTyxNekRsUGpDLHFCeURrUHVDLFFBQXZDLGlCQUFpQixHQUFHLEtBQU0sT3pEbFAxQixxQmFoQkEsMkI0Q2tRdUMsUUFBdkMsaUJBQWlCLEdBQUcsS0FBTSxPQUFPLE16RDVPakMsdUJ5RDRPdUMsUUFBdkMsaUJBQWlCLEdBQUcsS0FBTSxPekQ1TzFCLHVCYXRCQSwyQjRDa1F1QyxRQUF2QyxpQkFBaUIsR0FBRyxLQUFNLE9BQU8sTXpEdE9qQyx1QnlEc091QyxRQUF2QyxpQkFBaUIsR0FBRyxLQUFNLE96RHRPMUIsdUJhNUJBLDJCNENrUXVDLFFBQXZDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxPNUNsUTFCLDJCNENrUXVDLFFBQXZDLGlCQUFpQixHQUFHLEtBQU0sTzVDbFExQiwyQmJnQkEscUJ5RGtQdUMsUUFBdkMsaUJBQWlCLEdBQUcsS0FBTSxPNUNsUTFCLDJCYnNCQSx1QnlENE91QyxRQUF2QyxpQkFBaUIsR0FBRyxLQUFNLE81Q2xRMUIsMkJiNEJBLHVCeURzT3VDO1FBRXpCLFlBQVk7RUFJMUIsaUJBQWlCLEdBQUcsRUFBRSxNQUFNLEtBQUssYUFBYSxHQUE5QyxpQkFBaUIsR0FBRyxFQUFFLE1BQU0sS0FBSyxhekR4UGpDLHVCeUR3UEEsaUJBQWlCLEdBQUcsRUFBRSxNQUFNLEtBQUssYXpEbFBqQyx5QnlEa1BBLGlCQUFpQixHQUFHLEVBQUUsTUFBTSxLQUFLLGF6RDVPakM7SXlEZ1BVLFlyRXJNNkQ7SXFFc003RCxPckU1TWdCO0VxRThNMUIsaUJBQWlCLEdBQUcsRUFBRSxVQUFVLEdBQWhDLGlCQUFpQixHQUFHLEVBQUUsVXpEL1B0Qix1QnlEK1BBLGlCQUFpQixHQUFHLEVBQUUsVXpEelB0Qix5QnlEeVBBLGlCQUFpQixHQUFHLEVBQUUsVXpEblB0QjtJeUR1UFUsWXJFM004RDtJcUU0TTlELE9yRWxOaUI7SXFFa04zQixpQkFBaUIsR0FBRyxFQUFFLFVBQVUsQ0FBQyxRQUFqQyxpQkFBaUIsR0FBRyxFQUFFLFV6RHBRdEIscUJ5RG9RaUMsUUFBakMsaUJBQWlCLEdBQUcsRUFBRSxVekQ5UHRCLHVCeUQ4UGlDLFFBQWpDLGlCQUFpQixHQUFHLEVBQUUsVXpEeFB0Qix1QnlEd1BpQztNQUVqQixZckU3TThEO01xRThNOUQsT3JFcE5pQjtFcUV1TmpDLGlCQUFpQjtJQUdDLFNyRWxOSTtFcUVrTnRCLGlCQUFpQjtJQUlULFVBQVU7SUFFbEIsaUJBQWlCLGdCQUFnQixDQUFDLFFBQWxDLGlCQUFpQixnQnpEblJqQixxQnlEbVJrQyxRQUFsQyxpQkFBaUIsZ0J6RDdRakIsdUJ5RDZRa0MsUUFBbEMsaUJBQWlCLGdCekR2UWpCLHVCeUR1UWtDO01nQmpRaEMsU0FBUztNQUNULFNBQVM7TUFDVCxPQUFPO01BQ1AsUUFBUTtNQUNSLFFBQVE7TUFVTixjQUFjO01BQ2QsbUJBQW1CO01oQnVQWCxjckU3TlU7TXFFOE5WLFlBQVk7TUFDWixVQUFVO01BQ1YsS0FBSztNQUNMLE9BQXdCO0lBRXBDLGlCQUFpQixhQUFhO01BRVosVUFBVTtNQUE1QixpQkFBaUIsYUFBYSxTQUFTO1FBM1NyQyxTQUFTO1FnQmlIVCxVQUFVO1FBQ1YsUUFBUTtRQUNSLE9BQU87UUFDUCxVQUFVO1FBQ1YsTUFBTTtRaEJuSE4sVUFBVTtRQTRTQSxPQUFPO01BQ25CLGlCQUFpQixhQUFhLFNBQVMsQ0FBQyxRQUF4QyxpQkFBaUIsYUFBYSxTekRwUzlCLHFCeURvU3dDLFFBQXhDLGlCQUFpQixhQUFhLFN6RDlSOUIsdUJ5RDhSd0MsUUFBeEMsaUJBQWlCLGFBQWEsU3pEeFI5Qix1QnlEd1J3QztRQUU1QixTQUFTO0VBR3JCLGlCQUFpQjtJQUlULFVBQVU7SUFDVixNQUFtQjtJQUNuQixLQUFLO0lBQ0wsU0FBUztJQWhVZixTQUFTO0lnQjJHVCxVQUFVO0lBQ1YsUUFBUTtJQUNSLE9BQU87SUFDUCxVQUFVO0lBQ1YsTUFBTTtJaEJrTlIsaUJBQWlCLFVBQVU7TUFHakIsT0FBTztNQUNQLFFBQVE7TUFBbEIsaUJBQWlCLFVBQVUsR0FBRyxHQUE5QixpQkFBaUIsVUFBVSxHekRyVDNCLHVCeURxVEEsaUJBQWlCLFVBQVUsR3pEL1MzQix5QnlEK1NBLGlCQUFpQixVQUFVLEd6RHpTM0I7UXlENFNZLGFBaFlrQjtRQWlZbEIsU0FBUztRQUFyQixpQkFBaUIsVUFBVSxHQUFHLENBQUMsY0FBL0IsaUJBQWlCLFVBQVUsR0FBSSxZekR6VC9CLHVCeUR5VEEsaUJBQWlCLFVBQVUsR0FBSSxZekRuVC9CLHlCeURtVEEsaUJBQWlCLFVBQVUsR0FBSSxZekQ3Uy9CO1V5RCtTYyxhckV2UU87TXFFeVFyQixpQkFBaUIsVUFBVSxFQUFFLE9BQU87UUFFYixlQUFlO1FBQXRDLGlCQUFpQixVQUFVLEVBQUUsT0FBTyxHQUFHLEdBQXZDLGlCQUFpQixVQUFVLEVBQUUsT0FBTyxHekQvVHBDLHVCeUQrVEEsaUJBQWlCLFVBQVUsRUFBRSxPQUFPLEd6RHpUcEMseUJ5RHlUQSxpQkFBaUIsVUFBVSxFQUFFLE9BQU8sR3pEblRwQztVeURxVGMsT3JFalJNO1VxRWtSTixhQUFhO1VBQ2IsU0FBUztNQUV2QixpQkFBaUIsVUFBVSxFQUFFO1FBQ04sU0FBUztNQUFoQyxpQkFBaUIsVUFBVSxHQUFHO1FBQ1YsS0FBSztJQUN6QixpQkFBaUIsVUFBVTtNQUdqQixTQUFTO01BQ1QsZUFBZTtNQUNmLGdCckUvUDZCO01xRWdRN0IsT3JFalFvQjtNcUVrUXBCLGFyRWhRMEI7TXFFaVExQixXckVoUXdCOztBcUVtUWxDO0VBRW9CLFNBQVM7O0FBSXpCO0VBQUo7SUFFUSxZckU5YUE7SXFGOEhOLE9BQU07SWhCa1RBLFVBQVU7SWdCbFRsQixRQUFRLFNBQVMsUUFBUTtNQUNILFNBQVM7TUFBSyxTQUFTO0lBQTdDLFFBQVE7TUFDSSxPQUFPO0loQmdUbkIsU0FBUztNQUVnQixTQUFTO0lBQWxDLFNBQVM7TUFFYSxPZ0JyT0o7SWhCcU9sQixTQUFTLE1BQU0sR0FBRyxHQUFsQixTQUFTLE1BQU0sR3pEaldmLHVCeURpV0EsU0FBUyxNQUFNLEd6RDNWZix5QnlEMlZBLFNBQVMsTUFBTSxHekRyVmY7TXlEc1ZxQixPQUFPO0lBQTVCLFNBQVMsT0FBTyxTQUFTO01BSWYsV0FBVztNQUNYLFVBQVU7TUFDVixLQTFaVTtJQTJacEIsUUFBUTtNQUVhLFlyRTliYjtFcUUrYlIsaUJBQWlCO0lBR1QsV2hDdmNJO0lnQ3djSixRQUFRO0lBQ1IsZXJFM1VlO0VxRTRVdkI7SWdCeFhJLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFFbkIsWUFBWTtJaEJ5WE4sTUFBbUI7SUFBM0IsaUJBQWlCO01BR1AsT0FBTztNQUNQLFFBQVE7TUFDUixTQUFTO01BQW5CLGlCQUFpQixHQUFHO1FBR1IsT2dCbFFNO1FoQmtRbEIsaUJBQWlCLEdBQUcsR0FBRztVQUNLLFNBQVM7SUFLckMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLEtBQUssVUFBbEMsaUJBQWlCLEVBQUUsU3pEcFluQixxQnlEb1k2QixLQUFLLFVBQWxDLGlCQUFpQixFQUFFLFN6RDlYbkIsdUJ5RDhYNkIsS0FBSyxVQUFsQyxpQkFBaUIsRUFBRSxTekR4WG5CLHVCeUR3WDZCLEtBQUs7TUFFcEIsWXJFL1V5RDtNcUVnVnpELE9yRXRWWTtJcUV5VjFCLGlCQUFpQixFQUFFLEtBQUssV0FBVyxDQUFDLEtBQUssVUFBekMsaUJBQWlCLEVBQUUsS0FBSyxXekQxWXhCLHFCeUQwWW9DLEtBQUssVUFBekMsaUJBQWlCLEVBQUUsS0FBSyxXekRwWXhCLHVCeURvWW9DLEtBQUssVUFBekMsaUJBQWlCLEVBQUUsS0FBSyxXekQ5WHhCLHVCeUQ4WG9DLEtBQUs7TUFFM0IsU0FBUztNQUNULGFyRXhXRTtNcUV5V0YsWXJFamVOO01xRWllUixpQkFBaUIsRUFBRSxLQUFLLFdBQVcsQ0FBQyxLQUFLLFFBQVEsUUFBakQsaUJBQWlCLEVBQUUsS0FBSyxXekQ5WXhCLHFCeUQ4WW9DLEtBQUssUUFBUSxRQUFqRCxpQkFBaUIsRUFBRSxLQUFLLFd6RHhZeEIsdUJ5RHdZb0MsS0FBSyxRQUFRLFFBQWpELGlCQUFpQixFQUFFLEtBQUssV3pEbFl4Qix1QnlEa1lvQyxLQUFLLFFBQVE7UUFDekIsWXJFeFYrQztJcUUyVnZFLGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXQUFXLENBQUMsS0FBSyxVQUFoRCxpQkFBaUIsRUFBRSxPQUFPLEtBQUssV3pEbFovQixxQnlEa1oyQyxLQUFLLFVBQWhELGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXekQ1WS9CLHVCeUQ0WTJDLEtBQUssVUFBaEQsaUJBQWlCLEVBQUUsT0FBTyxLQUFLLFd6RHRZL0IsdUJ5RHNZMkMsS0FBSztNQUVsQyxTQUFTO01BQ1QsYXJFaFhFO01xRWlYRixPckVwV2E7TXFFcVdiLFlyRS9WMEQ7TXFFK1Z4RSxpQkFBaUIsRUFBRSxPQUFPLEtBQUssV0FBVyxDQUFDLEtBQUssUUFBUSxRQUF4RCxpQkFBaUIsRUFBRSxPQUFPLEtBQUssV3pEdlovQixxQnlEdVoyQyxLQUFLLFFBQVEsUUFBeEQsaUJBQWlCLEVBQUUsT0FBTyxLQUFLLFd6RGpaL0IsdUJ5RGlaMkMsS0FBSyxRQUFRLFFBQXhELGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXekQzWS9CLHVCeUQyWTJDLEtBQUssUUFBUTtRQUNoQyxZckUvVnNEO0lxRXNXOUUsaUJBQWlCLGdCQUFnQixHQUFqQyxpQkFBaUIsZ0J6RC9aakIsdUJ5RCtaQSxpQkFBaUIsZ0J6RHpaakIseUJ5RHlaQSxpQkFBaUIsZ0J6RG5aakI7TXlEc1pjLGVBQXVEO01BQXJFLGlCQUFpQixnQkFBZ0IsQ0FBQyxRQUFsQyxpQkFBaUIsZ0J6RGxhakIscUJ5RGtha0MsUUFBbEMsaUJBQWlCLGdCekQ1WmpCLHVCeUQ0WmtDLFFBQWxDLGlCQUFpQixnQnpEdFpqQix1QnlEc1prQztRZ0JoWmhDLFNBQVM7UUFDVCxTQUFTO1FBQ1QsT0FBTztRQUNQLFFBQVE7UUFDUixRQUFRO1FBRU4sY0FBYztRQUNkLGtCQUFrQjtRaEI0WU4sWUFBYztRQUNkLEtBQUs7SUFJckIsaUJBQWlCLGFBQWE7TUFFVixVQUFVO01BQTlCLGlCQUFpQixhQUFhLFNBQVM7UUE1YnJDLFNBQVM7UWdCMkdULFVBQVU7UUFDVixRQUFRO1FBQ1IsT0FBTztRQUNQLFVBQVU7UUFDVixNQUFNO0loQm1WUixpQkFBaUIsYUFBYSxTQUFTLFdBQVcsaUJBQWlCLGFBQWEsVUFBVSxTQUFTO01BN2JqRyxTQUFTO01nQmlIVCxVQUFVO01BQ1YsUUFBUTtNQUNSLE9BQU87TUFDUCxVQUFVO01BQ1YsTUFBTTtNaEJuSE4sVUFBVTtJQWtjWixpQkFBaUIsY0FBYyxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsUUFBNUQsaUJBQWlCLGNBQWMsVUFBVSxFQUFFLGdCekR6YjNDLHFCeUR5YjRELFFBQTVELGlCQUFpQixjQUFjLFVBQVUsRUFBRSxnQnpEbmIzQyx1QnlEbWI0RCxRQUE1RCxpQkFBaUIsY0FBYyxVQUFVLEVBQUUsZ0J6RDdhM0MsdUJ5RDZhNEQ7TUFFNUMsUUFBUTtNQUNSLFNBQVM7TUFDVCxLQUFLO01BQ0wsWUFBWTtNQUNaLE9BQXdCO01BQ3hCLGFBQWE7SUFLN0IsaUJBQWlCO01BR1AsTUFBbUI7TUFDbkIsS0FBSztNQUNMLFlBQVk7TUFDWixXQUFXO01BRXJCLGlCQUFpQixVQUFVLEdBQUcsR0FBOUIsaUJBQWlCLFVBQVUsR3pEN2MzQix1QnlENmNBLGlCQUFpQixVQUFVLEd6RHZjM0IseUJ5RHVjQSxpQkFBaUIsVUFBVSxHekRqYzNCO1F5RG1jYyxPckU5WWU7UXFFK1lmLGFBQWE7UUFDYixhQUFhO1FBQ2IsU0FBUztRQUNULFlyRXRpQk47TXFFdWlCUixpQkFBaUIsVUFBVSxHQUFHO1FBR2hCLGFBQWE7UUFDYixZQXBnQmE7TUFxZ0IzQixpQkFBaUIsVUFBVSxHQUFHO1FBSWhCLE1BQW1CO1FBQ25CLEtBQUs7SUFHbkIsbUJBQW1CLEtBQUssVUFBVSxtQkFBbUIsS0FBSztNQUloRCxlQUFlO01BQ2YsWUFBWTtNQUNaLGNBamdCcUI7TUFrZ0JyQixPQUFPO01BQ1AsUXJFcGNNO01xRXFjTixPQUFPO0lBQ2pCLGlCQUFpQjtNQUdQLFlyRWprQkY7TXFFa2tCRSxTQUFTO01BQ1QsUXJFM2NNO0lxRStjaEIsaUJBQWlCLE9BQU8sR0FBRztNQUVmLE1BQW1CO01BQ25CLE9BQXdCO01BQXBDLGlCQUFpQixPQUFPLEdBQUcsVUFBVSxHQUFHO1FBRWIsT0FBd0I7SUFHbkQsaUJBQWlCLE1BQU0sR0FBRztNQUVkLE9BQXdCO01BQ3hCLE1BQW1CO01BQS9CLGlCQUFpQixNQUFNLEdBQUcsVUFBVSxHQUFHO1FBRVosTUFBbUI7RUFROUMsT0FBTyxpQkFBaUIsR0FBRyxFQUFFLFNBQVMsR0FBdEMsT0FBTyxpQkFBaUIsR0FBRyxFQUFFLFN6RHpnQjdCLHVCeUR5Z0JBLE9BQU8saUJBQWlCLEdBQUcsRUFBRSxTekRuZ0I3Qix5QnlEbWdCQSxPQUFPLGlCQUFpQixHQUFHLEVBQUUsU3pEN2Y3QjtJeURnZ0JZLFlyRXJkMkQ7SXFFc2QzRCxPckU1ZGM7RXFFNmQxQixPQUFPLGlCQUFpQixHQUFHLEVBQUUsVUFBVSxHQUF2QyxPQUFPLGlCQUFpQixHQUFHLEVBQUUsVXpEOWdCN0IsdUJ5RDhnQkEsT0FBTyxpQkFBaUIsR0FBRyxFQUFFLFV6RHhnQjdCLHlCeUR3Z0JBLE9BQU8saUJBQWlCLEdBQUcsRUFBRSxVekRsZ0I3QjtJeURzZ0JZLFlyRTFkNEQ7SXFFMmQ1RCxPckVqZWU7RXFFc2UzQixPQUFPLGlCQUFpQixhQUFhLFNBQVM7SUFuaUI1QyxTQUFTO0lnQmlIVCxVQUFVO0lBQ1YsUUFBUTtJQUNSLE9BQU87SUFDUCxVQUFVO0lBQ1YsTUFBTTtJaEJuSE4sVUFBVTs7QUNpRFo7RUFDTSxZQUFZOztBQURsQjtFQUNNLFlBQVk7O0FBRGxCO0VBQ00sWUFBWTs7QUFEbEI7RUFDTSxZQUFZOztBQUtkO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFWbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQVZsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBVmxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFWbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQTJCdEI7RUFHb0IsWUFBWTs7QUFBaEM7RUFDb0IsWUFBWTs7QUFBaEM7RUFDb0IsWUFBWTs7QUFBaEM7RUFDb0IsWUFBWTs7QUFFNUI7RUFBSjtJQUNtQyxZQUFZO0VBQS9DO0lBQ21DLFlBQVk7RUFBL0M7SUFDbUMsWUFBWTtFQUEvQztJQUNtQyxZQUFZOztBQUczQztFQUFKO0lBQzhCLFlBQVk7RUFBMUM7SUFDOEIsWUFBWTtFQUExQztJQUM4QixZQUFZO0VBQTFDO0lBQzhCLFlBQVk7O0FBR3RDO0VBQUo7SUFDb0MsWUFBWTtFQUFoRDtJQUNvQyxZQUFZO0VBQWhEO0lBQ29DLFlBQVk7RUFBaEQ7SUFDb0MsWUFBWTs7QUFHNUM7RUFBSjtJQUMrQixZQUFZO0VBQTNDO0lBQytCLFlBQVk7RUFBM0M7SUFDK0IsWUFBWTtFQUEzQztJQUMrQixZQUFZOztBQUd2QztFQUFKO0lBQ21DLFlBQVk7RUFBL0M7SUFDbUMsWUFBWTtFQUEvQztJQUNtQyxZQUFZO0VBQS9DO0lBQ21DLFlBQVk7O0FBRzNDO0VBQUo7SUFDOEIsWUFBWTtFQUExQztJQUM4QixZQUFZO0VBQTFDO0lBQzhCLFlBQVk7RUFBMUM7SUFDOEIsWUFBWTs7QUFHdEM7RUFBSjtJQUNvQyxZQUFZO0VBQWhEO0lBQ29DLFlBQVk7RUFBaEQ7SUFDb0MsWUFBWTtFQUFoRDtJQUNvQyxZQUFZOztBQUc1QztFQUFKO0lBQytCLFlBQVk7RUFBM0M7SUFDK0IsWUFBWTtFQUEzQztJQUMrQixZQUFZO0VBQTNDO0lBQytCLFlBQVk7O0FBR3ZDO0VBQUo7SUFDcUMsWUFBWTtFQUFqRDtJQUNxQyxZQUFZO0VBQWpEO0lBQ3FDLFlBQVk7RUFBakQ7SUFDcUMsWUFBWTs7QUFHN0M7RUFBSjtJQUNnQyxZQUFZO0VBQTVDO0lBQ2dDLFlBQVk7RUFBNUM7SUFDZ0MsWUFBWTtFQUE1QztJQUNnQyxZQUFZOzs7QUFHNUMsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxLQUFLLE1BQU0sR0FBRyxZQUFZLElBQUk7RUFvQjdFLFFBQU87RUFDUCxTQUFROzs7QUFHZCxHMUR6TEEsdUJBTUEseUJBTUE7RTBEK0tNLE90RXBSRztFc0VxUkgsaUJ0RThHbUI7RXNFN0duQixhQUFhO0VBQW5CLENBQUMsUTFEN0xELHFCMEQ2TEMsUTFEdkxELHVCMER1TEMsUTFEakxELHVCMERpTEMsUUFBUSxDQUFDLFExRDdMVixxQjBENkxVLFExRHZMVix1QjBEdUxVLFExRGpMVix1QjBEaUxVO0lBR00sT3RFNEdVO0VzRTVHMUIsRUFBRSxLQUFGLEUxRGhNQSx1QjBEZ01BLEUxRDFMQSx5QjBEMExBLEUxRHBMQTtJMERzTFksUUFBTzs7O0FBR25CO0VBRU0sYXRFbUZrQjtFc0VsRmxCLGF0RW1Ga0I7RXNFbEZsQixXdEVtRmdCO0VzRWxGaEIsYXRFbUZrQjtFc0VsRmxCLGV0RW1Gb0I7RXNFbEZwQixnQnRFc0ZxQjtFc0V0RjNCLENBQUM7SUFySUMsV0FBVztJQUNYLGFBQWE7RUFzSWYsRUFBRTtJQUdNLFd0RThFb0I7SXNFN0VwQixhdEU4RXNCO0lzRTdFdEIsWXRFOEVxQjs7O0FzRTFFN0IsSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJO0VBRWQsYXRFbUNlO0VzRWxDZixhdEVtQ2U7RXNFbENmLFl0RW1DYztFc0VsQ2QsT3RFclRHO0VzRXNUSCxnQnRFdUNrQjtFc0V0Q2xCLFl0RW9DYztFc0VuQ2QsZXRFb0NpQjtFc0VuQ2pCLGF0RWlDZTtFc0VqQ3JCLEdBQUcsT0FBTyxHQUFHLE9BQU8sR0FBRyxPQUFPLEdBQUcsT0FBTyxHQUFHLE9BQU8sR0FBRztJQUc3QyxXdEVtRFU7SXNFbERWLE90RW1EVztJc0VsRFgsYUFBYTs7QUFFckI7RUFFUyxXQUFXOztBQUFwQjtFQUNTLFdBQVc7O0FBQXBCO0VBQ1MsV0FBVzs7QUFBcEI7RUFDUyxXQUFXOztBQUFwQjtFQUNTLFd0RThCTTs7QXNFOUJmO0VBQ1MsV3RFOEJNOztBc0U5QmY7RUFsS0UsYXRFbU1zQjtFc0VsTXRCLE90RWpLUztFc0VrS1QsYXRFbU1zQjtFc0VsTXRCLFl0RW1NcUI7RXNFbE1yQixldEVtTXdCOztBc0VuQzFCO0VBR00sUUFBUTtFQUNSLGNBQWM7RUFDZCxPQUFPO0VBQ1AsUUFBUTtFQUNSLFFBQVE7OztBQUdkLElBQUk7RUFHRSxZQUFZO0VBQ1osYUFBYTs7QUFDbkIsUUFBUTtFQUlGLGFBQWE7RUFDYixhQUFhOztBQUNuQjtFQUdNLFd0RWNZO0VzRWJaLGFBQWE7O0FBQ25CO0VBR00sYXRFeUJhO0VzRXhCYixhdEV5QmE7RXNFeEJiLE90RXNCTzs7O0FzRW5CYixJQUFJLElBQUk7RUFJRixXdEVNZ0I7RXNFTGhCLGF0RU1rQjtFc0VMbEIsZXRFTW9CO0VzRUxwQixxQnRFNEJnQjtFc0UzQmhCLGF0RUFrQjs7QXNFQ3hCO0VBR00sYXRFd0JhO0VzRXhCbkIsRUFBRTtJQUVNLGFBaFVxQjtJQWlVN0IsRUFBRSxXQUFXLEdBQUcsSUFBSSxFQUFFLFdBQVcsR0FBRztNQUd4QixhQW5VUztNQW9VVCxlQUFlO01BQ2YsWUFBWTs7O0FBUXhCLEdBQUcsR0FBRyxJQUFJLEdBQUcsR0FBRztFQUdOLGFBaFZXO0VBaVZYLGVBQWU7QUFLekIsRUFBRSxRQUFRLEdBQUcsSUFBSSxFQUFFLFFBQVEsR0FBRyxJQUFJLEVBQUUsTUFBTSxHQUFHO0VBQzdCLFlBQVk7QUFDNUIsRUFBRTtFQUVlLGlCQUFpQjtFQUFRLGF0RUx2QjtBc0VLbkIsRUFBRTtFQUNlLGlCQUFpQjtFQUFRLGF0RU52QjtBc0VNbkIsRUFBRTtFQUNhLGlCQUFpQjtFQUFNLGF0RVBuQjtBc0VPbkIsRUFBRTtFQUNrQixZQUFZOzs7QUFHaEM7RUFFTSxhQXBXcUI7RUFxVzNCLEdBQUcsR0FBRyxJQUFJLEdBQUcsR0FBRztJQUdOLGFBdFdXO0lBdVdYLGVBQWU7OztBQU16QixHQUFHO0VBRUssZXRFeEIrQjtFc0V5Qi9CLGF0RTFCd0I7QXNFMkJoQyxHQUFHO0VBQ1EsZXRFMUJxQjs7O0FzRTZCaEMsTUFBTTtFQUdBLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsT3RFOWFFO0VzRSthRixldEV4QmM7RXNFeUJkLFFlOUpjOztBZitKcEI7RUFFTSxnQkFBZ0I7OztBQUd0QjtFQUVNLFFBQVE7RUFDUixTdEV6Q3lCO0VzRTBDekIsYXRFekNjO0VzRXlDcEIsV0FBVztJQUdILFNBQVM7SUFDVCxXdEU1Q29CO0lzRTZDcEIsT3RFNUNxQjtJc0U0QzdCLFdBQVcsSUFBSTtNQUVMLFNBQVM7SUFDbkIsV0FBVyxLQUFLLEdBQWhCLFdBQVcsSzFEL1dYLHVCMEQrV0EsV0FBVyxLMUR6V1gseUIwRHlXQSxXQUFXLEsxRG5XWCx5QjBEbVdtQixXQUFXLEtBQUssQ0FBQyxVQUFqQixXQUFXLEsxRC9XOUIscUIwRCtXb0MsVUFBakIsV0FBVyxLMUR6VzlCLHVCMER5V29DLFVBQWpCLFdBQVcsSzFEblc5Qix1QjBEbVdvQztNQUkxQixPdEVuRG1COztBc0VzRDdCLFlBQVksV0FBVztFQUdqQixhdEU1RmtCO0VzRTZGbEIsT3RFOURrQjs7O0FzRWlFeEI7RUFFTSxTQUFTO0VBQ1QsUXRFeERlO0VzRXlEZixRQUFRO0VBQ1IsU3RFM0QyQjtFc0UyRGpDLE9BQU87SUFHQyxRQUFRO0lBQ1IsU0FBUztFQUNqQixPQUFPO0lBRUMsYXRFekQyQjtJc0UwRDNCLFd0RXpEeUI7O0FzRTZEakMsUUFBUTtFQUNTLGF0RTNEaUI7QXNFMkRsQyxRQUFRO0VBR0EsUWVyTmU7RWZzTmYsaUJ0RXhEMkI7RXNFeUQzQixhdEUxRHVCO0VzRTJEdkIsUUFBUTtFQUNSLFN0RS9EbUI7O0FzRW9FdkI7RUFBSixJQUFJLElBQUksSUFBSSxJQUFJLElBQUk7SUFDTSxhdEUzSkw7RXNFMkpyQjtJQUNXLFd0RXRKSTtFc0VzSmY7SUFDVyxXdEV0Skk7RXNFc0pmO0lBQ1csV3RFdEpJO0VzRXNKZjtJQUNXLFd0RXRKSTs7Ozs7Ozs7QXNFZ0tmO0VBQ29CLFNBQVM7O0FBQ3ZCOztJQWdDVSxRQUFROztFQWhDeEI7SUFFVSxZQUFZO0lBQ1osT0FBTzs7SUFDUCxZQUFZO0lBQ1osYUFBYTtFQUN2QixHMURsYkEsdUJBTUEseUJBTUEseUIwRHNhRyxDQUFDLFUxRGxiSixxQjBEa2JJLFUxRDVhSix1QjBENGFJLFUxRHRhSix1QjBEc2FJO0lBR2dCLGlCQUFpQjtFQUFyQyxDQUFDLE1BQU0sUUFBTixNMURyYkQscUIwRHFiTyxRQUFOLE0xRC9hRCx1QjBEK2FPLFFBQU4sTTFEemFELHVCMER5YU87SUFDaUIsU0FBUztFQUFqQyxJQUFJLE9BQU87SUFFaUIsU0FBUztFQUFyQyxJQUFJLENBQUMsUUFBTCxJMUR4YkEscUIwRHdiSyxRQUFMLEkxRGxiQSx1QjBEa2JLLFFBQUwsSTFENWFBLHVCMEQ0YUssUUFBUSxDQUFDLHFCQUFxQixRQUFyQixxQjFEeGJkLHFCMER3Ym1DLFFBQXJCLHFCMURsYmQsdUIwRGtibUMsUUFBckIscUIxRDVhZCx1QjBENGFtQyxRQUFRLENBQUMsV0FBVyxRQUFYLFcxRHhiNUMscUIwRHdidUQsUUFBWCxXMURsYjVDLHVCMERrYnVELFFBQVgsVzFENWE1Qyx1QjBENGF1RDtJQUsxQixTQUFTO0VBQXRDLEtBQUs7SUFJSyxRQUFRO0lBQ1IsbUJBQW1CO0VBQzdCO0lBRWdCLFNBQVM7O0VBQXpCLElBQUk7SUFHVSxtQkFBbUI7RUFBakM7SUFFYyxXQUFXO0VBRXpCLEdBQUcsSUFBSTtJQUtHLFNBQVM7SUFDVCxRQUFRO0VBQ2xCLElBQUk7SUFHUyxrQkFBa0I7RUFBL0I7SUFFeUIsU0FBUztFQUFsQztJQUNzQixTQUFTO0VBQS9CO0lBQzBCLFNBQVM7RUFBbkM7SUFDMEIsU0FBUzs7QUFuYm5DO0VBQ00sWUFBWTs7QUFEbEI7RUFDTSxZQUFZOztBQURsQjtFQUNNLFlBQVk7O0FBRGxCO0VBQ00sWUFBWTs7QUFLZDtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBVmxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFWbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQVZsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBVmxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUMyS3RCO0VBM1BFLDZCQUE2QjtFQUs3QixVQUFVO0VBQ1YsT0FBTztFQXdDUCxZQUFZO0VBQWQsZ0JBQWdCLGFBQWEsZ0JBQWdCO0lBRTdCLFFBQVE7O0FBNk14QjtFQTdQRSw2QkFBNkI7RUFLN0IsVUFBVTtFQUNWLE9BQU87RWM2RFAsT0FBTTtFZFZOLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixZQUFZO0VjTWQsV0FBVyxTQUFTLFdBQVc7SUFDVCxTQUFTO0lBQUssU0FBUztFQUE3QyxXQUFXO0lBQ0MsT0FBTzs7QWR5TG5CO0VBOVBFLDZCQUE2QjtFQXNFN0IsWUF2SVU7RUF3SVYsT0FySWE7RUFzSWIsUUF4SWM7RUF5SWQsYUF6SWM7RUE0SWQsVUFBVTtFQUFaLFNBQVMsSUFBSSxTQUFTLElBQUksU0FBUyxJQUFJLFNBQVMsSUFBSSxTQUFTLElBQUksU0FBUztJQUt0RSxPQXRJa0I7SUF1SWxCLGFBdEltQjtJQXVJbkIsYUFuSlk7SUFvSlosUUF0SW1CO0VBdUl2QixTQUFTLElBQUksU0FBUyxJQUFJLFNBQVMsSUFBSSxTQUFTO0lBQ2hDLFd2RTZNRDs7QXVFbkNmO0VBcEtFLE9BNUpjO0VBNkpkLFFBN0pjO0VBOEpkLFVBQVU7RUFDVixLQUFLO0VBRUgsY0EzSnlCO0VBNkp6QixNQUFNOztBQStKVjtFQXRLRSxPQTVKYztFQTZKZCxRQTdKYztFQThKZCxVQUFVO0VBQ1YsS0FBSztFQU9ILGFBaEt5QjtFQWtLekIsT0FBTTs7QUEySlY7RUF0SkUsU0ExS3NCO0VBMkt0QixVQUFVO0VBQ1YsWUFBWTtFQUNaLFFBaExjO0VBaUxkLEtBQUs7RUFDTDtJQWlKRjtNQWpKeUIsWUFBWTtFQUFyQyxnQkFBZ0I7SUFJWixNQUFNO0lBQ04sT0F2TFk7RUF3TGhCLGdCQUFnQjtJQUVaLE1BMUxZO0lBMkxaLE9BQU87RUFDWCxnQkFBZ0I7SUFFWixNQTlMWTtJQStMWixPQS9MWTs7QUFxVWhCLFNBQVM7RUFLSCxhQXJTeUI7RUFzU3pCLE9BM1VVO0VBNFVWLFFBNVVVO0VBNlVWLFNBQVM7RUFDVCxhQXRTeUI7RUF1U3pCLFNBdFNxQjtFQXVTckIsT3ZFbEttQjtFdUVtS25CLFVBQVU7RUFwRWhCLFNBQVMsV0FBVztJQUVoQixVQUFVO0lBQ1YsU0FBUztJQUNULFFBQVE7SUFDUixPQXZPMEI7SUE4T3hCLEtBQU07SUFPTixNQUFPO0lBR1Asb0JBQWlFO0lBSWpFLFlBQWlFO0VBR3ZFLFNBQVMsVUFBVSxPQUFPO0lBR3BCLG9CQUFpRTtJQUlqRSxZQUFpRTs7QUFvQ3ZFO0VBclJFLDZCQUE2QjtFQWE3QixPQTVEaUI7RUE2RGpCLEtBQUs7RUFDTCxRQUFRO0VBQ1IsVUFBVTtFQUNWLFlBQVk7RUFDWixZQWhFYztFQWlFZCxTQUFTO0VBQ1QsWUFBWTtFQUNaLDRCQUE0QjtFQWE1QixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixjQUFjO0VBQ2QsV0FBVztFQWRULE1BQU07RUFiVixzQkFBc0I7SUFYcEIsNkJBQTZCOztBQXVSL0I7RUF2UkUsNkJBQTZCO0VBYTdCLE9BNURpQjtFQTZEakIsS0FBSztFQUNMLFFBQVE7RUFDUixVQUFVO0VBQ1YsWUFBWTtFQUNaLFlBaEVjO0VBaUVkLFNBQVM7RUFDVCxZQUFZO0VBQ1osNEJBQTRCO0VBYTVCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWM7RUFDZCxXQUFXO0VBVlQsT0FBTztFQWpCWCx1QkFBdUI7SUFYckIsNkJBQTZCOztBQXdSL0IsRUFBRTtFQWxKQSxpQkFBaUI7RUFDakIsU0FBUTtFQUNSLFFBQU87RUFFVCxFQUFFLGlCQUFpQixHQUFHO0lBRWhCLFNBdkxxQjtJQXdMckIsT0F2TG1CO0lBd0xuQixnQkF2TDRCO0lBd0w1QixhQXZMeUI7SUF3THpCLFlBdkxnQjtJQXdMaEIsWUF2THdCO0lBd0x4QixlQXZMMkI7SUF3TDNCLFFBdkxtQjtFQXdMekIsRUFBRSxpQkFBaUIsR0FBRyxHQUF0QixFQUFFLGlCQUFpQixHM0Q1SG5CLHVCMkQ0SEEsRUFBRSxpQkFBaUIsRzNEdEhuQix5QjJEc0hBLEVBQUUsaUJBQWlCLEczRGhIbkI7STJEa0hNLFNBQVM7SUFDVCxTQTFMb0I7SUEyTHBCLE9BMUxrQjtJQTJMbEIsZUExTDBCO0lBNEwxQixZQUFZO0lBRmxCLEVBQUUsaUJBQWlCLEdBQUcsQ0FBQyxRQUF2QixFQUFFLGlCQUFpQixHM0RqSW5CLHFCMkRpSXVCLFFBQXZCLEVBQUUsaUJBQWlCLEczRDNIbkIsdUIyRDJIdUIsUUFBdkIsRUFBRSxpQkFBaUIsRzNEckhuQix1QjJEcUh1QjtNQUNQLFlBQVk7O0FBcUk1QixjQUFjO0VBN1BaLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWM7RUFDZCxXQUFXO0FBNFBiLFlBQVk7RUFsU1YsNkJBQTZCO0VBc0szQixZQXBMNEI7RUFxTDVCLFFBcEx3QjtFQXFMeEIsWUFwTHFEO0VBdUxyRCxTQUFTO0VBQ1QsVUFBVTtFQUNWLFlBeEw0QjtFQXlMNUIsS0FBSztFQUNMLFFBQVE7RUFDUixNQUFLO0VBQ0wsT0FBTTtFQUNOLFNBQVM7RUFDVCw2QkFBNkI7RUFFN0I7SUFBSixZQUFZLGdCQUFnQjtNQUVwQixZQWpNOEI7O0FBZ1R0QyxhQUFhO0VBcFFYLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWM7RUFDZCxXQUFXO0FBb1FiLFdBQVc7RUExU1QsNkJBQTZCO0VBc0szQixZQXBMNEI7RUFxTDVCLFFBcEx3QjtFQXFMeEIsWUFwTHFEO0VBdUxyRCxTQUFTO0VBQ1QsVUFBVTtFQUNWLFlBeEw0QjtFQXlMNUIsS0FBSztFQUNMLFFBQVE7RUFDUixNQUFLO0VBQ0wsT0FBTTtFQUNOLFNBQVM7RUFDVCw2QkFBNkI7RUFFN0I7SUFBSixXQUFXLGdCQUFnQjtNQUVuQixZQWpNOEI7O0FBeVR0QyxjQUFjLG9CQUFvQjtFY3pNOUIsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsY0FBYztFQUVoQixXQUFXO0FkcU1iLGNBQWMsb0JBQW9CO0VjMU05QixtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixjQUFjO0VBRWhCLFdBQVc7QWRzTWIsY0FBYyxvQkFBb0IsYUFBYTtFYzNNM0MsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsY0FBYztFQUVoQixXQUFXO0Fkd01iLGNBQWMsb0JBQW9CLGNBQWM7RWM3TTVDLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGNBQWM7RUFFaEIsV0FBVzs7QWQ2TWIsa0JBQWtCO0VBQ1ksTUF4V1g7QUF3V25CLGtCQUFrQjtFQUNhLE9BeldaO0FBeVduQixrQkFBa0IsYUFBYTtFQUVFLE9BM1dkO0FBMlduQixrQkFBa0IsY0FBYztFQUNFLE1BNVdmOzs7QUNvS2Y7RUFDSixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsd0JBQXdCLHNCQUFzQixtQkFBbUI7SUFDclksU0FBUztFQUVqQixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsd0JBQXdCLHNCQUFzQixtQkFBbUI7SUFDclksU0FBUztFQUdqQixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLG1CQUFtQixLQUFLO0lBQ3ZlLFNBQVM7RUFFbkIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyx3QkFBd0IsS0FBSyxzQkFBc0IsS0FBSyxtQkFBbUIsS0FBSztJQUN2ZSxTQUFTO0VBRW5CLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssd0JBQXdCLEtBQUssc0JBQXNCLEtBQUssbUJBQW1CLEtBQUs7SUFDdmUsU0FBUztFQUVuQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFO0lBQzNhLFNBQVM7RUFFbkIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSx3QkFBd0IsRUFBRTtJQUN4M0IsU0FBUzs7O0FBckJmO0VBQ0osc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1QixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHdCQUF3QixzQkFBc0IsbUJBQW1CO0lBQ3JZLFNBQVM7RUFFakIsc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1QixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHdCQUF3QixzQkFBc0IsbUJBQW1CO0lBQ3JZLFNBQVM7RUFHakIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyx3QkFBd0IsS0FBSyxzQkFBc0IsS0FBSyxtQkFBbUIsS0FBSztJQUN2ZSxTQUFTO0VBRW5CLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssd0JBQXdCLEtBQUssc0JBQXNCLEtBQUssbUJBQW1CLEtBQUs7SUFDdmUsU0FBUztFQUVuQixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLG1CQUFtQixLQUFLO0lBQ3ZlLFNBQVM7RUFFbkIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRTtJQUMzYSxTQUFTO0VBRW5CLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLEVBQUU7SUFDeDNCLFNBQVM7OztBQXJCZjtFQUNKLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1Qix3QkFBd0Isc0JBQXNCLG1CQUFtQjtJQUNyWSxTQUFTO0VBRWpCLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1Qix3QkFBd0Isc0JBQXNCLG1CQUFtQjtJQUNyWSxTQUFTO0VBR2pCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssd0JBQXdCLEtBQUssc0JBQXNCLEtBQUssbUJBQW1CLEtBQUs7SUFDdmUsU0FBUztFQUVuQixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLG1CQUFtQixLQUFLO0lBQ3ZlLFNBQVM7RUFFbkIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyx3QkFBd0IsS0FBSyxzQkFBc0IsS0FBSyxtQkFBbUIsS0FBSztJQUN2ZSxTQUFTO0VBRW5CLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUU7SUFDM2EsU0FBUztFQUVuQixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLHdCQUF3QixFQUFFO0lBQ3gzQixTQUFTOzs7QUFyQmY7RUFDSixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsd0JBQXdCLHNCQUFzQixtQkFBbUI7SUFDclksU0FBUztFQUVqQixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHNCQUFzQixvQkFBb0IsaUJBQWlCLHNCQUFzQix1QkFBdUIscUJBQXFCLGtCQUFrQix1QkFBdUIsd0JBQXdCLHNCQUFzQixtQkFBbUI7SUFDclksU0FBUztFQUdqQixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLG1CQUFtQixLQUFLO0lBQ3ZlLFNBQVM7RUFFbkIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyx3QkFBd0IsS0FBSyxzQkFBc0IsS0FBSyxtQkFBbUIsS0FBSztJQUN2ZSxTQUFTO0VBRW5CLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssd0JBQXdCLEtBQUssc0JBQXNCLEtBQUssbUJBQW1CLEtBQUs7SUFDdmUsU0FBUztFQUVuQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFO0lBQzNhLFNBQVM7RUFFbkIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSx3QkFBd0IsRUFBRTtJQUN4M0IsU0FBUzs7O0FBckJmO0VBQ0osc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1QixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHdCQUF3QixzQkFBc0IsbUJBQW1CO0lBQ3JZLFNBQVM7RUFFakIsc0JBQXNCLG9CQUFvQixpQkFBaUIsc0JBQXNCLHVCQUF1QixxQkFBcUIsa0JBQWtCLHVCQUF1QixzQkFBc0Isb0JBQW9CLGlCQUFpQixzQkFBc0IsdUJBQXVCLHFCQUFxQixrQkFBa0IsdUJBQXVCLHdCQUF3QixzQkFBc0IsbUJBQW1CO0lBQ3JZLFNBQVM7RUFHakIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxpQkFBaUIsS0FBSyxzQkFBc0IsS0FBSyx1QkFBdUIsS0FBSyxxQkFBcUIsS0FBSyxrQkFBa0IsS0FBSyx1QkFBdUIsS0FBSyx3QkFBd0IsS0FBSyxzQkFBc0IsS0FBSyxtQkFBbUIsS0FBSztJQUN2ZSxTQUFTO0VBRW5CLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssc0JBQXNCLEtBQUssb0JBQW9CLEtBQUssaUJBQWlCLEtBQUssc0JBQXNCLEtBQUssdUJBQXVCLEtBQUsscUJBQXFCLEtBQUssa0JBQWtCLEtBQUssdUJBQXVCLEtBQUssd0JBQXdCLEtBQUssc0JBQXNCLEtBQUssbUJBQW1CLEtBQUs7SUFDdmUsU0FBUztFQUVuQixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLGlCQUFpQixLQUFLLHNCQUFzQixLQUFLLHVCQUF1QixLQUFLLHFCQUFxQixLQUFLLGtCQUFrQixLQUFLLHVCQUF1QixLQUFLLHdCQUF3QixLQUFLLHNCQUFzQixLQUFLLG1CQUFtQixLQUFLO0lBQ3ZlLFNBQVM7RUFFbkIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSx1QkFBdUIsRUFBRSx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRTtJQUMzYSxTQUFTO0VBRW5CLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsdUJBQXVCLEVBQUUsd0JBQXdCLEVBQUUsd0JBQXdCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLEVBQUU7SUFDeDNCLFNBQVM7OztBQVluQixxQkFBcUI7RUFFRSxTQUFTOztBQUFoQyxxQkFBcUI7RUFFRSxTQUFTOzs7QUFHaEMsS0FBSyxxQkFBcUIsS0FBSztFQUVMLFNBQVM7O0FBRW5DLEtBQUsscUJBQXFCLEtBQUs7RUFFTCxTQUFTOztBQUVuQyxLQUFLLHFCQUFxQixLQUFLO0VBRUwsU0FBUzs7QUFFbkMsRUFBRSxxQkFBcUIsRUFBRTtFQUVDLFNBQVM7O0FBR25DLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUU7RUFFNUMsU0FBUzs7QUFHakM7O0VBQUYscUJBQXFCO0lBRUksU0FBUztFQUFsQyxxQkFBcUI7SUFFSSxTQUFTO0VBR2xDLEtBQUsscUJBQXFCLEtBQUs7SUFFSCxTQUFTO0VBRXJDLEtBQUsscUJBQXFCLEtBQUs7SUFFSCxTQUFTO0VBRXJDLEtBQUsscUJBQXFCLEtBQUs7SUFFSCxTQUFTO0VBRXJDLEVBQUUscUJBQXFCLEVBQUU7SUFFRyxTQUFTO0VBR3JDLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUU7SUFFMUMsU0FBUzs7QUFJbkM7O0VBQUYsb0JBQW9CO0lBRU0sU0FBUztFQUFuQyxvQkFBb0I7SUFFTSxTQUFTO0VBR25DLEtBQUssb0JBQW9CLEtBQUs7SUFFRCxTQUFTO0VBRXRDLEtBQUssb0JBQW9CLEtBQUs7SUFFRCxTQUFTO0VBRXRDLEtBQUssb0JBQW9CLEtBQUs7SUFFRCxTQUFTO0VBRXRDLEVBQUUsb0JBQW9CLEVBQUU7SUFFSyxTQUFTO0VBR3RDLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUU7SUFFeEMsU0FBUzs7O0FBSXRDO0VBQ29CLFNBQVM7O0FBQTdCO0VBQ29CLFNBQVM7O0FBQTdCLE9BQU87RUFDb0IsU0FBUzs7QUFBcEMsT0FBTztFQUNvQixTQUFTOzs7QUFFcEMsS0FBSztFQUNvQixTQUFTOztBQUFsQyxPQUFPLEtBQUs7RUFDb0IsU0FBUzs7QUFBekMsS0FBSztFQUNvQixTQUFTOztBQUFsQyxPQUFPLEtBQUs7RUFDb0IsU0FBUzs7QUFBekMsS0FBSztFQUNvQixTQUFTOztBQUFsQyxPQUFPLEtBQUs7RUFDb0IsU0FBUzs7QUFBekMsRUFBRTtFQUNvQixTQUFTOztBQUEvQixPQUFPLEVBQUU7RUFDb0IsU0FBUzs7QUFBdEMsRUFBRTtFQUNvQixTQUFTOztBQUEvQixPQUFPLEVBQUU7RUFDb0IsU0FBUzs7QUFBdEMsRUFBRTtFQUNvQixTQUFTOztBQUEvQixPQUFPLEVBQUU7RUFDb0IsU0FBUzs7QWxFN1V0QztFQUNFLFNBQVM7O0FBR1g7RUFDRSxNQUFNOzs7QUVMUixLQUFLLG9CQUFvQixLQUFLLGtCQUFrQixPQUFPLEtBQUssaUJBQWlCLEtBQUssa0JBQWtCO0VBRWxHLFNBQVM7RUFDVCxhQUEwQjtFQUMxQixjd0NTYTtFeENSYixlQUFlO0VBQ2YsZ0JBQWdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDcURsQjtFQUNDLFVBQVU7OztBQUtYLGNBQWM7RUFDYixVQUFVO0VBQ1YsU0FBUztFQUNULFNBQVM7RUFDVCxPQXhEYTtFQXlEYixRQXpEYTtFQTBEYixLQUFLO0VBQ0wsWUFBWTtFQUNaLFNBQVM7RUFDVCxnQkFBZ0I7OztBQUlqQixjQUFjO0VBQ2IsVUFBVTtFQUNWLFNBQVM7OztBQUlWLGNBQWM7RUFDYixVQUFVO0VBQ1YsT0FBTztFQUNQLFFBQVE7RUFDUixNQUFNO0VBQ04sS0FBSztFQUNMLFlBQVk7RUFFWixZQUFZO0VBQ1osU0FBUztFQWhFVCxvQkFBb0I7RUFDakIsaUJBQWlCO0VBQ2hCLGdCQUFnQjtFQUNmLGVBQWU7RUFDWixZQUFZOztBQWdFckIsYUFBYSxlQUFlO0VBQzFCLFNBQVM7RUFDVCxZQUFZOzs7OztBQVFkLGVBQWUsY0FBYyxnQkFBZ0IsY0FBYztFQTlFMUQsb0JBQW9CO0VBQ2pCLGlCQUFpQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ1osWUFBWTs7QUFnRnJCLGFBQWEsc0JBQXNCLGFBQWEscUJBQXFCLGdCQUFnQixhQUFhLHFCQUFxQixjQUFjLGFBQWEsdUJBQXVCLGFBQWEsc0JBQXNCLGdCQUFnQixhQUFhLHNCQUFzQjtFQXBGOVAsb0JBQW9CO0VBQ2pCLGlCQUFpQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ1osWUFBWTs7Ozs7QUE4RnJCLGFBQWEsMEJBQTBCO0VBRXJDLE9BQU87QUFDVCxhQUFhLHlCQUF5QixnQkFBZ0IsZ0JBQWdCLGFBQWEseUJBQXlCLGlCQUFpQjtFQUkzSCxPQUFPO0FBQ1QsYUFBYSx5QkFBeUI7RUFHcEMsZUFBZTtFQUFqQixhQUFhLHlCQUF5QixlQUFlO0lBR2xELFNBQVM7RUFDWixhQUFhLHlCQUF5QixjQUFjLGlCQUFpQixhQUFhLHlCQUF5QixjQUFjO0lBSXRILGVBQWU7Ozs7O0FBVWxCLGFBQWEseUJBQXlCO0VBRXBDLE1BQU07QUFDUixhQUFhLHdCQUF3QixnQkFBZ0IsZ0JBQWdCLGFBQWEsd0JBQXdCLGlCQUFpQjtFQUl6SCxNQUFNO0FBQ1IsYUFBYSx3QkFBd0I7RUFHbkMsY0FBYztFQUFoQixhQUFhLHdCQUF3QixlQUFlO0lBR2pELFNBQVM7RUFDWixhQUFhLHdCQUF3QixjQUFjLGlCQUFpQixhQUFhLHdCQUF3QixjQUFjO0lBSXBILGNBQWM7Ozs7O0FBVWpCLGFBQWE7RUFDWixVQUFVO0VBQVgsYUFBYSx1QkFBdUI7SUFHbEMsS0FoTFk7SUFpTFosTUFBTTtJQUNOLGFBQWE7RUFDZixhQUFhLHNCQUFzQjtJQUdqQyxhQUFhO0lBQWYsYUFBYSxzQkFBc0IsZUFBZTtNQUcvQyxTQUFTO01BQ1QsS0FBTTtNQUNOLFlBQVk7SUFDZixhQUFhLHNCQUFzQixjQUFjLGlCQUFpQixhQUFhLHNCQUFzQixjQUFjO01BSWhILGFBQWE7TUFBaEIsYUFBYSxzQkFBc0IsY0FBYyxnQkFBZ0IsZ0JBQWdCLGFBQWEsc0JBQXNCLGNBQWMsaUJBQWlCO1FBRy9JLEtBQUs7Ozs7O0FBV1QsYUFBYTtFQUNYLFVBQVU7RUFBWixhQUFhLHlCQUF5QjtJQUduQyxLQUFLO0lBQ0wsTUFBTTtJQUNOLGFBQWE7RUFDaEIsYUFBYSx3QkFBd0IsZ0JBQWdCLGdCQUFnQixhQUFhLHdCQUF3QixpQkFBaUI7SUFJeEgsS0FBSztFQUNSLGFBQWEsd0JBQXdCO0lBR2xDLGdCQUFnQjtJQUFuQixhQUFhLHdCQUF3QixlQUFlO01BR2hELFNBQVM7SUFDYixhQUFhLHdCQUF3QixjQUFjLGlCQUFpQixhQUFhLHdCQUF3QixjQUFjO01BSW5ILGdCQUFnQjs7Ozs7QUFTcEIsYUFBYTtFQUNaLFVBQVU7RUFBWCxhQUFhLHdCQUF3QjtJQUduQyxVQUFVO0VBQ1osYUFBYSx3QkFBd0I7SUFFbkMsTUFBTTtJQUNOLGFBQWE7RUFHZixhQUFhLHVCQUF1QixlQUFlO0lBRWhELFNBQVM7SUFDVCxNQUFNO0VBQ1QsYUFBYSx1QkFBdUIsZUFBZTtJQUVoRCxTQUFTO0lBQ1QsTUFBTTs7Ozs7QUFTVCxhQUFhO0VBQ1osVUFBVTtFQUFYLGFBQWEseUJBQXlCO0lBR3BDLFVBQVU7RUFDWixhQUFhLHlCQUF5QjtJQUVwQyxPQUFPO0lBQ1AsYUFBYTtJQUNiLE1BQU07RUFHUixhQUFhLHdCQUF3QixlQUFlO0lBRWpELFNBQVM7SUFDVCxNQUFNO0VBQ1QsYUFBYSx3QkFBd0IsZUFBZTtJQUVqRCxTQUFTO0lBQ1QsTUFBTTs7Ozs7QUFTVCxhQUFhO0VBQ1osVUFBVTtFQUFYLGFBQWEsc0JBQXNCO0lBR2pDLFVBQVU7RUFDWixhQUFhLHNCQUFzQjtJQUVqQyxNQUFNO0lBQ04sYUFBYTtJQUNiLFlBQVk7RUFHZCxhQUFhLHFCQUFxQixlQUFlO0lBRTlDLFNBQVM7SUFDVCxLQUFLO0VBQ1IsYUFBYSxxQkFBcUIsZUFBZTtJQUU5QyxTQUFTO0lBQ1QsWUFBWTs7Ozs7QUFTZixhQUFhO0VBQ1osVUFBVTtFQUFYLGFBQWEsd0JBQXdCO0lBR25DLFVBQVU7RUFDWixhQUFhLHdCQUF3QjtJQUVuQyxNQUFNO0lBQ04sYUFBYTtJQUNiLFlBQVk7RUFHZCxhQUFhLHVCQUF1QixlQUFlO0lBRWhELFNBQVM7SUFDVCxLQUFLO0VBQ1IsYUFBYSx1QkFBdUIsZUFBZTtJQUVoRCxTQUFTO0lBQ1QsWUFBWTs7Ozs7QUFVZixhQUFhO0VBQ1osVUFBVTs7QUFFWCxhQUFhLHNCQUFzQjtFQUNqQyxNQUFNO0VBQ04sYUFuV1k7RUFRYixtQkE2VnFCO0VBNVZsQixnQkE0VmtCO0VBM1ZqQixlQTJWaUI7RUExVmhCLGNBMFZnQjtFQXpWYixXQXlWYTs7QUFFdEIsYUFBYSxzQkFBc0I7RUFDakMsVUFBVTtFQUNWLFNBQVM7O0FBR1gsYUFBYSxxQkFBcUIsZUFBZTtFQUNoRCxTQUFTO0VBcldULG1CQXVXb0I7RUF0V2pCLGdCQXNXaUI7RUFyV2hCLGVBcVdnQjtFQXBXZixjQW9XZTtFQW5XWixXQW1XWTs7QUFFckIsYUFBYSxxQkFBcUIsZUFBZTtFQUNoRCxTQUFTO0VBQ1QsYUFBYTtFQTNXYixtQkE2V29CO0VBNVdqQixnQkE0V2lCO0VBM1doQixlQTJXZ0I7RUExV2YsY0EwV2U7RUF6V1osV0F5V1k7Ozs7O0FBUXJCLGFBQWE7RUFDWixVQUFVOztBQUVYLGFBQWEscUJBQXFCO0VBQ2hDLE1BQU07RUFDTixhQUFhO0VBQ2IsWUFBWTtFQTNYYixtQkE2WHFCO0VBNVhsQixnQkE0WGtCO0VBM1hqQixlQTJYaUI7RUExWGhCLGNBMFhnQjtFQXpYYixXQXlYYTs7QUFFdEIsYUFBYSxxQkFBcUI7RUFDaEMsVUFBVTtFQUNWLFNBQVM7O0FBR1gsYUFBYSxvQkFBb0IsZUFBZTtFQUMvQyxTQUFTO0VBcllULG1CQXVZb0I7RUF0WWpCLGdCQXNZaUI7RUFyWWhCLGVBcVlnQjtFQXBZZixjQW9ZZTtFQW5ZWixXQW1ZWTs7QUFFckIsYUFBYSxvQkFBb0IsZUFBZTtFQUMvQyxTQUFTO0VBQ1QsYUFBYTtFQTNZYixtQkE2WW9CO0VBNVlqQixnQkE0WWlCO0VBM1loQixlQTJZZ0I7RUExWWYsY0EwWWU7RUF6WVosV0F5WVk7Ozs7O0FBUXJCLGFBQWE7RUFDWixVQUFVO0VBQ1YsT0FBTzs7QUFFUixhQUFhLHNCQUFzQjtFQUNqQyxNQUFNO0VBQ04sYUFBYTs7QUFHZixhQUFhLHFCQUFxQjtFQUNqQyxlQUFlO0VBQ2YsT0FBTzs7QUFFUixhQUFhLHFCQUFxQixlQUFlO0VBQy9DLFNBQVM7O0FBRVgsYUFBYSxxQkFBcUIsZUFBZTtFQUMvQyxTQUFTOzs7OztBQVNYLGFBQWE7RUFDWixVQUFVO0VBQ1YsT0FBTztFQUVQLFlBQVk7O0FBRWIsYUFBYSw4QkFBOEI7RUFDekMsTUFBTTtFQUNOLGFBQWE7O0FBR2YsYUFBYSw2QkFBNkI7RUFDekMsZUFBZTtFQUNmLE9BQU87O0VBR1AsWUFBWTs7QUFFYixhQUFhLDZCQUE2QixlQUFlO0VBQ3ZELFNBQVM7O0FBRVgsYUFBYSw2QkFBNkIsZUFBZTtFQUN2RCxTQUFTOztBQ2xkWDtFQVBFLGdCQVF3QjtFQVB4QixhQU93QjtFQU54QixZQU13QjtFQUx4QixXQUt3QjtFQUp4QixRQUl3Qjs7QUFHMUI7RUFDRSxVQUFVO0VBQ1YsS0FBSztFQUNMLE1BQU07RUFDTixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7Ozs7Ozs7OztFaUVkVCxhQUFhO0VBQ2IsS0FBSztFQUNMLEtBQXVHO0VBS3ZHLGFBQWE7RUFDYixZQUFZOztBQ1pkLEtoRTRLQSxrQkFBa0IsR0FRbEIsMkJBQTJCO0VnRW5MekIsU0FBUztFQUNULGFBQWE7RUFDYixZQUFZO0VBQ1osYUFBYTtFQUNiLGFBQWE7RUFDYix3QkFBd0I7RUFDeEIseUJBQXlCOzs7QUNIM0I7RUFDRSxXQUFZO0VBQ1osYUFBYztFQUNkLGdCQUFnQjs7QUFFbEIsUWpFbUtBLGtCQUFrQixHQVFsQiwyQkFBMkI7RWlFM0t4QixXQUFXOztBQUNkO0VBQUcsV0FBVzs7QUFDZDtFQUFHLFdBQVc7O0FBQ2Q7RUFBRyxXQUFXOztBQ1pkO0VBQ0UsT0FBUTtFQUNSLFlBQVk7O0FDRmQ7RUFDRSxjQUFjO0VBQ2QsYU5Pb0I7RU1OcEIsaUJBQWlCO0VBQW5CLFNBQVM7SUFDQSxVQUFVOztBQUVuQjtFQUNFLFVBQVU7RUFDVixNTkNvQjtFTUFwQixPTkFvQjtFTUNwQixLQUFNO0VBQ04sWUFBWTtFQUNkLE1BQU07SUFDRixNQUFNOztBQ2JWO0VBQ0UsU0FBUztFQUNULFFBQVE7RUFDUixlQUFlOztBQUdqQjtFQUFjLE9BQU87O0FBQ3JCO0VBQWEsT0FBTzs7QUFFcEIsR0FBRyxZcEVtS0gsa0JBQWtCLENvRW5LZixZcEUyS0gsMkJBQTJCLENvRTNLeEI7RUFDYSxjQUFjO0FBQTlCLEdBQUcsYXBFa0tILGtCQUFrQixDb0VsS2YsYXBFMEtILDJCQUEyQixDb0UxS3hCO0VBQ2MsYUFBYTs7QUNYOUI7RUFDRSxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCxXQUFXOztnQkFHRztFQUFoQjtJQUNPLGdCQUFnQjs7RUFBdkI7SUFDUyxnQkFBZ0I7O21CQUVOO0VBQW5CO0lBQ08sbUJBQW1COztFQUExQjtJQUNTLG1CQUFtQjs7Y0FFZDtFQUFkO0lBQ08sY0FBYzs7RUFBckI7SUFDUyxjQUFjOztlQUVSO0VBQWY7SUFDTyxlQUFlOztFQUF0QjtJQUNTLGVBQWU7O1dBRWI7RUFBWDtJQUNPLFdBQVc7O0VBQWxCO0lBQ1MsV0FBVzs7QUN6QnBCO0VSSUUsUUFBUTtFQUNSLG1CQUFtQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ2QsY0FBYztFQUNYLFdBQVc7O0FRUnJCO0VSR0UsUUFBUTtFQUNSLG1CQUFtQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ2QsY0FBYztFQUNYLFdBQVc7O0FRUHJCO0VSRUUsUUFBUTtFQUNSLG1CQUFtQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ2QsY0FBYztFQUNYLFdBQVc7O0FRTHJCO0VSU0UsUUFBUTtFQUNSLG1CQUFtQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ2QsY0FBYztFQUNYLFdBQVc7O0FRYnJCO0VSUUUsUUFBUTtFQUNSLG1CQUFtQjtFQUNoQixnQkFBZ0I7RUFDZixlQUFlO0VBQ2QsY0FBYztFQUNYLFdBQVc7O0FTbEJyQjtFQUNFLFVBQVU7RUFDVixTQUFTO0VBQ1QsT0FBTztFQUNQLFFBQVE7RUFDUixhQUFhO0VBQ2IsZ0JBQWdCOztBQUVsQixjQUFjO0VBQ1osVUFBVTtFQUNWLE1BQU07RUFDTixPQUFPO0VBQ1AsWUFBWTs7QUFFZDtFQUFHLGFBQWE7O0FBQ2hCO0VBQUcsV0FBVzs7QUFDZDtFQUFHLE9WUm1COzs7O0FXTHRCLFNBQVM7RUFBTixTWFFZOztBV1BmLFNBQVM7RUFBTixTWFFZOztBV1BmLFVBQVU7RUFBUCxTWFFhOztBV1BoQixjQUFjO0VBQVgsU1hRaUI7O0FXUHBCLFNBQVM7RUFBTixTWFFZOztBV1BmLFFBQVE7RUFBTCxTWFFXOztBV1BkLFVBQVU7RUFBUCxTWFFhOztBV1BoQixRQUFRO0VBQUwsU1hRVzs7QVdQZCxRQUFRO0VBQUwsU1hRVzs7QVdQZCxZQUFZO0VBQVQsU1hRZTs7QVdQbEIsTUFBTTtFQUFILFNYUVM7O0FXUFosV0FBVztFQUFSLFNYUWM7O0FXUGpCLFNBQVM7RUFBTixTWFFZOztBV1BmLFNBQVM7RUFBTixTWFFZOztBV1BmLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLGFBQWE7RUFBVixTWFFnQjs7QVdQbkIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFFBQVEsU0FBUyxPQUFPO0VBQXJCLFNYUVU7O0FXUGIsV0FBVztFQUFSLFNYUWM7O0FXUGpCLFFBQVE7RUFBTCxTWFFXOztBV1BkLFVBQVU7RUFBUCxTWFFhOztBV1BoQixXQUFXO0VBQVIsU1hRYzs7QVdQakIsUUFBUTtFQUFMLFNYUVc7O0FXUGQsWUFBWTtFQUFULFNYUWU7O0FXUGxCLHVCQUF1QjtFQUFwQixTWFEwQjs7QVdQN0IscUJBQXFCO0VBQWxCLFNYUXdCOztBV1AzQixTQUFTO0VBQU4sU1hRWTs7QVdQZixpQkFBaUI7RUFBZCxTWFFvQjs7QVdQdkIsZ0JBQWdCLFNBQVMsVUFBVTtFQUFoQyxTWFFhOztBV1BoQixXQUFXO0VBQVIsU1hRYzs7QVdQakIsWUFBWTtFQUFULFNYUWU7O0FXUGxCLFFBQVE7RUFBTCxTWFFXOztBV1BkLFFBQVE7RUFBTCxTWFFXOztBV1BkLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsY0FBYztFQUFYLFNYUWlCOztBV1BwQixlQUFlO0VBQVosU1hRa0I7O0FXUHJCLGFBQWE7RUFBVixTWFFnQjs7QVdQbkIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFdBQVc7RUFBUixTWFFjOztBV1BqQixPQUFPO0VBQUosU1hRVTs7QVdQYixRQUFRO0VBQUwsU1hRVzs7QVdQZCxRQUFRO0VBQUwsU1hRVzs7QVdQZCxZQUFZO0VBQVQsU1hRZTs7QVdQbEIsU0FBUztFQUFOLFNYUVk7O0FXUGYsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFFBQVE7RUFBTCxTWFFXOztBV1BkLFFBQVE7RUFBTCxTWFFXOztBV1BkLFVBQVU7RUFBUCxTWFFhOztBV1BoQixlQUFlO0VBQVosU1hRa0I7O0FXUHJCLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsY0FBYztFQUFYLFNYUWlCOztBV1BwQixnQkFBZ0I7RUFBYixTWFFtQjs7QVdQdEIsZUFBZTtFQUFaLFNYUWtCOztBV1ByQixpQkFBaUI7RUFBZCxTWFFvQjs7QVdQdkIsUUFBUTtFQUFMLFNYUVc7O0FXUGQsVUFBVSxTQUFTLFdBQVc7RUFBM0IsU1hRYzs7QVdQakIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixhQUFhO0VBQVYsU1hRZ0I7O0FXUG5CLFVBQVU7RUFBUCxTWFFhOztBV1BoQixjQUFjO0VBQVgsU1hRaUI7O0FXUHBCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixRQUFRO0VBQUwsU1hRVzs7QVdQZCxRQUFRLFNBQVMsbUJBQW1CO0VBQWpDLFNYUXNCOztBV1B6QixrQkFBa0I7RUFBZixTWFFxQjs7QVdQeEIsa0JBQWtCO0VBQWYsU1hRcUI7O0FXUHhCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixpQkFBaUI7RUFBZCxTWFFvQjs7QVdQdkIsaUJBQWlCO0VBQWQsU1hRb0I7O0FXUHZCLFlBQVk7RUFBVCxTWFFlOztBV1BsQixRQUFRO0VBQUwsU1hRVzs7QVdQZCxTQUFTO0VBQU4sU1hRWTs7QVdQZixRQUFRO0VBQUwsU1hRVzs7QVdQZCxXQUFXO0VBQVIsU1hRYzs7QVdQakIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixTQUFTO0VBQU4sU1hRWTs7QVdQZixnQkFBZ0I7RUFBYixTWFFtQjs7QVdQdEIsaUJBQWlCO0VBQWQsU1hRb0I7O0FXUHZCLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixnQkFBZ0I7RUFBYixTWFFtQjs7QVdQdEIsbUJBQW1CO0VBQWhCLFNYUXNCOztBV1B6QixlQUFlO0VBQVosU1hRa0I7O0FXUHJCLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsa0JBQWtCO0VBQWYsU1hRcUI7O0FXUHhCLGtCQUFrQjtFQUFmLFNYUXFCOztBV1B4QixPQUFPO0VBQUosU1hRVTs7QVdQYixjQUFjO0VBQVgsU1hRaUI7O0FXUHBCLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsWUFBWTtFQUFULFNYUWU7O0FXUGxCLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsZ0JBQWdCLFNBQVMsU0FBUztFQUEvQixTWFFZOztBV1BmLFVBQVU7RUFBUCxTWFFhOztBV1BoQixZQUFZO0VBQVQsU1hRZTs7QVdQbEIsUUFBUTtFQUFMLFNYUVc7O0FXUGQsU0FBUztFQUFOLFNYUVk7O0FXUGYsWUFBWTtFQUFULFNYUWU7O0FXUGxCLHNCQUFzQjtFQUFuQixTWFF5Qjs7QVdQNUIsUUFBUTtFQUFMLFNYUVc7O0FXUGQsUUFBUTtFQUFMLFNYUVc7O0FXUGQsUUFBUTtFQUFMLFNYUVc7O0FXUGQsT0FBTztFQUFKLFNYUVU7O0FXUGIsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixXQUFXLFNBQVMsd0JBQXdCO0VBQXpDLFNYUTJCOztBV1A5QixTQUFTO0VBQU4sU1hRWTs7QVdQZixZQUFZO0VBQVQsU1hRZTs7QVdQbEIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFdBQVc7RUFBUixTWFFjOztBV1BqQixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsY0FBYztFQUFYLFNYUWlCOztBV1BwQixnQkFBZ0I7RUFBYixTWFFtQjs7QVdQdEIsV0FBVztFQUFSLFNYUWM7O0FXUGpCLGlCQUFpQjtFQUFkLFNYUW9COztBV1B2QixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsZUFBZTtFQUFaLFNYUWtCOztBV1ByQixZQUFZO0VBQVQsU1hRZTs7QVdQbEIsWUFBWTtFQUFULFNYUWU7O0FXUGxCLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsa0JBQWtCO0VBQWYsU1hRcUI7O0FXUHhCLG1CQUFtQjtFQUFoQixTWFFzQjs7QVdQekIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLE9BQU87RUFBSixTWFFVOztBV1BiLFNBQVMsU0FBUyxRQUFRO0VBQXZCLFNYUVc7O0FXUGQsWUFBWTtFQUFULFNYUWU7O0FXUGxCLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsaUJBQWlCO0VBQWQsU1hRb0I7O0FXUHZCLGFBQWE7RUFBVixTWFFnQjs7QVdQbkIsV0FBVztFQUFSLFNYUWM7O0FXUGpCLFlBQVk7RUFBVCxTWFFlOztBV1BsQixtQkFBbUI7RUFBaEIsU1hRc0I7O0FXUHpCLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsaUJBQWlCO0VBQWQsU1hRb0I7O0FXUHZCLFdBQVc7RUFBUixTWFFjOztBV1BqQixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsaUJBQWlCO0VBQWQsU1hRb0I7O0FXUHZCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixXQUFXO0VBQVIsU1hRYzs7QVdQakIsU0FBUztFQUFOLFNYUVk7O0FXUGYsWUFBWTtFQUFULFNYUWU7O0FXUGxCLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLFdBQVc7RUFBUixTWFFjOztBV1BqQixZQUFZO0VBQVQsU1hRZTs7QVdQbEIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixlQUFlO0VBQVosU1hRa0I7O0FXUHJCLE9BQU87RUFBSixTWFFVOztBV1BiLFNBQVM7RUFBTixTWFFZOztBV1BmLFlBQVk7RUFBVCxTWFFlOztBV1BsQixRQUFRO0VBQUwsU1hRVzs7QVdQZCxlQUFlO0VBQVosU1hRa0I7O0FXUHJCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixlQUFlO0VBQVosU1hRa0I7O0FXUHJCLGFBQWE7RUFBVixTWFFnQjs7QVdQbkIsZUFBZTtFQUFaLFNYUWtCOztBV1ByQixxQkFBcUI7RUFBbEIsU1hRd0I7O0FXUDNCLHNCQUFzQjtFQUFuQixTWFF5Qjs7QVdQNUIsbUJBQW1CO0VBQWhCLFNYUXNCOztBV1B6QixxQkFBcUI7RUFBbEIsU1hRd0I7O0FXUDNCLFNBQVM7RUFBTixTWFFZOztBV1BmLFVBQVU7RUFBUCxTWFFhOztBV1BoQixTQUFTO0VBQU4sU1hRWTs7QVdQZixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixjQUFjO0VBQVgsU1hRaUI7O0FXUHBCLFNB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QUFwQixTWFFVOztBV1BiLFdBQVcsU0FBUyxPQUFPO0VBQXhCLFNYUVU7O0FXUGIsUUFBUTtFQUFMLFNYUVc7O0FXUGQsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixrQkFBa0I7RUFBZixTWFFxQjs7QVdQeEIsbUJBQW1CO0VBQWhCLFNYUXNCOztBV1B6QixtQkFBbUI7RUFBaEIsU1hRc0I7O0FXUHpCLG9CQUFvQjtFQUFqQixTWFF1Qjs7QVdQMUIsb0JBQW9CO0VBQWpCLFNYUXVCOztBV1AxQixxQkFBcUI7RUFBbEIsU1hRd0I7O0FXUDNCLGFBQWE7RUFBVixTWFFnQjs7QVdQbkIsZUFBZTtFQUFaLFNYUWtCOztBV1ByQixrQkFBa0I7RUFBZixTWFFxQjs7QVdQeEIsV0FBVztFQUFSLFNYUWM7O0FXUGpCLFFBQVE7RUFBTCxTWFFXOztBV1BkLGVBQWU7RUFBWixTWFFrQjs7QVdQckIsZ0JBQWdCO0VBQWIsU1hRbUI7O0FXUHRCLFdBQVc7RUFBUixTWFFjOztBV1BqQixrQkFBa0I7RUFBZixTWFFxQjs7QVdQeEIsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsT0FBTztFQUFKLFNYUVU7O0FXUGIsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixvQkFBb0I7RUFBakIsU1hRdUI7O0FXUDFCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixpQkFBaUI7RUFBZCxTWFFvQjs7QVdQdkIsbUJBQW1CO0VBQWhCLFNYUXNCOztBV1B6QixpQkFBaUI7RUFBZCxTWFFvQjs7QVdQdkIsbUJBQW1CO0VBQWhCLFNYUXNCOztBV1B6QixvQkFBb0I7RUFBakIsU1hRdUI7O0FXUDFCLFNBQVM7RUFBTixTWFFZOztBV1BmLFdBQVc7RUFBUixTWFFjOztBV1BqQixXQUFXO0VBQVIsU1hRYzs7QVdQakIsU0FBUztFQUFOLFNYUVk7O0FXUGYsWUFBWTtFQUFULFNYUWU7O0FXUGxCLFNBQVM7RUFBTixTWFFZOztBV1BmLGNBQWM7RUFBWCxTWFFpQjs7QVdQcEIsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFVBQVU7RUFBUCxTWFFhOztBV1BoQixRQUFRO0VBQUwsU1hRVzs7QVdQZCxVQUFVO0VBQVAsU1hRYTs7QVdQaEIsU0FBUztFQUFOLFNYUVk7O0FXUGYsVUFBVTtFQUFQLFNYUWE7O0FXUGhCLFdBQVc7RUFBUixTWFFjOztBV1BqQixPQUFPO0VBQUosU1hRVTs7QVdQYixNQUFNO0VBQUgsU1hRUzs7QVdQWixTQUFTO0VBQU4sU1hRWTs7QVdQZixVQUFVO0VBQVAsU1hRYTs7QVdQaEIsYUFBYTtFQUFWLFNYUWdCOztBV1BuQixrQkFBa0I7RUFBZixTWFFxQjs7QVdQeEIsd0JBQXdCO0VBQXJCLFNYUTJCOztBV1A5Qix1QkFBdUI7RUFBcEIsU1hRMEI7O0FXUDdCLGVBQWUsU0FBUyx1QkFBdUI7RUFBNUMsU1hRMEI7O0FXUDdCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixjQUFjO0VBQVgsU1hRaUI7O0FXUHBCLGdCQUFnQjtFQUFiLFNYUW1COztBV1B0QixnQkFBZ0IsU0FBUyxPQUFPO0VBQTdCLFNYUVU7O0FXUGIsaUJBQWlCO0VBQWQsU1hRb0I7O0FIL092QjtFQUNNLFlBQVk7O0FBRGxCO0VBQ00sWUFBWTs7QUFEbEI7RUFDTSxZQUFZOztBQURsQjtFQUNNLFlBQVk7O0FBS2Q7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQVZsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBVmxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFWbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQVZsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBaEJ0QjtFQUNNLFlBQVk7O0FBRGxCO0VBQ00sWUFBWTs7QUFEbEI7RUFDTSxZQUFZOztBQURsQjtFQUNNLFlBQVk7O0FBS2Q7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBSWxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQVZsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFJbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FBVmxCO0VBRUo7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZOztBQUlsQjtFQUVKO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTs7QUFWbEI7RUFFSjtJQUNVLFlBQVk7RUFEdEI7SUFDVSxZQUFZO0VBRHRCO0lBQ1UsWUFBWTtFQUR0QjtJQUNVLFlBQVk7O0FB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O0VFM0JqQixPRm5CTTtFRW9CTixZRjRCaUI7RUUzQmpCLGFGNEJrQjtFRTNCbEIsY0Y0Qm1CO0VFM0JuQixlRjRCb0I7RUUzQnBCLGVGNEJhO0VFM0JiLFlGNEJhO0VFM0JiLFlBQVk7RUFDWixRRjJCYTtFRTFCYixTRjJCYzs7QUV4QmhCLE9BQU8sQ0FBQyxTQUFSLE9BQVEsT1V1RFIsdUJWdkRBLE9BQVEsT1U2RFIseUJWN0RBLE9BQVEsT1VtRVIseUJWbkVpQixPQUFPO0VBRXRCLFFBQVE7RUFDUixRQUFRO0VBQ1IsYUFBYTs7QUFHZixhQUFhO0VBQ1gsU0FBUzs7QUFHWCxhQUFhLEtBQUs7RUFDakIsYUFBYTtFQUNiLGFBQWE7RUFDYixnQkFBZ0I7O0FBR2pCO0VBQ0UsWUZqRE07RUVrRE4sWUY4QjZCO0VFN0I3QixhRjhCOEI7RUU3QjlCLGNGOEIrQjtFRTdCL0IsZUY4QmdDO0VFN0JoQyxZRjhCeUI7RUU3QnpCLFFGOEJ5QjtFRTdCekIsU0Y4QjBCOztBRTNCNUIsVUFBVTtFQUNSLFlGT1k7RUVOWixpQkFBaUI7RUFDakIsT0ZNb0I7RUVMcEIsVUFBVTtFQUNWLFlGS29CO0VFSnBCLGFGS3FCO0VFSnJCLGNGS3NCO0VFSnRCLGVGS3VCO0VFSnZCLGVGS2dCO0VFSmhCLFlGS2dCO0VFSmhCLFFGS2dCO0VFSmhCLFNGS2lCOztBRUZuQjtFQUNFLFVBQVU7RUFDVixLRmNRO0VFYlIsUUZjVztFRWJYLE9GY1U7RUViVixNRmNTO0VFYlQsT0ZRVTtFRVBWLFFGUVc7RUVQWCxTQUFTOztBQUdYO0VBQ0csWUZ1QjBFO0VFdEIxRSxpQkFBaUI7RUFDakIsWUZzQjBCO0VFckIxQixhRnNCMkI7RUVyQjNCLGNGc0I0QjtFRXJCNUIsZUZzQjZCO0VFckI3QixlRnNCc0I7RUVyQnRCLFlGc0JzQjtFRXJCdEIsUUZzQnNCOztBRW5CekIsVUFBVSxVQUFVLFFBQVEsVUFBVTtFQUVuQyxZRkZpRTtFRUdqRSxpQkFBaUI7RUFDakIsWUZGaUI7RUVHakIsYUZGa0I7RUVHbEIsY0ZGbUI7RUVHbkIsZUZGb0I7RUVHcEIsZUZGYTtFRUdiLFlGRmE7O0FFS2hCLEdBQUc7RUFDQSxRRkxhOztBRVFoQixRQUFRO0VBQ0wsWUYvR0s7O0FFa0hSLFNBQVMsR0FBVCxTVS9CQSx1QlYrQkEsU1V6QkEseUJWeUJBLFNVbkJBLHlCVm1CWSxjQUFjO0VBRXpCLGFBQWE7RUFDYixhQUFhO0VBQ2IsYUZ5Qm9CO0VFeEJwQixZQUFZO0VBQ1osaUJBQWlCOztBQUdsQixTQUFTLGNBQWM7RUFDdEIsZUFBZTs7QUFHaEI7RUFBQSxpQkFBaUIsRUFBRSxLQUFLLFdBQVcsQ0FBQyxLQUFLLFVBQXpDLGlCQUFpQixFQUFFLEtBQUssV1U1Q3hCLHFCVjRDb0MsS0FBSyxVQUF6QyxpQkFBaUIsRUFBRSxLQUFLLFdVdEN4Qix1QlZzQ29DLEtBQUssVUFBekMsaUJBQWlCLEVBQUUsS0FBSyxXVWhDeEIsdUJWZ0NvQyxLQUFLLFVBQVUsaUJBQWlCLEVBQUUsT0FBTyxLQUFLLFdBQVcsQ0FBQyxLQUFLLFVBQWhELGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXVTVDbEYscUJWNEM4RixLQUFLLFVBQWhELGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXVXRDbEYsdUJWc0M4RixLQUFLLFVBQWhELGlCQUFpQixFQUFFLE9BQU8sS0FBSyxXVWhDbEYsdUJWZ0M4RixLQUFLO0lBR2pHLFNGWW9CO0lFWHBCLGFGWGM7RUVZaEIsaUJBQWlCLFVBQVUsRUFBRSxLQUFLLFdBQVcsR0FBN0MsaUJBQWlCLFVBQVUsRUFBRSxLQUFLLFdVakRsQyx1QlZpREEsaUJBQWlCLFVBQVUsRUFBRSxLQUFLLFdVM0NsQyx5QlYyQ0EsaUJBQWlCLFVBQVUsRUFBRSxLQUFLLFdVckNsQztJVnVDRSxTRmlCdUM7SUVoQnZDLGFGZmM7RUVnQmhCLGlCQUFpQixnQkFBZ0IsR0FBakMsaUJBQWlCLGdCVXJEakIsdUJWcURBLGlCQUFpQixnQlUvQ2pCLHlCVitDQSxpQkFBaUIsZ0JVekNqQjtJVjJDRSxlQUFlO0VBQ2pCLGlCQUFpQixnQkFBZ0IsQ0FBQyxRQUFsQyxpQkFBaUIsZ0JVeERqQixxQlZ3RGtDLFFBQWxDLGlCQUFpQixnQlVsRGpCLHVCVmtEa0MsUUFBbEMsaUJBQWlCLGdCVTVDakIsdUJWNENrQztJQUVoQyxPQUFPOztBQUlULFNBQVMsUUFBUSxHQUFqQixTQUFTLFFVOURULHVCVjhEQSxTQUFTLFFVeERULHlCVndEQSxTQUFTLFFVbERULHlCVmtEb0IsY0FBYyxVQUFVLFFBQVEsY0FBYyxVQUFVLFNBQVMsR0FBakMsY0FBYyxVQUFVLFNVOUQ1RSx1QlY4RG9ELGNBQWMsVUFBVSxTVXhENUUseUJWd0RvRCxjQUFjLFVBQVUsU1VsRDVFLHlCVmtEd0YsaUJBQWlCLEdBQUcsRUFBRSxTQUFTLEdBQS9CLGlCQUFpQixHQUFHLEVBQUUsU1U5RDlHLHVCVjhEd0YsaUJBQWlCLEdBQUcsRUFBRSxTVXhEOUcseUJWd0R3RixpQkFBaUIsR0FBRyxFQUFFLFNVbEQ5RztFVnNEQyxZQUFZO0VBQ1osaUJBQWlCO0VBQ2pCLFlBQVk7O0FBR2IsU0FBUyxFQUFFO0VBQ1YsWUFBWTtFQUNaLFdBQVc7RUFDWCxZRlZ3Qjs7QUVhekIsU0FBUyxFQUFFLFVBQVUsR0FBckIsU0FBUyxFQUFFLFVVN0VYLHVCVjZFQSxTQUFTLEVBQUUsVVV2RVgseUJWdUVBLFNBQVMsRUFBRSxVVWpFWDtFVmtFQyxZQUFZOztBQUdiLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTQUFTLEdBQXhDLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTVWpGL0IsdUJWaUZBLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTVTNFL0IseUJWMkVBLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxTVXJFL0I7RVZzRUMsWUFBWTs7QUFHYjtFQUFBLGlCQUFpQixHQUFqQixpQlVyRkEsdUJWcUZBLGlCVS9FQSx5QlYrRUEsaUJVekVBO0lWMkVFLFlBQVk7SUFDWixhRm5EYztFRW9EaEIsaUJBQWlCLEdBQUcsS0FBSyxHQUF6QixpQkFBaUIsR0FBRyxLVXpGcEIsdUJWeUZBLGlCQUFpQixHQUFHLEtVbkZwQix5QlZtRkEsaUJBQWlCLEdBQUcsS1U3RXBCLHlCVjZFNEIsaUJBQWlCLEdBQUcsS0FBSyxpQ0FBaUMsaUJBQWlCLFVBQVUsR0FBRyxHQUE5QixpQkFBaUIsVUFBVSxHVXpGakgsdUJWeUZzRixpQkFBaUIsVUFBVSxHVW5GakgseUJWbUZzRixpQkFBaUIsVUFBVSxHVTdFakgseUJWNkV1SCxpQkFBaUIsVUFBVSxHQUFHO0lBS25KLFNGMUJ1QztFRTJCekMsaUJBQWlCLFFBQVEsR0FBekIsaUJBQWlCLFFVL0ZqQix1QlYrRkEsaUJBQWlCLFFVekZqQix5QlZ5RkEsaUJBQWlCLFFVbkZqQix5QlZtRjRCLGlCQUFpQixHQUFHLEVBQUUsU0FBUyxHQUEvQixpQkFBaUIsR0FBRyxFQUFFLFNVL0ZsRCx1QlYrRjRCLGlCQUFpQixHQUFHLEVBQUUsU1V6RmxELHlCVnlGNEIsaUJBQWlCLEdBQUcsRUFBRSxTVW5GbEQ7SVZzRkUsWUFBWTs7QUFJZCxXQUFXLFNBQVMsY0FBYztFQUVoQyxZQUFZOztBQUdkLFdBQVcsR0FBWCxXVTNHQSx1QlYyR0EsV1VyR0EseUJWcUdBLFdVL0ZBO0VWZ0dFLFNBQVM7RUFDVCxPQUFPOztBQUdULFdBQVcsWUFBWSxXQUFXO0VBRWhDLFFBQVE7O0FBR1YsV0FBVyxRQUFRO0VBQ2pCLGtCQUFrQjtFQUNsQixPQUFPO0VBQ1AsY0FBYztFQUNkLGNBQWM7RUFDZCxjQUFjOztBQUdoQixXQUFXLFFBQVEsUUFBUTtFQUN6QixrQkFBa0I7O0FBR3BCLFdBQVcsT0FBTyxHQUFsQixXQUFXLE9VaklYLHVCVmlJQSxXQUFXLE9VM0hYLHlCVjJIQSxXQUFXLE9VckhYO0VWc0hFLE9BQU87RUFDUCxhRjRFd0I7RUUzRXhCLGFGNUxpQjtFRTZMakIsYUZ5RXdCO0VFeEV4QixZRjRFeUQ7RUUzRXpELGVGOEV5Qjs7QUUzRTNCLFdBQVcsV0FBVyxXQUFXO0VBRS9CLHFCQUFxQjtFQUNyQixpQkFBaUI7RUFDakIsVUFBVTs7QUFHWixXQUFXLFVBQVUsR0FBckIsV0FBVyxVVWpKWCx1QlZpSkEsV0FBVyxVVTNJWCx5QlYySUEsV0FBVyxVVXJJWDtFVnNJRSxTQUFTO0VBQ1QsY0FBYztFQUNkLGNBQWM7RUFDZCxjQUFjO0VBQ2QsZUYrRHlCO0VFOUR6QixrQkFBa0I7RUFDbEIsT0FBTztFQUNQLGFGc0R3QjtFRXJEeEIsWUZ3RHlEO0VFdkR6RCxhRm5OaUI7RUVvTmpCLGFGa0R3QjtFRWpEeEIsV0YyRWtCO0VFMUVsQixTQUFTO0VBQ1QsYUFBYTtFQUNiLE9BQU87RUFDUCxRQUFRO0VBQ1IsUUFBUTtFQUNSLEtBQUs7O0FBR1AsV0FBVyxVQUFVLENBQUMsUUFBdEIsV0FBVyxVVXRLWCxxQlZzS3NCLFFBQXRCLFdBQVcsVVVoS1gsdUJWZ0tzQixRQUF0QixXQUFXLFVVMUpYLHVCVjBKc0IsUUFBUSxXQUFXLFNBQVMsVUFBVSxHQUE5QixXQUFXLFNBQVMsVVV0S2xELHVCVnNLOEIsV0FBVyxTQUFTLFVVaEtsRCx5QlZnSzhCLFdBQVcsU0FBUyxVVTFKbEQ7RVY0SkUsa0JBQWtCO0VBQ2xCLE9BQU87O0FBR1QsV0FBVyxNQUFNLGdCQUFnQixDQUFDLFFBQWxDLFdBQVcsTUFBTSxnQlU1S2pCLHFCVjRLa0MsUUFBbEMsV0FBVyxNQUFNLGdCVXRLakIsdUJWc0trQyxRQUFsQyxXQUFXLE1BQU0sZ0JVaEtqQix1QlZnS2tDLFFBQVEsV0FBVyxTQUFTLGdCQUFnQixDQUFDLFFBQXJDLFdBQVcsU0FBUyxnQlU1SzlELHFCVjRLK0UsUUFBckMsV0FBVyxTQUFTLGdCVXRLOUQsdUJWc0srRSxRQUFyQyxXQUFXLFNBQVMsZ0JVaEs5RCx1QlZnSytFO0VBRTdFLDJCQUEyQjtFQUMzQix5QkFBeUI7RUFDekIsMEJBQTBCO0VBQzFCLHdCQUF3QjtFQUN4QixjRnlDaUQ7RUV4Q2pELGNBQWM7RUFDZCxjQUFjO0VBQ2QsY0FBYztFQUNkLFNBQVM7RUFDVCxTQUFTO0VBQ1QsVUFBVTtFQUNWLEtBQUs7RUFDTCxPQUFPO0VBQ1AsUUFBUTtFQUNSLE9BQU87O0FBR1QsV0FBVztFQUNULFFGeURtQjtFRXhEbkIsT0FBTztFQUNQLGNGaUN3QjtFRWhDeEIsY0ZpQ3lCO0VFaEN6QixjRmlDeUI7O0FFOUIzQixXQUFXLG1CQUFtQixVQUFVLFdBQVc7RUFFakQsZUFBZTs7QUFHakIsV0FBVztFQUNULFlGdFNPO0VFdVNQLE9GcFNNO0VFcVNOLFlGd0MyQjtFRXZDM0IsU0FBUztFQUNULGNBQWM7RUFDZCxjQUFjO0VBQ2QsY0FBYzs7QUFHaEIsV0FBVztFQUNULFNBQVM7RUFDVCxXRndCK0I7RUV2Qi9CLFlGOEIyQjtFRTdCM0IsVUFBVTtFQUNWLE1BQU07RUFDTixLQUFLO0VBQ0wsU0FBUzs7QUFHWCxXQUFXO0VBQ1QsU0FBUzs7QUFHWCxXQUFXLFVBQVUsR0FBckIsV0FBVyxVVXBPWCx1QlZvT0EsV0FBVyxVVTlOWCx5QlY4TkEsV0FBVyxVVXhOWCx5QlZ3TndCLFdBQVcsY0FBYyxVQUFVLEdBQW5DLFdBQVcsY0FBYyxVVXBPakQsdUJWb093QixXQUFXLGNBQWMsVVU5TmpELHlCVjhOd0IsV0FBVyxjQUFjLFVVeE5qRDtFVjBORSxTQUFTO0VBQ1QsWUFBWTtFQUNaLE9BQU87RUFDUCxhRjFCd0I7RUUyQnhCLFlGakIwQjtFRWtCMUIsYUZuU2lCO0VFb1NqQixhRjlCd0I7RUUrQnhCLFNBQVM7RUFDVCxhQUFhO0VBQ2IsT0FBTztFQUNQLFFBQVE7RUFDUixRQUFRO0VBQ1IsS0FBSztFQUNMLGVGekIwQjs7QUU0QjVCLFdBQVcsVUFBVSxDQUFDLFFBQXRCLFdBQVcsVVV0UFgscUJWc1BzQixRQUF0QixXQUFXLFVVaFBYLHVCVmdQc0IsUUFBdEIsV0FBVyxVVTFPWCx1QlYwT3NCLFFBQVEsV0FBVyxjQUFjLFVBQVUsQ0FBQyxRQUFwQyxXQUFXLGNBQWMsVVV0UHZELHFCVnNQa0UsUUFBcEMsV0FBVyxjQUFjLFVVaFB2RCx1QlZnUGtFLFFBQXBDLFdBQVcsY0FBYyxVVTFPdkQsdUJWME9rRTtFQUVoRSxZQUFZO0VBQ1osT0FBTzs7QUFHVDtFQUFBLFdBQVcsU0FBUyxhQUFhLE9BQU87SUFFcEMsU0FBUzs7QUFJYjtFQUNDLFlGelZPO0VFMFZQLFlGL0l5QjtFRWdKekIsYUYvSTBCO0VFZ0oxQixjRi9JMkI7RUVnSjNCLGVGL0k0QjtFRWdKNUIsZUYvSXFCO0VFZ0pyQixZRi9JcUI7RUVnSnJCLFFGL0lxQjtFRWdKckIsU0YvSXNCOztBRWtKdkI7RUFDQyxZRnZLUTtFRXdLUixPRm5XTztFRW9XUCxZRnZLZ0I7RUV3S2hCLGFGdktpQjtFRXdLakIsY0Z2S2tCO0VFd0tsQixlRnZLbUI7RUV3S25CLGVGdktZO0VFd0taLFlGdktZO0VFd0taLFFGdktZO0VFd0taLFNGdkthOztBRTBLZDtFQUNDLFlGOUpZO0VFK0paLE9GaFhPO0VFaVhQLGFGOUpxQjtFRStKckIsZ0JGOUp3QjtFRStKeEIsWUY5Sm9CO0VFK0pwQixhRjlKcUI7RUUrSnJCLGNGOUpzQjtFRStKdEIsZUY5SnVCO0VFK0p2QixlRjlKZ0I7RUUrSmhCLFlGOUpnQjtFRStKaEIsWUY5Sm9COztBRWlLckI7RUFDRSxZRjdYTTtFRThYTixZRmxKMkI7RUVtSjNCLGFGbEo0QjtFRW1KNUIsY0ZsSjZCO0VFbUo3QixlRmxKOEI7RUVtSjlCLGVGbEp1QjtFRW1KdkIsWUZsSnVCO0VFbUp2QixRRmxKdUI7RUVtSnZCLFNGbEp3Qjs7QUVxSjFCLFFBQVE7RUFDTixZRnpZTTtFRTBZTixPQUFPO0VBQ1AsWUY3S2tCO0VFOEtsQixhRjdLbUI7RUU4S25CLGNGN0tvQjtFRThLcEIsZUY3S3FCO0VFOEtyQixlRjdLYztFRThLZCxZRjdLYztFRThLZCxRRjdLYztFRThLZCxTRjdLZTs7QUVnTGpCLFNBQVMsUUFBUSxDQUFDLE9BQVQsUVVsVVQscUJWa1VrQixPQUFULFFVNVRULHVCVjRUa0IsT0FBVCxRVXRUVCx1QlZzVGtCLE9BQU8sUUFBUSxDQUFDLFVBQVQsUVVsVXpCLHFCVmtVa0MsVUFBVCxRVTVUekIsdUJWNFRrQyxVQUFULFFVdFR6Qix1QlZzVGtDO0VBR2hDLE9BQU87O0FBR1QsUUFBUSxDQUFDLFFBQVQsUVV4VUEscUJWd1VTLFFBQVQsUVVsVUEsdUJWa1VTLFFBQVQsUVU1VEEsdUJWNFRTLFFBQVEsUUFBUSxDQUFDLFNBQVQsUVV4VWpCLHFC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RUFDVixRQUFRO0VBQ1IsT0FBTzs7QUFHVCxVQUFVO0VBQ1QsV0FBVztFQUNYLFlBQVc7O0FBRVosVUFBVSxRQUFRLEtBQUs7RUFDdEIsU0FBUzs7QUFJVixVQUFVLFFBQVEsV0FBVyxRQUFRO0VBQ3BDLFNBQVM7O0FBSVYsVUFBVSxRQUFRLFdBQVcsUUFBUTtFQUNwQyxTQUFTOztBQVNWLEtBQUs7RUFDSixRQUFRO0VBQ1IsU0FBUzs7OztBQ2h1QlY7RUFBQSxHQUFHO0lBRUMsUUFBUTs7O0FBS1o7RUFBYSxZQUFXO0VBQVMsUUFBTztFQUFNLGFBQVk7RUFBTSxPQUFNO0VBQVMsWUFBVztFQUFRLFNBQVE7O0FBQzFHLFdBQVc7RUFBUSxVQUFTO0VBQU8sS0FBSTtFQUFHLE1BQUs7RUFBRyxPQUFNOztBQUN4RCxXQUFXLE1BQU07RUFBUyxRQUFPO0VBQUcsS0FBSTs7QUFDeEMsWUFBWTtFQUFHLFFBQU87RUFBRyxTQUFROztBQUNqQyxZQUFZLEdBQVosWVN1RkEsdUJUdkZBLFlTNkZBLHlCVDdGQSxZU21HQTtFVG5HZSxPQUFNO0VBQVMsU0FBUTtFQUFjLGVBQWM7RUFBSyxpQkFBZ0I7RUFBTSxTQUFRO0VBQU8sYUFBWTs7QUFDeEgsWUFBWTtFQUFZLFlBQVc7O0FBQ25DLFlBQVksVUFBVTtFQUFRLFlBQVc7O0FBQ3pDLFlBQVk7RUFBYSxZQUFXOztBQUNwQyxZQUFZLFdBQVc7RUFBUSxZQUFXOztBQUMxQyxZQUFZO0VBQVksWUFBVzs7QUFDbkMsWUFBWSxVQUFVO0VBQVEsWUFBVyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdsb2JhbCBGb3VuZGF0aW9uIFNldHRpbmdzXHJcbkBpbXBvcnQgXCJzZXR0aW5nc1wiO1xyXG5cclxuLy8gQ29tbWVudCBvdXQgdGhpcyBpbXBvcnQgaWYgeW91IGFyZSBjdXN0b21pemluZyB5b3UgaW1wb3J0cyBiZWxvd1xyXG5AaW1wb3J0IFwibWFzdGVyXCI7XHJcbkBpbXBvcnQgXCJmb3VuZGF0aW9uQmFzZVwiO1xyXG5AaW1wb3J0IFwicG9zdFwiO1xyXG4iLCJAaW1wb3J0IFwiZm91bmRhdGlvbi9mdW5jdGlvbnNcIjtcclxuQGltcG9ydCBcImZvdW5kYXRpb24vc2V0dGluZ3NcIjtcclxuXHJcbi8qU3RhcnQgU2V0dGluZ3MqL1xyXG5cclxuQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUJpdHRlcik7XHJcblxyXG4kYmx1ZTogIzJhODVlODtcclxuJGdyZWVuOiAjMmU4ZjM0O1xyXG4kcmVkOiAjOWMyMTMxO1xyXG4keWVsbG93OiAjZjdiNDJjO1xyXG4kb3JhbmdlOiAjZjk1NjAyO1xyXG4kcGluazogI2Y0OWFjMTtcclxuJHB1cnBsZTogIzk3NjBiMztcclxuJHdoaXRlOiB3aGl0ZTtcclxuJGdyZXk6ICNlZWVlZWU7XHJcbiRkYXJrR3JleTogI2E3OWE5MztcclxuJGJsYWNrOiAjMTQxNDE0O1xyXG4kYnJvd246ICM3ZDRlMmE7XHJcbiRwaW5rOiAjZWQ2ZjZmO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIGFzIGRlZmF1bHQgY29sb3JzIHRocm91Z2hvdXRcclxuJHByaW1hcnktY29sb3I6ICRvcmFuZ2U7XHJcbiRzZWNvbmRhcnktY29sb3I6ICRkYXJrR3JleTtcclxuJHRlcnRpYXJ5LWNvbG9yOiAkZGFya0dyZXk7XHJcbiRhbGVydC1jb2xvcjogI2VkNmY2ZjtcclxuJHN1Y2Nlc3MtY29sb3I6ICM4OGI1NjQ7XHJcblxyXG4vLyBZb3UgY2FuIGZpbmQgdGhlIHZhcmlhYmxlcyBmb3IgZWFjaCBjb21wb25lbnQgYXQgdGhlIGJvdHRvbSBvZiB0aGVpclxyXG4vLyBkb2MgcGFnZS4gV2UgdHJpZWQgdG8gbmFtZSB0aGVtIHRvIHdoZXJlIHRoZXknZCBtYWtlIHNlbnNlIGp1c3QgYnkgcmVhZGluZyB0aGVtLlxyXG4vLyBHbyB0byBodHRwOi8vZm91bmRhdGlvbi56dXJiLmNvbS9kb2NzLyB0byBmaW5kIHdoYXQgeW91IG5lZWQuXHJcblxyXG4vLyBGb3VuZGF0aW9uIEdsb2JhbCBGdW5jdGlvbiwgVmFyaWFibGVzIGFuZCBNaXhpbnNcclxuLy9cclxuLy8gVmFyaWFibGVzXHJcbi8vXHJcblxyXG4vLyBUaGlzIGlzIHRoZSBkZWZhdWx0IGh0bWwgYW5kIGJvZHkgZm9udC1zaXplIGZvciB0aGUgYmFzZSBlbSB2YWx1ZS5cclxuJGVtLWJhc2U6IDE2cHg7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGdsb2JhbCBzdHlsZXNcclxuJGJvZHktYmc6ICRibGFjaztcclxuJGJvZHktYmFja2dyb3VuZDogJGJvZHktYmc7XHJcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcclxuJGJvZHktZm9udC1mYW1pbHk6IFRhaG9tYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1mb250LXdlaWdodDogbm9ybWFsO1xyXG4kYm9keS1mb250LXN0eWxlOiBub3JtYWw7XHJcblxyXG4kd3JhcHBlci1iZzogdHJhbnNwYXJlbnQ7XHJcbiR3cmFwcGVyLXdpZHRoOiBhdXRvO1xyXG4kd3JhcHBlci1tYXJnaW46IDBweCBhdXRvO1xyXG4kd3JhcHBlci1wYWRkaW5nOiAwcHg7XHJcbiR3cmFwcGVyLWJvcmRlci10b3A6IG5vbmU7XHJcbiR3cmFwcGVyLWJvcmRlci1ib3R0b206IG5vbmU7XHJcbiR3cmFwcGVyLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kd3JhcHBlci1ib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiR3cmFwcGVyLXJhZGl1czogMHB4O1xyXG4kd3JhcHBlci1zaGFkb3c6IG5vbmU7XHJcblxyXG4kbG9naW4tYmc6IG5vbmU7XHJcbiRsb2dpbi1iYWNrZ3JvdW5kOiBub25lO1xyXG4kbG9naW4tZm9udC1jb2xvcjogJHdoaXRlO1xyXG4kbG9naW4tYm9yZGVyLXRvcDogbm9uZTtcclxuJGxvZ2luLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kbG9naW4tYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4kbG9naW4tYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJGxvZ2luLXJhZGl1czogMHB4O1xyXG4kbG9naW4tc2hhZG93OiBub25lO1xyXG4kbG9naW4tbWFyZ2luOiAwcHggYXV0bztcclxuJGxvZ2luLXBhZGRpbmc6IDEwcHggNHB4IDVweCA0cHg7XHJcblxyXG4vKiBGdWxsLVdpZHRoICovXHJcbiRsb2dpbi1leHRlbmRlZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRsb2dpbi1leHRlbmRlZC1ib3JkZXItdG9wOiBub25lO1xyXG4kbG9naW4tZXh0ZW5kZWQtYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiRsb2dpbi1leHRlbmRlZC1ib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiRsb2dpbi1leHRlbmRlZC1ib3JkZXItYm90dG9tOiBub25lO1xyXG4kbG9naW4tZXh0ZW5kZWQtc2hhZG93OiBub25lO1xyXG4kbG9naW4tZXh0ZW5kZWQtbWFyZ2luOiAwcHg7XHJcbiRsb2dpbi1leHRlbmRlZC1wYWRkaW5nOiAwcHg7XHJcblxyXG4kbWFzdGhlYWQtYmc6IG5vbmU7XHJcbiRtYXN0aGVhZC1mb250LWNvbG9yOiBub25lO1xyXG4kbWFzdGhlYWQtYm9yZGVyLXRvcDogbm9uZTtcclxuJG1hc3RoZWFkLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kbWFzdGhlYWQtYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4kbWFzdGhlYWQtYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJG1hc3RoZWFkLXJhZGl1czogbm9uZTtcclxuJG1hc3RoZWFkLXNoYWRvdzogbm9uZTtcclxuJG1hc3RoZWFkLW1hcmdpbjogMHB4IGF1dG87XHJcbiRtYXN0aGVhZC1wYWRkaW5nOiAwcHg7XHJcblxyXG4vKiBGdWxsLVdpZHRoICovXHJcbiRtYXN0aGVhZC1leHRlbmRlZC1iZzogJHdoaXRlO1xyXG4kbWFzdGhlYWQtZXh0ZW5kZWQtYm9yZGVyLXRvcDogbm9uZTtcclxuJG1hc3RoZWFkLWV4dGVuZGVkLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kbWFzdGhlYWQtZXh0ZW5kZWQtYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4kbWFzdGhlYWQtZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJG1hc3RoZWFkLWV4dGVuZGVkLXNoYWRvdzogbm9uZTtcclxuJG1hc3RoZWFkLWV4dGVuZGVkLW1hcmdpbjogMHB4O1xyXG4kbWFzdGhlYWQtZXh0ZW5kZWQtcGFkZGluZzogMHB4O1xyXG5cclxuJGFkcy13aWR0aDogNDgwcHg7XHJcbiRhZHMtaGVpZ2h0OiA4MHB4O1xyXG4kYWRzLXRvcDogcmVtLWNhbGMoMTUpO1xyXG4kYWRzLWJvdHRvbTogaW5oZXJpdDtcclxuJGFkcy1yaWdodDogcmVtLWNhbGMoMTApO1xyXG4kYWRzLWxlZnQ6IGluaGVyaXQ7XHJcblxyXG4vKiBCYWNrZ3JvdW5kIGZvciB0aGUgdG9wIGJhciAqL1xyXG4kdG9wYmFyLWJnOiAkYmxhY2s7XHJcbiR0b3BiYXItYmFja2dyb3VuZDogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZykgdG9wICR0b3BiYXItYmc7XHJcbiR0b3BiYXItaG92ZXI6IHVybChpbWFnZXMvbWVudWdyYWRpZW50Mi5wbmcpIHRvcCAkcHJpbWFyeS1jb2xvcjtcclxuJHRvcGJhci1ib3JkZXItdG9wOiBub25lO1xyXG4kdG9wYmFyLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kdG9wYmFyLWJvcmRlci1yaWdodDogbm9uZTtcclxuJHRvcGJhci1ib3JkZXItYm90dG9tOiBub25lO1xyXG4kdG9wYmFyLXJhZGl1czogbm9uZTtcclxuJHRvcGJhci1zaGFkb3c6IG5vbmU7XHJcbiR0b3BiYXItbWFyZ2luOiAwcHggcmVtLWNhbGMoLTE1KTtcclxuJHRvcGJhci1wYWRkaW5nOiAwcHg7XHJcblxyXG4vKiBGdWxsLVdpZHRoICovXHJcbiR0b3BiYXItZXh0ZW5kZWQtYmFja2dyb3VuZDogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZykgdG9wICR0b3BiYXItYmc7XHJcbiR0b3BiYXItZXh0ZW5kZWQtYm9yZGVyLXRvcDogbm9uZTtcclxuJHRvcGJhci1leHRlbmRlZC1ib3JkZXItbGVmdDogbm9uZTtcclxuJHRvcGJhci1leHRlbmRlZC1ib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiR0b3BiYXItZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XHJcbiR0b3BiYXItZXh0ZW5kZWQtcmFkaXVzOiBub25lO1xyXG4kdG9wYmFyLWV4dGVuZGVkLXNoYWRvdzogbm9uZTtcclxuJHRvcGJhci1leHRlbmRlZC1tYXJnaW46IDBweDtcclxuJHRvcGJhci1leHRlbmRlZC1wYWRkaW5nOiAwcHg7XHJcblxyXG4vKiBGYWRpbmcgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIgKi9cclxuJHRvcGJhci1mYWRlLWJnOiBub25lO1xyXG5cclxuLyogSGVpZ2h0IGFuZCBtYXJnaW4gKi9cclxuJHRvcGJhci1oZWlnaHQ6IDMwcHg7XHJcbiR0b3BiYXItbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xyXG5cclxuLyogQ29udHJvbCBJbnB1dCBoZWlnaHQgZm9yIHRvcCBiYXIgKi9cclxuJHRvcGJhci1pbnB1dC1oZWlnaHQ6IDIuNDVlbTtcclxuXHJcbi8qIENvbnRyb2xsaW5nIHRoZSBzdHlsZXMgZm9yIHRoZSB0aXRsZSBpbiB0aGUgdG9wIGJhciAqL1xyXG4kdG9wYmFyLXRpdGxlLXdlaWdodDogYm9sZDtcclxuJHRvcGJhci10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDE3KTtcclxuXHJcbi8qIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdiAqL1xyXG4kdG9wYmFyLWxpbmstY29sb3I6ICNmZmY7XHJcbiR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogI2ZmZjtcclxuJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTogI2ZmZjtcclxuJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZS1ob3ZlcjogI2ZmZjtcclxuJHRvcGJhci1saW5rLXdlaWdodDogYm9sZDtcclxuJHRvcGJhci1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kdG9wYmFyLWxpbmstaG92ZXItbGlnaHRuZXNzOiAtMTAlOyAvLyBEYXJrZW4gYnkgMTAlXHJcbiR0b3BiYXItbGluay1iZy1ob3ZlcjogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZykgdG9wICRwcmltYXJ5LWNvbG9yO1xyXG4kdG9wYmFyLWxpbmstYmctYWN0aXZlOiB1cmwoaW1hZ2VzL21lbnVncmFkaWVudDIucG5nKSB0b3AgJHByaW1hcnktY29sb3I7XHJcbiR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI6IHVybChpbWFnZXMvbWVudWdyYWRpZW50Mi5wbmcpIHRvcCAkcHJpbWFyeS1jb2xvcjtcclxuJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuJHRvcGJhci1saW5rLXBhZGRpbmc6IDBweCByZW0tY2FsYygxNSk7XHJcbiR0b3BiYXItZm9udC1zaGFkb3c6IG5vbmU7XHJcblxyXG4vKiBTdHlsZSB0aGUgdG9wIGJhciBkcm9wZG93biBlbGVtZW50cyAqL1xyXG4kdG9wYmFyLWRyb3Bkb3duLWJnOiAkYmxhY2s7XHJcbiR0b3BiYXItZHJvcGRvd24tc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3I6IHdoaXRlO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc6ICRibGFjaztcclxuJHRvcGJhci1kcm9wZG93bi1saW5rLWJnLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjtcclxuJHRvcGJhci1kcm9wZG93bi1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDQpIHJlbS1jYWxjKDE1KTtcclxuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4O1xyXG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1jb2xvcjogd2hpdGU7XHJcbiR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhOiAwLjU7XHJcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMHB4KTtcclxuXHJcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICM1NTU7XHJcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXdlaWdodDogYm9sZDtcclxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKTtcclxuXHJcbi8qIFRvcCBtZW51IGljb24gc3R5bGVzICovXHJcbiR0b3BiYXItbWVudS1saW5rLXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4kdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiBib2xkO1xyXG4kdG9wYmFyLW1lbnUtbGluay1jb2xvcjogI2ZmZjtcclxuJHRvcGJhci1tZW51LWljb24tY29sb3I6ICNmZmY7XHJcbiR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICNmZmY7XHJcbiR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ6ICNmZmY7XHJcblxyXG4vKiBUcmFuc2l0aW9ucyBhbmQgYnJlYWtwb2ludCBzdHlsZXMgKi9cclxuJHRvcGJhci10cmFuc2l0aW9uLXNwZWVkOiAzMDBtcztcclxuLy8kdG9wYmFyLWJyZWFrcG9pbnQ6ICN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9ICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gOTk5OXB4IGZvciBhbHdheXMgbW9iaWxlIGxheW91dFxyXG4vLyR0b3BiYXItbWVkaWEtcXVlcnk6ICRtZWRpdW0tdXAgIWRlZmF1bHQ7XHJcblxyXG4vKiBEaXZpZGVyIFN0eWxlcyAqL1xyXG4vLyAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpO1xyXG4vLyAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IC01MCUpO1xyXG5cclxuLyogU3RpY2t5IENsYXNzICovXHJcbiR0b3BiYXItc3RpY2t5LWNsYXNzOiBcIi5zdGlja3lcIjtcclxuJHRvcGJhci1hcnJvd3M6IHRydWU7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgdHJpYW5nbGUgaWNvbiBmcm9tIHRoZSBtZW51IGl0ZW1cclxuXHJcbiRtaWQtYmc6IG5vbmU7XHJcbiRtaWQtZm9udC1jb2xvcjogJGJsYWNrO1xyXG4kbWlkLWJvcmRlci10b3A6IG5vbmU7XHJcbiRtaWQtYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiRtaWQtYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4kbWlkLWJvcmRlci1ib3R0b206IG5vbmU7XHJcbiRtaWQtcmFkaXVzOiAwcHg7XHJcbiRtaWQtc2hhZG93OiBub25lO1xyXG4kbWlkLW1hcmdpbjogMHB4IGF1dG87XHJcbiRtaWQtcGFkZGluZzogNnB4IDBweCAwcHggMHB4O1xyXG5cclxuLyogRnVsbC1XaWR0aCAqL1xyXG4kbWlkLWV4dGVuZGVkLWJnOiAkd2hpdGU7XHJcbiRtaWQtZXh0ZW5kZWQtYm9yZGVyLXRvcDogbm9uZTtcclxuJG1pZC1leHRlbmRlZC1ib3JkZXItbGVmdDogbm9uZTtcclxuJG1pZC1leHRlbmRlZC1ib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiRtaWQtZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJG1pZC1leHRlbmRlZC1yYWRpdXM6IG5vbmU7XHJcbiRtaWQtZXh0ZW5kZWQtc2hhZG93OiBub25lO1xyXG4kbWlkLWV4dGVuZGVkLW1hcmdpbjogMHB4O1xyXG4kbWlkLWV4dGVuZGVkLXBhZGRpbmc6IDBweDtcclxuXHJcbiRjb250ZW50LWJnOiBub25lO1xyXG4kY29udGVudC1mb250LWNvbG9yOiAkYmxhY2s7XHJcbiRjb250ZW50LXBhZGRpbmctdG9wOiByZW0tY2FsYygwKTtcclxuJGNvbnRlbnQtcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcclxuJGNvbnRlbnQtYm9yZGVyLXRvcDogbm9uZTtcclxuJGNvbnRlbnQtYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiRjb250ZW50LWJvcmRlci1yaWdodDogbm9uZTtcclxuJGNvbnRlbnQtYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJGNvbnRlbnQtcmFkaXVzOiAwcHg7XHJcbiRjb250ZW50LXNoYWRvdzogbm9uZTtcclxuJGNvbnRlbnQtbWluLWhlaWdodDogMzIwcHg7XHJcblxyXG4kZm9vdGVyLWJnOiAkYmxhY2s7XHJcbiRmb290ZXItYm9yZGVyLXRvcDogbm9uZTtcclxuJGZvb3Rlci1ib3JkZXItbGVmdDogbm9uZTtcclxuJGZvb3Rlci1ib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiRmb290ZXItYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuJGZvb3Rlci1yYWRpdXM6IDBweCAwcHggMTBweCAxMHB4O1xyXG4kZm9vdGVyLXNoYWRvdzogbm9uZTtcclxuJGZvb3Rlci1tYXJnaW46IDBweCBhdXRvO1xyXG4kZm9vdGVyLXBhZGRpbmc6IDEwcHggMHB4IDIwcHg7XHJcbiRmb290ZXItZm9udC1jb2xvcjogJHdoaXRlO1xyXG4kZm9vdGVyLWxpbmtjb2xvcjogJHdoaXRlO1xyXG4kZm9vdGVyLWNvbG9yMjogZGFya2VuKCR3aGl0ZSwgMjUlKTtcclxuXHJcbi8qIEZ1bGwtV2lkdGggKi9cclxuJGZvb3Rlci1leHRlbmRlZC1iZzogJGJsYWNrO1xyXG4kZm9vdGVyLWV4dGVuZGVkLWJvcmRlci10b3A6IDNweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4kZm9vdGVyLWV4dGVuZGVkLWJvcmRlci1sZWZ0OiBub25lO1xyXG4kZm9vdGVyLWV4dGVuZGVkLWJvcmRlci1yaWdodDogbm9uZTtcclxuJGZvb3Rlci1leHRlbmRlZC1ib3JkZXItYm90dG9tOiBub25lO1xyXG4kZm9vdGVyLWV4dGVuZGVkLXJhZGl1czogbm9uZTtcclxuJGZvb3Rlci1leHRlbmRlZC1zaGFkb3c6IG5vbmU7XHJcbiRmb290ZXItZXh0ZW5kZWQtbWFyZ2luOiAwcHg7XHJcbiRmb290ZXItZXh0ZW5kZWQtcGFkZGluZzogMHB4O1xyXG5cclxuJHBvd2VyZWRieS1jb2xvcjogJHdoaXRlO1xyXG5cclxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xyXG4kZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3NcclxuJHRleHQtZGlyZWN0aW9uOiBsdHI7XHJcblxyXG4vLyBXZSB1c2UgdGhlc2UgdG8gbWFrZSBzdXJlIGJvcmRlciByYWRpdXMgbWF0Y2hlcyB1bmxlc3Mgd2Ugd2FudCBpdCBkaWZmZXJlbnQuXHJcbiRnbG9iYWwtcmFkaXVzOiAzcHg7XHJcbiRnbG9iYWwtcm91bmRlZDogMTAwMHB4O1xyXG5cclxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaW5zZXQgc2hhZG93IHNoaW55IGVkZ2VzIGFuZCBkZXByZXNzaW9ucy5cclxuJHNoaW55LWVkZ2Utc2l6ZTogMCAxcHggMDtcclxuJHNoaW55LWVkZ2UtY29sb3I6IHJnYmEod2hpdGUsIDAuNSk7XHJcbiRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYShibGFjaywgMC4yKTtcclxuXHJcbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgd2hldGhlciBvciBub3QgQ1NTIGNsYXNzZXMgY29tZSB0aHJvdWdoIGluIHRoZSBnZW0gZmlsZXMuXHJcbiRpbmNsdWRlLWh0bWwtY2xhc3NlczogdHJ1ZTtcclxuJGluY2x1ZGUtcHJpbnQtc3R5bGVzOiB0cnVlO1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIHNldCBwYWRkaW5nIGFuZCBob3ZlciBmYWN0b3IgKi9cclxuJHNlY3Rpb24tcGFkZGluZzogcmVtLWNhbGMoMTApO1xyXG4kc2VjdGlvbi10aXRsZS1wYWRkaW5nOiByZW0tY2FsYygxMCk7XHJcbiRzZWN0aW9uLWNvbnRlbnQtcGFkZGluZzogcmVtLWNhbGMoMTApO1xyXG4kc2VjdGlvbi1mdW5jdGlvbi1mYWN0b3I6IDEwJTtcclxuXHJcbi8qIFRoZXNlIHN0eWxlIHRoZSB0aXRsZXMgKi9cclxuJHNlY3Rpb24tZm9udC1mYW1pbHk6IFwiQml0dGVyXCIsIHNlcmlmO1xyXG4kc2VjdGlvbi1mb250LXdlaWdodDogbm9ybWFsO1xyXG4kc2VjdGlvbi1mb250LXNoYWRvdzogbm9uZTtcclxuJHNlY3Rpb24tdGl0bGUtY29sb3I6ICRibGFjaztcclxuJHNlY3Rpb24tdGl0bGUtYmc6ICRkYXJrR3JleTtcclxuJHNlY3Rpb24tdGl0bGUtYmctaW1hZ2U6IHVybChpbWFnZXMvbWVudWdyYWRpZW50Mi5wbmcpO1xyXG4kc2VjdGlvbi10aXRsZS1iZy1hY3RpdmU6IGRhcmtlbigkc2VjdGlvbi10aXRsZS1iZywgJHNlY3Rpb24tZnVuY3Rpb24tZmFjdG9yKTtcclxuJHNlY3Rpb24tdGl0bGUtYmctaW1hZ2UtYWN0aXZlOiB1cmwoaW1hZ2VzL21lbnVncmFkaWVudDIucG5nKTtcclxuJHNlY3Rpb24tdGl0bGUtYmctYWN0aXZlLXRhYnM6IHdoaXRlO1xyXG4kc2VjdGlvbi10aXRsZS1iZy1pbWFnZS1hY3RpdmUtdGFiczogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZyk7XHJcbiRzZWN0aW9uLXRpdGxlLWJnLWhvdmVyOiBkYXJrZW4oJHNlY3Rpb24tdGl0bGUtYmcsICRzZWN0aW9uLWZ1bmN0aW9uLWZhY3RvciAvIDIpO1xyXG4kc2VjdGlvbi10aXRsZS1iZy1pbWFnZS1ob3ZlcjogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZyk7XHJcbiRzZWN0aW9uLXRpdGxlLXNoYWRvdzogMHB4IDFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuXHJcbi8qIEZvciBzZWN0aW9ucyBpbnNpZGUgdGhlIG1haW4tbWVudSBhcmVhICovXHJcbiRzZWN0aW9uLWZvbnQtYWx0LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcbiRzZWN0aW9uLWZvbnQtYWx0LXdlaWdodDogYm9sZDtcclxuJHNlY3Rpb24tZm9udC1hbHQtc2hhZG93OiBub25lO1xyXG4kc2VjdGlvbi10aXRsZS1hbHQtY29sb3I6ICRibGFjaztcclxuJHNlY3Rpb24tdGl0bGUtYWx0LWJnOiAkd2hpdGU7XHJcbiRzZWN0aW9uLXRpdGxlLWFsdC1zaGFkb3c6IDBweCAtMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNSkgaW5zZXQsIDBweCAxcHggMnB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSBpbnNldDtcclxuJHNlY3Rpb24tdGl0bGUtYWx0LWNvbG9yLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XHJcbiRzZWN0aW9uLXRpdGxlLWFsdC1iZy1hY3RpdmU6ICRibGFjaztcclxuJHNlY3Rpb24tdGl0bGUtYWx0LXJhZGl1czogMHB4O1xyXG4kc2VjdGlvbi10aXRsZS1hbHQyLWNvbG9yOiAkd2hpdGU7XHJcbiRzZWN0aW9uLXRpdGxlLWFsdDItYmc6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc2VjdGlvbi10aXRsZS1hbHQyLWJnLWFjdGl2ZTogZGFya2VuKCRzZWN0aW9uLXRpdGxlLWFsdDItYmcsICRzZWN0aW9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbiRzZWN0aW9uLXRpdGxlLWFsdDItc2hhZG93OiBub25lO1xyXG4kc2VjdGlvbi10aXRsZS1hbHQyLXJhZGl1czogMHB4O1xyXG4kc2VjdGlvbi10aXRsZS1hcnJvdy1jb2xvcjogcmdiYSgxMjcsIDEyNywgMTI3LCAwLjUpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG5cclxuLyogV2FudCB0byBjb250cm9sIGJvcmRlciBzaXplLCBoZXJlIHlhIGdvISAqL1xyXG4kc2VjdGlvbi1ib3JkZXItc2l6ZTogMXB4O1xyXG4kc2VjdGlvbi1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4kc2VjdGlvbi1ib3JkZXItY29sb3I6ICNjY2NjY2M7XHJcblxyXG4vKiBGb3Igc2VjdGlvbnMgaW5zaWRlIHRoZSBtYWluLW1lbnUgYXJlYSAqL1xyXG4kc2VjdGlvbi1ib3JkZXItYWx0LXNpemU6IDBweDtcclxuJHNlY3Rpb24tYm9yZGVyLWFsdC1zdHlsZTogc29saWQ7XHJcbiRzZWN0aW9uLWJvcmRlci1hbHQtY29sb3I6ICNjY2NjY2M7XHJcblxyXG4vKiBGb250IGNvbnRyb2xzICovXHJcbiRzZWN0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG5cclxuLyogQ29udHJvbCB0aGUgY29sb3Igb2YgdGhlIGJhY2tncm91bmQgYW5kIHNvbWUgc2l6ZSBvcHRpb25zICovXHJcbiRzZWN0aW9uLWNvbnRlbnQtYmc6ICR3aGl0ZTtcclxuJHNlY3Rpb24tY29udGVudC1ob3ZlcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAxMCUpO1xyXG4kc2VjdGlvbi1jb250ZW50LWNvbG9yOiAkYmxhY2s7XHJcbiRzZWN0aW9uLWNvbnRlbnQtc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4kc2VjdGlvbi1jb250ZW50LWZvbnQtc2hhZG93OiBub25lO1xyXG4kc2VjdGlvbi12ZXJ0aWNhbC1uYXYtbWluLXdpZHRoOiByZW0tY2FsYygyMDApO1xyXG4kc2VjdGlvbi12ZXJ0aWNhbC10YWJzLXRpdGxlLXdpZHRoOiByZW0tY2FsYygyMDApO1xyXG4kc2VjdGlvbi1ib3R0b20tbWFyZ2luOiByZW0tY2FsYygyMCk7XHJcblxyXG4vKiBGb3Igc2VjdGlvbnMgaW5zaWRlIHRoZSBtYWluLW1lbnUgYXJlYSAqL1xyXG4kc2VjdGlvbi1jb250ZW50LWFsdC1iZzogJHByaW1hcnktY29sb3I7XHJcbiRzZWN0aW9uLWNvbnRlbnQtYWx0LWNvbG9yOiAkd2hpdGU7XHJcbiRzZWN0aW9uLWNvbnRlbnQtYWx0LXNoYWRvdzogMHB4IDFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuJHNlY3Rpb24tY29udGVudC1hbHQtZm9udC1zaGFkb3c6IG5vbmU7XHJcbiRzZWN0aW9uLWFsdC1tYXJnaW46IDBweCByZW0tY2FsYygwKSByZW0tY2FsYygyMCkgcmVtLWNhbGMoMCk7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXMgKi9cclxuJGhlYWRlci1mb250LWZhbWlseTogXCJCaXR0ZXJcIiwgc2VyaWY7XHJcbiRoZWFkZXItZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kaGVhZGVyLWZvbnQtc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4kaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiRoZWFkZXItdG9wLW1hcmdpbjogMC4yZW07XHJcbiRoZWFkZXItYm90dG9tLW1hcmdpbjogMC41ZW07XHJcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHNpemVzICovXHJcbiRoMS1mb250LXNpemU6IHJlbS1jYWxjKDQ0KTtcclxuJGgyLWZvbnQtc2l6ZTogcmVtLWNhbGMoMzcpO1xyXG4kaDMtZm9udC1zaXplOiByZW0tY2FsYygyNyk7XHJcbiRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIzKTtcclxuJGg1LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4kaDYtZm9udC1zaXplOiAxZW07XHJcblxyXG4vKiBUaGVzZSBjb250cm9sIGhvdyBzdWJoZWFkZXJzIGFyZSBzdHlsZWQuICovXHJcbiRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNDtcclxuJHN1YmhlYWRlci1mb250LWNvbG9yOiAkdGVydGlhcnktY29sb3I7XHJcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6IDMwMDtcclxuJHN1YmhlYWRlci10b3AtbWFyZ2luOiAwLjJlbTtcclxuJHN1YmhlYWRlci1ib3R0b20tbWFyZ2luOiAwLjVlbTtcclxuXHJcbi8qIEEgZ2VuZXJhbCA8c21hbGw+IHN0eWxpbmcgKi9cclxuJHNtYWxsLWZvbnQtc2l6ZTogNzAlO1xyXG4kc21hbGwtZm9udC1jb2xvcjogbGlnaHRlbigkaGVhZGVyLWZvbnQtY29sb3IsIDMwJSk7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBocyAqL1xyXG4kcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4kcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiRwYXJhZ3JhcGgtZm9udC1zaXplOiAxO1xyXG4kcGFyYWdyYXBoLWxpbmUtaGVpZ2h0OiAxLjY7XHJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4kcGFyYWdyYXBoLWFzaWRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kcGFyYWdyYXBoLWFzaWRlLWxpbmUtaGVpZ2h0OiAxLjM1O1xyXG4kcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzICovXHJcbiRjb2RlLWNvbG9yOiBkYXJrZW4oJGFsZXJ0LWNvbG9yLCAxNSUpO1xyXG4kY29kZS1mb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcclxuJGNvZGUtZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYW5jaG9ycyAqL1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFuY2hvci1mb250LWNvbG9yLWhvdmVyOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDUlKTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgPGhyPiBlbGVtZW50ICovXHJcbiRoci1ib3JkZXItd2lkdGg6IDFweDtcclxuJGhyLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbiRoci1ib3JkZXItY29sb3I6ICNkZGRkZGQ7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsaXN0cyAqL1xyXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xyXG4kbGlzdC1zaWRlLW1hcmdpbjogcmVtLWNhbGMoMTgpO1xyXG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci13ZWlnaHQ6IGJvbGQ7XHJcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuM2VtO1xyXG4kZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBibG9ja3F1b3RlcyAqL1xyXG4kYmxvY2txdW90ZS1mb250LWNvbG9yOiBsaWdodGVuKCRoZWFkZXItZm9udC1jb2xvciwgMzAlKTtcclxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSkgcmVtLWNhbGMoMjApIDAgcmVtLWNhbGMoMTkpO1xyXG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xyXG4kYmxvY2txdW90ZS1jaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I6IGxpZ2h0ZW4oJGhlYWRlci1mb250LWNvbG9yLCAyMCUpO1xyXG4kYmxvY2txdW90ZS1jaXRlLWxpbmstY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjtcclxuXHJcbi8qIEFjcm9ueW0gc3R5bGVzICovXHJcbiRhY3JvbnltLXVuZGVybGluZTogMXB4IGRvdHRlZCAjZGRkZGRkO1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luICovXHJcbiRtaWNyb2Zvcm1hdC1wYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTIpO1xyXG4kbWljcm9mb3JtYXQtbWFyZ2luOiAwIDAgcmVtLWNhbGMoMjApIDA7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlcyAqL1xyXG4kbWljcm9mb3JtYXQtYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiRtaWNyb2Zvcm1hdC1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4kbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAjZGRkZGRkO1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZnVsbCBuYW1lIGZvbnQgc3R5bGVzICovXHJcbiRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogYm9sZDtcclxuJG1pY3JvZm9ybWF0LWZ1bGxuYW1lLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xyXG5cclxuLyogV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgc3VtbWFyeSBmb250IHN0eWxlcyAqL1xyXG4kbWljcm9mb3JtYXQtc3VtbWFyeS1mb250LXdlaWdodDogYm9sZDtcclxuXHJcbi8qIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBwYWRkaW5nICovXHJcbiRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IDAgcmVtLWNhbGMoMSk7XHJcblxyXG4vKiBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgZm9udCBzdHlsZXMgKi9cclxuJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgc3R5bGVzICovXHJcbiRwYW5lbC1iZzogJHdoaXRlO1xyXG4kcGFuZWwtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuJHBhbmVsLWJvcmRlci1zaXplOiAwcHg7XHJcbiRwYW5lbC1yYWRpdXM6IDZweDtcclxuJHBhbmVsLXNoYWRvdzogMHB4IDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjUpIGluc2V0LCAwcHggMXB4IDJweCB3aGl0ZTtcclxuJHBhbmVsR3JhZGllbnRTdGFydDogZGFya2VuKCR3aGl0ZSwgNSUpO1xyXG4kcGFuZWxHcmFkaWVudEZpbmlzaDogZGFya2VuKCR3aGl0ZSwgMTUlKTtcclxuXHJcbi8qIFdlIHVzZSB0aGlzICUgdG8gY29udHJvbCBob3cgbXVjaCB3ZSBkYXJrZW4gdGhpbmdzIG9uIGhvdmVyICovXHJcbiRwYW5lbC1mdW5jdGlvbi1mYWN0b3I6IDEwJTtcclxuJHBhbmVsLWJvcmRlci1jb2xvcjogZGFya2VuKCRwYW5lbC1iZywgJHBhbmVsLWZ1bmN0aW9uLWZhY3Rvcik7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgaW5uZXIgcGFkZGluZyBhbmQgYm90dG9tIG1hcmdpbiAqL1xyXG4kcGFuZWwtbWFyZ2luLWJvdHRvbTogMjBweDtcclxuJHBhbmVsLXBhZGRpbmc6IDIwcHg7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgZm9udCBjb2xvcnMgKi9cclxuJHBhbmVsLWZvbnQtY29sb3I6ICRibGFjaztcclxuJHBhbmVsLWZvbnQtY29sb3ItYWx0OiAkd2hpdGU7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucy4gKi9cclxuJGJ1dHRvbi1tZWQ6IHJlbS1jYWxjKDEyKTtcclxuJGJ1dHRvbi10bnk6IHJlbS1jYWxjKDcpO1xyXG4kYnV0dG9uLXNtbDogcmVtLWNhbGMoOSk7XHJcbiRidXR0b24tbHJnOiByZW0tY2FsYygxNik7XHJcblxyXG4vKiBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBkaXNwbGF5IHByb3BlcnR5LiAqL1xyXG4kYnV0dG9uLWRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuJGJ1dHRvbi1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gdGV4dCBzdHlsZXMuICovXHJcbiRidXR0b24tZm9udC1jb2xvcjogd2hpdGU7XHJcbiRidXR0b24tZm9udC1jb2xvci1hbHQ6ICMzMzMzMzM7XHJcbiRidXR0b24tZm9udC1tZWQ6IHJlbS1jYWxjKDE2KTtcclxuJGJ1dHRvbi1mb250LXRueTogcmVtLWNhbGMoMTEpO1xyXG4kYnV0dG9uLWZvbnQtc21sOiByZW0tY2FsYygxMyk7XHJcbiRidXR0b24tZm9udC1scmc6IHJlbS1jYWxjKDIwKTtcclxuJGJ1dHRvbi1mb250LXdlaWdodDogYm9sZDtcclxuJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXI7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGhvdmVyIGVmZmVjdHMuICovXHJcbiRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAxMCU7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gYm9yZGVyIHN0eWxlcy4gKi9cclxuJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDFweDtcclxuJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4kYnV0dG9uLWJvcmRlci1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbiRidXR0b24tZm9udC1zaGFkb3c6IDBweCAtMXB4IDBweCAkYnV0dG9uLWJvcmRlci1jb2xvcjtcclxuJGJ1dHRvbi1hbHQtZm9udC1zaGFkb3c6IDBweCAtMXB4IDBweCBkYXJrZW4oJGRhcmtHcmV5LCAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XHJcblxyXG4vKiBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS4gKi9cclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLyogV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBmb3IgZGlzYWJsZWQgYnV0dG9ucy4gKi9cclxuJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAwLjY7XHJcblxyXG4vKiBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93cyAqL1xyXG4kdGFibGUtYmc6IHdoaXRlO1xyXG4kdGFibGUtZXZlbi1yb3ctYmc6ICNkZWRlZGU7XHJcblxyXG4vKiBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZSAqL1xyXG4kdGFibGUtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuJHRhYmxlLWJvcmRlci1zaXplOiAxcHg7XHJcbiR0YWJsZS1ib3JkZXItY29sb3I6ICNkZGRkZGQ7XHJcblxyXG4vKiBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBoZWFkIHN0eWxlcyAqL1xyXG4kdGFibGUtaGVhZC1iZzogJHByaW1hcnktY29sb3I7XHJcbiR0YWJsZS1oZWFkLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkd2hpdGU7XHJcbiR0YWJsZS1oZWFkLWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4kdGFibGUtaGVhZC1wYWRkaW5nOiByZW0tY2FsYyg4KSByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTApO1xyXG5cclxuLyogVGhlc2UgY29udHJvbCB0aGUgcm93IHBhZGRpbmcgYW5kIGZvbnQgc3R5bGVzICovXHJcbiR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSkgcmVtLWNhbGMoMTApO1xyXG4kdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kdGFibGUtcm93LWZvbnQtY29sb3I6ICMyMjIyMjI7XHJcbiR0YWJsZS1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xyXG5cclxuLyogVGhlc2UgYXJlIGZvciBjb250cm9sbGluZyB0aGUgZGlzcGxheSBhbmQgbWFyZ2luIG9mIHRhYmxlcyAqL1xyXG4kdGFibGUtZGlzcGxheTogdGFibGUtY2VsbDtcclxuJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuXHJcbi8qIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyICovXHJcbiRjcnVtYi1iZzogbGlnaHRlbigkc2Vjb25kYXJ5LWNvbG9yLCAzNSUpO1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgcGFkZGluZyBhcm91bmQgdGhlIGJyZWFkY3J1bWJzLiAqL1xyXG4kY3J1bWItcGFkZGluZzogcmVtLWNhbGMoNikgcmVtLWNhbGMoMTQpIHJlbS1jYWxjKDkpO1xyXG4kY3J1bWItc2lkZS1wYWRkaW5nOiByZW0tY2FsYygxMik7XHJcblxyXG4vKiBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzLiAqL1xyXG4kY3J1bWItZnVuY3Rpb24tZmFjdG9yOiAxMCU7XHJcbiRjcnVtYi1ib3JkZXItc2l6ZTogMXB4O1xyXG4kY3J1bWItYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuJGNydW1iLWJvcmRlci1jb2xvcjogZGFya2VuKCRjcnVtYi1iZywgJGNydW1iLWZ1bmN0aW9uLWZhY3Rvcik7XHJcbiRjcnVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLyogV2UgdXNlIHRoZXNlIHRvIHNldCB2YXJpb3VzIHRleHQgc3R5bGVzIGZvciBicmVhZGNydW1icy4gKi9cclxuJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xyXG4kY3J1bWItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRjcnVtYi1mb250LWNvbG9yLWN1cnJlbnQ6ICMzMzMzMzM7XHJcbiRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAjOTk5OTk5O1xyXG4kY3J1bWItZm9udC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuJGNydW1iLWxpbmstZGVjb3I6IHVuZGVybGluZTtcclxuXHJcbi8qIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWJzICovXHJcbiRjcnVtYi1zbGFzaC1jb2xvcjogIzMzMzMzMztcclxuJGNydW1iLXNsYXNoOiBcIi9cIjtcclxuXHJcbi8qIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRlZmluaXRpb24gKi9cclxuLy8kc3ViLW5hdi1mb250LXNpemU6IGVtLWNhbGMoMTQpO1xyXG4kc3ViLW5hdi1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuLy8kc3ViLW5hdi1mb250LXdlaWdodDogbm9ybWFsO1xyXG4vLyRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuLy8kc3ViLW5hdi1ib3JkZXItcmFkaXVzOiAxMDAwcHg7XHJcblxyXG4vKkVuZCBTZXR0aW5ncyovIiwiJGZhLWZvbnQtcGF0aDogXCIuLi8uLi9UaGVtZS9mb250LWF3ZXNvbWUvZm9udHNcIjtcclxuXHJcbkBpbXBvcnQgXCJmbGV4LWdyaWRcIjtcclxuQGltcG9ydCBcImZvdW5kYXRpb25cIjtcclxuQGltcG9ydCBcImZsZXgtZ3JpZFwiO1xyXG5cclxuLyogZm91bmRhdGlvbiBleHRlbnNpb25zICovXHJcblxyXG5AaW1wb3J0IFwiZm91bmRhdGlvbi1leHRlbnNpb25zL2Zvcm1zXCI7XHJcblxyXG4vKiBsaWJyYXJpZXMgKi9cclxuXHJcbkBpbXBvcnQgXCJsYWRkYVwiO1xyXG5AaW1wb3J0IFwibG9hZGluZ1wiO1xyXG5AaW1wb3J0IFwiZm9udC1hd2Vzb21lL3Njc3MvZm9udC1hd2Vzb21lXCI7XHJcbkBpbXBvcnQgXCJpdGVtRGVzaWduZXJcIjtcclxuQGltcG9ydCBcImNoZWNrb3V0XCI7XHJcblxyXG4vKiBDb21wb25lbnRzICovXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2hlbHBcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZHJvcGRvd25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvc2ltcGxlc2VhcmNoXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NpbXBsZS1ncmlkXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZhbGlkYXRlXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZhbmN5dHJlZVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy93ZWJzaXRlZWRpdG9yXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2tub2Nrb3V0LWRlYnVnXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZhdXh0YWJsZVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9lbnRpdHlmb3JtZmllbGRcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvc3BsYXNoXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2FwL3ZvdWNoZXIvdm91Y2hlci1lZGl0XCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvZGVtaXJyb3JcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybXMvZWxmaW5kZXItZWRpdHJvd1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9oZWFkZXItZ3JpZFwiO1xyXG5AaW1wb3J0IFwiYXJlYXMvaW52ZW50b3J5L2l0ZW1zL2VkaXRcIjtcclxuQGltcG9ydCBcImFyZWFzL2JyYWluL2luYm94L2luYm94LXRhc2stZ3JpZFwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9hcC9wdXJjaGFzZU9yZGVyL19wdXJjaGFzZW9yZGVyLWVkaXQuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9kaWFsb2dcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvaXRlbS1zZWFyY2hcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZmlsZXVwbG9hZFwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9oYXMtd2ViLWNhdGVnb3J5XCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhbmVsXCI7XHJcbi8vZW5oYW5jaW5nIGZvbnQgYXdlc29tZVxyXG4vLyAuZmEtcm90YXRlLTQ1IHtcclxuLy8gICBAaW5jbHVkZSByb3RhdGUoNDVkZWcpO1xyXG4vLyB9XHJcblxyXG4vLyAuZmEtcm90YXRlLTEzNSB7XHJcbi8vICAgQGluY2x1ZGUgcm90YXRlKDEzNWRlZyk7XHJcbi8vIH1cclxuXHJcblxyXG4vLyAuZmEtcm90YXRlLTIyNSB7XHJcbi8vICAgQGluY2x1ZGUgcm90YXRlKDIyNWRlZyk7XHJcbi8vIH1cclxuXHJcbi8vIC5mYS1yb3RhdGUtMzE1IHtcclxuLy8gICBAaW5jbHVkZSByb3RhdGUoMzE1ZGVnKTtcclxuLy8gfVxyXG5cclxuLyogQmFubmVyICovXHJcblxyXG4uYmFubmVyLWNvbnRhaW5lciB7XHJcbiAgLypJbXBvcnRhbnQ6Ki9cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4uYmFubmVyLXNwYW5uZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdGV4dC1pbmRlbnQ6IC01MDAwcHg7XHJcbiAgei1pbmRleDogMTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltYWdlcy9oaXRib3guZ2lmJyk7XHJcbn1cclxuXHJcbi8qIEVuZCBCYW5uZXIgKi9cclxuXHJcbi53MnVpLW92ZXJsYXkge1xyXG4gIHotaW5kZXg6IDY1NTM4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wcmVmaXgtY2hlY2tib3ggeyBAaW5jbHVkZSBwcmVmaXgtcG9zdGZpeC1iYXNlOyB9XHJcblxyXG4vKiBTZXBhcmF0ZSBwcmVmaXggYW5kIHBvc3RmaXggc3R5bGVzIHdoZW4gb24gc3BhbiBvciBsYWJlbCBzbyBidXR0b25zIGtlZXAgdGhlaXIgb3duICovXHJcbnNwYW4ucHJlZml4LWNoZWNrYm94IHtcclxuICBAaW5jbHVkZSBwcmVmaXgoKTtcclxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjtcclxufSIsIi8qU3RhcnQgZm91bmRhdGlvbkJhc2UqL1xyXG5cclxuYm9keSB7XHJcbiAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcclxuICBsaW5lLWhlaWdodDogMS42ZW07XHJcbn1cclxuXHJcbi53cmFwcGVyIHtcclxuICBiYWNrZ3JvdW5kOiAkd3JhcHBlci1iZztcclxuICB3aWR0aDogJHdyYXBwZXItd2lkdGg7XHJcbiAgbWFyZ2luOiAkd3JhcHBlci1tYXJnaW47XHJcbiAgcGFkZGluZzogJHdyYXBwZXItcGFkZGluZztcclxuICBib3JkZXItdG9wOiAkd3JhcHBlci1ib3JkZXItdG9wO1xyXG4gIGJvcmRlci1ib3R0b206ICR3cmFwcGVyLWJvcmRlci1ib3R0b207XHJcbiAgYm9yZGVyLWxlZnQ6ICR3cmFwcGVyLWJvcmRlci1sZWZ0O1xyXG4gIGJvcmRlci1yaWdodDogJHdyYXBwZXItYm9yZGVyLXJpZ2h0O1xyXG4gIGJvcmRlci1yYWRpdXM6ICR3cmFwcGVyLXJhZGl1cztcclxuICBib3gtc2hhZG93OiAkd3JhcHBlci1zaGFkb3c7XHJcbn1cclxuXHJcbi5sb2dpbiB7XHJcbiAgYmFja2dyb3VuZDogJGxvZ2luLWV4dGVuZGVkLWJhY2tncm91bmQ7XHJcbiAgYm9yZGVyLXRvcDogJGxvZ2luLWV4dGVuZGVkLWJvcmRlci10b3A7XHJcbiAgYm9yZGVyLWxlZnQ6ICRsb2dpbi1leHRlbmRlZC1ib3JkZXItbGVmdDtcclxuICBib3JkZXItcmlnaHQ6ICRsb2dpbi1leHRlbmRlZC1ib3JkZXItcmlnaHQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogJGxvZ2luLWV4dGVuZGVkLWJvcmRlci1ib3R0b207XHJcbiAgYm94LXNoYWRvdzogJGxvZ2luLWV4dGVuZGVkLXNoYWRvdztcclxuICBtYXJnaW46ICRsb2dpbi1leHRlbmRlZC1tYXJnaW47XHJcbiAgcGFkZGluZzogJGxvZ2luLWV4dGVuZGVkLXBhZGRpbmc7XHJcbn1cclxuXHJcbi5sb2dpbiAucm93IHtcclxuICBiYWNrZ3JvdW5kOiAkbG9naW4tYmFja2dyb3VuZDtcclxuICBjb2xvcjogJGxvZ2luLWZvbnQtY29sb3I7XHJcbiAgYm9yZGVyLXRvcDogJGxvZ2luLWJvcmRlci10b3A7XHJcbiAgYm9yZGVyLWxlZnQ6ICRsb2dpbi1ib3JkZXItbGVmdDtcclxuICBib3JkZXItcmlnaHQ6ICRsb2dpbi1ib3JkZXItcmlnaHQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogJGxvZ2luLWJvcmRlci1ib3R0b207XHJcbiAgYm9yZGVyLXJhZGl1czogJGxvZ2luLXJhZGl1cztcclxuICBib3gtc2hhZG93OiAkbG9naW4tc2hhZG93O1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIG1hcmdpbjogJGxvZ2luLW1hcmdpbjtcclxuICBwYWRkaW5nOiAkbG9naW4tcGFkZGluZztcclxufVxyXG5cclxuLmxvZ2luIGEuYnV0dG9uLFxyXG4ubG9naW4gaW5wdXQge1xyXG4gIG1hcmdpbjogMHB4O1xyXG4gIGhlaWdodDogMzBweDtcclxuICBsaW5lLWhlaWdodDogMTBweDtcclxufVxyXG5cclxuLmxvZ2luc2VhcmNoIC5yb3cge1xyXG4gIHBhZGRpbmc6IDBweCAwcHggMHB4IDEwcHg7XHJcbn1cclxuXHJcbi5sb2dpbnNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0cGFkZGluZy10b3A6IDBweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG59XHJcblxyXG4ubWFzdGhlYWQge1xyXG4gIGJhY2tncm91bmQ6ICRtYXN0aGVhZC1leHRlbmRlZC1iZztcclxuICBib3JkZXItdG9wOiAkbWFzdGhlYWQtZXh0ZW5kZWQtYm9yZGVyLXRvcDtcclxuICBib3JkZXItbGVmdDogJG1hc3RoZWFkLWV4dGVuZGVkLWJvcmRlci1sZWZ0O1xyXG4gIGJvcmRlci1yaWdodDogJG1hc3RoZWFkLWV4dGVuZGVkLWJvcmRlci1yaWdodDtcclxuICBib3JkZXItYm90dG9tOiAkbWFzdGhlYWQtZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTtcclxuICBib3gtc2hhZG93OiAkbWFzdGhlYWQtZXh0ZW5kZWQtc2hhZG93O1xyXG4gIG1hcmdpbjogJG1hc3RoZWFkLWV4dGVuZGVkLW1hcmdpbjtcclxuICBwYWRkaW5nOiAkbWFzdGhlYWQtZXh0ZW5kZWQtcGFkZGluZztcclxufVxyXG5cclxuLm1hc3RoZWFkIC5yb3cge1xyXG4gIGJhY2tncm91bmQ6ICRtYXN0aGVhZC1iZztcclxuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuICBjb2xvcjogJG1hc3RoZWFkLWZvbnQtY29sb3I7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJvcmRlci10b3A6ICRtYXN0aGVhZC1ib3JkZXItdG9wO1xyXG4gIGJvcmRlci1sZWZ0OiAkbWFzdGhlYWQtYm9yZGVyLWxlZnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkbWFzdGhlYWQtYm9yZGVyLXJpZ2h0O1xyXG4gIGJvcmRlci1ib3R0b206ICRtYXN0aGVhZC1ib3JkZXItYm90dG9tO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRtYXN0aGVhZC1yYWRpdXM7XHJcbiAgYm94LXNoYWRvdzogJG1hc3RoZWFkLXNoYWRvdztcclxuICBtYXJnaW46ICRtYXN0aGVhZC1tYXJnaW47XHJcbiAgcGFkZGluZzogJG1hc3RoZWFkLXBhZGRpbmc7XHJcbn1cclxuXHJcbi5hZHMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6ICRhZHMtdG9wO1xyXG4gIGJvdHRvbTogJGFkcy1ib3R0b207XHJcbiAgcmlnaHQ6ICRhZHMtcmlnaHQ7XHJcbiAgbGVmdDogJGFkcy1sZWZ0O1xyXG4gIHdpZHRoOiAkYWRzLXdpZHRoO1xyXG4gIGhlaWdodDogJGFkcy1oZWlnaHQ7XHJcbiAgei1pbmRleDogMTtcclxufVxyXG5cclxuIC50b3AtbWVudSB7XHJcbiAgIGJhY2tncm91bmQ6ICR0b3BiYXItZXh0ZW5kZWQtYmFja2dyb3VuZDtcclxuICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluICFpbXBvcnRhbnQ7XHJcbiAgIGJvcmRlci10b3A6ICR0b3BiYXItZXh0ZW5kZWQtYm9yZGVyLXRvcDtcclxuICAgYm9yZGVyLWxlZnQ6ICR0b3BiYXItZXh0ZW5kZWQtYm9yZGVyLWxlZnQ7XHJcbiAgIGJvcmRlci1yaWdodDogJHRvcGJhci1leHRlbmRlZC1ib3JkZXItcmlnaHQ7XHJcbiAgIGJvcmRlci1ib3R0b206ICR0b3BiYXItZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTtcclxuICAgYm9yZGVyLXJhZGl1czogJHRvcGJhci1leHRlbmRlZC1yYWRpdXM7XHJcbiAgIGJveC1zaGFkb3c6ICR0b3BiYXItZXh0ZW5kZWQtc2hhZG93O1xyXG4gICBtYXJnaW46ICR0b3BiYXItZXh0ZW5kZWQtbWFyZ2luO1xyXG4gfVxyXG5cclxuIC50b3AtbWVudSAudG9wLWJhcixcclxuIC50b3AtYmFyLmV4cGFuZGVkIC50aXRsZS1hcmVhIHtcclxuICAgYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4gICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcclxuICAgYm9yZGVyLXRvcDogJHRvcGJhci1ib3JkZXItdG9wO1xyXG4gICBib3JkZXItbGVmdDogJHRvcGJhci1ib3JkZXItbGVmdDtcclxuICAgYm9yZGVyLXJpZ2h0OiAkdG9wYmFyLWJvcmRlci1yaWdodDtcclxuICAgYm9yZGVyLWJvdHRvbTogJHRvcGJhci1ib3JkZXItYm90dG9tO1xyXG4gICBib3JkZXItcmFkaXVzOiAkdG9wYmFyLXJhZGl1cztcclxuICAgYm94LXNoYWRvdzogJHRvcGJhci1zaGFkb3c7XHJcbiB9XHJcblxyXG4gbmF2LnRvcC1iYXIge1xyXG4gICBtYXJnaW46ICR0b3BiYXItbWFyZ2luO1xyXG4gfVxyXG5cclxuIC50b3AtYmFyLmV4cGFuZGVkIHtcclxuICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1iZztcclxuIH1cclxuXHJcbi50b3AtYmFyIGEsXHJcbi50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbiB7XHJcblx0Zm9udC1mYW1pbHk6ICR0b3BiYXItbGluay1mb250LWZhbWlseSAhaW1wb3J0YW50O1xyXG5cdGZvbnQtd2VpZ2h0OiAkdG9wYmFyLWxpbmstd2VpZ2h0ICFpbXBvcnRhbnQ7XHJcblx0dGV4dC1zaGFkb3c6ICR0b3BiYXItZm9udC1zaGFkb3c7XHJcblx0YmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb250YWluICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50b3AtYmFyIC50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbiB7XHJcblx0cGFkZGluZy1yaWdodDogMTBweDtcclxufVxyXG5cclxuQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG5cdC50b3AtYmFyLXNlY3Rpb24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbiksXHJcblx0LnRvcC1iYXItc2VjdGlvbiBsaS5hY3RpdmU6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xyXG5cdFx0cGFkZGluZzogJHRvcGJhci1saW5rLXBhZGRpbmc7XHJcblx0XHRsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcblx0fVxyXG5cdC50b3AtYmFyLXNlY3Rpb24gLmRyb3Bkb3duIGxpOm5vdCguaGFzLWZvcm0pIGEge1xyXG5cdFx0cGFkZGluZzogJHRvcGJhci1kcm9wZG93bi1saW5rLXBhZGRpbmc7XHJcblx0XHRsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XHJcblx0fVxyXG5cdC50b3AtYmFyLXNlY3Rpb24gLmhhcy1kcm9wZG93biA+IGEge1xyXG5cdFx0cGFkZGluZy1yaWdodDogMzVweCAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQudG9wLWJhci1zZWN0aW9uIC5oYXMtZHJvcGRvd24gPiBhOmFmdGVyIHtcclxuXHRcdHJpZ2h0OiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLnRvcC1iYXIgLmFjdGl2ZSBhLFxyXG4udG9nZ2xlLXRvcGJhci5tZW51LWljb246aG92ZXIsXHJcbi50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbjpob3ZlciA+IGEsXHJcbi50b3AtYmFyLXNlY3Rpb24gdWwgbGk6aG92ZXIgPiBhe1xyXG5cdGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlciAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZS1vdXQgMHM7XHJcbn1cclxuXHJcbi50b3AtYmFyIHVsLmRyb3Bkb3duIHsgXHJcblx0YmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1iZyAhaW1wb3J0YW50O1xyXG5cdG1pbi13aWR0aDogMTAwJTtcclxuXHRib3gtc2hhZG93OiAkdG9wYmFyLWRyb3Bkb3duLXNoYWRvdztcclxufVxyXG5cclxuLnRvcC1iYXIgdWwuZHJvcGRvd24gYSB7XHJcblx0YmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1saW5rLWJnICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50b3AtYmFyLXNlY3Rpb24gdWwuZHJvcGRvd24gbGk6aG92ZXIgPiBhe1xyXG5cdGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgI3skc21hbGwtb25seX0ge1xyXG5cdC50b3AtYmFyLXNlY3Rpb24gYSB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmcgIWltcG9ydGFudDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcclxuXHR9XHJcblx0LnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IGEsXHJcblx0LnRvcC1iYXItc2VjdGlvbiB1bCBsaSA+IC5pdGVtZHMtZnJhZ21lbnQtZWRpdEJ1dHRvbkJhc2UsXHJcblx0LnRvcC1iYXItc2VjdGlvbiAuZHJvcGRvd24gbGkgYSxcclxuXHQudG9wLWJhci1zZWN0aW9uIC5kcm9wZG93biBsaSAuaXRlbWRzLWZyYWdtZW50LWVkaXRCdXR0b25CYXNlIHtcclxuXHRcdHBhZGRpbmc6ICR0b3BiYXItZHJvcGRvd24tbGluay1wYWRkaW5nO1xyXG5cdH1cclxuXHQudG9wLWJhci1zZWN0aW9uIC5hY3RpdmUgYSxcclxuXHQudG9wLWJhci1zZWN0aW9uIHVsIGxpOmhvdmVyID4gYXtcclxuXHRcdGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3ZlciAhaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG5cclxuLm1haW4tbWVudSAuc2VhcmNoLFxyXG4ubW9iaWxlc2VhcmNoIC5zZWFyY2gge1xyXG4gIG1hcmdpbi10b3A6IDE0cHg7XHJcbn1cclxuXHJcbi5tYWluLW1lbnUgYSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ubWFpbi1tZW51IC5saXN0YmxvY2ssXHJcbi5tYWluLW1lbnUgLnN1Ymxpc3RibG9jayB7XHJcbiAgbWFyZ2luOiAwcHg7XHJcbn1cclxuXHJcbi5tYWluLW1lbnUgc2VjdGlvbiAudGl0bGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWN0aW9uLXRpdGxlLWFsdC1iZyAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkc2VjdGlvbi10aXRsZS1hbHQtY29sb3IgIWltcG9ydGFudDtcclxuICBib3JkZXItd2lkdGg6ICRzZWN0aW9uLWJvcmRlci1hbHQtc2l6ZSAhaW1wb3J0YW50O1xyXG4gIEJvcmRlci1zdHlsZTogJHNlY3Rpb24tYm9yZGVyLWFsdC1zdHlsZSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogJHNlY3Rpb24tYm9yZGVyLWFsdC1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWFpbi1tZW51IHNlY3Rpb24gLmFjdGl2ZSAudGl0bGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWN0aW9uLXRpdGxlLWFsdC1iZy1hY3RpdmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1haW4tbWVudSAudGl0bGUgYSB7XHJcbiAgY29sb3I6ICRzZWN0aW9uLXRpdGxlLWFsdC1jb2xvciAhaW1wb3J0YW50O1xyXG4gIHRleHQtc2hhZG93OiAkc2VjdGlvbi1mb250LWFsdC1zaGFkb3c7XHJcbiAgZm9udC1mYW1pbHk6ICRzZWN0aW9uLWZvbnQtYWx0LWZhbWlseTtcclxuICBmb250LXdlaWdodDogJHNlY3Rpb24tZm9udC1hbHQtd2VpZ2h0O1xyXG4gIGJveC1zaGFkb3c6ICRzZWN0aW9uLXRpdGxlLWFsdC1zaGFkb3c7XHJcbiAgYm9yZGVyLXJhZGl1czogJHNlY3Rpb24tdGl0bGUtYWx0LXJhZGl1cztcclxufVxyXG5cclxuLm1haW4tbWVudSAubGlzdGl0ZW0sXHJcbi5tYWluLW1lbnUgLnN1YnRpdGxlIHtcclxuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5tYWluLW1lbnUgLmxpc3RpdGVtIGEge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXItd2lkdGg6ICRzZWN0aW9uLWJvcmRlci1hbHQtc2l6ZSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1zdHlsZTogJHNlY3Rpb24tYm9yZGVyLWFsdC1zdHlsZSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogJHNlY3Rpb24tYm9yZGVyLWFsdC1jb2xvciAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6ICRzZWN0aW9uLXRpdGxlLWFsdC1yYWRpdXM7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY3Rpb24tdGl0bGUtYWx0LWJnICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICRzZWN0aW9uLXRpdGxlLWFsdC1jb2xvciAhaW1wb3J0YW50O1xyXG4gIHRleHQtc2hhZG93OiAkc2VjdGlvbi1mb250LWFsdC1zaGFkb3c7XHJcbiAgYm94LXNoYWRvdzogJHNlY3Rpb24tdGl0bGUtYWx0LXNoYWRvdztcclxuICBmb250LWZhbWlseTogJHNlY3Rpb24tZm9udC1hbHQtZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiAkc2VjdGlvbi1mb250LWFsdC13ZWlnaHQ7XHJcbiAgZm9udC1zaXplOiAkc2VjdGlvbi1mb250LXNpemU7XHJcbiAgcGFkZGluZzogJHNlY3Rpb24tcGFkZGluZyAhaW1wb3J0YW50O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIG1hcmdpbjogMDtcclxuICB0b3A6IDA7XHJcbn1cclxuXHJcbi5tYWluLW1lbnUgLmxpc3RpdGVtIGE6aG92ZXIsXHJcbi5tYWluLW1lbnUgLmxpc3RpdGVtLnNlbGVjdGVkIGEge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWN0aW9uLXRpdGxlLWFsdC1iZy1hY3RpdmUgIWltcG9ydGFudDtcclxuICBjb2xvcjogJHNlY3Rpb24tdGl0bGUtYWx0LWNvbG9yLWFjdGl2ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWFpbi1tZW51IC50aXRsZS5oYXMtZHJvcGRvd24gPiBhOmFmdGVyLFxyXG4ubWFpbi1tZW51IC5saXN0aXRlbS5oYXMtZHJvcGRvd24gPiBhOmFmdGVyIHtcclxuICAtbW96LWJvcmRlci1ib3R0b20tY29sb3JzOiBub25lO1xyXG4gIC1tb3otYm9yZGVyLWxlZnQtY29sb3JzOiBub25lO1xyXG4gIC1tb3otYm9yZGVyLXJpZ2h0LWNvbG9yczogbm9uZTtcclxuICAtbW96LWJvcmRlci10b3AtY29sb3JzOiBub25lO1xyXG4gIGJvcmRlci1jb2xvcjogJHNlY3Rpb24tdGl0bGUtYXJyb3ctY29sb3I7XHJcbiAgYm9yZGVyLWltYWdlOiBub25lO1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiBlbUNhbGMoMjBweCk7XHJcbiAgcmlnaHQ6IDEwcHg7XHJcbiAgaGVpZ2h0OiAwcHg7XHJcbiAgd2lkdGg6IDBweDtcclxufVxyXG5cclxuLm1haW4tbWVudSAuc2VjdGlvbi1jb250YWluZXIge1xyXG4gIG1hcmdpbjogJHNlY3Rpb24tYWx0LW1hcmdpbjtcclxuICB3aWR0aDogYXV0bztcclxuICBib3JkZXItd2lkdGg6ICRzZWN0aW9uLWJvcmRlci1hbHQtc2l6ZTtcclxuICBib3JkZXItc3R5bGU6ICRzZWN0aW9uLWJvcmRlci1hbHQtc3R5bGU7XHJcbiAgYm9yZGVyLWNvbG9yOiAkc2VjdGlvbi1ib3JkZXItYWx0LWNvbG9yO1xyXG59XHJcblxyXG4ubWFpbi1tZW51IC5zZWN0aW9uLWNvbnRhaW5lciAuc2VjdGlvbixcclxuLm1haW4tbWVudSAubGlzdGl0ZW0ge1xyXG4gIG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLm1haW4tbWVudSAuY29udGVudCB7XHJcbiAgYmFja2dyb3VuZDogJHNlY3Rpb24tY29udGVudC1hbHQtYmc7XHJcbiAgY29sb3I6ICRzZWN0aW9uLWNvbnRlbnQtYWx0LWNvbG9yO1xyXG4gIGJveC1zaGFkb3c6ICRzZWN0aW9uLWNvbnRlbnQtYWx0LXNoYWRvdztcclxuICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcclxuICBib3JkZXItd2lkdGg6ICRzZWN0aW9uLWJvcmRlci1hbHQtc2l6ZSAhaW1wb3J0YW50O1xyXG4gIEJvcmRlci1zdHlsZTogJHNlY3Rpb24tYm9yZGVyLWFsdC1zdHlsZSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogJHNlY3Rpb24tYm9yZGVyLWFsdC1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWFpbi1tZW51IC5zdWJsaXN0YmxvY2sge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgbWluLXdpZHRoOiAkc2VjdGlvbi12ZXJ0aWNhbC1uYXYtbWluLXdpZHRoO1xyXG4gIGJveC1zaGFkb3c6ICRzZWN0aW9uLWNvbnRlbnQtYWx0LXNoYWRvdztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogMTAwJTtcclxuICB0b3A6IDBweDtcclxuICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLm1haW4tbWVudSAuc3VidGl0bGUge1xyXG4gIHBhZGRpbmc6IDBweDtcclxufVxyXG5cclxuLm1haW4tbWVudSAuc3VidGl0bGUgYSxcclxuLm1haW4tbWVudSAuc3VibGlzdGJsb2NrIC5zdWJ0aXRsZSBhIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYmFja2dyb3VuZDogJHNlY3Rpb24tdGl0bGUtYWx0Mi1iZyAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkc2VjdGlvbi10aXRsZS1hbHQyLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgdGV4dC1zaGFkb3c6ICRzZWN0aW9uLWZvbnQtYWx0LXNoYWRvdztcclxuICBib3gtc2hhZG93OiAkc2VjdGlvbi10aXRsZS1hbHQyLXNoYWRvdztcclxuICBmb250LWZhbWlseTogJHNlY3Rpb24tZm9udC1hbHQtZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiAkc2VjdGlvbi1mb250LWFsdC13ZWlnaHQ7XHJcbiAgcGFkZGluZzogJHNlY3Rpb24tcGFkZGluZyAhaW1wb3J0YW50O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIG1hcmdpbjogMDtcclxuICB0b3A6IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogJHNlY3Rpb24tdGl0bGUtYWx0Mi1yYWRpdXM7XHJcbn1cclxuXHJcbi5tYWluLW1lbnUgLnN1YnRpdGxlIGE6aG92ZXIsXHJcbi5tYWluLW1lbnUgLnN1Ymxpc3RibG9jayAuc3VidGl0bGUgYTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogJHNlY3Rpb24tdGl0bGUtYWx0Mi1iZy1hY3RpdmUgIWltcG9ydGFudDtcclxuICBjb2xvcjogJHNlY3Rpb24tdGl0bGUtYWx0Mi1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgI3skbWVkaXVtLXVwfSB7XHJcbiAgLm1haW4tbWVudSAubGlzdGl0ZW0uaGFzLWRyb3Bkb3duOmhvdmVyIC5zdWJsaXN0YmxvY2sge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLm1pZCB7XHJcblx0YmFja2dyb3VuZDogJG1pZC1leHRlbmRlZC1iZztcclxuXHRib3JkZXItdG9wOiAkbWlkLWV4dGVuZGVkLWJvcmRlci10b3A7XHJcblx0Ym9yZGVyLWxlZnQ6ICRtaWQtZXh0ZW5kZWQtYm9yZGVyLWxlZnQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAkbWlkLWV4dGVuZGVkLWJvcmRlci1yaWdodDtcclxuXHRib3JkZXItYm90dG9tOiAkbWlkLWV4dGVuZGVkLWJvcmRlci1ib3R0b207XHJcblx0Ym9yZGVyLXJhZGl1czogJG1pZC1leHRlbmRlZC1yYWRpdXM7XHJcblx0Ym94LXNoYWRvdzogJG1pZC1leHRlbmRlZC1zaGFkb3c7XHJcblx0bWFyZ2luOiAkbWlkLWV4dGVuZGVkLW1hcmdpbjtcclxuXHRwYWRkaW5nOiAkbWlkLWV4dGVuZGVkLXBhZGRpbmc7XHJcbn1cclxuXHJcbi5taWQtcm93IHtcclxuXHRiYWNrZ3JvdW5kOiAkbWlkLWJnO1xyXG5cdGNvbG9yOiAkbWlkLWZvbnQtY29sb3I7XHJcblx0Ym9yZGVyLXRvcDogJG1pZC1ib3JkZXItdG9wO1xyXG5cdGJvcmRlci1sZWZ0OiAkbWlkLWJvcmRlci1sZWZ0O1xyXG5cdGJvcmRlci1yaWdodDogJG1pZC1ib3JkZXItcmlnaHQ7XHJcblx0Ym9yZGVyLWJvdHRvbTogJG1pZC1ib3JkZXItYm90dG9tO1xyXG5cdGJvcmRlci1yYWRpdXM6ICRtaWQtcmFkaXVzO1xyXG5cdGJveC1zaGFkb3c6ICRtaWQtc2hhZG93O1xyXG5cdG1hcmdpbjogJG1pZC1tYXJnaW47XHJcblx0cGFkZGluZzogJG1pZC1wYWRkaW5nO1xyXG59XHJcblxyXG4ubWFpbi1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kOiAkY29udGVudC1iZztcclxuXHRjb2xvcjogJGNvbnRlbnQtZm9udC1jb2xvcjtcclxuXHRwYWRkaW5nLXRvcDogJGNvbnRlbnQtcGFkZGluZy10b3A7XHJcblx0cGFkZGluZy1ib3R0b206ICRjb250ZW50LXBhZGRpbmctYm90dG9tO1xyXG5cdGJvcmRlci10b3A6ICRjb250ZW50LWJvcmRlci10b3A7XHJcblx0Ym9yZGVyLWxlZnQ6ICRjb250ZW50LWJvcmRlci1sZWZ0O1xyXG5cdGJvcmRlci1yaWdodDogJGNvbnRlbnQtYm9yZGVyLXJpZ2h0O1xyXG5cdGJvcmRlci1ib3R0b206ICRjb250ZW50LWJvcmRlci1ib3R0b207XHJcblx0Ym9yZGVyLXJhZGl1czogJGNvbnRlbnQtcmFkaXVzO1xyXG5cdGJveC1zaGFkb3c6ICRjb250ZW50LXNoYWRvdztcclxuXHRtaW4taGVpZ2h0OiAkY29udGVudC1taW4taGVpZ2h0O1xyXG59XHJcblxyXG4uZm9vdGVyIHtcclxuICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWV4dGVuZGVkLWJnO1xyXG4gIGJvcmRlci10b3A6ICRmb290ZXItZXh0ZW5kZWQtYm9yZGVyLXRvcDtcclxuICBib3JkZXItbGVmdDogJGZvb3Rlci1leHRlbmRlZC1ib3JkZXItbGVmdDtcclxuICBib3JkZXItcmlnaHQ6ICRmb290ZXItZXh0ZW5kZWQtYm9yZGVyLXJpZ2h0O1xyXG4gIGJvcmRlci1ib3R0b206ICRmb290ZXItZXh0ZW5kZWQtYm9yZGVyLWJvdHRvbTtcclxuICBib3JkZXItcmFkaXVzOiAkZm9vdGVyLWV4dGVuZGVkLXJhZGl1cztcclxuICBib3gtc2hhZG93OiAkZm9vdGVyLWV4dGVuZGVkLXNoYWRvdztcclxuICBtYXJnaW46ICRmb290ZXItZXh0ZW5kZWQtbWFyZ2luO1xyXG4gIHBhZGRpbmc6ICRmb290ZXItZXh0ZW5kZWQtcGFkZGluZztcclxufVxyXG5cclxuLmZvb3RlciBmb290ZXIge1xyXG4gIGJhY2tncm91bmQ6ICRmb290ZXItYmc7XHJcbiAgY29sb3I6ICRmb290ZXItZm9udC1jb2xvciAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci10b3A6ICRmb290ZXItYm9yZGVyLXRvcDtcclxuICBib3JkZXItbGVmdDogJGZvb3Rlci1ib3JkZXItbGVmdDtcclxuICBib3JkZXItcmlnaHQ6ICRmb290ZXItYm9yZGVyLXJpZ2h0O1xyXG4gIGJvcmRlci1ib3R0b206ICRmb290ZXItYm9yZGVyLWJvdHRvbTtcclxuICBib3JkZXItcmFkaXVzOiAkZm9vdGVyLXJhZGl1cztcclxuICBib3gtc2hhZG93OiAkZm9vdGVyLXNoYWRvdztcclxuICBtYXJnaW46ICRmb290ZXItbWFyZ2luO1xyXG4gIHBhZGRpbmc6ICRmb290ZXItcGFkZGluZztcclxufVxyXG5cclxuLmZvb3RlcixcclxuLmZvb3RlciBhOmxpbmssXHJcbi5mb290ZXIgYTp2aXNpdGVkIHtcclxuICBjb2xvcjogJGZvb3Rlci1saW5rY29sb3IgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZvb3RlciBhOmhvdmVyLFxyXG4uZm9vdGVyIGE6YWN0aXZlIHtcclxuICBjb2xvcjogJGZvb3Rlci1saW5rY29sb3IgIWltcG9ydGFudDtcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZm9vdGVyIC5hZGRyZXNzIHtcclxuICBjb2xvcjogJGZvb3Rlci1jb2xvcjIgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gQ29udGVudFxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICB0ZXh0LXNoYWRvdzogJGhlYWRlci1mb250LXNoYWRvdztcclxufVxyXG5cclxubGVnZW5kIHtcclxuICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcclxuICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodCAhaW1wb3J0YW50O1xyXG4gIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkaGVhZGVyLWZvbnQtY29sb3IgIWltcG9ydGFudDtcclxuICB0ZXh0LXNoYWRvdzogJGhlYWRlci1mb250LXNoYWRvdztcclxuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdi5wYW5lbCB7XHJcbiAgYmFja2dyb3VuZDogJHBhbmVsLWJnO1xyXG4gIGJveC1zaGFkb3c6ICRwYW5lbC1zaGFkb3c7XHJcbiAgYm9yZGVyLXJhZGl1czogJHBhbmVsLXJhZGl1cztcclxufVxyXG5cclxuLmJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL21lbnVncmFkaWVudDIucG5nXCIpO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICB0ZXh0LXNoYWRvdzogJGJ1dHRvbi1mb250LXNoYWRvdztcclxufVxyXG5cclxuYS5idXR0b24ge1xyXG4gIHBhZGRpbmctdG9wOiBlbUNhbGMoMTBweCk7XHJcbiAgcGFkZGluZy1ib2l0dG9tOiBlbUNhbGMoMTBweCk7XHJcbn1cclxuXHJcbi5idXR0b24uc2Vjb25kYXJ5IHtcclxuICB0ZXh0LXNoYWRvdzogJGJ1dHRvbi1hbHQtZm9udC1zaGFkb3c7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWNvbnRhaW5lci5hdXRvID4gc2VjdGlvbiA+IC50aXRsZSBhLCAuc2VjdGlvbi1jb250YWluZXIuYXV0byA+IC5zZWN0aW9uID4gLnRpdGxlIGEge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6ICRzZWN0aW9uLXRpdGxlLWJnLWltYWdlO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxufVxyXG5cclxuLnNlY3Rpb24tY29udGFpbmVyLmF1dG8gPiBzZWN0aW9uLmFjdGl2ZSA+IC50aXRsZSBhLCAuc2VjdGlvbi1jb250YWluZXIuYXV0byA+IC5zZWN0aW9uLmFjdGl2ZSA+IC50aXRsZSBhIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkc2VjdGlvbi10aXRsZS1iZy1pbWFnZS1hY3RpdmU7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG59XHJcblxyXG4uc2VjdGlvbi1jb250YWluZXIuYXV0byA+IHNlY3Rpb24gPiAudGl0bGUgYSwgLnNlY3Rpb24tY29udGFpbmVyLmF1dG8gPiAuc2VjdGlvbiA+IC50aXRsZSBhOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkc2VjdGlvbi10aXRsZS1iZy1pbWFnZS1ob3ZlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbn1cclxuXHJcbi8vIEJJUkRET0dcclxuI3R4dFNlYXJjaCxcclxuI3R4dFNlYXJjaDIge1xyXG5cdHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcclxufVxyXG4jdHh0U2VhcmNoIHtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG59XHJcbi5zZWFyY2hidXR0b24ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG5cdHRvcDogMHB4ICFpbXBvcnRhbnQ7XHJcblx0cmlnaHQ6IDVweCAhaW1wb3J0YW50O1xyXG5cdGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiAkaW5wdXQtZm9udC1jb2xvciAhaW1wb3J0YW50O1xyXG5cdGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5hLnRoIGltZyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmEucHJldmlldyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogLTEwcHg7XHJcbiAgbGVmdDogMHB4O1xyXG59XHJcblxyXG4jZ29vZ2xlbWFwIGltZyB7XHJcbiAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2xvcjF0ZXh0IHtcclxuICBjb2xvcjogJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5jb2xvcjFiYWNrZ3JvdW5kIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLmNvbG9yMnRleHQge1xyXG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4uY29sb3IyYmFja2dyb3VuZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxufVxyXG5cclxuXHJcbi8qIEJpcmREb2cgQWRtaW4gUGFuZWwgKi9cclxuI2FkbWluIG5hdi50b3AtYmFyIHtcclxuXHRtYXJnaW46IDBweDtcclxuXHRib3gtc2hhZG93OiAwcHggMnB4IDRweCByZ2JhKDAsMCwwLC41KTtcclxuXHRmb250LWZhbWlseTogVGFob21hLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxufVxyXG5cclxuI2FkbWluIC50b3AtYmFyLCBcclxuI2FkbWluIC5jb250YWluLXRvLWdyaWQsXHJcbiNhZG1pbiAudG9wLWJhci5leHBhbmRlZCAudGl0bGUtYXJlYSxcclxuI2FkbWluIC50b3AtYmFyLmV4cGFuZGVkIC5oYXMtZm9ybSxcclxuI2FkbWluIC50b3AtYmFyIGEsIFxyXG4jYWRtaW4gLnRvcC1iYXIgLml0ZW1kcy1mcmFnbWVudC1lZGl0QnV0dG9uQmFzZSwgXHJcbiNhZG1pbiAudG9nZ2xlLXRvcGJhci5tZW51LWljb24gIHtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoaW1hZ2VzL21lbnVncmFkaWVudDIucG5nKSB0b3AgIzAwMDAwMCAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcclxuXHRmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuXHRjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG5cdHRleHQtc2hhZG93OiAwcHggLTFweCAwcHggcmdiYSgwLDAsMCwuMzUpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcblx0Zm9udC1mYW1pbHk6IFRhaG9tYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbn1cclxuI2FkbWluIC50b3AtYmFyLXNlY3Rpb24gYSxcclxuI2FkbWluIC50b3AtYmFyLXNlY3Rpb24gLml0ZW1kcy1mcmFnbWVudC1lZGl0QnV0dG9uQmFzZSxcclxuI2FkbWluIC50b3AtYmFyIC5hY3RpdmUgYSxcclxuI2FkbWluIC50b3AtYmFyIC5hY3RpdmUgLml0ZW1kcy1mcmFnbWVudC1lZGl0QnV0dG9uQmFzZSB7XHJcblx0YmFja2dyb3VuZDogIzAwMDAwMCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcblx0dGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCByZ2JhKDAsMCwwLC4zNSk7XHJcblx0dGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcclxuXHRmb250LWZhbWlseTogVGFob21hLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxuXHRmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxufSBcclxuI2FkbWluIC50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbjpob3ZlciwgXHJcbiNhZG1pbiAudG9nZ2xlLXRvcGJhci5tZW51LWljb246aG92ZXIgPiBhLCBcclxuI2FkbWluIC50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbjpob3ZlciA+IC5pdGVtZHMtZnJhZ21lbnQtZWRpdEJ1dHRvbkJhc2UsIFxyXG4jYWRtaW4gLnRvcC1iYXItc2VjdGlvbiB1bCBsaTpob3ZlciA+IGEsIFxyXG4jYWRtaW4gLnRvcC1iYXItc2VjdGlvbiB1bCBsaTpob3ZlciA+IC5pdGVtZHMtZnJhZ21lbnQtZWRpdEJ1dHRvbkJhc2Uge1xyXG5cdGJhY2tncm91bmQ6ICNmOTU2MDIgIWltcG9ydGFudDtcclxuXHRjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcbiNhZG1pbiAudG9wLWJhci5leHBhbmRlZCAudG9nZ2xlLXRvcGJhciBhOmFmdGVyIHtcclxuXHRib3gtc2hhZG93OiAwIDEwcHggMCAxcHggIzY2NiwgMCAxNnB4IDAgMXB4ICM2NjYsIDAgMjJweCAwIDFweCAjNjY2ICFpbXBvcnRhbnQ7XHJcbn1cclxuI2FkbWluIC50b3AtYmFyLXNlY3Rpb24gdWwgbGk6aG92ZXIgPiBhLFxyXG4jYWRtaW4gLnRvcC1iYXItc2VjdGlvbiB1bCBsaTpob3ZlciA+IC5pdGVtZHMtZnJhZ21lbnQtZWRpdEJ1dHRvbkJhc2Uge1xyXG5cdGJhY2tncm91bmQ6ICNmOTU2MDIgIWltcG9ydGFudDsgXHJcbn1cclxuI2FkbWluIC50b3AtYmFyLXNlY3Rpb24gPiB1bCA+IC5kaXZpZGVyLCAudG9wLWJhci1zZWN0aW9uID4gdWwgPiBbcm9sZT1cInNlcGFyYXRvclwiXSB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICM0RTRFNEUgIWltcG9ydGFudDtcclxuXHRib3JkZXItYm90dG9tOiAwcHggIWltcG9ydGFudDtcclxuXHRkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG5cdCNhZG1pbiBuYXYudG9wLWJhciB7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMzBweDtcclxuXHR9XHJcblx0I2FkbWluIC50b3AtYmFyLXNlY3Rpb24gYSxcclxuXHQjYWRtaW4gLnRvcC1iYXItc2VjdGlvbiAuaXRlbWRzLWZyYWdtZW50LWVkaXRCdXR0b25CYXNle1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZykgdG9wICMwMDAwMDAgIWltcG9ydGFudDtcclxuXHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xyXG5cdFx0dGV4dC1zaGFkb3c6IDBweCAtMXB4IDBweCByZ2JhKDAsMCwwLC4zNSk7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Zm9udC1mYW1pbHk6IFRhaG9tYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcblx0XHRmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuXHR9XHJcblx0I2FkbWluIC50b3AtYmFyLXNlY3Rpb24gbGk6bm90KC5oYXMtZm9ybSkgYTpub3QoLmJ1dHRvbikge1xyXG5cdFx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0XHRjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG5cdH1cclxuXHQjYWRtaW4gLnRvcC1iYXItc2VjdGlvbiA+IHVsID4gLmRpdmlkZXIsIC50b3AtYmFyLXNlY3Rpb24gPiB1bCA+IFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0RTRFNEUgIWltcG9ydGFudDtcclxuXHRcdGJvcmRlci1sZWZ0OiAwcHggIWltcG9ydGFudDtcclxuXHR9XHJcblx0I2FkbWluIC50b3AtYmFyIC50b2dnbGUtdG9wYmFyLm1lbnUtaWNvbiBhLFxyXG5cdCNhZG1pbiAudG9wLWJhciAudG9nZ2xlLXRvcGJhci5tZW51LWljb24gLml0ZW1kcy1mcmFnbWVudC1lZGl0QnV0dG9uQmFzZSxcclxuXHQjYWRtaW4gLnRvcC1iYXIgLm5hbWUge1xyXG5cdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDMwcHg7XHJcblx0fVxyXG5cdCNhZG1pbiAudG9wLWJhci1zZWN0aW9uIHVsIGxpOmhvdmVyID4gYSxcclxuXHQjYWRtaW4gLnRvcC1iYXItc2VjdGlvbiB1bCBsaTpob3ZlciA+IC5pdGVtZHMtZnJhZ21lbnQtZWRpdEJ1dHRvbkJhc2Uge1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKGltYWdlcy9tZW51Z3JhZGllbnQyLnBuZykgdG9wICNmOTU2MDIgIWltcG9ydGFudDsgXHJcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuLyogRW5kICovXHJcblxyXG4vKiBCaXJkRG9nIEZvb3RlciBMaW5rcyAqL1xyXG4uQmlyZERvZ0xpbmsge1xyXG4gIGZvbnQtc2l6ZTogOHB0ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1mYW1pbHk6IFRhaG9tYSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICRwb3dlcmVkYnktY29sb3I7XHJcbiAgbGluZS1oZWlnaHQ6IDEycHQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLkJpcmREb2dMaW5rIGE6bGluayxcclxuLkJpcmREb2dMaW5rIGE6dmlzaXRlZCB7XHJcbiAgY29sb3I6ICRwb3dlcmVkYnktY29sb3I7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4uQmlyZERvZ0xpbmsgYTpob3ZlcixcclxuLkJpcmREb2dMaW5rIGE6YWN0aXZlIHtcclxuICBjb2xvcjogI2Y5NTYwMiAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQ6ICMwMDAwMDAgIWltcG9ydGFudDtcclxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBvdmVybGluZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udG9wLXJpZ2h0LWljb24ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IGVtLWNhbGMoOCk7XHJcbiAgcmlnaHQ6IGVtLWNhbGMoMTEpO1xyXG4gIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xyXG59XHJcblxyXG4vKiBNYWtlLXVwIGZvciB0aGUgbGFjayBvZiBhIHByb3BlciB2ZXJ0aWNhbCB0b3AtbmF2ICovXHJcbi5zdWJ0aXRsZSB7XHJcbiAgZm9udC1mYW1pbHk6ICRzZWN0aW9uLWZvbnQtZmFtaWx5O1xyXG4gIGJhY2tncm91bmQ6ICRzZWN0aW9uLWNvbnRlbnQtYmc7XHJcbiAgY29sb3I6ICRzZWN0aW9uLWNvbnRlbnQtY29sb3I7XHJcbiAgdGV4dC1zaGFkb3c6ICRzZWN0aW9uLWNvbnRlbnQtZm9udC1zaGFkb3c7XHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xyXG4gIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zdWJ0aXRsZTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogJHNlY3Rpb24tY29udGVudC1ob3ZlcjtcclxufVxyXG5cclxuLyogRm9yIEl0ZW1mb3JtMyAqL1xyXG4ucHJpY2VwYW5lbC5maXhlZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbkBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcclxuICAucHJpY2VwYW5lbC5maXhlZCB7XHJcbiAgICB3aWR0aDogMjMzcHggIWltcG9ydGFudDtcclxuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLyogTWlzY2VsbGFuZW91cyAqL1xyXG4ucG9zY29sb3Ige1xyXG4gIGNvbG9yOiAkZ3JlZW4gIWltcG9ydGFudDtcclxufVxyXG5cclxuLm5lZ2NvbG9yIHtcclxuICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub25zYWxlcmliYm9uIHtcclxuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5vbnNhbGVyaWJib246YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IHVybChpbWFnZXMvaWNvbnMvU2FsZTQ4LnBuZyk7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogcmVtLWNhbGMoLTlweCk7XHJcbiAgcmlnaHQ6IHJlbS1jYWxjKDE1KTtcclxufVxyXG5cclxuLmJsb2dwb3N0IC5wb3N0ZWQge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRmb250LXN0eWxlOml0YWxpYztcclxufVxyXG4uYmxvZ3Bvc3QgLnBvc3RlZCAubmFtZTpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiUG9zdGVkIGJ5IFwiO1xyXG59XHJcbi5ibG9ncG9zdCAucG9zdGVkIC5uYW1lIHtcclxufVxyXG4uYmxvZ3Bvc3QgLnBvc3RlZCAuZGF0ZWJsb2NrIC5mdWxsZGF5OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCIgb24gXCI7XHJcbn1cclxuLmJsb2dwb3N0IC5wb3N0ZWQgLmRhdGVibG9jayAuZnVsbGRheSB7XHJcbn1cclxuLmJsb2dwb3N0IC5wb3N0ZWQgLmRhdGVibG9jayAuZnVsbGRheTphZnRlciB7XHJcblx0Y29udGVudDogXCIsIFwiO1xyXG59XHJcbi5ibG9ncG9zdCAucG9zdGVkIC5kYXRlYmxvY2sgLm1vbnRoIHtcclxufVxyXG4uYmxvZ3Bvc3QgLnBvc3RlZCAuZGF0ZWJsb2NrIC5kYXkge1xyXG59XHJcbi5ibG9ncG9zdCAucG9zdGVkIC5kYXRlYmxvY2sgLnllYXIge1xyXG59XHJcblxyXG5pbnB1dC5oYXNEYXRlcGlja2VyIHtcclxuXHRtYXJnaW46IDAgMXJlbSAxcmVtIDA7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4vKkVuZCBmb3VuZGF0aW9uQmFzZSovIiwiLypTdGFydCBQb3N0Ki9cclxuXHJcbkBtZWRpYSAjeyRzbWFsbH0ge1xyXG4gIG5hdi50b3AtYmFyIHtcclxuICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKiBDb29raWUgQmFyICovXHJcbiNjb29raWUtYmFyIHtiYWNrZ3JvdW5kOiMxMTExMTE7IGhlaWdodDphdXRvOyBsaW5lLWhlaWdodDoyNHB4OyBjb2xvcjojZWVlZWVlOyB0ZXh0LWFsaWduOmNlbnRlcjsgcGFkZGluZzozcHggMDt9XHJcbiNjb29raWUtYmFyLmZpeGVkIHtwb3NpdGlvbjpmaXhlZDsgdG9wOjA7IGxlZnQ6MDsgd2lkdGg6MTAwJTt9XHJcbiNjb29raWUtYmFyLmZpeGVkLmJvdHRvbSB7Ym90dG9tOjA7IHRvcDphdXRvO31cclxuI2Nvb2tpZS1iYXIgcCB7bWFyZ2luOjA7IHBhZGRpbmc6MDt9XHJcbiNjb29raWUtYmFyIGEge2NvbG9yOiNmZmZmZmY7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBib3JkZXItcmFkaXVzOjNweDsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IHBhZGRpbmc6MCA2cHg7IG1hcmdpbi1sZWZ0OjhweDt9XHJcbiNjb29raWUtYmFyIC5jYi1lbmFibGUge2JhY2tncm91bmQ6IzAwNzcwMDt9XHJcbiNjb29raWUtYmFyIC5jYi1lbmFibGU6aG92ZXIge2JhY2tncm91bmQ6IzAwOTkwMDt9XHJcbiNjb29raWUtYmFyIC5jYi1kaXNhYmxlIHtiYWNrZ3JvdW5kOiM5OTAwMDA7fVxyXG4jY29va2llLWJhciAuY2ItZGlzYWJsZTpob3ZlciB7YmFja2dyb3VuZDojYmIwMDAwO31cclxuI2Nvb2tpZS1iYXIgLmNiLXBvbGljeSB7YmFja2dyb3VuZDojMDAzM2JiO31cclxuI2Nvb2tpZS1iYXIgLmNiLXBvbGljeTpob3ZlciB7YmFja2dyb3VuZDojMDA1NWRkO31cclxuXHJcbi8qRW5kIFBvc3QqLyIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgaHRtbCBhbmQgYm9keSBmb250LXNpemUgZm9yIHRoZSBiYXNlIHJlbSB2YWx1ZS5cbiRyZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcblxuLy8gSU1QT1JUIE9OQ0Vcbi8vIFdlIHVzZSB0aGlzIHRvIHByZXZlbnQgc3R5bGVzIGZyb20gYmVpbmcgbG9hZGVkIG11bHRpcGxlIHRpbWVzIGZvciBjb21wZW5lbnRzIHRoYXQgcmVseSBvbiBvdGhlciBjb21wb25lbnRzLiBcbiRtb2R1bGVzOiAoKSAhZGVmYXVsdDtcbkBtaXhpbiBleHBvcnRzKCRuYW1lKSB7XG4gIEBpZiAoaW5kZXgoJG1vZHVsZXMsICRuYW1lKSA9PSBmYWxzZSkge1xuICAgICRtb2R1bGVzOiBhcHBlbmQoJG1vZHVsZXMsICRuYW1lKTtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vL1xuLy8gQGZ1bmN0aW9uc1xuLy9cblxuXG4vLyBSQU5HRVNcbi8vIFdlIHVzZSB0aGVzZSBmdW5jdGlvbnMgdG8gZGVmaW5lIHJhbmdlcyBmb3IgdmFyaW91cyB0aGluZ3MsIGxpa2UgbWVkaWEgcXVlcmllcy4gXG5AZnVuY3Rpb24gbG93ZXItYm91bmQoJHJhbmdlKXtcbiAgQGlmIGxlbmd0aCgkcmFuZ2UpIDw9IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAcmV0dXJuIG50aCgkcmFuZ2UsMSk7XG59XG5cbkBmdW5jdGlvbiB1cHBlci1ib3VuZCgkcmFuZ2UpIHtcbiAgQGlmIGxlbmd0aCgkcmFuZ2UpIDwgMiB7XG4gICAgQHJldHVybiA5OTk5OTk5OTk5OTk7XG4gIH1cbiAgQHJldHVybiBudGgoJHJhbmdlLCAyKTtcbn1cblxuLy8gU1RSSVAgVU5JVFxuLy8gSXQgc3RyaXBzIHRoZSB1bml0IG9mIG1lYXN1cmUgYW5kIHJldHVybnMgaXRcbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vIENPTlZFUlQgVE8gUkVNXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSAge1xuICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UtdmFsdWUpICogMXJlbTtcbiAgQGlmICgkdmFsdWUgPT0gMHJlbSkgeyAkdmFsdWU6IDA7IH0gLy8gVHVybiAwcmVtIGludG8gMFxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIGRhdGEoJGF0dHIpIHtcbiAgQGlmICRuYW1lc3BhY2Uge1xuICAgIEByZXR1cm4gJ1tkYXRhLScgKyAkbmFtZXNwYWNlICsgJy0nICsgJGF0dHIgKyAnXSc7XG4gIH1cblxuICBAcmV0dXJuICdbZGF0YS0nICsgJGF0dHIgKyAnXSc7XG59XG5cbi8vIFJFTSBDQUxDIFxuXG4vLyBOZXcgU3ludGF4LCBhbGxvd3MgdG8gb3B0aW9uYWxseSBjYWxjdWxhdGUgb24gYSBkaWZmZXJlbnQgYmFzZSB2YWx1ZSB0byBjb3VudGVyIGNvbXBvdW5kaW5nIGVmZmVjdCBvZiByZW0ncy5cbi8vIENhbGwgd2l0aCAxLCAyLCAzIG9yIDQgcGFyYW1ldGVycywgJ3B4JyBpcyBub3QgcmVxdWlyZWQgYnV0IHN1cHBvcnRlZDpcbi8vIFxuLy8gICByZW0tY2FsYygxMCAyMCAzMHB4IDQwKTtcbi8vIFxuLy8gU3BhY2UgZGVsaW1pdGVkLCBpZiB5b3Ugd2FudCB0byBkZWxpbWl0IHVzaW5nIGNvbW1hJ3MsIHdyYXAgaXQgaW4gYW5vdGhlciBwYWlyIG9mIGJyYWNrZXRzXG4vLyBcbi8vICAgcmVtLWNhbGMoKDEwLCAyMCwgMzAsIDQwcHgpKTtcbi8vIFxuLy8gT3B0aW9uYWxseSBjYWxsIHdpdGggYSBkaWZmZXJlbnQgYmFzZSAoZWc6IDhweCkgdG8gY2FsY3VsYXRlIHJlbS5cbi8vIFxuLy8gICByZW0tY2FsYygxNnB4IDMycHggNDhweCwgOHB4KTtcbi8vIFxuLy8gSWYgeW91IHJlcXVpcmUgdG8gY29tbWEgc2VwYXJhdGUgeW91ciBsaXN0XG4vLyBcbi8vICAgcmVtLWNhbGMoKDE2cHgsIDMycHgsIDQ4KSwgOHB4KTtcblxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgJG1heDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XG5cbiAgJHJlbVZhbHVlczogKCk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG4gICAgJHJlbVZhbHVlczogYXBwZW5kKCRyZW1WYWx1ZXMsIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlLXZhbHVlKSk7XG4gIH1cbiAgQHJldHVybiAkcmVtVmFsdWVzO1xufVxuXG4vLyBPTEQgRU0gQ0FMQ1xuLy8gRGVwcmVjYXRlZDogV2UnbGwgZHJvcCBzdXBwb3J0IGZvciB0aGlzIGluIDUuMS4wLCB1c2UgcmVtLWNhbGMoKVxuQGZ1bmN0aW9uIGVtQ2FsYygkdmFsdWVzKXtcbiAgQHJldHVybiByZW0tY2FsYygkdmFsdWVzKTtcbn1cblxuLy8gT0xEIEVNIENBTENcbi8vIERlcHJlY2F0ZWQ6IFdlJ2xsIGRyb3Agc3VwcG9ydCBmb3IgdGhpcyBpbiA1LjEuMCwgdXNlIHJlbS1jYWxjKClcbkBmdW5jdGlvbiBlbS1jYWxjKCR2YWx1ZXMpe1xuICBAcmV0dXJuIHJlbS1jYWxjKCR2YWx1ZXMpO1xufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vXG4vLyBGT1VOREFUSU9OIFNFVFRJTkdTXG4vL1xuXG4vLyBUaGlzIGlzIHRoZSBkZWZhdWx0IGh0bWwgYW5kIGJvZHkgZm9udC1zaXplIGZvciB0aGUgYmFzZSByZW0gdmFsdWUuXG4vLyAkcmVtLWJhc2U6IDE2cHg7XG5cbi8vIEFsbG93cyB0aGUgdXNlIG9mIHJlbS1jYWxjKCkgb3IgbG93ZXItYm91bmQoKSBpbiB5b3VyIHNldHRpbmdzXG5AaW1wb3J0IFwiZm91bmRhdGlvbi9mdW5jdGlvbnNcIjtcblxuLy8gJGV4cGVyaW1lbnRhbDogdHJ1ZTtcblxuLy8gVGhlIGRlZmF1bHQgZm9udC1zaXplIGlzIHNldCB0byAxMDAlIG9mIHRoZSBicm93c2VyIHN0eWxlIHNoZWV0ICh1c3VhbGx5IDE2cHgpXG4vLyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGJyb3dzZXItYmFzZWQgdGV4dCB6b29tIG9yIHVzZXItc2V0IGRlZmF1bHRzLlxuXG4vLyBTaW5jZSB0aGUgdHlwaWNhbCBkZWZhdWx0IGJyb3dzZXIgZm9udC1zaXplIGlzIDE2cHgsIHRoYXQgbWFrZXMgdGhlIGNhbGN1bGF0aW9uIGZvciBncmlkIHNpemUuXG4vLyBJZiB5b3Ugd2FudCB5b3VyIGJhc2UgZm9udC1zaXplIHRvIGJlIGRpZmZlcmVudCBhbmQgbm90IGhhdmUgaXQgYWZmZWN0IHRoZSBncmlkIGJyZWFrcG9pbnRzLFxuLy8gc2V0ICRyZW0tYmFzZSB0byAkYmFzZS1mb250LXNpemUgYW5kIG1ha2Ugc3VyZSAkYmFzZS1mb250LXNpemUgaXMgYSBweCB2YWx1ZS5cbi8vICRiYXNlLWZvbnQtc2l6ZTogMTAwJTtcblxuLy8gVGhlICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDEwMCUgd2hpbGUgJGJhc2UtZm9udC1zaXplIGlzIDE1MCVcbi8vICRiYXNlLWxpbmUtaGVpZ2h0OiAxNTAlO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdoZXRoZXIgb3Igbm90IENTUyBjbGFzc2VzIGNvbWUgdGhyb3VnaCBpbiB0aGUgZ2VtIGZpbGVzLlxuLy8gJGluY2x1ZGUtaHRtbC1jbGFzc2VzOiB0cnVlO1xuLy8gJGluY2x1ZGUtcHJpbnQtc3R5bGVzOiB0cnVlO1xuLy8gJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBHcmlkXG5cbi8vICRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG4vLyAkaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2U7XG5cbi8vICRyb3ctd2lkdGg6IHJlbS1jYWxjKDEwMDApO1xuLy8gJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKTtcbi8vICR0b3RhbC1jb2x1bW5zOiAxMjtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBnbG9iYWwgc3R5bGVzXG4vLyAkYm9keS1iZzogI2ZmZjtcbi8vICRib2R5LWZvbnQtY29sb3I6ICMyMjI7XG4vLyAkYm9keS1mb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuLy8gJGJvZHktZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xuLy8gJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3Ncbi8vICR0ZXh0LWRpcmVjdGlvbjogbHRyO1xuLy8gJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQ7XG4vLyAkZGVmYXVsdC1mbG9hdDogbGVmdDtcblxuLy8gV2UgdXNlIHRoZXNlIGFzIGRlZmF1bHQgY29sb3JzIHRocm91Z2hvdXRcbi8vICRwcmltYXJ5LWNvbG9yOiAjMDA4Q0JBO1xuLy8gJHNlY29uZGFyeS1jb2xvcjogI2U3ZTdlNztcbi8vICRhbGVydC1jb2xvcjogI2YwNDEyNDtcbi8vICRzdWNjZXNzLWNvbG9yOiAjNDNBQzZBO1xuLy8gJHdhcm5pbmctY29sb3I6ICNmMDhhMjQ7XG4vLyAkaW5mby1jb2xvcjogI2EwZDNlODtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2Ugc3VyZSBib3JkZXIgcmFkaXVzIG1hdGNoZXMgdW5sZXNzIHdlIHdhbnQgaXQgZGlmZmVyZW50LlxuLy8gJGdsb2JhbC1yYWRpdXM6IDNweDtcbi8vICRnbG9iYWwtcm91bmRlZDogMTAwMHB4O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBpbnNldCBzaGFkb3cgc2hpbnkgZWRnZXMgYW5kIGRlcHJlc3Npb25zLlxuLy8gJHNoaW55LWVkZ2Utc2l6ZTogMCAxcHggMDtcbi8vICRzaGlueS1lZGdlLWNvbG9yOiByZ2JhKCNmZmYsIC41KTtcbi8vICRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgjMDAwLCAuMik7XG5cbi8vIE1lZGlhIFF1ZXJ5IFJhbmdlc1xuLy8gJHNtYWxsLXJhbmdlOiAoMGVtLCA0MGVtKTtcbi8vICRtZWRpdW0tcmFuZ2U6ICg0MC4wNjNlbSwgNjRlbSk7XG4vLyAkbGFyZ2UtcmFuZ2U6ICg2NC4wNjNlbSwgOTBlbSk7XG4vLyAkeGxhcmdlLXJhbmdlOiAoOTAuMDYzZW0sIDEyMGVtKTtcbi8vICR4eGxhcmdlLXJhbmdlOiAoMTIwLjA2M2VtKTtcblxuLy8gJHNjcmVlbjogXCJvbmx5IHNjcmVlblwiO1xuXG4vLyAkbGFuZHNjYXBlOiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiO1xuLy8gJHBvcnRyYWl0OiBcIiN7JHNjcmVlbn0gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXCI7XG5cbi8vICRzbWFsbC11cDogJHNjcmVlbjtcbi8vICRzbWFsbC1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtYXgtd2lkdGg6ICN7dXBwZXItYm91bmQoJHNtYWxsLXJhbmdlKX0pXCI7XG5cbi8vICRtZWRpdW0tdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIjtcbi8vICRtZWRpdW0tb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIjtcblxuLy8gJGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIjtcbi8vICRsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpfSlcIjtcblxuLy8gJHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiO1xuLy8gJHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KVwiO1xuXG4vLyAkeHhsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIjtcbi8vICR4eGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSlcIjtcblxuLy8gTGVnYWN5XG4vLyAkc21hbGw6ICRtZWRpdW0tdXA7XG4vLyAkbWVkaXVtOiAkbWVkaXVtLXVwO1xuLy8gJGxhcmdlOiAkbGFyZ2UtdXA7XG5cbi8vV2UgdXNlIHRoaXMgYXMgY3Vyc29ycyB2YWx1ZXMgZm9yIGVuYWJsaW5nIHRoZSBvcHRpb24gb2YgaGF2aW5nIGN1c3RvbSBjdXJzb3JzIGluIHRoZSB3aG9sZSBzaXRlJ3Mgc3R5bGVzaGVldFxuLy8gJGN1cnNvci1jcm9zc2hhaXItdmFsdWU6IGNyb3NzaGFpcjtcbi8vICRjdXJzb3ItZGVmYXVsdC12YWx1ZTogZGVmYXVsdDtcbi8vICRjdXJzb3ItcG9pbnRlci12YWx1ZTogcG9pbnRlcjtcbi8vICRjdXJzb3ItaGVscC12YWx1ZTogaGVscDtcbi8vICRjdXJzb3ItdGV4dC12YWx1ZTogdGV4dDtcblxuLy9cbi8vIFRZUE9HUkFQSFlcbi8vXG5cbi8vICRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xuLy8gJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkaGVhZGVyLWZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAkaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbi8vICRoZWFkZXItZm9udC1jb2xvcjogIzIyMjtcbi8vICRoZWFkZXItbGluZS1oZWlnaHQ6IDEuNDtcbi8vICRoZWFkZXItdG9wLW1hcmdpbjogLjJyZW07XG4vLyAkaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtO1xuLy8gJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzaXplc1xuLy8gJGgxLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDQpO1xuLy8gJGgyLWZvbnQtc2l6ZTogcmVtLWNhbGMoMzcpO1xuLy8gJGgzLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjcpO1xuLy8gJGg0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMjMpO1xuLy8gJGg1LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuLy8gJGg2LWZvbnQtc2l6ZTogMXJlbTtcblxuLy8gVGhlc2UgY29udHJvbCBob3cgc3ViaGVhZGVycyBhcmUgc3R5bGVkLlxuLy8gJHN1YmhlYWRlci1saW5lLWhlaWdodDogMS40O1xuLy8gJHN1YmhlYWRlci1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4vLyAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAzMDA7XG4vLyAkc3ViaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtO1xuLy8gJHN1YmhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbTtcblxuLy8gQSBnZW5lcmFsIDxzbWFsbD4gc3R5bGluZ1xuLy8gJHNtYWxsLWZvbnQtc2l6ZTogNjAlO1xuLy8gJHNtYWxsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHBhcmFncmFwaHNcbi8vICRwYXJhZ3JhcGgtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4vLyAkcGFyYWdyYXBoLWZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAkcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbTtcbi8vICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IDEuNjtcbi8vICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzU7XG4vLyAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4vLyAkY29kZS1jb2xvcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAtMjclKTtcbi8vICRjb2RlLWZvbnQtZmFtaWx5OiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbi8vICRjb2RlLWZvbnQtd2VpZ2h0OiBib2xkO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYW5jaG9yc1xuLy8gJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4vLyAkYW5jaG9yLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJGFuY2hvci1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgPGhyPiBlbGVtZW50XG4vLyAkaHItYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkaHItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRoci1ib3JkZXItY29sb3I6ICNkZGQ7XG4vLyAkaHItbWFyZ2luOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsaXN0c1xuLy8gJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4vLyAkbGlzdC1zaWRlLW1hcmdpbjogMS4xcmVtO1xuLy8gJGxpc3Qtb3JkZXJlZC1zaWRlLW1hcmdpbjogMS40cmVtO1xuLy8gJGxpc3Qtc2lkZS1tYXJnaW4tbm8tYnVsbGV0OiAwO1xuLy8gJGxpc3QtbmVzdGVkLW1hcmdpbjogcmVtLWNhbGMoMjApO1xuLy8gJGRlZmluaXRpb24tbGlzdC1oZWFkZXItd2VpZ2h0OiBib2xkO1xuLy8gJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTogLjNyZW07XG4vLyAkZGVmaW5pdGlvbi1saXN0LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGJsb2NrcXVvdGVzXG4vLyAkYmxvY2txdW90ZS1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4vLyAkYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuLy8gJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbi8vICRibG9ja3F1b3RlLWNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4vLyAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMjMlKTtcbi8vICRibG9ja3F1b3RlLWNpdGUtbGluay1jb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1mb250LWNvbG9yO1xuXG4vLyBBY3JvbnltIHN0eWxlc1xuLy8gJGFjcm9ueW0tdW5kZXJsaW5lOiAxcHggZG90dGVkICNkZGQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHBhZGRpbmcgYW5kIG1hcmdpblxuLy8gJG1pY3JvZm9ybWF0LXBhZGRpbmc6IHJlbS1jYWxjKDEwIDEyKTtcbi8vICRtaWNyb2Zvcm1hdC1tYXJnaW46IHJlbS1jYWxjKDAgMCAyMCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRtaWNyb2Zvcm1hdC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci1jb2xvcjogI2RkZDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZnVsbCBuYW1lIGZvbnQgc3R5bGVzXG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC13ZWlnaHQ6IGJvbGQ7XG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiBib2xkO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgcGFkZGluZ1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItcGFkZGluZzogcmVtLWNhbGMoMCAxKTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIGZvbnQgc3R5bGVzXG4vLyAkbWljcm9mb3JtYXQtYWJici1mb250LXdlaWdodDogYm9sZDtcbi8vICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjogbm9uZTtcblxuLy8gQWNjb3JkaW9uXG5cbi8vICRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjogI2VmZWZlZiAgO1xuLy8gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC01JSk7XG4vLyAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSk7XG4vLyAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvcjogIzIyMjtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cbi8vICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAkY29sdW1uLWd1dHRlci8yO1xuLy8gJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjogI2ZmZjtcblxuLy8gQWxlcnQgQm94ZXNcblxuLy8gJGluY2x1ZGUtaHRtbC1hbGVydC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWxlcnQgcGFkZGluZy5cbi8vICRhbGVydC1wYWRkaW5nLXRvcDogcmVtLWNhbGMoMTQpO1xuLy8gJGFsZXJ0LXBhZGRpbmctZGVmYXVsdC1mbG9hdDogJGFsZXJ0LXBhZGRpbmctdG9wO1xuLy8gJGFsZXJ0LXBhZGRpbmctb3Bwb3NpdGUtZGlyZWN0aW9uOiAkYWxlcnQtcGFkZGluZy10b3AgKyByZW0tY2FsYygxMCk7XG4vLyAkYWxlcnQtcGFkZGluZy1ib3R0b206ICRhbGVydC1wYWRkaW5nLXRvcDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZS5cbi8vICRhbGVydC1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJGFsZXJ0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuLy8gJGFsZXJ0LWZvbnQtY29sb3I6ICNmZmY7XG4vLyAkYWxlcnQtZm9udC1jb2xvci1hbHQ6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IC02NiUpO1xuXG4vLyBXZSB1c2UgdGhpcyBmb3IgY2xvc2UgaG92ZXIgZWZmZWN0LlxuLy8gJGFsZXJ0LWZ1bmN0aW9uLWZhY3RvcjogLTE0JTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbi8vICRhbGVydC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGFsZXJ0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJGFsZXJ0LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6ICRhbGVydC1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGFsZXJ0LWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBjbG9zZSBidXR0b25zXG4vLyAkYWxlcnQtY2xvc2UtY29sb3I6ICMzMzM7XG4vLyAkYWxlcnQtY2xvc2UtdG9wOiA1MCU7XG4vLyAkYWxlcnQtY2xvc2UtcG9zaXRpb246IHJlbS1jYWxjKDUpO1xuLy8gJGFsZXJ0LWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuLy8gJGFsZXJ0LWNsb3NlLW9wYWNpdHk6IDAuMztcbi8vICRhbGVydC1jbG9zZS1vcGFjaXR5LWhvdmVyOiAwLjU7XG4vLyAkYWxlcnQtY2xvc2UtcGFkZGluZzogOXB4IDZweCA0cHg7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYm9yZGVyIHJhZGl1c1xuLy8gJGFsZXJ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIEJsb2NrIEdyaWRcblxuLy8gJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWF4aW11bSBudW1iZXIgb2YgYmxvY2sgZ3JpZCBlbGVtZW50cyBwZXIgcm93XG4vLyAkYmxvY2stZ3JpZC1lbGVtZW50czogMTI7XG4vLyAkYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmc6IHJlbS1jYWxjKDIwKTtcbi8vICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQ6IHRydWU7XG5cbi8vIEVuYWJsZXMgbWVkaWEgcXVlcmllcyBmb3IgYmxvY2stZ3JpZCBjbGFzc2VzLiBTZXQgdG8gZmFsc2UgaWYgd3JpdGluZyBzZW1hbnRpYyBIVE1MLlxuLy8gJGJsb2NrLWdyaWQtbWVkaWEtcXVlcmllczogdHJ1ZTtcblxuLy8gQnJlYWRjcnVtYnNcblxuLy8gJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBicmVhZGNydW1iIGNvbnRhaW5lci5cbi8vICRjcnVtYi1iZzogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogNTUlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgcGFkZGluZyBhcm91bmQgdGhlIGJyZWFkY3J1bWJzLlxuLy8gJGNydW1iLXBhZGRpbmc6IHJlbS1jYWxjKDkgMTQgOSk7XG4vLyAkY3J1bWItc2lkZS1wYWRkaW5nOiByZW0tY2FsYygxMik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXMuXG4vLyAkY3J1bWItZnVuY3Rpb24tZmFjdG9yOiAtMTAlO1xuLy8gJGNydW1iLWJvcmRlci1zaXplOiAxcHg7XG4vLyAkY3J1bWItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRjcnVtYi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjcnVtYi1iZywgJGxpZ2h0bmVzczogJGNydW1iLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkY3J1bWItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB2YXJpb3VzIHRleHQgc3R5bGVzIGZvciBicmVhZGNydW1icy5cbi8vICRjcnVtYi1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbi8vICRjcnVtYi1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRjcnVtYi1mb250LWNvbG9yLWN1cnJlbnQ6ICMzMzM7XG4vLyAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTogIzk5OTtcbi8vICRjcnVtYi1mb250LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJGNydW1iLWxpbmstZGVjb3I6IHVuZGVybGluZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHNsYXNoIGJldHdlZW4gYnJlYWRjcnVtYnNcbi8vICRjcnVtYi1zbGFzaC1jb2xvcjogI2FhYTtcbi8vICRjcnVtYi1zbGFzaDogXCIvXCI7XG5cbi8vXG4vLyBCVVRUT05TXG4vL1xuXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zLlxuLy8gJGJ1dHRvbi10bnk6IHJlbS1jYWxjKDEwKTtcbi8vICRidXR0b24tc21sOiByZW0tY2FsYygxNCk7XG4vLyAkYnV0dG9uLW1lZDogcmVtLWNhbGMoMTYpO1xuLy8gJGJ1dHRvbi1scmc6IHJlbS1jYWxjKDE4KTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGlzcGxheSBwcm9wZXJ0eS5cbi8vICRidXR0b24tZGlzcGxheTogaW5saW5lLWJsb2NrO1xuLy8gJGJ1dHRvbi1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiB0ZXh0IHN0eWxlcy5cbi8vICRidXR0b24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuLy8gJGJ1dHRvbi1mb250LWNvbG9yOiAjZmZmO1xuLy8gJGJ1dHRvbi1mb250LWNvbG9yLWFsdDogIzMzMztcbi8vICRidXR0b24tZm9udC10bnk6IHJlbS1jYWxjKDExKTtcbi8vICRidXR0b24tZm9udC1zbWw6IHJlbS1jYWxjKDEzKTtcbi8vICRidXR0b24tZm9udC1tZWQ6IHJlbS1jYWxjKDE2KTtcbi8vICRidXR0b24tZm9udC1scmc6IHJlbS1jYWxjKDIwKTtcbi8vICRidXR0b24tZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICRidXR0b24tZm9udC1hbGlnbjogY2VudGVyO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2YXJpb3VzIGhvdmVyIGVmZmVjdHMuXG4vLyAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogNSU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiBib3JkZXIgc3R5bGVzLlxuLy8gJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRidXR0b24tYm9yZGVyLXN0eWxlOiBzb2xpZDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXG4vLyAkYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkYnV0dG9uLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCBkZWZhdWx0IG9wYWNpdHkgZm9yIGRpc2FibGVkIGJ1dHRvbnMuXG4vLyAkYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk6IDAuNztcblxuLy8gQnV0dG9uIEdyb3Vwc1xuXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFNldHMgdGhlIG1hcmdpbiBmb3IgdGhlIHJpZ2h0IHNpZGUgYnkgZGVmYXVsdCwgYW5kIHRoZSBsZWZ0IG1hcmdpbiBpZiByaWdodC10by1sZWZ0IGRpcmVjdGlvbiBpcyB1c2VkXG4vLyAkYnV0dG9uLWJhci1tYXJnaW4tb3Bwb3NpdGU6IHJlbS1jYWxjKDEwKTtcbi8vICRidXR0b24tZ3JvdXAtYm9yZGVyLXdpZHRoOiAxcHg7XG5cbi8vIENsZWFyaW5nXG5cbi8vICRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgcGFydHMgb2YgQ2xlYXJpbmcuXG4vLyAkY2xlYXJpbmctYmc6ICMzMzM7XG4vLyAkY2xlYXJpbmctY2FwdGlvbi1iZzogJGNsZWFyaW5nLWJnO1xuLy8gJGNsZWFyaW5nLWNhcm91c2VsLWJnOiByZ2JhICg1MSw1MSw1MSwwLjgpO1xuLy8gJGNsZWFyaW5nLWltZy1iZzogJGNsZWFyaW5nLWJnO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGNsb3NlIGJ1dHRvblxuLy8gJGNsZWFyaW5nLWNsb3NlLWNvbG9yOiAjY2NjO1xuLy8gJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgYXJyb3dzXG4vLyAkY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweDtcbi8vICRjbGVhcmluZy1hcnJvdy1jb2xvcjogJGNsZWFyaW5nLWNsb3NlLWNvbG9yO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcbi8vICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I6ICNjY2M7XG4vLyAkY2xlYXJpbmctY2FwdGlvbi1mb250LXNpemU6IDAuODc1ZW07XG4vLyAkY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2UgdGhlIGltYWdlIGFuZCBjYXJvdXNlbCBoZWlnaHQgYW5kIHN0eWxlXG4vLyAkY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JTtcbi8vICRjbGVhcmluZy1jYXJvdXNlbC1oZWlnaHQ6IDEyMHB4O1xuLy8gJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoOiAxMjBweDtcbi8vICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KTtcblxuLy8gRHJvcGRvd25cblxuLy8gJGluY2x1ZGUtaHRtbC1kcm9wZG93bi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyBoZWlnaHQgYW5kIHdpZHRoIHN0eWxlcy5cbi8vICRmLWRyb3Bkb3duLW1heC13aWR0aDogMjAwcHg7XG4vLyAkZi1kcm9wZG93bi1oZWlnaHQ6IGF1dG87XG4vLyAkZi1kcm9wZG93bi1tYXgtaGVpZ2h0OiBub25lO1xuLy8gJGYtZHJvcGRvd24tbWFyZ2luLXRvcDogMnB4O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yXG4vLyAkZi1kcm9wZG93bi1iZzogI2ZmZjtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBib3JkZXIgc3R5bGVzIGZvciBkcm9wZG93bnMuXG4vLyAkZi1kcm9wZG93bi1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkZi1kcm9wZG93bi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC0yMCUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHRyaWFuZ2xlIHBpcC5cbi8vICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemU6IDZweDtcbi8vICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yOiAjZmZmO1xuLy8gJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ6IDEwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHN0eWxlcyBmb3IgdGhlIGxpc3QgZWxlbWVudHMuXG4vLyAkZi1kcm9wZG93bi1saXN0LXN0eWxlOiBub25lO1xuLy8gJGYtZHJvcGRvd24tZm9udC1jb2xvcjogIzU1NTtcbi8vICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJGYtZHJvcGRvd24tbGlzdC1wYWRkaW5nOiByZW0tY2FsYyg1LCAxMCk7XG4vLyAkZi1kcm9wZG93bi1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuLy8gJGYtZHJvcGRvd24tbGlzdC1ob3Zlci1iZzogI2VlZWVlZSAgO1xuLy8gJGRyb3Bkb3duLW1vYmlsZS1kZWZhdWx0LWZsb2F0OiAwO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBzdHlsZXMgZm9yIHdoZW4gdGhlIGRyb3Bkb3duIGhhcyBjdXN0b20gY29udGVudC5cbi8vICRmLWRyb3Bkb3duLWNvbnRlbnQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuXG4vLyBEcm9wZG93biBCdXR0b25zXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgY29sb3Igb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1jb2xvcjogI2ZmZjtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yLWFsdDogIzMzMztcblxuLy8gJGJ1dHRvbi1waXAtdG55OiByZW0tY2FsYyg2KTtcbi8vICRidXR0b24tcGlwLXNtbDogcmVtLWNhbGMoNyk7XG4vLyAkYnV0dG9uLXBpcC1tZWQ6IHJlbS1jYWxjKDkpO1xuLy8gJGJ1dHRvbi1waXAtbHJnOiByZW0tY2FsYygxMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aW55IGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDc7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXRueTogJGJ1dHRvbi1waXAtdG55O1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAzO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXRueTogLSRidXR0b24tcGlwLXRueSAvIDIgKyByZW0tY2FsYygxKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHNtYWxsIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDc7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXNtbDogJGJ1dHRvbi1waXAtc21sO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiAzO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXNtbDogLSRidXR0b24tcGlwLXNtbCAvIDIgKyByZW0tY2FsYygxKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIG1lZGl1bSBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA2ICsgcmVtLWNhbGMoMyk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLW1lZDogJGJ1dHRvbi1waXAtbWVkIC0gcmVtLWNhbGMoMyk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDIuNTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1tZWQ6IC0kYnV0dG9uLXBpcC1tZWQgLyAyICsgcmVtLWNhbGMoMik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsYXJnZSBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbHJnOiAkYnV0dG9uLXBpcC1scmcgKiA1ICsgcmVtLWNhbGMoMyk7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNik7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1scmc6ICRidXR0b24tcGlwLWxyZyAqIDIuNTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1scmc6IC0kYnV0dG9uLXBpcC1scmcgLyAyICsgcmVtLWNhbGMoMyk7XG5cbi8vIEZsZXggVmlkZW9cblxuLy8gJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZpZGVvIGNvbnRhaW5lciBwYWRkaW5nIGFuZCBtYXJnaW5zXG4vLyAkZmxleC12aWRlby1wYWRkaW5nLXRvcDogcmVtLWNhbGMoMjUpO1xuLy8gJGZsZXgtdmlkZW8tcGFkZGluZy1ib3R0b206IDY3LjUlO1xuLy8gJGZsZXgtdmlkZW8tbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdpZGVzY3JlZW4gYm90dG9tIHBhZGRpbmdcbi8vICRmbGV4LXZpZGVvLXdpZGVzY3JlZW4tcGFkZGluZy1ib3R0b206IDU3LjI1JTtcblxuLy8gRm9ybXNcblxuLy8gJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYXNlIGZvciBsb3RzIG9mIGZvcm0gc3BhY2luZyBhbmQgcG9zaXRpb25pbmcgc3R5bGVzXG4vLyAkZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzIGluIGRpZmZlcmVudCB3YXlzXG4vLyAkZm9ybS1sYWJlbC1wb2ludGVyOiBwb2ludGVyO1xuLy8gJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkZm9ybS1sYWJlbC1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuNTtcbi8vICRmb3JtLWxhYmVsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCMwMDAsICRsaWdodG5lc3M6IDMwJSk7XG4vLyAkZm9ybS1sYWJlbC1ib3R0b20tbWFyZ2luOiAwO1xuLy8gJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuLy8gJGlucHV0LWZvbnQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7XG4vLyAkaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkaW5wdXQtYmctY29sb3I6ICNmZmY7XG4vLyAkaW5wdXQtZm9jdXMtYmctY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC0yJSk7XG4vLyAkaW5wdXQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtMjAlKTtcbi8vICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC00MCUpO1xuLy8gJGlucHV0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkaW5wdXQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkaW5wdXQtZGlzYWJsZWQtYmc6ICNkZGQ7XG4vLyAkaW5wdXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKTtcbi8vICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0OiB0cnVlO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cbi8vICRmaWVsZHNldC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGZpZWxkc2V0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogI2RkZDtcbi8vICRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAkZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsZWdlbmRzIHdoZW4geW91IHVzZSB0aGVtXG4vLyAkbGVnZW5kLWJnOiAjZmZmO1xuLy8gJGxlZ2VuZC1mb250LXdlaWdodDogYm9sZDtcbi8vICRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcbi8vICRpbnB1dC1wcmVmaXgtYmc6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC01JSk7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogLTIwJSk7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci1zaXplOiAxcHg7XG4vLyAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZDtcbi8vICRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c6IGhpZGRlbjtcbi8vICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjogIzMzMztcbi8vICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ6ICNmZmY7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZXJyb3Igc3RhdGVzIGZvciBpbnB1dHMgYW5kIGxhYmVsc1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZzogcmVtLWNhbGMoNiA5IDkpO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtdG9wOiAtMXB4O1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogI2ZmZjtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAjMzMzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgZ2xvd2luZyBlZmZlY3Qgb2YgaW5wdXRzIHdoZW4gZm9jdXNlZFxuLy8gJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogMC40NXM7XG4vLyAkZ2xvd2luZy1lZmZlY3QtY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG5cbi8vIFNlbGVjdCB2YXJpYWJsZXNcbi8vICRzZWxlY3QtYmctY29sb3I6ICNmYWZhZmE7XG5cbi8vIElubGluZSBMaXN0c1xuXG4vLyAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXG4vLyAkaW5saW5lLWxpc3QtdG9wLW1hcmdpbjogMDtcbi8vICRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW46IDA7XG4vLyAkaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpO1xuLy8gJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luOiByZW0tY2FsYygtMjIpO1xuXG4vLyAkaW5saW5lLWxpc3QtcGFkZGluZzogMDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgb3ZlcmZsb3cgb2YgdGhlIGlubGluZSBsaXN0LlxuLy8gJGlubGluZS1saXN0LW92ZXJmbG93OiBoaWRkZW47XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGxpc3QgaXRlbXNcbi8vICRpbmxpbmUtbGlzdC1kaXNwbGF5OiBibG9jaztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhbnkgZWxtZW50cyB3aXRoaW4gbGlzdCBpdGVtc1xuLy8gJGlubGluZS1saXN0LWNoaWxkcmVuLWRpc3BsYXk6IGJsb2NrO1xuXG4vLyBKb3lyaWRlXG5cbi8vICRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIENvbnRyb2xsaW5nIGRlZmF1bHQgSm95cmlkZSBzdHlsZXNcbi8vICRqb3lyaWRlLXRpcC1iZzogIzMzMztcbi8vICRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOiAzMDBweDtcbi8vICRqb3lyaWRlLXRpcC1wYWRkaW5nOiByZW0tY2FsYygxOCAyMCAyNCk7XG4vLyAkam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggIzU1NTtcbi8vICRqb3lyaWRlLXRpcC1yYWRpdXM6IDRweDtcbi8vICRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ6IDIycHg7XG5cbi8vIEhlcmUsIHdlJ3JlIHNldHRpbmcgdGhlIHRpcCBkb250IHN0eWxlc1xuLy8gJGpveXJpZGUtdGlwLWZvbnQtY29sb3I6ICNmZmY7XG4vLyAkam95cmlkZS10aXAtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkam95cmlkZS10aXAtaGVhZGVyLXdlaWdodDogYm9sZDtcblxuLy8gVGhpcyBjaGFuZ2VzIHRoZSBudWIgc2l6ZVxuLy8gJGpveXJpZGUtdGlwLW51Yi1zaXplOiAxMHB4O1xuXG4vLyBUaGlzIGFkanVzdHMgdGhlIHN0eWxlcyBmb3IgdGhlIHRpbWVyIHdoZW4gaXRzIGVuYWJsZWRcbi8vICRqb3lyaWRlLXRpcC10aW1lci13aWR0aDogNTBweDtcbi8vICRqb3lyaWRlLXRpcC10aW1lci1oZWlnaHQ6IDNweDtcbi8vICRqb3lyaWRlLXRpcC10aW1lci1jb2xvcjogIzY2NjtcblxuLy8gVGhpcyBjaGFuZ2VzIHVwIHRoZSBzdHlsZXMgZm9yIHRoZSBjbG9zZSBidXR0b25cbi8vICRqb3lyaWRlLXRpcC1jbG9zZS1jb2xvcjogIzc3Nztcbi8vICRqb3lyaWRlLXRpcC1jbG9zZS1zaXplOiAyNHB4O1xuLy8gJGpveXJpZGUtdGlwLWNsb3NlLXdlaWdodDogbm9ybWFsO1xuXG4vLyBXaGVuIEpveXJpZGUgaXMgZmlsbGluZyB0aGUgc2NyZWVuLCB3ZSB1c2UgdGhpcyBzdHlsZSBmb3IgdGhlIGJnXG4vLyAkam95cmlkZS1zY3JlZW5maWxsOiByZ2JhKDAsMCwwLDAuNSk7XG5cbi8vIEtleXN0cm9rZXNcblxuLy8gJGluY2x1ZGUtaHRtbC1rZXlzdHJva2UtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0ZXh0IHN0eWxlcy5cbi8vICRrZXlzdHJva2UtZm9udDogXCJDb25zb2xhc1wiLCBcIk1lbmxvXCIsIFwiQ291cmllclwiLCBtb25vc3BhY2U7XG4vLyAka2V5c3Ryb2tlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJGtleXN0cm9rZS1mb250LWNvbG9yOiAjMjIyO1xuLy8gJGtleXN0cm9rZS1mb250LWNvbG9yLWFsdDogI2ZmZjtcbi8vICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yOiAtNyU7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wga2V5c3Ryb2tlIHBhZGRpbmcuXG4vLyAka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHN0eWxlcy5cbi8vICRrZXlzdHJva2UtYmc6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAka2V5c3Ryb2tlLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGtleXN0cm9rZS1iZywgJGxpZ2h0bmVzczogJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyBMYWJlbHNcblxuLy8gJGluY2x1ZGUtaHRtbC1sYWJlbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzXG4vLyAkbGFiZWwtcGFkZGluZzogcmVtLWNhbGMoNCA4IDYpO1xuLy8gJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWwgdGV4dFxuLy8gJGxhYmVsLWZvbnQtc2l6aW5nOiByZW0tY2FsYygxMSk7XG4vLyAkbGFiZWwtZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICRsYWJlbC1mb250LWNvbG9yOiAjMzMzO1xuLy8gJGxhYmVsLWZvbnQtY29sb3ItYWx0OiAjZmZmO1xuLy8gJGxhYmVsLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblxuLy8gTWFnZWxsYW5cblxuLy8gJGluY2x1ZGUtaHRtbC1tYWdlbGxhbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vICRtYWdlbGxhbi1iZzogI2ZmZjtcbi8vICRtYWdlbGxhbi1wYWRkaW5nOiAxMHB4O1xuXG4vLyBPZmYtY2FudmFzXG5cbi8vICR0YWJiYXItYmc6ICMzMzM7XG4vLyAkdGFiYmFyLWhlaWdodDogcmVtLWNhbGMoNDUpO1xuLy8gJHRhYmJhci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4vLyAkdGFiYmFyLWNvbG9yOiAjRkZGO1xuLy8gJHRhYmJhci1taWRkbGUtcGFkZGluZzogMCByZW0tY2FsYygxMCk7XG5cbi8vIE9mZiBDYW52YXMgRGl2aWRlciBTdHlsZXNcbi8vICR0YWJiYXItcmlnaHQtc2VjdGlvbi1ib3JkZXI6IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAxMyUpO1xuLy8gJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSk7XG5cbi8vIE9mZiBDYW52YXMgVGFiIEJhciBIZWFkZXJzXG4vLyAkdGFiYmFyLWhlYWRlci1jb2xvcjogI0ZGRjtcbi8vICR0YWJiYXItaGVhZGVyLXdlaWdodDogYm9sZDtcbi8vICR0YWJiYXItaGVhZGVyLWxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbi8vICR0YWJiYXItaGVhZGVyLW1hcmdpbjogMDtcblxuLy8gT2ZmIENhbnZhcyBNZW51IFZhcmlhYmxlc1xuLy8gJG9mZi1jYW52YXMtd2lkdGg6IDI1MHB4O1xuLy8gJG9mZi1jYW52YXMtYmc6ICMzMzM7XG5cbi8vIE9mZiBDYW52YXMgTWVudSBMaXN0IFZhcmlhYmxlc1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtcGFkZGluZzogMC4zcmVtIHJlbS1jYWxjKDE1KTtcbi8vICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yOiAjOTk5O1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0OiBib2xkO1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtYmc6ICM0NDQ7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoIzQ0NCwgJGxpZ2h0bmVzczogMTQlKTtcbi8vICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b206IG5vbmU7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW46MDtcbi8vICRvZmYtY2FudmFzLWxpbmstcGFkZGluZzogcmVtLWNhbGMoMTAsIDE1KTtcbi8vICRvZmYtY2FudmFzLWxpbmstY29sb3I6IHJnYmEoI0ZGRiwgMC43KTtcbi8vICRvZmYtY2FudmFzLWxpbmstYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWJnLCAkbGlnaHRuZXNzOiAtMjUlKTtcblxuLy8gT2ZmIENhbnZhcyBNZW51IEljb24gVmFyaWFibGVzXG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjogI0ZGRjtcbi8vICR0YWJiYXItbWVudS1pY29uLWhvdmVyOiBzY2FsZS1jb2xvcigkdGFiYmFyLW1lbnUtaWNvbi1jb2xvciwgJGxpZ2h0bmVzczogLTMwJSk7XG5cbi8vICR0YWJiYXItbWVudS1pY29uLXRleHQtaW5kZW50OiByZW0tY2FsYygzNSk7XG4vLyAkdGFiYmFyLW1lbnUtaWNvbi13aWR0aDogJHRhYmJhci1oZWlnaHQ7XG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuLy8gJHRhYmJhci1tZW51LWljb24tbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMzKTtcbi8vICR0YWJiYXItbWVudS1pY29uLXBhZGRpbmc6IDA7XG5cbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24td2lkdGg6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24tbGVmdDogZmFsc2U7XG4vLyAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcDogZmFsc2U7XG4vLyAkdGFwYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzczogMXB4O1xuLy8gJHRhcGJhci1oYW1idXJnZXItaWNvbi1nYXA6IDZweDtcblxuLy8gT2ZmIENhbnZhcyBCYWNrLUxpbmsgT3ZlcmxheVxuLy8gJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XG4vLyAkb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjogcG9pbnRlcjtcbi8vICRvZmYtY2FudmFzLW92ZXJsYXktYm94LXNoYWRvdzogLTRweCAwIDRweCByZ2JhKCMwMDAsIDAuNSksIDRweCAwIDRweCByZ2JhKCMwMDAsIDAuNSk7XG4vLyAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoI0ZGRiwgMC4yKTtcbi8vICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgjRkZGLCAwLjA1KTtcblxuLy8gVHJhbnNpdGlvbiBWYXJpYWJsZXNcbi8vICRtZW51LXNsaWRlOiBcInRyYW5zZm9ybSA1MDBtcyBlYXNlXCI7XG5cbi8vIE9yYml0XG5cbi8vICRpbmNsdWRlLWh0bWwtb3JiaXQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgY2FwdGlvbiBzdHlsZXNcbi8vICRvcmJpdC1jb250YWluZXItYmc6IG5vbmU7XG4vLyAkb3JiaXQtY2FwdGlvbi1iZzogcmdiYSg1MSw1MSw1MSwgMC44KTtcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICNmZmY7XG4vLyAkb3JiaXQtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uOiBcImJvdHRvbVwiOyAvLyBTdXBwb3J0ZWQgdmFsdWVzOiBcImJvdHRvbVwiLCBcInVuZGVyXCJcbi8vICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDEwIDE0KTtcbi8vICRvcmJpdC1jYXB0aW9uLWhlaWdodDogYXV0bztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGxlZnQvcmlnaHQgbmF2IHN0eWxlc1xuLy8gJG9yYml0LW5hdi1iZzogbm9uZTtcbi8vICRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKTtcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICNmZmY7XG4vLyAkb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyOiAjZmZmO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgdGltZXIgc3R5bGVzXG4vLyAkb3JiaXQtdGltZXItYmc6IHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtcbi8vICRvcmJpdC10aW1lci1zaG93LXByb2dyZXNzLWJhcjogdHJ1ZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJ1bGxldCBuYXYgc3R5bGVzXG4vLyAkb3JiaXQtYnVsbGV0LW5hdi1jb2xvcjogI2NjYztcbi8vICRvcmJpdC1idWxsZXQtbmF2LWNvbG9yLWFjdGl2ZTogIzk5OTtcbi8vICRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYyg5KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2xzIHRoZSBzdHlsZSBvZiBzbGlkZSBudW1iZXJzXG4vLyAkb3JiaXQtc2xpZGUtbnVtYmVyLWJnOiByZ2JhKDAsMCwwLDApO1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1mb250LWNvbG9yOiAjZmZmO1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KTtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbi8vICR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCI7XG4vLyAkcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiO1xuXG4vLyBQYWdpbmF0aW9uXG5cbi8vICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHBhZ2luYXRpb24gY29udGFpbmVyXG4vLyAkcGFnaW5hdGlvbi1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbi8vICRwYWdpbmF0aW9uLW1hcmdpbjogcmVtLWNhbGMoLTUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBsaXN0LWl0ZW0gcHJvcGVydGllc1xuLy8gJHBhZ2luYXRpb24tbGktZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuLy8gJHBhZ2luYXRpb24tbGktaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4vLyAkcGFnaW5hdGlvbi1saS1mb250LWNvbG9yOiAjMjIyO1xuLy8gJHBhZ2luYXRpb24tbGktZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkcGFnaW5hdGlvbi1saS1tYXJnaW46IHJlbS1jYWxjKDUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgZm9yIHRoZSBwYWdpbmF0aW9uIGFuY2hvciBsaW5rc1xuLy8gJHBhZ2luYXRpb24tbGluay1wYWQ6IHJlbS1jYWxjKDEgMTAgMSk7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWZvbnQtY29sb3I6ICM5OTk7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogLTEwJSk7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgZGlzYWJsZWQgYW5jaG9yIGxpbmtzXG4vLyAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWN1cnNvcjogZGVmYXVsdDtcbi8vICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtZm9udC1jb2xvcjogIzk5OTtcbi8vICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtYmctYWN0aXZlOiB0cmFuc3BhcmVudDtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciBjdXJyZW50bHkgc2VsZWN0ZWQgYW5jaG9yIGxpbmtzXG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC1jb2xvcjogI2ZmZjtcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDogYm9sZDtcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1jdXJzb3I6IGRlZmF1bHQ7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYWN0aXZlLWJnOiAkcHJpbWFyeS1jb2xvcjtcblxuLy8gUGFuZWxzXG5cbi8vICRpbmNsdWRlLWh0bWwtcGFuZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHN0eWxlc1xuLy8gJHBhbmVsLWJnOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtNSUpO1xuLy8gJHBhbmVsLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkcGFuZWwtYm9yZGVyLXNpemU6IDFweDtcblxuLy8gV2UgdXNlIHRoaXMgJSB0byBjb250cm9sIGhvdyBtdWNoIHdlIGRhcmtlbiB0aGluZ3Mgb24gaG92ZXJcbi8vICRwYW5lbC1mdW5jdGlvbi1mYWN0b3I6IC0xMSU7XG4vLyAkcGFuZWwtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkcGFuZWwtYmcsICRsaWdodG5lc3M6ICRwYW5lbC1mdW5jdGlvbi1mYWN0b3IpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgaW5uZXIgcGFkZGluZyBhbmQgYm90dG9tIG1hcmdpblxuLy8gJHBhbmVsLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbi8vICRwYW5lbC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgZGVmYXVsdCBmb250IGNvbG9yc1xuLy8gJHBhbmVsLWZvbnQtY29sb3I6ICMzMzM7XG4vLyAkcGFuZWwtZm9udC1jb2xvci1hbHQ6ICNmZmY7XG5cbi8vICRwYW5lbC1oZWFkZXItYWRqdXN0OiB0cnVlO1xuLy8gJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbi8vIFByaWNpbmcgVGFibGVzXG5cbi8vICRpbmNsdWRlLWh0bWwtcHJpY2luZy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBjb2xvclxuLy8gJHByaWNlLXRhYmxlLWJvcmRlcjogc29saWQgMXB4ICNkZGQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJvdHRvbSBtYXJnaW4gb2YgdGhlIHByaWNpbmcgdGFibGVcbi8vICRwcmljZS10YWJsZS1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSB0aXRsZSBzdHlsZXNcbi8vICRwcmljZS10aXRsZS1iZzogIzMzMztcbi8vICRwcmljZS10aXRsZS1wYWRkaW5nOiByZW0tY2FsYygxNSAyMCk7XG4vLyAkcHJpY2UtdGl0bGUtYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS10aXRsZS1jb2xvcjogI2VlZTtcbi8vICRwcmljZS10aXRsZS13ZWlnaHQ6IG5vcm1hbDtcbi8vICRwcmljZS10aXRsZS1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkcHJpY2UtdGl0bGUtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgcHJpY2Ugc3R5bGVzXG4vLyAkcHJpY2UtbW9uZXktYmc6ICNmNmY2ZjYgIDtcbi8vICRwcmljZS1tb25leS1wYWRkaW5nOiByZW0tY2FsYygxNSAyMCk7XG4vLyAkcHJpY2UtbW9uZXktYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1tb25leS1jb2xvcjogIzMzMztcbi8vICRwcmljZS1tb25leS13ZWlnaHQ6IG5vcm1hbDtcbi8vICRwcmljZS1tb25leS1zaXplOiByZW0tY2FsYygzMik7XG4vLyAkcHJpY2UtbW9uZXktZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXNcbi8vICRwcmljZS1iZzogI2ZmZjtcbi8vICRwcmljZS1kZXNjLWNvbG9yOiAjNzc3O1xuLy8gJHByaWNlLWRlc2MtcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuLy8gJHByaWNlLWRlc2MtYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1kZXNjLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuLy8gJHByaWNlLWRlc2Mtd2VpZ2h0OiBub3JtYWw7XG4vLyAkcHJpY2UtZGVzYy1saW5lLWhlaWdodDogMS40O1xuLy8gJHByaWNlLWRlc2MtYm90dG9tLWJvcmRlcjogZG90dGVkIDFweCAjZGRkO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGlzdCBpdGVtIHN0eWxlc1xuLy8gJHByaWNlLWl0ZW0tY29sb3I6ICMzMzM7XG4vLyAkcHJpY2UtaXRlbS1wYWRkaW5nOiByZW0tY2FsYygxNSk7XG4vLyAkcHJpY2UtaXRlbS1hbGlnbjogY2VudGVyO1xuLy8gJHByaWNlLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkcHJpY2UtaXRlbS13ZWlnaHQ6IG5vcm1hbDtcbi8vICRwcmljZS1pdGVtLWJvdHRvbS1ib3JkZXI6IGRvdHRlZCAxcHggI2RkZDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIENUQSBhcmVhIHN0eWxlc1xuLy8gJHByaWNlLWN0YS1iZzogI2ZmZjtcbi8vICRwcmljZS1jdGEtYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1jdGEtcGFkZGluZzogcmVtLWNhbGMoMjAgMjAgMCk7XG5cbi8vIFByb2dyZXNzIE1ldGVyc1xuXG4vLyAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2UgdGhlIHByb2cgYmFyIGhlaWdodFxuLy8gJHByb2dyZXNzLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDI1KTtcbi8vICRwcm9ncmVzcy1iYXItY29sb3I6ICNmNmY2ZjYgIDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJvcmRlciBzdHlsZXNcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtMjAlKTtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXNpemU6IDFweDtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRwcm9ncmVzcy1iYXItYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtYXJnaW4gJiBwYWRkaW5nXG4vLyAkcHJvZ3Jlc3MtYmFyLXBhZDogcmVtLWNhbGMoMik7XG4vLyAkcHJvZ3Jlc3MtYmFyLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbWV0ZXIgY29sb3JzXG4vLyAkcHJvZ3Jlc3MtbWV0ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHByb2dyZXNzLW1ldGVyLXNlY29uZGFyeS1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbi8vICRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcbi8vICRwcm9ncmVzcy1tZXRlci1hbGVydC1jb2xvcjogJGFsZXJ0LWNvbG9yO1xuXG4vLyBSZXZlYWxcblxuLy8gJGluY2x1ZGUtaHRtbC1yZXZlYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3R5bGUgb2YgdGhlIHJldmVhbCBvdmVybGF5LlxuLy8gJHJldmVhbC1vdmVybGF5LWJnOiByZ2JhKCMwMDAsIC40NSk7XG4vLyAkcmV2ZWFsLW92ZXJsYXktYmctb2xkOiAjMDAwO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3R5bGUgb2YgdGhlIG1vZGFsIGl0c2VsZi5cbi8vICRyZXZlYWwtbW9kYWwtYmc6ICNmZmY7XG4vLyAkcmV2ZWFsLXBvc2l0aW9uLXRvcDogNTBweDtcbi8vICRyZXZlYWwtZGVmYXVsdC13aWR0aDogODAlO1xuLy8gJHJldmVhbC1tb2RhbC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAkcmV2ZWFsLWJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoIzAwMCwuNCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcmV2ZWFsIGNsb3NlIGJ1dHRvblxuLy8gJHJldmVhbC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbi8vICRyZXZlYWwtY2xvc2UtdG9wOiByZW0tY2FsYyg4KTtcbi8vICRyZXZlYWwtY2xvc2Utc2lkZTogcmVtLWNhbGMoMTEpO1xuLy8gJHJldmVhbC1jbG9zZS1jb2xvcjogI2FhYTtcbi8vICRyZXZlYWwtY2xvc2Utd2VpZ2h0OiBib2xkO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbW9kYWwgYm9yZGVyXG4vLyAkcmV2ZWFsLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkcmV2ZWFsLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHJldmVhbC1ib3JkZXItY29sb3I6ICM2NjY7XG5cbi8vICRyZXZlYWwtbW9kYWwtY2xhc3M6IFwicmV2ZWFsLW1vZGFsXCI7XG4vLyAkY2xvc2UtcmV2ZWFsLW1vZGFsLWNsYXNzOiBcImNsb3NlLXJldmVhbC1tb2RhbFwiO1xuXG4vLyBTaWRlIE5hdlxuXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgcGFkZGluZy5cbi8vICRzaWRlLW5hdi1wYWRkaW5nOiByZW0tY2FsYygxNCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGlzdCBzdHlsZXMuXG4vLyAkc2lkZS1uYXYtbGlzdC10eXBlOiBub25lO1xuLy8gJHNpZGUtbmF2LWxpc3QtcG9zaXRpb246IGluc2lkZTtcbi8vICRzaWRlLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDcgMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpbmsgc3R5bGVzLlxuLy8gJHNpZGUtbmF2LWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKTtcbi8vICRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKTtcbi8vICRzaWRlLW5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRzaWRlLW5hdi1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJHNpZGUtbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICRzaWRlLW5hdi1hY3RpdmUtZm9udC1mYW1pbHk6ICRzaWRlLW5hdi1mb250LWZhbWlseTtcblxuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcbi8vICRzaWRlLW5hdi1kaXZpZGVyLXNpemU6IDFweDtcbi8vICRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtMTAlKTtcblxuLy8gU3BsaXQgQnV0dG9uc1xuXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGRpZmZlcmVudCBzaGFyZWQgc3R5bGVzIGZvciBTcGxpdCBCdXR0b25zXG4vLyAkc3BsaXQtYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcjogMTAlO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtY29sb3I6ICNmZmY7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1jb2xvci1hbHQ6ICMzMzM7XG4vLyAkc3BsaXQtYnV0dG9uLWFjdGl2ZS1iZy10aW50OiByZ2JhKDAsMCwwLDAuMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRpbnkgc3BsaXQgYnV0dG9uc1xuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXRueTogJGJ1dHRvbi1waXAtdG55ICogMTA7XG4vLyAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtdG55OiAkYnV0dG9uLXBpcC10bnkgKiA2O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS10bnk6ICRidXR0b24tcGlwLXRueTtcbi8vICRzcGxpdC1idXR0b24tcGlwLXRvcC10bnk6ICRidXR0b24tcGlwLXRueSAqIDI7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1kZWZhdWx0LWZsb2F0LXRueTogcmVtLWNhbGMoLTYpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBzbWFsbCBzcGxpdCBidXR0b25zXG4vLyAkc3BsaXQtYnV0dG9uLXBhZGRpbmctc21sOiAkYnV0dG9uLXBpcC1zbWwgKiAxMDtcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDY7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLXNtbDogJGJ1dHRvbi1waXAtc21sO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtdG9wLXNtbDogJGJ1dHRvbi1waXAtc21sICogMS41O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1zbWw6IHJlbS1jYWxjKC02KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbWVkaXVtIHNwbGl0IGJ1dHRvbnNcbi8vICRzcGxpdC1idXR0b24tcGFkZGluZy1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDk7XG4vLyAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA1LjU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLW1lZDogJGJ1dHRvbi1waXAtbWVkIC0gcmVtLWNhbGMoMyk7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiAxLjU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1kZWZhdWx0LWZsb2F0LW1lZDogcmVtLWNhbGMoLTYpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsYXJnZSBzcGxpdCBidXR0b25zXG4vLyAkc3BsaXQtYnV0dG9uLXBhZGRpbmctbHJnOiAkYnV0dG9uLXBpcC1scmcgKiA4O1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLWxyZzogJGJ1dHRvbi1waXAtbHJnICogNTtcbi8vICRzcGxpdC1idXR0b24tcGlwLXNpemUtbHJnOiAkYnV0dG9uLXBpcC1scmcgLSByZW0tY2FsYyg2KTtcbi8vICRzcGxpdC1idXR0b24tcGlwLXRvcC1scmc6ICRidXR0b24tcGlwLWxyZyArIHJlbS1jYWxjKDUpO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1scmc6IHJlbS1jYWxjKC02KTtcblxuLy8gU3ViIE5hdlxuXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1hcmdpbiBhbmQgcGFkZGluZ1xuLy8gJHN1Yi1uYXYtbGlzdC1tYXJnaW46IHJlbS1jYWxjKC00IDAgMTgpO1xuLy8gJHN1Yi1uYXYtbGlzdC1wYWRkaW5nLXRvcDogcmVtLWNhbGMoNCk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRlZmluaXRpb25cbi8vICRzdWItbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICRzdWItbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHN1Yi1uYXYtZm9udC1jb2xvcjogIzk5OTtcbi8vICRzdWItbmF2LWZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAkc3ViLW5hdi10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4vLyAkc3ViLW5hdi1ib3JkZXItcmFkaXVzOiAzcHg7XG4vLyAkc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMjUlKTtcblxuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYWN0aXZlIGl0ZW0gc3R5bGVzXG5cbi8vICRzdWItbmF2LWFjdGl2ZS1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJHN1Yi1uYXYtYWN0aXZlLWJnOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRzdWItbmF2LWFjdGl2ZS1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAtMTQlKTtcbi8vICRzdWItbmF2LWFjdGl2ZS1jb2xvcjogI2ZmZjtcbi8vICRzdWItbmF2LWFjdGl2ZS1wYWRkaW5nOiByZW0tY2FsYygzIDE2KTtcbi8vICRzdWItbmF2LWFjdGl2ZS1jdXJzb3I6IGRlZmF1bHQ7XG5cbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlcjogXCJcIjtcbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW46IHJlbS1jYWxjKDEyKTtcblxuLy9cbi8vIFNXSVRDSFxuLy9cblxuLy8gJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gQ29udHJvbGxpbmcgYm9yZGVyIHN0eWxlcyBhbmQgYmFja2dyb3VuZCBjb2xvcnMgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyXG4vLyAkc3dpdGNoLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogLTIwJSk7XG4vLyAkc3dpdGNoLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkc3dpdGNoLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHN3aXRjaC1iZzogI2ZmZjtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN3aXRjaCBoZWlnaHRzIGZvciBvdXIgZGVmYXVsdCBjbGFzc2VzXG4vLyAkc3dpdGNoLWhlaWdodC10bnk6IDIycHg7XG4vLyAkc3dpdGNoLWhlaWdodC1zbWw6IDI4cHg7XG4vLyAkc3dpdGNoLWhlaWdodC1tZWQ6IDM2cHg7XG4vLyAkc3dpdGNoLWhlaWdodC1scmc6IDQ0cHg7XG4vLyAkc3dpdGNoLWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZGVmYXVsdCBmb250IHNpemVzIGZvciBvdXIgY2xhc3Nlcy5cbi8vICRzd2l0Y2gtZm9udC1zaXplLXRueTogMTFweDtcbi8vICRzd2l0Y2gtZm9udC1zaXplLXNtbDogMTJweDtcbi8vICRzd2l0Y2gtZm9udC1zaXplLW1lZDogMTRweDtcbi8vICRzd2l0Y2gtZm9udC1zaXplLWxyZzogMTdweDtcbi8vICRzd2l0Y2gtbGFiZWwtc2lkZS1wYWRkaW5nOiA2cHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgc3dpdGNoLXBhZGRsZVxuLy8gJHN3aXRjaC1wYWRkbGUtYmc6ICNmZmY7XG4vLyAkc3dpdGNoLXBhZGRsZS1mYWRlLXRvLWNvbG9yOiBzY2FsZS1jb2xvcigkc3dpdGNoLXBhZGRsZS1iZywgJGxpZ2h0bmVzczogLTEwJSk7XG4vLyAkc3dpdGNoLXBhZGRsZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRzd2l0Y2gtcGFkZGxlLWJnLCAkbGlnaHRuZXNzOiAtMzUlKTtcbi8vICRzd2l0Y2gtcGFkZGxlLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHN3aXRjaC1wYWRkbGUtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQ6IC4xcztcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tZWFzZTogZWFzZS1vdXQ7XG4vLyAkc3dpdGNoLXBvc2l0aXZlLWNvbG9yOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogOTQlKTtcbi8vICRzd2l0Y2gtbmVnYXRpdmUtY29sb3I6ICNmNWY1ZjU7XG5cbi8vIE91dGxpbmUgU3R5bGUgZm9yIHRhYmJpbmcgdGhyb3VnaCBzd2l0Y2hlc1xuLy8gJHN3aXRjaC1sYWJlbC1vdXRsaW5lOiAxcHggZG90dGVkICM4ODg7XG5cbi8vIFRhYmxlc1xuXG4vLyAkaW5jbHVkZS1odG1sLXRhYmxlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRhYmxlIGFuZCBldmVuIHJvd3Ncbi8vICR0YWJsZS1iZzogI2ZmZjtcbi8vICR0YWJsZS1ldmVuLXJvdy1iZzogI2Y5ZjlmOSAgO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZVxuLy8gJHRhYmxlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkdGFibGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICR0YWJsZS1ib3JkZXItY29sb3I6ICNkZGQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXG4vLyAkdGFibGUtaGVhZC1iZzogI2Y1ZjVmNSAgO1xuLy8gJHRhYmxlLWhlYWQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkdGFibGUtaGVhZC1mb250LWNvbG9yOiAjMjIyO1xuLy8gJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4vLyAkdGFibGUtaGVhZC1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgcm93IHBhZGRpbmcgYW5kIGZvbnQgc3R5bGVzXG4vLyAkdGFibGUtcm93LXBhZGRpbmc6IHJlbS1jYWxjKDkgMTApO1xuLy8gJHRhYmxlLXJvdy1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICR0YWJsZS1yb3ctZm9udC1jb2xvcjogIzIyMjtcbi8vICR0YWJsZS1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpO1xuXG4vLyBUaGVzZSBhcmUgZm9yIGNvbnRyb2xsaW5nIHRoZSBkaXNwbGF5IGFuZCBtYXJnaW4gb2YgdGFibGVzXG4vLyAkdGFibGUtZGlzcGxheTogdGFibGUtY2VsbDtcbi8vICR0YWJsZS1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cbi8vXG4vLyBUQUJTXG4vL1xuXG4vLyAkaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJzLW5hdmlnYXRpb24tYmctY29sb3I6ICNlZmVmZWYgIDtcbi8vICR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiAjZmZmO1xuLy8gJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTYlKTtcbi8vICR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjogIzIyMjtcbi8vICR0YWJzLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4vLyAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblxuLy8gJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG4vLyAkdGFicy1jb250ZW50LXBhZGRpbmc6ICRjb2x1bW4tZ3V0dGVyLzI7XG5cbi8vICR0YWJzLXZlcnRpY2FsLW5hdmlnYXRpb24tbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblxuLy9cbi8vIFRIVU1CTkFJTFNcbi8vXG5cbi8vICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzXG4vLyAkdGh1bWItYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICR0aHVtYi1ib3JkZXItd2lkdGg6IDRweDtcbi8vICR0aHVtYi1ib3JkZXItY29sb3I6ICNmZmY7XG4vLyAkdGh1bWItYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoIzAwMCwuMik7XG4vLyAkdGh1bWItYm94LXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwwLjUpO1xuXG4vLyBSYWRpdXMgYW5kIHRyYW5zaXRpb24gc3BlZWQgZm9yIHRodW1ic1xuLy8gJHRodW1iLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkdGh1bWItdHJhbnNpdGlvbi1zcGVlZDogMjAwbXM7XG5cbi8vXG4vLyBUT09MVElQU1xuLy9cblxuLy8gJGluY2x1ZGUtaHRtbC10b29sdGlwLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjY2NjO1xuLy8gJGhhcy10aXAtZm9udC13ZWlnaHQ6IGJvbGQ7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yOiAjMzMzO1xuLy8gJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSk7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRoYXMtdGlwLWN1cnNvci10eXBlOiBoZWxwO1xuXG4vLyAkdG9vbHRpcC1wYWRkaW5nOiByZW0tY2FsYygxMik7XG4vLyAkdG9vbHRpcC1iZzogIzMzMztcbi8vICR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHRvb2x0aXAtZm9udC13ZWlnaHQ6IG5vcm1hbDtcbi8vICR0b29sdGlwLWZvbnQtY29sb3I6ICNmZmY7XG4vLyAkdG9vbHRpcC1saW5lLWhlaWdodDogMS4zO1xuLy8gJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygxMCk7XG4vLyAkdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDogbm9ybWFsO1xuLy8gJHRvb2x0aXAtY2xvc2UtZm9udC1jb2xvcjogIzc3Nztcbi8vICR0b29sdGlwLWZvbnQtc2l6ZS1zbWw6IHJlbS1jYWxjKDE0KTtcbi8vICR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkdG9vbHRpcC1yb3VuZGVkOiAkZ2xvYmFsLXJvdW5kZWQ7XG4vLyAkdG9vbHRpcC1waXAtc2l6ZTogNXB4O1xuXG4vL1xuLy8gVE9QIEJBUlxuLy9cblxuLy8gJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXJcbi8vICR0b3BiYXItYmctY29sb3I6ICMzMzM7XG4vLyAkdG9wYmFyLWJnOiAkdG9wYmFyLWJnLWNvbG9yO1xuXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxuLy8gJHRvcGJhci1oZWlnaHQ6IDQ1cHg7XG4vLyAkdG9wYmFyLW1hcmdpbi1ib3R0b206IDA7XG5cbi8vIENvbnRyb2xsaW5nIHRoZSBzdHlsZXMgZm9yIHRoZSB0aXRsZSBpbiB0aGUgdG9wIGJhclxuLy8gJHRvcGJhci10aXRsZS13ZWlnaHQ6IG5vcm1hbDtcbi8vICR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG5cbi8vIFN0eWxlIHRoZSB0b3AgYmFyIGRyb3Bkb3duIGVsZW1lbnRzXG4vLyAkdG9wYmFyLWRyb3Bkb3duLWJnOiAjMzMzO1xuLy8gJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yOiAjZmZmO1xuLy8gJHRvcGJhci1kcm9wZG93bi1saW5rLWJnOiAjMzMzO1xuLy8gJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDogbm9ybWFsO1xuLy8gJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4O1xuLy8gJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3I6ICNmZmY7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogMC40O1xuXG4vLyBTZXQgdGhlIGxpbmsgY29sb3JzIGFuZCBzdHlsZXMgZm9yIHRvcC1sZXZlbCBuYXZcbi8vICR0b3BiYXItbGluay1jb2xvcjogI2ZmZjtcbi8vICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogI2ZmZjtcbi8vICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICNmZmY7XG4vLyAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyOiAjZmZmO1xuLy8gJHRvcGJhci1saW5rLXdlaWdodDogbm9ybWFsO1xuLy8gJHRvcGJhci1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuLy8gJHRvcGJhci1saW5rLWhvdmVyLWxpZ2h0bmVzczogLTEwJTsgLy8gRGFya2VuIGJ5IDEwJVxuLy8gJHRvcGJhci1saW5rLWJnLWhvdmVyOiAjMjcyNzI3O1xuLy8gJHRvcGJhci1saW5rLWJnLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4vLyAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4vLyAkdG9wYmFyLWxpbmstZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuLy8gJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtOiBub25lO1xuLy8gJHRvcGJhci1saW5rLXBhZGRpbmc6ICR0b3BiYXItaGVpZ2h0IC8gMztcblxuLy8gJHRvcGJhci1idXR0b24tZm9udC1zaXplOiAwLjc1cmVtO1xuLy8gJHRvcGJhci1idXR0b24tdG9wOiA3cHg7XG5cbi8vICR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICM3Nzc7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiBib2xkO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKTtcbi8vICR0b3BiYXItZHJvcGRvd24tbGFiZWwtYmc6ICMzMzM7XG5cbi8vIFRvcCBtZW51IGljb24gc3R5bGVzXG4vLyAkdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vICR0b3BiYXItbWVudS1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuLy8gJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiBib2xkO1xuLy8gJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICNmZmY7XG4vLyAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvcjogI2ZmZjtcbi8vICR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICM4ODg7XG4vLyAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkOiAjODg4O1xuXG4vLyBUcmFuc2l0aW9ucyBhbmQgYnJlYWtwb2ludCBzdHlsZXNcbi8vICR0b3BiYXItdHJhbnNpdGlvbi1zcGVlZDogMzAwbXM7XG4vLyBVc2luZyByZW0tY2FsYyBmb3IgdGhlIGJlbG93IGJyZWFrcG9pbnQgY2F1c2VzIGlzc3VlcyB3aXRoIHRvcCBiYXJcbi8vICR0b3BiYXItYnJlYWtwb2ludDogI3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX07IC8vIENoYW5nZSB0byA5OTk5cHggZm9yIGFsd2F5cyBtb2JpbGUgbGF5b3V0XG4vLyAkdG9wYmFyLW1lZGlhLXF1ZXJ5OiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAje3VwcGVyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSlcIjtcblxuLy8gRGl2aWRlciBTdHlsZXNcbi8vICR0b3BiYXItZGl2aWRlci1ib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IDEzJSk7XG4vLyAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDogc29saWQgMXB4IHNjYWxlLWNvbG9yKCR0b3BiYXItYmctY29sb3IsICRsaWdodG5lc3M6IC01MCUpO1xuXG4vLyBTdGlja3kgQ2xhc3Ncbi8vICR0b3BiYXItc3RpY2t5LWNsYXNzOiBcIi5zdGlja3lcIjtcbi8vICR0b3BiYXItYXJyb3dzOiB0cnVlOyAvL1NldCBmYWxzZSB0byByZW1vdmUgdGhlIHRyaWFuZ2xlIGljb24gZnJvbSB0aGUgbWVudSBpdGVtXG5cbi8vXG4vLyBWSVNJQklMSVRZIENMQVNTRVNcbi8vXG5cbi8vICRpbmNsdWRlLWh0bWwtdmlzaWJpbGl0eS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG4vLyAkaW5jbHVkZS10YWJsZS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWU7XG4vLyAkaW5jbHVkZS1sZWdhY3ktdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xuXG4vL1xuLy8gUkFOR0UgU0xJREVSXG4vL1xuXG4vLyAkaW5jbHVkZS1odG1sLXJhbmdlLXNsaWRlci1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFRoZXNlIHZhcmlhYmVscyBkZWZpbmUgdGhlIHNsaWRlciBiYXIgc3R5bGVzXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci13aWR0aDogMTAwJTtcbi8vICRyYW5nZS1zbGlkZXItYmFyLWhlaWdodDogcmVtLWNhbGMoMTYpO1xuXG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItY29sb3I6ICNkZGQ7XG4vLyAkcmFuZ2Utc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkcmFuZ2Utc2xpZGVyLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQ7XG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1iZy1jb2xvcjogI2ZhZmFmYTtcblxuLy8gVmVydGljYWwgYmFyIHN0eWxlc1xuLy8gJHJhbmdlLXNsaWRlci12ZXJ0aWNhbC1iYXItd2lkdGg6IHJlbS1jYWxjKDE2KTtcbi8vICRyYW5nZS1zbGlkZXItdmVydGljYWwtYmFyLWhlaWdodDogcmVtLWNhbGMoMjAwKTtcblxuLy8gVGhlc2UgdmFyaWFiZWxzIGRlZmluZSB0aGUgc2xpZGVyIGhhbmRsZSBzdHlsZXNcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLXdpZHRoOiByZW0tY2FsYygzMik7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IHJlbS1jYWxjKDIyKTtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLXBvc2l0aW9uLXRvcDogcmVtLWNhbGMoLTUpO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLWNvbG9yOiBub25lO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQ7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1iZy1ob3Zlci1jb2xvcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IC0xMiUpO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtY3Vyc29yOiBwb2ludGVyO1xuIiwiLmZsZXgtcm93IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmxleC1jZWxsIHtcclxuICBmbGV4OiAxO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1yb3cge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuQG1peGluIGZsZXgtY2VsbCB7XHJcbiAgZmxleDogMTtcclxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIE1ha2Ugc3VyZSB0aGUgY2hhcnNldCBpcyBzZXQgYXBwcm9wcmlhdGVseVxuQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBCZWhvbGQsIGhlcmUgYXJlIGFsbCB0aGUgRm91bmRhdGlvbiBjb21wb25lbnRzLlxuQGltcG9ydFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9ncmlkXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL2FjY29yZGlvblwiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9hbGVydC1ib3hlc1wiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9ibG9jay1ncmlkXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL2JyZWFkY3J1bWJzXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL2J1dHRvbi1ncm91cHNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvYnV0dG9uc1wiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9jbGVhcmluZ1wiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9kcm9wZG93blwiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9kcm9wZG93bi1idXR0b25zXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL2ZsZXgtdmlkZW9cIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvZm9ybXNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvaW5saW5lLWxpc3RzXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL2pveXJpZGVcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMva2V5c3Ryb2tlc1wiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9sYWJlbHNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvbWFnZWxsYW5cIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvb3JiaXRcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvcGFnaW5hdGlvblwiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9wYW5lbHNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvcHJpY2luZy10YWJsZXNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyc1wiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9yYW5nZS1zbGlkZXJcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvcmV2ZWFsXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL3NpZGUtbmF2XCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL3NwbGl0LWJ1dHRvbnNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvc3ViLW5hdlwiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9zd2l0Y2hcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvdGFibGVzXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL3RhYnNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvdGh1bWJzXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL3Rvb2x0aXBzXCIsXG4gIFwiZm91bmRhdGlvbi9jb21wb25lbnRzL3RvcC1iYXJcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvdHlwZVwiLFxuICBcImZvdW5kYXRpb24vY29tcG9uZW50cy9vZmZjYW52YXNcIixcbiAgXCJmb3VuZGF0aW9uL2NvbXBvbmVudHMvdmlzaWJpbGl0eVwiO1xuIiwiaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgaW5wdXRbdHlwZT1cImhpZGRlblwiXSArIGxhYmVsLCBcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgaW5wdXRbdHlwZT1cImhpZGRlblwiXSArIGxhYmVsIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkZm9ybS1zcGFjaW5nICogLjU7XHJcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRmb3JtLXNwYWNpbmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn0iLCIvKiFcclxuICogTGFkZGFcclxuICogaHR0cDovL2xhYi5oYWtpbS5zZS9sYWRkYVxyXG4gKiBNSVQgbGljZW5zZWRcclxuICpcclxuICogQ29weXJpZ2h0IChDKSAyMDE1IEhha2ltIEVsIEhhdHRhYiwgaHR0cDovL2hha2ltLnNlXHJcbiAqL1xyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENPTkZJR1xyXG4gKi9cclxuXHJcbiRzcGlubmVyU2l6ZTogMzJweDtcclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBNSVhJTlNcclxuICovXHJcblxyXG5AbWl4aW4gcHJlZml4ICggJHByb3BlcnR5LCAkdmFsdWUgKSB7XHJcblx0LXdlYmtpdC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuXHQgICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG5cdCAgICAtbXMtI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcblx0ICAgICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuXHQgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvbiggJHZhbHVlICkge1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IC8vIGltcG9ydGFudCB0byBvdmVycmlkZSBib290c3RyYXBcclxuXHQgICAtbW96LXRyYW5zaXRpb246ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG5cdCAgICAtbXMtdHJhbnNpdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7XHJcblx0ICAgICAtby10cmFuc2l0aW9uOiAkdmFsdWUgIWltcG9ydGFudDtcclxuXHQgICAgICAgIHRyYW5zaXRpb246ICR2YWx1ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtKCAkdmFsdWUgKSB7XHJcblx0QGluY2x1ZGUgcHJlZml4KCB0cmFuc2Zvcm0sICR2YWx1ZSApO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbiggJHZhbHVlICkge1xyXG5cdEBpbmNsdWRlIHByZWZpeCggdHJhbnNmb3JtLW9yaWdpbiwgJHZhbHVlICk7XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b25Db2xvciggJG5hbWUsICRjb2xvciApIHtcclxuXHQmW2RhdGEtY29sb3I9I3skbmFtZX1dIHtcclxuXHRcdGJhY2tncm91bmQ6ICRjb2xvcjtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbiggJGNvbG9yLCA1JSApO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIEJVVFRPTiBCQVNFXHJcbiAqL1xyXG5cclxuLmxhZGRhLWJ1dHRvbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5cclxuLyogU3Bpbm5lciBhbmltYXRpb24gKi9cclxuLmxhZGRhLWJ1dHRvbiAubGFkZGEtc3Bpbm5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOiAkc3Bpbm5lclNpemU7XHJcblx0aGVpZ2h0OiAkc3Bpbm5lclNpemU7XHJcblx0dG9wOiA1MCU7XHJcblx0bWFyZ2luLXRvcDogMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4vKiBCdXR0b24gbGFiZWwgKi9cclxuLmxhZGRhLWJ1dHRvbiAubGFkZGEtbGFiZWwge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAzO1xyXG59XHJcblxyXG4vKiBQcm9ncmVzcyBiYXIgKi9cclxuLmxhZGRhLWJ1dHRvbiAubGFkZGEtcHJvZ3Jlc3Mge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR3aWR0aDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0YmFja2dyb3VuZDogcmdiYSggMCwgMCwgMCwgMC4yICk7XHJcblxyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRvcGFjaXR5OiAwO1xyXG5cclxuXHRAaW5jbHVkZSB0cmFuc2l0aW9uKCAwLjFzIGxpbmVhciBhbGwgKTtcclxufVxyXG5cdC5sYWRkYS1idXR0b25bZGF0YS1sb2FkaW5nXSAubGFkZGEtcHJvZ3Jlc3Mge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XHJcblx0fVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIEVBU0lOR1xyXG4gKi9cclxuXHJcbi5sYWRkYS1idXR0b24sXHJcbi5sYWRkYS1idXR0b24gLmxhZGRhLXNwaW5uZXIsXHJcbi5sYWRkYS1idXR0b24gLmxhZGRhLWxhYmVsIHtcclxuXHRAaW5jbHVkZSB0cmFuc2l0aW9uKCAwLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxLjI3NSkgYWxsICk7XHJcbn1cclxuXHJcbi5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT16b29tLWluXSxcclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20taW5dIC5sYWRkYS1zcGlubmVyLFxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1pbl0gLmxhZGRhLWxhYmVsLFxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1vdXRdLFxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1vdXRdIC5sYWRkYS1zcGlubmVyLFxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1vdXRdIC5sYWRkYS1sYWJlbCB7XHJcblx0QGluY2x1ZGUgdHJhbnNpdGlvbiggMC4zcyBlYXNlIGFsbCApO1xyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogRVhQQU5EIExFRlRcclxuICovXHJcblxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9ZXhwYW5kLXJpZ2h0XSB7XHJcblx0LmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0cmlnaHQ6ICRzcGlubmVyU2l6ZS8tMiArIDEwO1xyXG5cdH1cclxuXHJcblx0JltkYXRhLXNpemU9XCJzXCJdIC5sYWRkYS1zcGlubmVyLFxyXG5cdCZbZGF0YS1zaXplPVwieHNcIl0gLmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0cmlnaHQ6ICRzcGlubmVyU2l6ZS8tMiArIDQ7XHJcblx0fVxyXG5cclxuXHQmW2RhdGEtbG9hZGluZ10ge1xyXG5cdFx0cGFkZGluZy1yaWdodDogNTZweDtcclxuXHJcblx0XHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHR9XHJcblxyXG5cdFx0JltkYXRhLXNpemU9XCJzXCJdLFxyXG5cdFx0JltkYXRhLXNpemU9XCJ4c1wiXSB7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogRVhQQU5EIFJJR0hUXHJcbiAqL1xyXG5cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPWV4cGFuZC1sZWZ0XSB7XHJcblx0LmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0bGVmdDogJHNwaW5uZXJTaXplLzIgKyAxMDtcclxuXHR9XHJcblxyXG5cdCZbZGF0YS1zaXplPVwic1wiXSAubGFkZGEtc3Bpbm5lcixcclxuXHQmW2RhdGEtc2l6ZT1cInhzXCJdIC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdGxlZnQ6IDRweDtcclxuXHR9XHJcblxyXG5cdCZbZGF0YS1sb2FkaW5nXSB7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDU2cHg7XHJcblxyXG5cdFx0LmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0fVxyXG5cclxuXHRcdCZbZGF0YS1zaXplPVwic1wiXSxcclxuXHRcdCZbZGF0YS1zaXplPVwieHNcIl0ge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogRVhQQU5EIFVQXHJcbiAqL1xyXG5cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPWV4cGFuZC11cF0ge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdHRvcDogLSRzcGlubmVyU2l6ZTtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdH1cclxuXHJcblx0JltkYXRhLWxvYWRpbmddIHtcclxuXHRcdHBhZGRpbmctdG9wOiA1NHB4O1xyXG5cclxuXHRcdC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0dG9wOiAoJHNwaW5uZXJTaXplLyAyKSArIDEwO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCZbZGF0YS1zaXplPVwic1wiXSxcclxuXHRcdCZbZGF0YS1zaXplPVwieHNcIl0ge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMzJweDtcclxuXHJcblx0XHRcdC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdFx0XHR0b3A6IDRweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIEVYUEFORCBET1dOXHJcbiAqL1xyXG5cclxuIC5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT1leHBhbmQtZG93bl0ge1xyXG4gXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuIFx0LmxhZGRhLXNwaW5uZXIge1xyXG4gXHRcdHRvcDogNjJweDtcclxuIFx0XHRsZWZ0OiA1MCU7XHJcbiBcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcbiBcdH1cclxuXHJcbiBcdCZbZGF0YS1zaXplPVwic1wiXSAubGFkZGEtc3Bpbm5lcixcclxuIFx0JltkYXRhLXNpemU9XCJ4c1wiXSAubGFkZGEtc3Bpbm5lciB7XHJcbiBcdFx0dG9wOiA0MHB4O1xyXG4gXHR9XHJcblxyXG4gXHQmW2RhdGEtbG9hZGluZ10ge1xyXG4gXHRcdHBhZGRpbmctYm90dG9tOiA1NHB4O1xyXG5cclxuIFx0XHQubGFkZGEtc3Bpbm5lciB7XHJcbiBcdFx0XHRvcGFjaXR5OiAxO1xyXG4gXHRcdH1cclxuXHJcbiBcdFx0JltkYXRhLXNpemU9XCJzXCJdLFxyXG4gXHRcdCZbZGF0YS1zaXplPVwieHNcIl0ge1xyXG4gXHRcdFx0cGFkZGluZy1ib3R0b206IDMycHg7XHJcbiBcdFx0fVxyXG4gXHR9XHJcbiB9XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogU0xJREUgTEVGVFxyXG4gKi9cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXNsaWRlLWxlZnRdIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQubGFkZGEtbGFiZWwge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuXHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRsZWZ0OiAxMDAlO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0fVxyXG5cclxuXHQmW2RhdGEtbG9hZGluZ10ge1xyXG5cdFx0LmxhZGRhLWxhYmVsIHtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0bGVmdDogLTEwMCU7XHJcblx0XHR9XHJcblx0XHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdGxlZnQ6IDUwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBTTElERSBSSUdIVFxyXG4gKi9cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXNsaWRlLXJpZ2h0XSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0LmxhZGRhLWxhYmVsIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR9XHJcblx0LmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdGxlZnQ6ICRzcGlubmVyU2l6ZS8yXHJcblx0fVxyXG5cclxuXHQmW2RhdGEtbG9hZGluZ10ge1xyXG5cdFx0LmxhZGRhLWxhYmVsIHtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0bGVmdDogMTAwJTtcclxuXHRcdH1cclxuXHRcdC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIFNMSURFIFVQXHJcbiAqL1xyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9c2xpZGUtdXBdIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQubGFkZGEtbGFiZWwge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuXHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdG1hcmdpbi10b3A6IDFlbTtcclxuXHR9XHJcblxyXG5cdCZbZGF0YS1sb2FkaW5nXSB7XHJcblx0XHQubGFkZGEtbGFiZWwge1xyXG5cdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHR0b3A6IC0xZW07XHJcblx0XHR9XHJcblx0XHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogU0xJREUgRE9XTlxyXG4gKi9cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXNsaWRlLWRvd25dIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHQubGFkZGEtbGFiZWwge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuXHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdG1hcmdpbi10b3A6IC0yZW07XHJcblx0fVxyXG5cclxuXHQmW2RhdGEtbG9hZGluZ10ge1xyXG5cdFx0LmxhZGRhLWxhYmVsIHtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0dG9wOiAxZW07XHJcblx0XHR9XHJcblx0XHQubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogWk9PTS1PVVRcclxuICovXHJcblxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1vdXRdIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblx0LmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20tb3V0XSAubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHRtYXJnaW4tbGVmdDogJHNwaW5uZXJTaXplO1xyXG5cclxuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoIDIuNSApICk7XHJcblx0fVxyXG5cdC5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT16b29tLW91dF0gLmxhZGRhLWxhYmVsIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR9XHJcblxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9em9vbS1vdXRdW2RhdGEtbG9hZGluZ10gLmxhZGRhLWxhYmVsIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cclxuXHRAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKCAwLjUgKSApO1xyXG59XHJcbi5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT16b29tLW91dF1bZGF0YS1sb2FkaW5nXSAubGFkZGEtc3Bpbm5lciB7XHJcblx0b3BhY2l0eTogMTtcclxuXHRtYXJnaW4tbGVmdDogMDtcclxuXHJcblx0QGluY2x1ZGUgdHJhbnNmb3JtKCBub25lICk7XHJcbn1cclxuXHJcblxyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gKiBaT09NLUlOXHJcbiAqL1xyXG5cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20taW5dIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblx0LmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20taW5dIC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAkc3Bpbm5lclNpemUvLTI7XHJcblx0XHRtYXJnaW4tdG9wOiAkc3Bpbm5lclNpemUvLTI7XHJcblxyXG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSggMC4yICkgKTtcclxuXHR9XHJcblx0LmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20taW5dIC5sYWRkYS1sYWJlbCB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0fVxyXG5cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPXpvb20taW5dW2RhdGEtbG9hZGluZ10gLmxhZGRhLWxhYmVsIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cclxuXHRAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKCAyLjIgKSApO1xyXG59XHJcbi5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT16b29tLWluXVtkYXRhLWxvYWRpbmddIC5sYWRkYS1zcGlubmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdG1hcmdpbi1sZWZ0OiAkc3Bpbm5lclNpemUvLTI7XHJcblxyXG5cdEBpbmNsdWRlIHRyYW5zZm9ybSggbm9uZSApO1xyXG59XHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogQ09OVFJBQ1RcclxuICovXHJcblxyXG4ubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9Y29udHJhY3RdIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHdpZHRoOiAxMDBweDtcclxufVxyXG5cdC5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT1jb250cmFjdF0gLmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0fVxyXG5cclxuLmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPWNvbnRyYWN0XVtkYXRhLWxvYWRpbmddIHtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0d2lkdGg6IDUycHg7XHJcbn1cclxuXHQubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9Y29udHJhY3RdW2RhdGEtbG9hZGluZ10gLmxhZGRhLWxhYmVsIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdC5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT1jb250cmFjdF1bZGF0YS1sb2FkaW5nXSAubGFkZGEtc3Bpbm5lciB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogT1ZFUkxBWVxyXG4gKi9cclxuXHJcbi5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT1jb250cmFjdC1vdmVybGF5XSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR3aWR0aDogMTAwcHg7XHJcblxyXG5cdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDIwMDBweCByZ2JhKDAsMCwwLDApO1xyXG59XHJcblx0LmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPWNvbnRyYWN0LW92ZXJsYXldIC5sYWRkYS1zcGlubmVyIHtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdH1cclxuXHJcbi5sYWRkYS1idXR0b25bZGF0YS1zdHlsZT1jb250cmFjdC1vdmVybGF5XVtkYXRhLWxvYWRpbmddIHtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0d2lkdGg6IDUycHg7XHJcblxyXG5cdC8qb3V0bGluZTogMTAwMDBweCBzb2xpZCByZ2JhKCAwLCAwLCAwLCAwLjUgKTsqL1xyXG5cdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDIwMDBweCByZ2JhKDAsMCwwLDAuOCk7XHJcbn1cclxuXHQubGFkZGEtYnV0dG9uW2RhdGEtc3R5bGU9Y29udHJhY3Qtb3ZlcmxheV1bZGF0YS1sb2FkaW5nXSAubGFkZGEtbGFiZWwge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcblx0LmxhZGRhLWJ1dHRvbltkYXRhLXN0eWxlPWNvbnRyYWN0LW92ZXJsYXldW2RhdGEtbG9hZGluZ10gLmxhZGRhLXNwaW5uZXIge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbiIsIkBtaXhpbiBwcmVmaXgoJHByb3BlcnR5LCAkdmFsdWUpIHtcclxuICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gIC1tb3otI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcbiAgLW1zLSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gIC1vLSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG59XHJcblxyXG4ubG9hZGluZyB7XHJcbiAgQGluY2x1ZGUgcHJlZml4KGZpbHRlciwgYmx1cigycHgpKTtcclxufVxyXG5cclxuLmxvYWRpbmctaW5kaWNhdG9yLWhvbGRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB6LWluZGV4OiA5OTk5O1xyXG59XHJcbiIsIi8qIVxuICogIEZvbnQgQXdlc29tZSA0LjAuMyBieSBAZGF2ZWdhbmR5IC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvIC0gQGZvbnRhd2Vzb21lXG4gKiAgTGljZW5zZSAtIGh0dHA6Ly9mb250YXdlc29tZS5pby9saWNlbnNlIChGb250OiBTSUwgT0ZMIDEuMSwgQ1NTOiBNSVQgTGljZW5zZSlcbiAqL1xuXG5AaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibWl4aW5zXCI7XG5AaW1wb3J0IFwicGF0aFwiO1xuQGltcG9ydCBcImNvcmVcIjtcbkBpbXBvcnQgXCJsYXJnZXJcIjtcbkBpbXBvcnQgXCJmaXhlZC13aWR0aFwiO1xuQGltcG9ydCBcImxpc3RcIjtcbkBpbXBvcnQgXCJib3JkZXJlZC1wdWxsZWRcIjtcbkBpbXBvcnQgXCJzcGlubmluZ1wiO1xuQGltcG9ydCBcInJvdGF0ZWQtZmxpcHBlZFwiO1xuQGltcG9ydCBcInN0YWNrZWRcIjtcbkBpbXBvcnQgXCJpY29uc1wiO1xuIiwiQGltcG9ydCBcImZvdW5kYXRpb25cIjtcclxuXHJcbi5pdGVtZHMtZWRpdCB7XHJcblx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uaXRlbWRzLWVkaXQtcGFuZWwge1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuXHJcbi5pdGVtZHMtaW1hZ2V1cGxvYWQtdGFyZ2V0IHtcclxuXHQvL3dpZHRoOiAxMDAlO1xyXG5cdC8vaGVpZ2h0OiAxMDBweDtcclxuXHRib3JkZXI6IDNweCBkYXNoZWQgJHNlY29uZGFyeS1jb2xvcjtcclxuXHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cdHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcblxyXG5cdC8vLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXIgLjNzO1xyXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIC4zcztcclxuXHJcbn1cclxuXHJcbi5pdGVtZHMtaW1hZ2V1cGxvYWQtdGFyZ2V0LWFjdGl2ZSB7XHJcblx0Ym9yZGVyOiAzcHggZGFzaGVkICRwcmltYXJ5LWNvbG9yO1xyXG59XHJcblxyXG5cclxuLml0ZW1kcy12aWV3IHtcclxuXHRAZXh0ZW5kIC5pdGVtZHMtZWRpdDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdC8vd2lkdGg6IDUwMHB4O1xyXG59XHJcblxyXG4uaXRlbWRzLXZpZXctaW1hZ2Uge1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIFRoZXNlIHVzZXItc2VsZWN0IHByb3BlcnRpZXMgYXJlIGluaGVyaXRhYmxlLCB1c2VkIHRvIHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gKi9cclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTsgLyogRnJvbSBJRTEwIG9ubHkgKi9cclxuXHR1c2VyLXNlbGVjdDogbm9uZTsgLyogTm90IHZhbGlkIENTUyB5ZXQsIGFzIG9mIEp1bHkgMjAxMiAqL1xyXG5cclxuXHQtd2Via2l0LXVzZXItZHJhZzogbm9uZTsgLyogUHJldmVudHMgZHJhZ2dpbmcgb2YgaW1hZ2VzL2RpdnMgZXRjICovXHJcblx0dXNlci1kcmFnOiBub25lO1xyXG59XHJcblxyXG4uaXRlbWRzLWZyYWdtZW50IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pdGVtZHMtZnJhZ21lbnQtY29udGVudCB7XHJcblx0QGV4dGVuZCAuaXRlbWRzLWZyYWdtZW50O1xyXG59XHJcblxyXG4uaXRlbWRzLWZyYWdtZW50LW1haW50YWluIHtcclxuXHRAZXh0ZW5kIC5pdGVtZHMtZnJhZ21lbnQ7XHJcblx0YmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUFBQUFDSDVCQUVLQUFFQUxBQUFBQUFCQUFFQUFBSUNUQUVBT3c9PScpOyAvLyBpZSBhY3RzIHdlaXJkLlxyXG5cclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC1ib3gtc2hhZG93IC4zcztcclxuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzO1xyXG59XHJcblxyXG4uaXRlbWRzLWZyYWdtZW50LW1haW50YWluLWFjdGl2ZSB7XHJcblx0QGV4dGVuZCAudGg6Zm9jdXM7XHJcbn1cclxuXHJcbi5pdGVtZHMtZnJhZ21lbnQtbWFpbnRhaW4tY29udHJvbHMge1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XHJcbn1cclxuXHJcbi5pdGVtZHMtZnJhZ21lbnQtbWFpbnRhaW4tY29udHJvbHMtaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuICAgIG9wYWNpdHk6IDA7IFxyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLy8gLml0ZW1kcy1mcmFnbWVudC1tYWludGFpbjpob3ZlciB7XHJcbi8vIFx0QGV4dGVuZCAudGg6Zm9jdXM7XHJcbi8vIH1cclxuXHJcbi5pdGVtZHMtZnJhZ21lbnQtbWFpbnRhaW4taGl0c3BvdCB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuQG1peGluIGl0ZW1kcy1mcmFnbWVudC1lZGl0QnV0dG9uQmFzZXtcclxuXHRAZXh0ZW5kIGE7XHJcblx0dGV4dC1zaGFkb3c6IDFweCAwIDAgIzAwMCwgMCAtMXB4IDAgIzAwMCwgMCAxcHggMCAjMDAwLCAtMXB4IDAgMCAjMDAwO1xyXG59XHJcblxyXG4uaXRlbWRzLWZyYWdtZW50LWVkaXR7XHJcblx0QGluY2x1ZGUgaXRlbWRzLWZyYWdtZW50LWVkaXRCdXR0b25CYXNlO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRib3R0b206IDBweDtcclxuXHRsZWZ0OiAwcHg7XHJcbn1cclxuLml0ZW1kcy1mcmFnbWVudC1kZWxldGV7XHJcblx0QGluY2x1ZGUgaXRlbWRzLWZyYWdtZW50LWVkaXRCdXR0b25CYXNlO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDBweDtcclxuXHRsZWZ0OiAwcHg7XHJcbn1cclxuLml0ZW1kcy1mcmFnbWVudC1yZXNpemV7XHJcblx0QGluY2x1ZGUgaXRlbWRzLWZyYWdtZW50LWVkaXRCdXR0b25CYXNlO1xyXG5cdGN1cnNvcjogbW92ZTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAwcHg7XHJcblx0cmlnaHQ6IDBweDtcclxufVxyXG5cclxuLml0ZW1kcy1jb3JuZXItbnd7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMHB4O1xyXG5cdGxlZnQ6IDBweDtcclxufVxyXG4uaXRlbWRzLWNvcm5lci1uZXtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwcHg7XHJcblx0cmlnaHQ6IDBweDtcclxufVxyXG4uaXRlbWRzLWNvcm5lci1zd3tcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOiAwcHg7XHJcblx0bGVmdDogMHB4O1xyXG59XHJcbi5pdGVtZHMtY29ybmVyLXNle1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRib3R0b206IDBweDtcclxuXHRyaWdodDogMHB4O1xyXG59XHJcblxyXG4uaXRlbWRzLWltYWdlIHtcclxuXHRAZXh0ZW5kIC50aDtcclxufVxyXG5cclxuLml0ZW1kcy1jb2xvcnN3YXRjaC1ncmlkeyBcclxuICBAaW5jbHVkZSBibG9jay1ncmlkKFxyXG5cdCRwZXItcm93OiAxMixcclxuXHQkc3BhY2luZzogNXB4LFxyXG5cdCRiYXNlLXN0eWxlOiB0cnVlXHJcbiAgKTsgXHJcbn1cclxuXHJcbi5pdGVtZHMtY29sb3Jzd2F0Y2gge1xyXG5cdEBleHRlbmQgLnRoO1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxufVxyXG5cclxuLml0ZW1kcy1jb2xvcnN3YXRjaC1zZWxlY3RlZCB7XHJcblx0QGV4dGVuZCAudGg6Zm9jdXM7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4uaXRlbWRzLWltYWdlLXNlbGVjdGVkIHtcclxuXHRAZXh0ZW5kIC50aDpmb2N1cztcclxuXHQvLyAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoNDMsIDE2NiwgMjAzLCAwLjUpO1xyXG5cdC8vIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoNDMsIDE2NiwgMjAzLCAwLjUpO1xyXG59XHJcblxyXG4uaXRlbWRzLXRleHRhbGlnbiB7XHJcblx0QGV4dGVuZCAudGg7XHJcblx0aSB7XHJcblx0XHRAZXh0ZW5kIC5mYTtcclxuXHRcdEBleHRlbmQgLmZhLTJ4O1xyXG5cdH1cclxufVxyXG5cclxuLml0ZW1kcy10ZXh0YWxpZ24tc2VsZWN0ZWQge1xyXG5cdEBleHRlbmQgLnRoOmZvY3VzO1xyXG5cdGkge1xyXG5cdFx0QGV4dGVuZCAuZmE7XHJcblx0XHRAZXh0ZW5kIC5mYS0yeDtcclxuXHR9XHJcbn1cclxuXHJcbi5pdGVtZHMtZm9udC1ncmlkeyBcclxuICBAaW5jbHVkZSBibG9jay1ncmlkKFxyXG5cdCRwZXItcm93OiAyLFxyXG5cdCRzcGFjaW5nOiAxMHB4LFxyXG5cdCRiYXNlLXN0eWxlOiB0cnVlXHJcbiAgKTsgXHJcbn1cclxuXHJcbi5pdGVtZHMtZm9udCB7XHJcblx0Ym9yZGVyOiAkdGh1bWItYm9yZGVyLXN0eWxlICR0aHVtYi1ib3JkZXItd2lkdGggJHRodW1iLWJvcmRlci1jb2xvcjtcclxuXHQtd2Via2l0LWJveC1zaGFkb3c6ICR0aHVtYi1ib3gtc2hhZG93O1xyXG5cdGJveC1zaGFkb3c6ICR0aHVtYi1ib3gtc2hhZG93O1xyXG5cclxuXHQmOmhvdmVyLFxyXG5cdCY6Zm9jdXMge1xyXG5cdFx0QGlmICRleHBlcmltZW50YWwge1xyXG5cdFx0ICAtd2Via2l0LWJveC1zaGFkb3c6ICR0aHVtYi1ib3gtc2hhZG93LWhvdmVyO1xyXG5cdFx0fVxyXG5cdFx0Ym94LXNoYWRvdzogJHRodW1iLWJveC1zaGFkb3ctaG92ZXI7XHJcblx0fVxyXG5cclxuXHRmb250LXNpemU6IDE1MCU7XHJcbn1cclxuIFxyXG4uaXRlbWRzLWZvbnQtc2VsZWN0ZWQge1xyXG5cdEBleHRlbmQgLml0ZW1kcy1mb250OmZvY3VzO1xyXG59XHJcblxyXG4uaXRlbWRzLWNsaXBhcnQtZ3JpZHsgXHJcbiAgQGluY2x1ZGUgYmxvY2stZ3JpZChcclxuXHQkcGVyLXJvdzogMyxcclxuXHQkc3BhY2luZzogMTBweCxcclxuXHQkYmFzZS1zdHlsZTogdHJ1ZVxyXG4gICk7IFxyXG59XHJcblxyXG4uaXRlbWRzLWNsaXBhcnQtaWNvbiB7XHJcblx0QGV4dGVuZCAudGg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn0iLCJAbWl4aW4gY2FyZHR5cGUoJGxvZ29OYW1lKSB7XHJcbiAgb3BhY2l0eTogMC41O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9UaGVtZS9DcmVkaXRDYXJkcy8jeyRsb2dvTmFtZX0pO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgLy9iYWNrZ3JvdW5kLXNpemU6IDNweCAzcHgsIGNvdmVyO1xyXG4gIC8vYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAvL3dpZHRoOiA3NXB4O1xyXG4gIGhlaWdodDogNDVweDtcclxufVxyXG5cclxuLmNhcmR0eXBlLXZpc2EgeyBcclxuICBAaW5jbHVkZSBjYXJkdHlwZSgndmlzYS5wbmcnKTsgXHJcbn1cclxuXHJcbi5jYXJkdHlwZS1tYXN0ZXJjYXJkIHsgXHJcbiAgQGluY2x1ZGUgY2FyZHR5cGUoJ21hc3RlcmNhcmQucG5nJyk7XHJcbn1cclxuXHJcbi5jYXJkdHlwZS1hbWVyaWNhbmV4cHJlc3MgeyBcclxuICBAaW5jbHVkZSBjYXJkdHlwZSgnYW1leC5wbmcnKTtcclxufVxyXG5cclxuLmNhcmR0eXBlLWRpc2NvdmVyIHsgXHJcbiAgQGluY2x1ZGUgY2FyZHR5cGUoJ2Rpc2NvdmVyLnBuZycpO1xyXG59XHJcblxyXG4uY2FyZHR5cGUtamNiIHsgXHJcbiAgQGluY2x1ZGUgY2FyZHR5cGUoJ2pjYi5wbmcnKTtcclxufVxyXG5cclxuLmNhcmR0eXBlLWRpbmVyc2NsdWIgeyBcclxuICBAaW5jbHVkZSBjYXJkdHlwZSgnZGluZXJzLnBuZycpO1xyXG59XHJcblxyXG4uY2FyZHR5cGUtY3VycmVudCB7XHJcbiAgb3BhY2l0eTogMTtcclxufSIsIi5oZWxwLWljb24ge1xyXG4gICAgQGluY2x1ZGUgZmEtaWNvbi1iZWZvcmUoJGZhLXZhci1xdWVzdGlvbi1jaXJjbGUpO1xyXG59XHJcblxyXG4uaGVscC1ib3gge1xyXG4gICAgQGluY2x1ZGUgcGFuZWw7XHJcbn1cclxuXHJcbi5oZWxwLWJveC1oaWRlIHtcclxuICAgIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItdGltZXMpO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG59IiwiQG1peGluIGJkLWRyb3Bkb3duLWNvbnRhaW5lcigkdHJpYW5nbGUpIHtcclxuICBcdEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcigkY29udGVudDpjb250ZW50LCAkdHJpYW5nbGU6JHRyaWFuZ2xlKTtcclxuICBcdG91dGxpbmU6IG5vbmU7XHJcbiAgXHRtYXgtaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uYmFzaWMtZHJvcGRvd24ge1xyXG4gIFx0QGluY2x1ZGUgYmQtZHJvcGRvd24tY29udGFpbmVyKCR0cmlhbmdsZTpib3R0b20pO1xyXG59XHJcblxyXG4uYmFzaWMtZHJvcGRvd24tcmlnaHQge1xyXG5cdEBpbmNsdWRlIGJkLWRyb3Bkb3duLWNvbnRhaW5lcigkdHJpYW5nbGU6bGVmdCk7XHJcbn1cclxuXHJcbi5iYXNpYy1kcm9wZG93bi1sZWZ0IHtcclxuXHRAaW5jbHVkZSBiZC1kcm9wZG93bi1jb250YWluZXIoJHRyaWFuZ2xlOnJpZ2h0KTtcclxufVxyXG5cclxuLmJhc2ljLWRyb3Bkb3duLXRvcCB7XHJcblx0QGluY2x1ZGUgYmQtZHJvcGRvd24tY29udGFpbmVyKCR0cmlhbmdsZTp0b3ApO1xyXG59XHJcblxyXG5AbWl4aW4gYmFzaWMtZHJvcGRvd24tY2xvc2VkKCkge1xyXG5cdG1heC1oZWlnaHQ6IDA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwYWRkaW5nLXdpZHRoOiAwcHg7XHJcblx0Ym9yZGVyLXdpZHRoOiAwcHg7XHJcbn1cclxuXHJcbkBtaXhpbiBiYXNpYy1kcm9wZG93bi1vcGVuKCkge1xyXG5cdG1heC1oZWlnaHQ6IDk5OTlweDtcclxufVxyXG5cclxuLmJhc2ljLWRyb3Bkb3duLWNsb3NlZCB7XHJcblx0QGluY2x1ZGUgYmFzaWMtZHJvcGRvd24tY2xvc2VkO1xyXG59XHJcblxyXG4uYmFzaWMtZHJvcGRvd24tb3BlbiB7XHJcblx0QGluY2x1ZGUgYmFzaWMtZHJvcGRvd24tY2xvc2VkO1xyXG59XHJcblxyXG4vLyAuc2ltcGxlc2VhcmNoLXJlc3VsdHMge1xyXG4vLyBcdG1hcmdpbjogMHJlbTtcclxuLy8gfVxyXG5cclxuLy8gLnNpbXBsZXNlYXJjaC1yZXN1bHQtc2VsZWN0ZWQge1xyXG4vLyBcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkc2VsZWN0LWJnLWNvbG9yLCA1JSk7XHJcbi8vIH1cclxuXHJcbi8vIC5zaW1wbGVzZWFyY2gtcmVzdWx0IHtcclxuLy8gXHRsaXN0LXN0eWxlOiBub25lO1xyXG4vLyBcdGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4wNSk7XHJcbi8vIFx0cGFkZGluZy1sZWZ0OiAuNXJlbTtcclxuLy8gXHQkdG9wQm90dG9tUGFkZGluZzogLjRyZW07XHJcbi8vIFx0cGFkZGluZy10b3A6ICR0b3BCb3R0b21QYWRkaW5nO1xyXG4vLyBcdHBhZGRpbmctYm90dG9tOiAkdG9wQm90dG9tUGFkZGluZztcclxuLy8gXHQmOmhvdmVyIHtcclxuLy8gXHRcdEBleHRlbmQgLnNpbXBsZXNlYXJjaC1yZXN1bHQtc2VsZWN0ZWQ7XHJcbi8vICAgXHR9XHJcbi8vIH0iLCIuc2ltcGxlc2VhcmNoLWRyb3Bkb3duIHtcclxuXHRAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIoXHJcblx0ICAgICRjb250ZW50Omxpc3QsXHJcblx0ICAgICR0cmlhbmdsZTpmYWxzZSxcclxuXHQgICAgJG1heC13aWR0aDogMTAwJVxyXG4gIFx0KTtcclxuICBcdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHJcbiAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJnLWNvbG9yO1xyXG4gIFx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHJnYmEoMzksNDEsNDMsLjE1KTtcclxuXHRib3gtc2hhZG93OiAwIDAgNHB4IDAgcmdiYSgwLDAsMCwuMDgpO1x0XHJcbn1cclxuXHJcbiR0cmFuc2l0aW9uVGltZTogLjJzO1xyXG4uc2ltcGxlc2VhcmNoLWRyb3Bkb3duLWNsb3NlZCB7XHJcblx0QGluY2x1ZGUgYmFzaWMtZHJvcGRvd24tY2xvc2VkO1xyXG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcclxuXHJcblx0dHJhbnNpdGlvbjogXHJcblx0XHRtYXgtaGVpZ2h0ICR0cmFuc2l0aW9uVGltZSBlYXNlLW91dCxcclxuXHRcdHBhZGRpbmctd2lkdGggMHMgZWFzZS1vdXQgJHRyYW5zaXRpb25UaW1lLFxyXG5cdCBcdGJvcmRlci13aWR0aCAwcyBlYXNlLW91dCAkdHJhbnNpdGlvblRpbWU7XHJcbn1cclxuXHJcbi5zaW1wbGVzZWFyY2gtZHJvcGRvd24tb3BlbiB7XHJcblx0QGluY2x1ZGUgYmFzaWMtZHJvcGRvd24tb3BlbjtcclxuXHRtYXgtaGVpZ2h0OiAyMDBweDtcclxuXHRvdmVyZmxvdy15OiBzY3JvbGw7XHJcblxyXG5cdC8vIHRyYW5zaXRpb246IFxyXG5cdC8vIFx0cGFkZGluZyAwcyBlYXNlLW91dCAkdHJhbnNpdGlvblRpbWUsXHJcblx0Ly8gIFx0Ym9yZGVyIDBzIGVhc2Utb3V0ICR0cmFuc2l0aW9uVGltZTtcclxufVxyXG5cclxuLnNpbXBsZXNlYXJjaC1yZXN1bHRzIHtcclxuXHRtYXJnaW46IDByZW07XHJcbn1cclxuXHJcbi5zaW1wbGVzZWFyY2gtcmVzdWx0LXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJHNlbGVjdC1iZy1jb2xvciwgMTUlKTtcclxufVxyXG5cclxuQG1peGluIHNpbXBsZXNlYXJjaC1yZXN1bHQoKSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLDAsMCwuMDUpO1xyXG5cdHBhZGRpbmctbGVmdDogLjVyZW07XHJcblx0JHRvcEJvdHRvbVBhZGRpbmc6IC4xcmVtO1xyXG5cdHBhZGRpbmctdG9wOiAkdG9wQm90dG9tUGFkZGluZztcclxuXHRwYWRkaW5nLWJvdHRvbTogJHRvcEJvdHRvbVBhZGRpbmc7XHJcbn1cclxuXHJcbi5zaW1wbGVzZWFyY2gtcmVzdWx0IHtcclxuXHRAaW5jbHVkZSBzaW1wbGVzZWFyY2gtcmVzdWx0O1xyXG5cdCY6aG92ZXIge1xyXG5cdFx0QGV4dGVuZCAuc2ltcGxlc2VhcmNoLXJlc3VsdC1zZWxlY3RlZDtcclxuICBcdH1cclxufVxyXG5cclxuLnNpbXBsZXNlYXJjaC1ub3Jlc3VsdHMge1xyXG5cdEBpbmNsdWRlIHNpbXBsZXNlYXJjaC1yZXN1bHQ7XHJcbn1cclxuXHJcbi5zaW1wbGVzZWFyY2gtbG9hZGluZyB7XHJcblx0QGluY2x1ZGUgc2ltcGxlc2VhcmNoLXJlc3VsdDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBsb2FkaW5nLXNwaW5uZXItc3BpbiB7XHJcbiAgdG8ge3RyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7fVxyXG59XHJcblxyXG5AbWl4aW4gbG9hZGluZy1zcGlubmVyKCRzaXplKSB7XHJcblxyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcblx0JHRoaWNrbmVzczogMnB4ICFkZWZhdWx0O1xyXG5cdCRiYXNlLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xyXG5cdCR3aGVlbC1jb2xvcjogI2MzMCAhZGVmYXVsdDtcclxuXHQkc3BlZWQ6IDgwMG1zICFkZWZhdWx0O1xyXG5cclxuXHRoZWlnaHQ6ICRzaXplO1xyXG5cdHdpZHRoOiAkc2l6ZTtcclxuXHRib3JkZXI6ICR0aGlja25lc3Mgc29saWQgJGJhc2UtY29sb3I7XHJcblx0Ym9yZGVyOiB7XHJcblx0XHRyaWdodC1jb2xvcjogJHdoZWVsLWNvbG9yO1xyXG5cdFx0dG9wLWNvbG9yOiAkd2hlZWwtY29sb3I7XHJcblx0XHRyYWRpdXM6IDEwMCU7XHJcblx0fVxyXG5cdGFuaW1hdGlvbjogbG9hZGluZy1zcGlubmVyLXNwaW4gJHNwZWVkIGluZmluaXRlIGxpbmVhcjtcclxufVxyXG5cclxuLnNpbXBsZXNlYXJjaC1sb2FkaW5nLXNwaW5uZXIge1xyXG5cdEBpbmNsdWRlIGxvYWRpbmctc3Bpbm5lcigkc2l6ZTogMXJlbSk7XHJcbn1cclxuIiwiLnNpbXBsZS1ncmlke1xyXG59XHJcblxyXG4uc2ltcGxlLWdyaWQ6Zm9jdXMge1xyXG4gICAgQGluY2x1ZGUgYmxvY2stZ2xvd2luZy1lZmZlY3QoZm9jdXMsIDBzLCAkZ2xvd2luZy1lZmZlY3QtY29sb3IpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbkBtaXhpbiBzaW1wbGUtZ3JpZC1pdGVtKCRjb2xvcikge1xyXG5cdHBhZGRpbmc6IHJlbS1jYWxjKDkgMTQgOSk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdGJvcmRlci13aWR0aDogMXB4O1xyXG5cdFxyXG5cdC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBjb2xvciBhbmQgYm9yZGVyIGNvbWUgdGhyb3VnaC5cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcblx0Ym9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjcnVtYi1mdW5jdGlvbi1mYWN0b3IpO1xyXG59XHJcblxyXG4uc2ltcGxlLWdyaWQtaXRlbSB7XHJcblx0QGluY2x1ZGUgc2ltcGxlLWdyaWQtaXRlbSgkY29sb3I6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IDY1JSkpXHJcbn1cclxuXHJcbi5zaW1wbGUtZ3JpZC1pdGVtLWFjdGl2ZSB7XHJcblx0QGluY2x1ZGUgc2ltcGxlLWdyaWQtaXRlbSgkY29sb3I6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IDQ1JSkpXHJcbn1cclxuXHJcbi5zaW1wbGUtZ3JpZC1pdGVtOmhvdmVyIHtcclxuXHRAZXh0ZW5kIC5zaW1wbGUtZ3JpZC1pdGVtLWFjdGl2ZVxyXG59IiwiLnZhbGlkYXRlLWVycm9yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuICAgIGlucHV0LFxyXG4gICAgdGV4dGFyZWEsXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nXHJcbiAgICB9XHJcblxyXG5cclxuICAgID4gbGFiZWwge1xyXG4gICAgICAgID4gc21hbGwge1xyXG4gICAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNjAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5lcnJvci1tZXNzYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuaW5wdXQudmFsaWRhdGUtZXJyb3IsIFxyXG50ZXh0YXJlYS52YWxpZGF0ZS1lcnJvcixcclxuc2VsZWN0LnZhbGlkYXRlLWVycm9yIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRhbGVydC1jb2xvciwgMjApO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQtY29sb3I7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkYWxlcnQtY29sb3IsIDIwKTtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRhbGVydC1jb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxudWwudmFsaWRhdGUtZXJyb3ItbGlzdCB7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIGJhY2tncm91bmQ6ICRhbGVydC1jb2xvcjtcclxuXHJcblxyXG4gICAgOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A7XHJcbiAgICB9XHJcblxyXG4gICAgOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XHJcbiAgICB9XHJcbn1cclxuXHJcbmxpLnZhbGlkYXRlLWVycm9yLWl0ZW0ge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZztcclxuICAgIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zaXplO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtd2VpZ2h0O1xyXG4gICAgZm9udC1zdHlsZTogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTtcclxuXHJcbiAgICAvLyBXZSBjYW4gY29udHJvbCB0aGUgdGV4dCBjb2xvciBiYXNlZCBvbiB0aGUgYnJpZ2h0bmVzcyBvZiB0aGUgYmFja2dyb3VuZC5cclxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYWxlcnQtY29sb3IpO1xyXG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWNvbG9yO1xyXG4gICAgQGlmICRiZy1saWdodG5lc3MgPCA3MCUgb3IgJGFsZXJ0LWNvbG9yID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOyB9XHJcbiAgICBAZWxzZSB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yLWFsdDsgfVxyXG59IiwiLyohXHJcbiAqIEZhbmN5dHJlZSBcImJvb3RzdHJhcFwiIHNraW4gKGhpZ2hsaWdodGluZyB0aGUgbm9kZSBzcGFuIGluc3RlYWQgb2YgdGl0bGUtb25seSkuXHJcbiAqXHJcbiAqIERPTidUIEVESVQgVEhFIENTUyBGSUxFIERJUkVDVExZLCBzaW5jZSBpdCBpcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tXHJcbiAqIHRoZSBMRVNTIHRlbXBsYXRlcy5cclxuICovXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIENvbW1vbiBTdHlsZXMgZm9yIEZhbmN5dHJlZSBTa2lucy5cclxuICpcclxuICogVGhpcyBzZWN0aW9uIGlzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGZyb20gdGhlIGBza2luLWNvbW1vbi5sZXNzYCB0ZW1wbGF0ZS5cclxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogSGVscGVyc1xyXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4udWktaGVscGVyLWhpZGRlbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuQG1peGluIGZhbmN5dHJlZS11bHtcclxuXHJcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTsgLy9taW5lXHJcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vbWluZVxyXG5cclxuICBmb250LXNpemU6IC45cmVtOyAvL21pbmVcclxuICBsaW5lLWhlaWdodDogMS41cmVtOyAvL21pbmVcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIHBhZGRpbmc6IDNweDtcclxuICBtYXJnaW46IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgLy9taW5lXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgLy9ib3JkZXI6IDFweCBkb3R0ZWQgZ3JheTtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICBtaW4taGVpZ2h0OiAwJTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogQ29udGFpbmVyIGFuZCBVTCAvIExJXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnVsLmZhbmN5dHJlZS1jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGZhbmN5dHJlZS11bDtcclxuICAvLyBmb250LWZhbWlseTogdGFob21hLCBhcmlhbCwgaGVsdmV0aWNhO1xyXG4gIC8vIGZvbnQtc2l6ZTogMTBwdDtcclxuICAvLyB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIC8vIHBhZGRpbmc6IDNweDtcclxuICAvLyBtYXJnaW46IDA7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgLy8gYm9yZGVyOiAxcHggZG90dGVkIGdyYXk7XHJcbiAgLy8gb3ZlcmZsb3c6IGF1dG87XHJcbiAgLy8gbWluLWhlaWdodDogMCU7XHJcbiAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuIFxyXG59XHJcbnVsLmZhbmN5dHJlZS1jb250YWluZXIgdWwge1xyXG4gIEBpbmNsdWRlIGZhbmN5dHJlZS11bDtcclxuICBwYWRkaW5nOiAwIDAgMCAxNnB4O1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG51bC5mYW5jeXRyZWUtY29udGFpbmVyIGxpIHtcclxuICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xyXG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIC1tb3otYmFja2dyb3VuZC1jbGlwOiBib3JkZXI7XHJcbiAgLW1vei1iYWNrZ3JvdW5kLWlubGluZS1wb2xpY3k6IGNvbnRpbnVvdXM7XHJcbiAgLW1vei1iYWNrZ3JvdW5kLW9yaWdpbjogcGFkZGluZztcclxuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwZW0gMGVtO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAxcHggMCAwIDA7XHJcbn1cclxudWwuZmFuY3l0cmVlLWNvbnRhaW5lciBsaS5mYW5jeXRyZWUtbGFzdHNpYiB7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxufVxyXG51bC5mYW5jeXRyZWUtbm8tY29ubmVjdG9yID4gbGkge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbn1cclxuLnVpLWZhbmN5dHJlZS1kaXNhYmxlZCB1bC5mYW5jeXRyZWUtY29udGFpbmVyIHtcclxuICBvcGFjaXR5OiAwLjU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogc2lsdmVyO1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqIENvbW1vbiBpY29uIGRlZmluaXRpb25zXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNwYW4uZmFuY3l0cmVlLWVtcHR5LFxyXG5zcGFuLmZhbmN5dHJlZS12bGluZSxcclxuc3Bhbi5mYW5jeXRyZWUtZXhwYW5kZXIsXHJcbnNwYW4uZmFuY3l0cmVlLWljb24sXHJcbnNwYW4uZmFuY3l0cmVlLWNoZWNrYm94LFxyXG5zcGFuLmZhbmN5dHJlZS1yYWRpbyxcclxuc3Bhbi5mYW5jeXRyZWUtZHJhZy1oZWxwZXItaW1nLFxyXG4jZmFuY3l0cmVlLWRyb3AtbWFya2VyIHtcclxuICB3aWR0aDogMWVtO1xyXG4gIGhlaWdodDogMWVtO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwZW0gMGVtO1xyXG59XHJcbnNwYW4uZmFuY3l0cmVlLWljb24sXHJcbnNwYW4uZmFuY3l0cmVlLWNoZWNrYm94LFxyXG5zcGFuLmZhbmN5dHJlZS1yYWRpbyxcclxuc3Bhbi5mYW5jeXRyZWUtY3VzdG9tLWljb24ge1xyXG4gIG1hcmdpbi10b3A6IDFweDtcclxufVxyXG4vKiBVc2VkIGJ5IGljb25jbGFzcyBvcHRpb24gKi9cclxuc3Bhbi5mYW5jeXRyZWUtY3VzdG9tLWljb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4vKiBVc2VkIGJ5ICdpY29uJyBub2RlIG9wdGlvbjogKi9cclxuaW1nLmZhbmN5dHJlZS1pY29uIHtcclxuICB3aWR0aDogMWVtO1xyXG4gIGhlaWdodDogMWVtO1xyXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxuICBtYXJnaW4tdG9wOiAxcHg7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBib3JkZXItc3R5bGU6IG5vbmU7XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogRXhwYW5kZXIgaWNvblxyXG4gKlxyXG4gKiBOb3RlOiBJRTYgZG9lc24ndCBjb3JyZWN0bHkgZXZhbHVhdGUgbXVsdGlwbGVzIGNsYXNzIG5hbWVzLFxyXG4gKlx0XHQgc28gd2UgY3JlYXRlIGNvbWJpbmVkIGNsYXNzIG5hbWVzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIENTUy5cclxuICpcclxuICogUHJlZml4OiBmYW5jeXRyZWUtZXhwLVxyXG4gKiAxc3QgY2hhcmFjdGVyOiAnZSc6IGV4cGFuZGVkLCAnYyc6IGNvbGxhcHNlZCwgJ24nOiBubyBjaGlsZHJlblxyXG4gKiAybmQgY2hhcmFjdGVyIChvcHRpb25hbCk6ICdkJzogbGF6eSAoRGVsYXllZClcclxuICogM3JkIGNoYXJhY3RlciAob3B0aW9uYWwpOiAnbCc6IExhc3Qgc2libGluZ1xyXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5zcGFuLmZhbmN5dHJlZS1leHBhbmRlciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5mYW5jeXRyZWUtZXhwLW4gc3Bhbi5mYW5jeXRyZWUtZXhwYW5kZXIsXHJcbi5mYW5jeXRyZWUtZXhwLW5sIHNwYW4uZmFuY3l0cmVlLWV4cGFuZGVyIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG4uZmFuY3l0cmVlLWxvYWRpbmcgc3Bhbi5mYW5jeXRyZWUtZXhwYW5kZXIsXHJcbi5mYW5jeXRyZWUtbG9hZGluZyBzcGFuLmZhbmN5dHJlZS1leHBhbmRlcjpob3ZlcixcclxuLmZhbmN5dHJlZS1zdGF0dXNub2RlLXdhaXQgc3Bhbi5mYW5jeXRyZWUtaWNvbixcclxuLmZhbmN5dHJlZS1zdGF0dXNub2RlLXdhaXQgc3Bhbi5mYW5jeXRyZWUtaWNvbjpob3ZlciB7XHJcbiAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJsb2FkaW5nLmdpZlwiKTtcclxufVxyXG4vKiBTdGF0dXMgbm9kZSBpY29ucyAqL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBDaGVja2JveCBpY29uXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNwYW4uZmFuY3l0cmVlLWNoZWNrYm94IHtcclxuICBtYXJnaW4tbGVmdDogMC41ZW07XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogUmFkaW9idXR0b24gaWNvblxyXG4gKiBUaGlzIGlzIGEgY3VzdG9taXphdGlvbiwgdGhhdCBtYXkgYmUgYWN0aXZhdGVkIGJ5IG92ZXJyaWRpbmcgdGhlICdjaGVja2JveCdcclxuICogY2xhc3MgbmFtZSBhcyAnZmFuY3l0cmVlLXJhZGlvJyBpbiB0aGUgdHJlZSBvcHRpb25zLlxyXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBOb2RlIHR5cGUgaWNvblxyXG4gKiBOb3RlOiBJRTYgZG9lc24ndCBjb3JyZWN0bHkgZXZhbHVhdGUgbXVsdGlwbGVzIGNsYXNzIG5hbWVzLFxyXG4gKlx0XHQgc28gd2UgY3JlYXRlIGNvbWJpbmVkIGNsYXNzIG5hbWVzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIENTUy5cclxuICpcclxuICogUHJlZml4OiBmYW5jeXRyZWUtaWNvLVxyXG4gKiAxc3QgY2hhcmFjdGVyOiAnZSc6IGV4cGFuZGVkLCAnYyc6IGNvbGxhcHNlZFxyXG4gKiAybmQgY2hhcmFjdGVyIChvcHRpb25hbCk6ICdmJzogZm9sZGVyXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNwYW4uZmFuY3l0cmVlLWljb24ge1xyXG4gIG1hcmdpbi1sZWZ0OiAwLjVlbTtcclxufVxyXG4vKiBEb2N1bWVudHMgKi9cclxuLyogRm9sZGVycyAqL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBOb2RlIHRpdGxlcyBhbmQgaGlnaGxpZ2h0aW5nXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnNwYW4uZmFuY3l0cmVlLW5vZGUge1xyXG4gIC8qIFNlZSAjMTE3ICovXHJcbiAgZGlzcGxheTogaW5oZXJpdDtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5zcGFuLmZhbmN5dHJlZS10aXRsZSB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHBhZGRpbmctbGVmdDogM3B4O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDNweDtcclxuICBjb2xvcjogYmxhY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBtYXJnaW46IDBweDtcclxuICBtYXJnaW4tbGVmdDogM3B4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5zcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1lcnJvciBzcGFuLmZhbmN5dHJlZS10aXRsZSB7XHJcbiAgY29sb3I6IHJlZDtcclxufVxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiBEcmFnJ24nZHJvcCBzdXBwb3J0XHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbmRpdi5mYW5jeXRyZWUtZHJhZy1oZWxwZXIgYSB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgZ3JheTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgb3BhY2l0eTogMC44O1xyXG59XHJcbmRpdi5mYW5jeXRyZWUtZHJhZy1oZWxwZXIuZmFuY3l0cmVlLWRyb3AtcmVqZWN0IHtcclxuICAvL2JvcmRlci1jb2xvcjogcmVkO1xyXG59XHJcbi8qKiogRHJvcCBtYXJrZXIgaWNvbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiNmYW5jeXRyZWUtZHJvcC1tYXJrZXIge1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItYXJyb3ctcmlnaHQpO1xyXG4gIHdpZHRoOiAyZW07XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG4jZmFuY3l0cmVlLWRyb3AtbWFya2VyLmZhbmN5dHJlZS1kcm9wLWFmdGVyLFxyXG4jZmFuY3l0cmVlLWRyb3AtbWFya2VyLmZhbmN5dHJlZS1kcm9wLWJlZm9yZSB7XHJcbiAgd2lkdGg6IDRlbTtcclxufVxyXG4vKioqIFNvdXJjZSBub2RlIHdoaWxlIGRyYWdnaW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5zcGFuLmZhbmN5dHJlZS1kcmFnLXNvdXJjZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcclxufVxyXG5zcGFuLmZhbmN5dHJlZS1kcmFnLXNvdXJjZSBzcGFuLmZhbmN5dHJlZS50aXRsZSB7XHJcbiAgY29sb3I6IGdyYXk7XHJcbn1cclxuLyoqKiBUYXJnZXQgbm9kZSB3aGlsZSBkcmFnZ2luZyBjdXJzb3IgaXMgb3ZlciBpdCAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLy8gc3Bhbi5mYW5jeXRyZWUtZHJvcC10YXJnZXQuZmFuY3l0cmVlLWRyb3AtYWNjZXB0IGEge1xyXG4vLyAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDUpICFpbXBvcnRhbnQ7XHJcbi8vICAgLy9jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuLy8gICAvKiBAIElFNiAqL1xyXG4vLyAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuLy8gfVxyXG5zcGFuLmZhbmN5dHJlZS1kcm9wLXRhcmdldC5mYW5jeXRyZWUtZHJvcC1hY2NlcHQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDE1KTtcclxufVxyXG4vLyBzcGFuLmZhbmN5dHJlZS1kcm9wLXRhcmdldCAuZmFuY3l0cmVlLWV4cGFuZGVyIHtcclxuLy8gICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbi8vIH1cclxuXHJcbnNwYW4uZmFuY3l0cmVlLWRyb3AtdGFyZ2V0LmZhbmN5dHJlZS1kcm9wLWFmdGVyIC5mYW5jeXRyZWUtZXhwYW5kZXIsXHJcbnNwYW4uZmFuY3l0cmVlLWRyb3AtdGFyZ2V0LmZhbmN5dHJlZS1kcm9wLWJlZm9yZSAuZmFuY3l0cmVlLWV4cGFuZGVye1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbn1cclxuXHJcbnNwYW4uZmFuY3l0cmVlLWRyb3AtdGFyZ2V0IC5mYW5jeXRyZWUtZXhwYW5kZXJ7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4uZmFuY3l0cmVlLW5vZGUuZmFuY3l0cmVlLWRyb3AtcmVqZWN0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnQtY29sb3I7XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICogJ3RhYmxlJyBleHRlbnNpb25cclxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LXRhYmxlIHNwYW4uZmFuY3l0cmVlLW5vZGUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gKiAnY29sdW1udmlldycgZXh0ZW5zaW9uXHJcbiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtY29sdW1udmlldyB0Ym9keSB0ciB0ZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LWNvbHVtbnZpZXcgdGJvZHkgdHIgdGQgPiB1bCB7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LWNvbHVtbnZpZXcgdGJvZHkgdHIgdGQgPiB1bCBsaSB7XHJcbiAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcclxuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAtbW96LWJhY2tncm91bmQtY2xpcDogYm9yZGVyO1xyXG4gIC1tb3otYmFja2dyb3VuZC1pbmxpbmUtcG9saWN5OiBjb250aW51b3VzO1xyXG4gIC1tb3otYmFja2dyb3VuZC1vcmlnaW46IHBhZGRpbmc7XHJcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMGVtIDBlbTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAvKiBubyB2LWxpbmVzICovXHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDFweCAwIDAgMDtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LWNvbHVtbnZpZXcgc3Bhbi5mYW5jeXRyZWUtbm9kZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC8qIGFsbG93IHBvc2l0aW9uaW5nIG9mIGVtYmVkZGVkIHNwYW5zICovXHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtY29sdW1udmlldyBzcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1leHBhbmRlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0NCRThGNjtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LWNvbHVtbnZpZXcgLmZhbmN5dHJlZS1oYXMtY2hpbGRyZW4gc3Bhbi5mYW5jeXRyZWUtY3YtcmlnaHQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogM3B4O1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqICdmaWx0ZXInIGV4dGVuc2lvblxyXG4gKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uZmFuY3l0cmVlLWV4dC1maWx0ZXItZGltbSBzcGFuLmZhbmN5dHJlZS1ub2RlIHNwYW4uZmFuY3l0cmVlLXRpdGxlIHtcclxuICBjb2xvcjogc2lsdmVyO1xyXG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG59XHJcbi5mYW5jeXRyZWUtZXh0LWZpbHRlci1kaW1tIHRyLmZhbmN5dHJlZS1zdWJtYXRjaCBzcGFuLmZhbmN5dHJlZS10aXRsZSxcclxuLmZhbmN5dHJlZS1leHQtZmlsdGVyLWRpbW0gc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtc3VibWF0Y2ggc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcbi5mYW5jeXRyZWUtZXh0LWZpbHRlci1kaW1tIHRyLmZhbmN5dHJlZS1tYXRjaCBzcGFuLmZhbmN5dHJlZS10aXRsZSxcclxuLmZhbmN5dHJlZS1leHQtZmlsdGVyLWRpbW0gc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtbWF0Y2ggc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG4uZmFuY3l0cmVlLWV4dC1maWx0ZXItaGlkZSB0ci5mYW5jeXRyZWUtaGlkZSxcclxuLmZhbmN5dHJlZS1leHQtZmlsdGVyLWhpZGUgc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtaGlkZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uZmFuY3l0cmVlLWV4dC1maWx0ZXItaGlkZSB0ci5mYW5jeXRyZWUtc3VibWF0Y2ggc3Bhbi5mYW5jeXRyZWUtdGl0bGUsXHJcbi5mYW5jeXRyZWUtZXh0LWZpbHRlci1oaWRlIHNwYW4uZmFuY3l0cmVlLW5vZGUuZmFuY3l0cmVlLXN1Ym1hdGNoIHNwYW4uZmFuY3l0cmVlLXRpdGxlIHtcclxuICBjb2xvcjogc2lsdmVyO1xyXG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG59XHJcbi5mYW5jeXRyZWUtZXh0LWZpbHRlci1oaWRlIHRyLmZhbmN5dHJlZS1tYXRjaCBzcGFuLmZhbmN5dHJlZS10aXRsZSxcclxuLmZhbmN5dHJlZS1leHQtZmlsdGVyLWhpZGUgc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtbWF0Y2ggc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGNvbG9yOiBibGFjaztcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAqICd3aWRlJyBleHRlbnNpb25cclxuICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxudWwuZmFuY3l0cmVlLWV4dC13aWRlIHNwYW4uZmFuY3l0cmVlLW5vZGUgPiBzcGFuIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMjtcclxufVxyXG51bC5mYW5jeXRyZWUtZXh0LXdpZGUgc3Bhbi5mYW5jeXRyZWUtbm9kZSBzcGFuLmZhbmN5dHJlZS10aXRsZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1sZWZ0OiA1MDNweDtcclxuICBtYXJnaW4tbGVmdDogLTUwMHB4O1xyXG59XHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAqIFN0eWxlcyBzcGVjaWZpYyB0byB0aGlzIHNraW4uXHJcbiAqXHJcbiAqIFRoaXMgc2VjdGlvbiBpcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBmcm9tIHRoZSBgdWktZmFuY3l0cmVlLmxlc3NgIHRlbXBsYXRlLlxyXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG51bC5mYW5jeXRyZWUtY29udGFpbmVyIHVsIHtcclxuICBwYWRkaW5nOiAwIDAgMCAxLjVlbTtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuLyogUHJldmVudCBmb2N1cyBmcmFtZSAqL1xyXG4uZmFuY3l0cmVlLWNvbnRhaW5lcjpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5zcGFuLmZhbmN5dHJlZS1ub2RlIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbn1cclxuc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxufVxyXG5zcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1zZWxlY3RlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgwYzc4MDtcclxuICBib3JkZXItY29sb3I6ICM4MGM3ODA7XHJcbn1cclxuc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtc2VsZWN0ZWQgc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM4MGM3ODA7XHJcbn1cclxuc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtYWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAxNSk7XHJcbn1cclxuLmZhbmN5dHJlZS1jb250YWluZXIuZmFuY3l0cmVlLXRyZWVmb2N1cyBzcGFuLmZhbmN5dHJlZS1ub2RlOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAxNSk7XHJcbn1cclxuLmZhbmN5dHJlZS1jb250YWluZXIuZmFuY3l0cmVlLXRyZWVmb2N1cyBzcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1mb2N1c2VkIHtcclxuICBib3JkZXItY29sb3I6ICM0MjhiY2E7XHJcbn1cclxuLmZhbmN5dHJlZS1jb250YWluZXIuZmFuY3l0cmVlLXRyZWVmb2N1cyBzcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1zZWxlY3RlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVjYjg1YztcclxufVxyXG4uZmFuY3l0cmVlLWNvbnRhaW5lci5mYW5jeXRyZWUtdHJlZWZvY3VzIHNwYW4uZmFuY3l0cmVlLW5vZGUuZmFuY3l0cmVlLXNlbGVjdGVkIHNwYW4uZmFuY3l0cmVlLXRpdGxlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjO1xyXG59XHJcbi5mYW5jeXRyZWUtY29udGFpbmVyLmZhbmN5dHJlZS10cmVlZm9jdXMgc3Bhbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtYWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCA1KTtcclxuICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbn1cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogJ3RhYmxlJyBleHRlbnNpb25cclxuICovXHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtdGFibGUgdGJvZHkgdHIgdGQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZSB0Ym9keSB0ci5mYW5jeXRyZWUtc2VsZWN0ZWQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM4MGM3ODA7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZSB0Ym9keSB0ci5mYW5jeXRyZWUtc2VsZWN0ZWQgc3Bhbi5mYW5jeXRyZWUtbm9kZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgwYzc4MDtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LXRhYmxlIHRib2R5IHRyLmZhbmN5dHJlZS1zZWxlY3RlZCBzcGFuLmZhbmN5dHJlZS10aXRsZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgwYzc4MDtcclxufVxyXG50YWJsZS5mYW5jeXRyZWUtZXh0LXRhYmxlIHRib2R5IHRyLmZhbmN5dHJlZS1hY3RpdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM2YWEzZDU7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZSB0Ym9keSB0ci5mYW5jeXRyZWUtYWN0aXZlIHNwYW4uZmFuY3l0cmVlLW5vZGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM2YWEzZDU7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZS5mYW5jeXRyZWUtdHJlZWZvY3VzIHRib2R5IHRyOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTlmMmY5O1xyXG59XHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtdGFibGUuZmFuY3l0cmVlLXRyZWVmb2N1cyB0Ym9keSB0ci5mYW5jeXRyZWUtZm9jdXNlZCBzcGFuLmZhbmN5dHJlZS10aXRsZSB7XHJcbiAgb3V0bGluZTogMXB4IGRvdHRlZCAjNDI4YmNhO1xyXG59XHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtdGFibGUuZmFuY3l0cmVlLXRyZWVmb2N1cyB0Ym9keSB0ci5mYW5jeXRyZWUtc2VsZWN0ZWQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZS5mYW5jeXRyZWUtdHJlZWZvY3VzIHRib2R5IHRyLmZhbmN5dHJlZS1zZWxlY3RlZCBzcGFuLmZhbmN5dHJlZS1ub2RlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWNiODVjO1xyXG59XHJcbnRhYmxlLmZhbmN5dHJlZS1leHQtdGFibGUuZmFuY3l0cmVlLXRyZWVmb2N1cyB0Ym9keSB0ci5mYW5jeXRyZWUtc2VsZWN0ZWQgc3Bhbi5mYW5jeXRyZWUtdGl0bGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM1Y2I4NWM7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZS5mYW5jeXRyZWUtdHJlZWZvY3VzIHRib2R5IHRyLmZhbmN5dHJlZS1hY3RpdmUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM0MjhiY2E7XHJcbn1cclxudGFibGUuZmFuY3l0cmVlLWV4dC10YWJsZS5mYW5jeXRyZWUtdHJlZWZvY3VzIHRib2R5IHRyLmZhbmN5dHJlZS1hY3RpdmUgc3Bhbi5mYW5jeXRyZWUtbm9kZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQyOGJjYTtcclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogaWNvbmlmaWNhdGlvblxyXG4gKi9cclxuXHJcbi5mYW5jeXRyZWUtaGFzLWNoaWxkcmVuID4gLmZhbmN5dHJlZS1leHBhbmRlcntcclxuICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLXBsdXMtc3F1YXJlKTtcclxufVxyXG5cclxuLmZhbmN5dHJlZS1oYXMtY2hpbGRyZW4uZmFuY3l0cmVlLWV4cGFuZGVkID4gLmZhbmN5dHJlZS1leHBhbmRlcntcclxuICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLW1pbnVzLXNxdWFyZSk7XHJcbn1cclxuXHJcbi5mYW5jeXRyZWUtaGFzLWNoaWxkcmVuLmZhbmN5dHJlZS1leHBhbmRlZC5mYW5jeXRyZWUtbG9hZGluZyA+IC5mYW5jeXRyZWUtZXhwYW5kZXJ7XHJcbiAgQGluY2x1ZGUgZmEtaWNvbi1iZWZvcmUoJGZhLXZhci1zcGlubmVyKTtcclxufVxyXG5cclxuLmZhbmN5dHJlZS1ub2RlID4gLmZhbmN5dHJlZS1pY29ue1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItZmlsZSk7XHJcbn1cclxuXHJcbi5mYW5jeXRyZWUtbm9kZS5mYW5jeXRyZWUtZm9sZGVyID4gLmZhbmN5dHJlZS1pY29ue1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItZm9sZGVyKTtcclxufVxyXG5cclxuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1mb2xkZXIuZmFuY3l0cmVlLWV4cGFuZGVkID4gLmZhbmN5dHJlZS1pY29ue1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItZm9sZGVyLW9wZW4pO1xyXG59XHJcblxyXG4uZmFuY3l0cmVlLWxvYWRpbmcgPiAuZmFuY3l0cmVlLWV4cGFuZGVye1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItc3Bpbm5lcik7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcclxuICAwJSAgey13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxyXG4gIDEwMCUgey13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTt9ICAgXHJcbn1cclxuXHJcbi5mYW5jeXRyZWUtbG9hZGluZyA+IC5mYW5jeXRyZWUtZXhwYW5kZXI6YmVmb3JlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiA0cyBpbmZpbml0ZSBsaW5lYXI7XHJcbn1cclxuXHJcbi5mYW5jeXRyZWUtZHJvcC1tYXJrZXJ7XHJcbiAgLy9AaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLWFycm93LXJpZ2h0KTtcclxufVxyXG5cclxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICogbm9kZSBidXR0b25zXHJcbiAqL1xyXG5cclxuLmZhbmN5dHJlZS1idXR0b24tY29udGFpbmVyIHtcclxuICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5mYW5jeXRyZWUtY29udGFpbmVyLmZhbmN5dHJlZS10cmVlZm9jdXMgc3Bhbi5mYW5jeXRyZWUtbm9kZTpob3ZlciAuZmFuY3l0cmVlLWJ1dHRvbi1jb250YWluZXJ7XHJcbiAgZGlzcGxheTogaW5saW5lO1xyXG59XHJcblxyXG5zcGFuLmZhbmN5dHJlZS1ub2RlLmZhbmN5dHJlZS1hY3RpdmUgLmZhbmN5dHJlZS1idXR0b24tY29udGFpbmVye1xyXG4gIGRpc3BsYXk6IGlubGluZTtcclxufVxyXG5cclxuLmZhbmN5dHJlZS1idXR0b24ge1xyXG4gIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcblxyXG4gIC8vIC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDFweDtcclxuICAvLyAtd2Via2l0LXRleHQtc3Ryb2tlLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gIC8vIHRleHQtc3Ryb2tlLXdpZHRoOiAxcHg7XHJcbiAgLy8gdGV4dC1zdHJva2UtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbn0iLCIud2Vic2l0ZWVkaXRvci13ZWJjYXRlZ29yeS1hZGRjaGlsZCB7XHJcbiAgQGluY2x1ZGUgZmEtaWNvbi1iZWZvcmUoJGZhLXZhci1wbHVzKTtcclxufVxyXG4ud2Vic2l0ZWVkaXRvci13ZWJjYXRlZ29yeS1lZGl0IHtcclxuICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLXBlbmNpbCk7XHJcbn1cclxuLndlYnNpdGVlZGl0b3Itd2ViY2F0ZWdvcnktbWlycm9yIHtcclxuICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLXNoYXJlKTtcclxufVxyXG4ud2Vic2l0ZWVkaXRvci13ZWJjYXRlZ29yeS1kZWxldGUge1xyXG4gIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItdHJhc2gtbyk7XHJcbn1cclxuLndlYnNpdGVlZGl0b3Itd2ViY2F0ZWdvcnktcmVmcmVzaCB7XHJcbiAgQGluY2x1ZGUgZmEtaWNvbi1iZWZvcmUoJGZhLXZhci1yZWZyZXNoKTtcclxufVxyXG4ud2Vic2l0ZWVkaXRvci13ZWJjYXRlZ29yeS12aWV3IHtcclxuICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLXNlYXJjaCk7XHJcbn1cclxuIiwiaW5wdXRbdHlwZT1cInRleHRcIl0uYmluZGluZy1lcnJvciwgaW5wdXRbdHlwZT1cInRleHRcIl0uYmluZGluZy1lcnJvciB7XHJcbiAgXHRib3JkZXI6IDRweCBkYXNoZWQgcmVkICFpbXBvcnRhbnQ7XHJcbiAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjg4ICFpbXBvcnRhbnQ7XHJcbiAgXHRtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4uYmluZGluZy1lcnJvci1tZXNzYWdlIHtcclxuXHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtIDAuNXJlbSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi10b3A6IC0xcHggIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjg4ODg5cmVtICFpbXBvcnRhbnQ7XHJcblx0Zm9udC1zaXplOiAwLjY2NjY3cmVtICFpbXBvcnRhbnQ7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQ6ICNmMDQxMjQgIWltcG9ydGFudDtcclxuXHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNjcmlwdC1lcnJvciB7XHJcbiAgXHRib3JkZXI6IDRweCBkYXNoZWQgcmVkICFpbXBvcnRhbnQ7XHJcbiAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRjg4ICFpbXBvcnRhbnQ7XHJcblx0Zm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XHJcbn0iLCIuZmF1eHRhYmxlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmc7XHJcbiAgbWFyZ2luLWJvdHRvbTogJHRhYmxlLW1hcmdpbi1ib3R0b207XHJcbiAgcGFkZGluZzogM3B4O1xyXG59XHJcblxyXG4uZmF1eHRhYmxlLWhlYWRlciB7XHJcbiAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmc7XHJcbiAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3IgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZSAhaW1wb3J0YW50O1xyXG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZC1mb250LXdlaWdodCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmcgIWltcG9ydGFudDtcclxuICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZmF1eHRhYmxlLXJvdyB7XHJcbiAgY29sb3I6ICR0YWJsZS1yb3ctZm9udC1jb2xvciAhaW1wb3J0YW50O1xyXG4gIGZvbnQtc2l6ZTogJHRhYmxlLXJvdy1mb250LXNpemUgIWltcG9ydGFudDtcclxuICBsaW5lLWhlaWdodDogJHRhYmxlLWxpbmUtaGVpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogJHRhYmxlLXJvdy1wYWRkaW5nICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG5cdC5mYXV4dGFibGUtaGVhZGVyIC5jb2x1bW5zOmZpcnN0LWNoaWxkLFxyXG5cdC5mYXV4dGFibGUtcm93IC5jb2x1bW5zOmZpcnN0LWNoaWxkIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cdC5mYXV4dGFibGUtaGVhZGVyIC5jb2x1bW5zOmxhc3QtY2hpbGQsXHJcblx0LmZhdXh0YWJsZS1yb3cgLmNvbHVtbnM6bGFzdC1jaGlsZCB7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbi5mYXV4dGFibGUtcm93Om50aC1vZi10eXBlKG9kZCkge1xyXG4gIGJhY2tncm91bmQ6ICR0YWJsZS1ldmVuLXJvdy1iZztcclxufVxyXG5cclxuLyogbGVnYWN5IGNsYXNzIG5hbWVzICovXHJcbi5mYXV4dGFibGUgLnRhYmxlcm93IHtcclxuICBAZXh0ZW5kIC5mYXV4dGFibGUtcm93O1xyXG59XHJcblxyXG4uZmF1eHRhYmxlIC50YWJsZWhlYWRlciB7XHJcbiAgQGV4dGVuZCAuZmF1eHRhYmxlLWhlYWRlcjtcclxufVxyXG5cclxuLmZhdXh0YWJsZSAudGFibGVyb3c6bnRoLW9mLXR5cGUob2RkKSB7XHJcbiAgYmFja2dyb3VuZDogJHRhYmxlLWV2ZW4tcm93LWJnO1xyXG59IiwiLmVudGl0eWZvcm1maWVsZCB7XHJcblx0QGluY2x1ZGUgZ3JpZC1yb3coKTtcclxufVxyXG5cclxuLmVudGl0eWZvcm1maWVsZC1pdGVtLWdyaWQge1xyXG5cdEBleHRlbmQgLmZhdXh0YWJsZTtcclxufVxyXG5cclxuLmVudGl0eWZvcm1maWVsZC1pdGVtLWdyaWQtaGVhZGVyIHtcclxuXHRAaW5jbHVkZSBncmlkLXJvdygpO1xyXG5cdEBleHRlbmQgLmZhdXh0YWJsZS1oZWFkZXI7XHJcbn1cclxuXHJcbi5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLWhlYWRlci1kZXNjcmlwdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcclxufVxyXG4uZW50aXR5Zm9ybWZpZWxkLWl0ZW0tZ3JpZC1oZWFkZXItcHJpY2Uge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuLmVudGl0eWZvcm1maWVsZC1pdGVtLWdyaWQtaGVhZGVyLXF0eSB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmVudGl0eWZvcm1maWVsZC1pdGVtLWdyaWQtcm93IHtcclxuXHRAaW5jbHVkZSBncmlkLXJvdygpO1xyXG5cdEBleHRlbmQgLmZhdXh0YWJsZS1yb3c7XHJcbn1cclxuQG1lZGlhICN7JG1lZGl1bS11cH0ge1xyXG5cdC5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLXJvdy1kZXNjcmlwdGlvbiB7XHJcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcclxuXHR9XHJcblx0LmVudGl0eWZvcm1maWVsZC1pdGVtLWdyaWQtcm93LXByaWNlIHtcclxuXHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xyXG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0fVxyXG5cdC5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLXJvdy12YWx1ZSB7XHJcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdH1cclxufVxyXG5AbWVkaWEgI3skc21hbGwtb25seX0ge1xyXG5cdC5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLXJvdy1kZXNjcmlwdGlvbiB7XHJcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcblx0fVxyXG5cdC5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLXJvdy1wcmljZSB7XHJcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG5cdC5lbnRpdHlmb3JtZmllbGQtaXRlbS1ncmlkLXJvdy12YWx1ZSB7XHJcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdH1cclxufVxyXG5cclxuLyogRmllbGQgVHlwZXMgKi9cclxuXHJcbkBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcclxuXHQuZW50aXR5Zm9ybWZpZWxkLWZpZWxkdHlwZS1UZXh0X0lucHV0LFxyXG5cdC5lbnRpdHlmb3JtZmllbGQtZmllbGR0eXBlLUFkZHJlc3NfSW5wdXQsXHJcblx0LmVudGl0eWZvcm1maWVsZC1maWVsZHR5cGUtRW1haWxfSW5wdXQsXHJcblx0LmVudGl0eWZvcm1maWVsZC1maWVsZHR5cGUtVXJsX0lucHV0LFxyXG5cdC5lbnRpdHlmb3JtZmllbGQtZmllbGR0eXBlLURhdGVfSW5wdXQsXHJcblx0LmVudGl0eWZvcm1maWVsZC1maWVsZHR5cGUtQ2hlY2tib3hfSW5wdXQsXHJcblx0LmVudGl0eWZvcm1maWVsZC1maWVsZHR5cGUtTGlzdERyb3Bkb3duX0lucHV0IHtcclxuXHRcdC5lbnRpdHlmb3JtZmllbGQtbGFiZWwge1xyXG4gICAgXHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYsICRjb2xsYXBzZTp0cnVlKTtcclxuXHRcdH1cclxuXHRcdC5lbnRpdHlmb3JtZmllbGQtaW5wdXQge1xyXG4gICAgXHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYsICRjb2xsYXBzZTp0cnVlKTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIkc3BsYXNoLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcbi5zcGxhc2gsXHJcbi5zcGxhc2g6YmVmb3JlLFxyXG4uc3BsYXNoOmFmdGVyIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkMSAxcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcclxuICAgIGFuaW1hdGlvbjogbG9hZDEgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbiAgICB3aWR0aDogMWVtO1xyXG4gICAgaGVpZ2h0OiA0ZW07XHJcbn1cclxuLnNwbGFzaDpiZWZvcmUsXHJcbi5zcGxhc2g6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgY29udGVudDogJyc7XHJcbn1cclxuLnNwbGFzaDpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZDogJHNwbGFzaC1jb2xvcjtcclxuICAgIGxlZnQ6IC0xLjVlbTtcclxufVxyXG4uc3BsYXNoIHtcclxuICAgIGJhY2tncm91bmQ6ICRzcGxhc2gtY29sb3I7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcclxuICAgIG1hcmdpbjogOGVtIGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuMTZzO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4xNnM7XHJcbn1cclxuLnNwbGFzaDphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkc3BsYXNoLWNvbG9yO1xyXG4gICAgbGVmdDogMS41ZW07XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuMzJzO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4zMnM7XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWQxIHtcclxuICAgIDAlLFxyXG4gICAgODAlLFxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwICRzcGxhc2gtY29sb3I7XHJcbiAgICAgICAgaGVpZ2h0OiA0ZW07XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgLTJlbSAkc3BsYXNoLWNvbG9yO1xyXG4gICAgICAgIGhlaWdodDogNWVtO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgbG9hZDEge1xyXG4gICAgMCUsXHJcbiAgICA4MCUsXHJcbiAgICAxMDAlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgJHNwbGFzaC1jb2xvcjtcclxuICAgICAgICBoZWlnaHQ6IDRlbTtcclxuICAgIH1cclxuICAgIDQwJSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAtMmVtICRzcGxhc2gtY29sb3I7XHJcbiAgICAgICAgaGVpZ2h0OiA1ZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qcy1ub3QtcmVuZGVyZWQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufSIsIkBtaXhpbiB0YWItaGVhZGVycygpIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG5cclxuICAgICYucmFkaXVzIHtcclxuICAgICAgICBkZDpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGdsb2JhbC1yYWRpdXMpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBhIHsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGdsb2JhbC1yYWRpdXMpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi52ZXJ0aWNhbCB7XHJcbiAgICAgICAgZGQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gdGFiLWhlYWRlcigpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcclxuICAgID4gYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvcjtcclxuICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yO1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJzLW5hdmlnYXRpb24tcGFkZGluZyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmcgKiAyO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU7XHJcbiAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICR0YWJzLW5hdmlnYXRpb24taG92ZXItYmctY29sb3I7IH1cclxuICAgIH1cclxuICAgICYuYWN0aXZlIGEgeyBiYWNrZ3JvdW5kOiAkdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjsgfVxyXG59XHJcblxyXG4vLyBAbWl4aW4gdGFiLWNvbnRlbnQge1xyXG4vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbi8vICAgICBtYXJnaW4tYm90dG9tOiAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b207XHJcbi8vICAgICB3aWR0aDogMTAwJTtcclxuLy8gICAgID4gLmNvbnRlbnQge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbi8vICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4vLyAgICAgICAgIHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZyAwO1xyXG4vLyAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4vLyAgICAgICAgICYuYWN0aXZlIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBub25lOyB9XHJcbi8vICAgICAgICAgJi5jb250YWluZWQgeyBwYWRkaW5nOiAkdGFicy1jb250ZW50LXBhZGRpbmc7IH1cclxuLy8gICAgIH1cclxuLy8gICAgICYudmVydGljYWwge1xyXG4vLyAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4vLyAgICAgICAgID4gLmNvbnRlbnQgeyBwYWRkaW5nOiAwICR0YWJzLWNvbnRlbnQtcGFkZGluZzsgfVxyXG4vLyAgICAgfVxyXG4vLyB9XHJcblxyXG5AbWl4aW4gdGFiLWNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b207XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8vID4gLmNvbnRlbnQge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xyXG4gICAgICAgIHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZyAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICYuYWN0aXZlIHsgZGlzcGxheTogYmxvY2s7IGZsb2F0OiBub25lOyB9XHJcbiAgICAgICAgJi5jb250YWluZWQgeyBwYWRkaW5nOiAkdGFicy1jb250ZW50LXBhZGRpbmc7IH1cclxuICAgIC8vIH1cclxuICAgIC8vICYudmVydGljYWwge1xyXG4gICAgLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLy8gICAgID4gLmNvbnRlbnQgeyBwYWRkaW5nOiAwICR0YWJzLWNvbnRlbnQtcGFkZGluZzsgfVxyXG4gICAgLy8gfVxyXG59XHJcblxyXG4udm91Y2hlci1lZGl0LWFjdGlvbnMge1xyXG4gICAgQGluY2x1ZGUgdGFiLWhlYWRlcnM7XHJcbn1cclxuXHJcbi52b3VjaGVyLWVkaXQtYWN0aW9uLWVkaXQge1xyXG4gICAgQGluY2x1ZGUgdGFiLWhlYWRlcjtcclxufVxyXG5cclxuLnZvdWNoZXItZWRpdC1hY3Rpb24tY2FuY2VsIHtcclxuICAgIEBleHRlbmQgLmFsZXJ0O1xyXG59XHJcblxyXG4udm91Y2hlci1lZGl0LWFjdGlvbi1idXR0b25zIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxufVxyXG4udm91Y2hlci1lZGl0LWFjdGlvbi1zYXZlIHtcclxufVxyXG5cclxuLnZvdWNoZXItZWRpdC1zdGF0dXMge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnZvdWNoZXItZWRpdC1zdGF0dXMtbWVzc2FnZXMge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnM6OCwgJGNvbGxhcHNlOnRydWUpO1xyXG59XHJcblxyXG4udm91Y2hlci1lZGl0LXN0YXR1cy1tZXNzYWdlIHtcclxuICAgIEBpbmNsdWRlIGFsZXJ0O1xyXG59XHJcblxyXG4udm91Y2hlci1lZGl0LXN0YXR1cy10b3RhbHMtaGVhZGVycyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoyKTtcclxuICAgIC8vbWVkaXVtLTIgbWVkaXVtLXB1c2gtOSBjb2x1bW5zXHJcbn1cclxuXHJcbi52b3VjaGVyLWVkaXQtc3RhdHVzLXRvdGFscyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoyKTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgLy9tZWRpdW0tMSBjb2x1bW5zXHJcbn1cclxuXHJcbi8vIC52b3VjaGVyLWVkaXQtd29ya3NwYWNlcyB7XHJcbi8vIH1cclxuXHJcbi52b3VjaGVyLWVkaXQtd29ya3NwYWNlLXZvdWNoZXJpbmZvLCBcclxuLnZvdWNoZXItZWRpdC13b3Jrc3BhY2UtYWRkcmVjZWl2ZXJzLFxyXG4udm91Y2hlci1lZGl0LXdvcmtzcGFjZS1hZGRkaXN0cmlidXRpb24ge1xyXG4gICAgQGluY2x1ZGUgdGFiLWNvbnRlbnQ7XHJcbn1cclxuXHJcbi8vIC52b3VjaGVyLWVkaXQtc3RhdHVzLXRvdGFscy1yZW1haW5pbmcge1xyXG4gXHJcbi8vICAgICAudm91Y2hlci1lZGl0LWRpc3RyaWJ1dGVkLWNvbXBsZXRlIHtcclxuLy8gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcclxuLy8gICAgIH1cclxuXHJcbi8vICAgICAudm91Y2hlci1lZGl0LWRpc3RyaWJ1dGVkLWluY29tcGxldGUge1xyXG4vLyAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuLy8gICAgIH1cclxuLy8gfSIsIi5Db2RlTWlycm9yIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjOWU5ZTllO1xyXG59IiwiaW5wdXRbdHlwZT1cInRleHRcIl0uZWxmaW5kZXItZWRpdHJvdy1pbnB1dCB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoxMCk7XHJcbn1cclxuLmVsZmluZGVyLWVkaXRyb3ctb3BlbiB7XHJcbiAgICBAaW5jbHVkZSBwcmVmaXgtcG9zdGZpeC1iYXNlKCk7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgJGZsb2F0OmxlZnQpO1xyXG59XHJcbiIsIi5oZWFkZXItZ3JpZCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmhlYWRlci1ncmlkLXJvdyB7XHJcbiAgICBAaW5jbHVkZSBmbGV4LXJvdygpO1xyXG59XHJcblxyXG4uaGVhZGVyLWdyaWQtY2VsbCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4LWNlbGwoKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyZXk7XHJcbn0iLCIuaXRlbWVkaXQtY2F0cGF0aC1jYXRlZ29yeSB7XHJcbiAgICBsaXN0LXN0eWxlOiByZW0tY2FsYyg0KTtcclxuICAgIC8vIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xyXG59XHJcblxyXG4uaXRlbWVkaXQtY2F0cGF0aC1jYXRlZ29yeS1yZW1vdmUtcm93IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOnJlbS1jYWxjKDkpKTtcclxufVxyXG5cclxuLml0ZW1lZGl0LWNhdHBhdGgtY2F0ZWdvcnktcmVtb3ZlLXJvdy1pY29uIHtcclxuICAgIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItdHJhc2gtbyk7XHJcbn1cclxuXHJcbi5pdGVtZWRpdC1jYXRwYXRoLWNhdGVnb3J5LXJlbW92ZS1pdGVtIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOnJlbS1jYWxjKDkpKTtcclxufVxyXG5cclxuLml0ZW1lZGl0LWNhdHBhdGgtY2F0ZWdvcnktcmVtb3ZlLWl0ZW0taWNvbiB7XHJcbiAgICBAaW5jbHVkZSBmYS1pY29uLWJlZm9yZSgkZmEtdmFyLWFycm93LWxlZnQpO1xyXG59XHJcblxyXG4uaXRlbWVkaXQtY2F0cGF0aC1jYXRlZ29yeS1kdXBsaWNhdGUtcm93IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOnJlbS1jYWxjKDkpKTtcclxufVxyXG5cclxuLml0ZW1lZGl0LWNhdHBhdGgtY2F0ZWdvcnktZHVwbGljYXRlLXJvdy1pY29uIHtcclxuICAgIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItYXJyb3ctY2lyY2xlLWRvd24pO1xyXG59XHJcblxyXG4uaXRlbWVkaXQtY2F0cGF0aC1jYXRlZ29yeS1kdXBsaWNhdGUtaW50b2NoaWxkcmVuIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOnJlbS1jYWxjKDkpKTtcclxufVxyXG5cclxuLml0ZW1lZGl0LWNhdHBhdGgtY2F0ZWdvcnktZHVwbGljYXRlLWludG9jaGlsZHJlbi1pY29uIHtcclxuICAgIEBpbmNsdWRlIGZhLWljb24tYmVmb3JlKCRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0KTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSg0NWRlZywgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pdGVtZWRpdC1jYXRwYXRoLWNhdGVnb3J5LXBhdGhzIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLml0ZW1lZGl0LWNhdHBhdGgtY2F0ZWdvcnktcGF0aHMtaXRlbSB7XHJcbn1cclxuXHJcbi5pdGVtZWRpdC1jYXRwYXRoLWNhdGVnb3J5LWR1cGxpY2F0ZSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzpyZW0tY2FsYyg5KSk7XHJcbn1cclxuXHJcbi5pdGVtZWRpdC1jYXRwYXRoLWNhdGVnb3J5LXNlbGVjdCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogcmVtLWNhbGMoMTUwKTtcclxufVxyXG4iLCIudGFzay1pY29uIHtcclxuICAgIC8vIFVzZWQgYXMgYSBkZWZhdWx0IGZvciB0YXNrIHR5cGVzIG5vdCBhc3NpZ25lZCBhbiBpY29uLlxyXG4gICAgY29udGVudDogdXJsKFwiL0JSQUlOL0ltYWdlcy9oZWxwLmdpZlwiKTtcclxufVxyXG5cclxuLnRhc2staWNvbi50YXNrLWljb24tdG8tZG8ge1xyXG4gICAgY29udGVudDogdXJsKFwiL0JSQUlOL0ltYWdlcy9JY29ucy9pY29uMTYtdG9kb3MucG5nXCIpO1xyXG59XHJcblxyXG4udGFzay1pY29uLnRhc2staWNvbi1hcHBvaW50bWVudCB7XHJcbiAgICBjb250ZW50OiB1cmwoXCIvQlJBSU4vSW1hZ2VzL0ljb25zL2ljb24xNi1jYWxlbmRhci5wbmdcIik7XHJcbn1cclxuXHJcbi50YXNrLWljb24udGFzay1pY29uLXBob25lLWNhbGwge1xyXG4gICAgY29udGVudDogdXJsKFwiL0JSQUlOL0ltYWdlcy9JY29ucy9QaG9uZTE2LnBuZ1wiKTtcclxufVxyXG5cclxuLy8gVGhlIGZvbGxvd2luZyBhcmUgaGFja3MgdGhhdCBvdmVycmlkZSBhIHdlaXJkIHJ1bGUgaW4gdGhlIEZvdW5kYXRpb24gbGlicmFyeSB0aGF0IGFwcGxpZXMgdG8gYW55IGNsYXNzIHdpdGggdGhlIHdvcmQgXCJjb2x1bW5cIiBpbiBpdC4uLlxyXG4uay1jb2x1bW4tbWVudSBbY2xhc3MqPVwiY29sdW1uXCJdICsgW2NsYXNzKj1cImNvbHVtblwiXTpsYXN0LWNoaWxkIHsgZmxvYXQ6IHVuc2V0OyB9XHJcbi5rLWNvbHVtbi1tZW51IFtjbGFzcyo9XCJjb2x1bW5cIl0gKyBbY2xhc3MqPVwiY29sdW1uXCJdLmVuZCB7IGZsb2F0OiB1bnNldDsgfVxyXG5cclxuLy8gSGFjayB0byBmaXggbGluayBjb2xvcnNcclxuLmstZ3JpZCBhLnRhc2stbGluayB7XHJcbiAgICBjb2xvcjogI2Y5NTYwMjtcclxufSIsIi5wdXJjaGFzZW9yZGVyLWVkaXQtaGVhZGVyIHtcclxuICAgIEBpbmNsdWRlIGZsZXgtcm93KClcclxufVxyXG5cclxuLnB1cmNoYXNlb3JkZXItZWRpdC1oZWFkZXItY2VsbCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4LWNlbGwoKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4ucHVyY2hhc2VvcmRlci1lZGl0LWNlbGwge1xyXG4gICAgQGluY2x1ZGUgZmxleC1jZWxsKCk7XHJcbn0iLCIuZGlhbG9nIHtcclxuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xyXG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRwYWRkaW5nOiAwKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG59XHJcblxyXG4uZGlhbG9nLWhlYWRlciB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgbWluLWhlaWdodDogMjBweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xyXG59XHJcblxyXG4uZGlhbG9nLWJvZHkge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcclxufVxyXG5cclxuLmRpYWxvZy1jb250cm9scyB7XHJcbiAgICBtaW4taGVpZ2h0OiAzMnB4O1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBtYXJnaW46IDIwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICBidXR0b24sIC5idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmRpYWxvZy10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbTtcclxufVxyXG5cclxuLmRpYWxvZy1jbG9zZSB7XHJcbiAgICBmb250LXNpemU6IDIuNXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwLjVyZW07XHJcbiAgICByaWdodDogMC42ODc1cmVtO1xyXG4gICAgY29sb3I6ICNhYWE7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmRpYWxvZy14dGlueSB7XHJcbiAgICB3aWR0aDogMjAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC00MCU7XHJcbn1cclxuXHJcbi5kaWFsb2ctdGlueSB7XHJcbiAgICB3aWR0aDogMzAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC00MCU7XHJcbn1cclxuXHJcbi5kaWFsb2ctc21hbGwge1xyXG4gICAgd2lkdGg6IDQwJTtcclxufVxyXG5cclxuLmRpYWxvZy1tZWRpdW0ge1xyXG4gICAgd2lkdGg6IDYwJTtcclxufVxyXG5cclxuLmRpYWxvZy1sYXJnZSB7XHJcbiAgICB3aWR0aDogNzAlO1xyXG59XHJcblxyXG4uZGlhbG9nLXhsYXJnZSB7XHJcbiAgICB3aWR0aDogOTUlO1xyXG59XHJcblxyXG4uZGlhbG9nLWZ1bGwge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn0iLCIuaXRlbS1zZWFyY2gtaXRlbW5vIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZGlzcGxheTppbmxpbmU7XHJcbn1cclxuXHJcbi5pdGVtLXNlYXJjaC1kZXNjcmlwdGlvbiB7XHJcbiAgICBmb250LXNpemU6IC44cmVtO1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG59IiwiLmZpbGV1cGxvYWQge1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG5cdGJvcmRlcjogM3B4IGRhc2hlZCAkc2Vjb25kYXJ5LWNvbG9yO1xyXG5cclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cclxuICAgIHRyYW5zaXRpb246IGJvcmRlciAuM3M7XHJcbiBcdGRpc3BsYXk6IGZsZXg7XHJcbiAgXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIFx0Y3Vyc29yOiBwb2ludGVyO1xyXG4gIFx0Y3Vyc29yOiBoYW5kO1xyXG59XHJcblxyXG4uZmlsZXVwbG9hZC1tZXNzYWdlIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uZmlsZXVwbG9hZC1lcnJvciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGFsZXJ0LWNvbG9yO1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGJvcmRlcjogbm9uZVxyXG59XHJcblxyXG4uZmlsZXVwbG9hZC1hY3RpdmUge1xyXG5cdGJvcmRlcjogM3B4IGRhc2hlZCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLmZpbGV1cGxvYWQ6aG92ZXIge1xyXG5cdGJvcmRlcjogM3B4IGRhc2hlZCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLmZpbGV1cGxvYWQtcHJvZ3Jlc3Mge1xyXG5cdEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcclxuXHRtYXJnaW4tdG9wOiBhdXRvO1xyXG5cclxuXHJcblx0JiA+IHNwYW4geyBcclxuXHRcdEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyKCk7XHJcblx0fVxyXG5cclxuXHQmID4gc3Bhbi5zdWNjZXNzIHtcclxuXHRcdEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyKCRzdWNjZXNzLWNvbG9yKTtcclxuXHR9XHJcblxyXG5cdCYgPiBzcGFuLmFsZXJ0IHtcclxuXHRcdEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyKCRhbGVydC1jb2xvcik7XHJcblx0fVxyXG59XHJcblxyXG4uZmlsZXVwbG9hZC1tZXNzYWdlLWNvbnRlbnQge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRtYXgtd2lkdGg6IDUwJTtcclxufVxyXG5cclxuLmZpbGV1cGxvYWQtbWVzc2FnZS1jb250ZW50LWJ1dHRvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbn0iLCIuaGFzLXdlYi1jYXRlZ29yeS1wYXRoIHtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHQkY29sb3IgOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA2NSUpO1xyXG5cdG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdGJvcmRlci1zdHlsZTogc29saWQ7XHJcblx0Ym9yZGVyLXdpZHRoOiAxcHg7XHJcblx0XHJcblx0Ly8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBib3JkZXIgY29tZSB0aHJvdWdoLlxyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuXHRib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNydW1iLWZ1bmN0aW9uLWZhY3Rvcik7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLmhhcy13ZWItY2F0ZWdvcnktcGF0aC1pdGVtOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE0KTtcclxufVxyXG5cclxuLmhhcy13ZWItY2F0ZWdvcnktcGF0aC1pdGVtOmxhc3QtY2hpbGQge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE0KTtcclxufVxyXG5cclxuLmhhcy13ZWItY2F0ZWdvcnktcGF0aC1hZGQge1xyXG5cdGZsb2F0OiByaWdodDtcclxuXHRwYWRkaW5nOiAwLjZyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMHJlbTtcclxuXHRmb250LXNpemU6IDAuODEyNXJlbTtcclxufVxyXG5cclxuXHJcbi5oYXMtd2ViLWNhdGVnb3J5LXBhdGgtaXRlbSB7XHJcblx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDkpO1xyXG5cdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg5KTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuLmhhcy13ZWItY2F0ZWdvcnktcGF0aC1pdGVtOmhvdmVyIHtcclxuXHQkY29sb3IgOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA0NSUpO1xyXG4gICAgQGluY2x1ZGUgYmxvY2stZ2xvd2luZy1lZmZlY3QoZm9jdXMsIDBzLCAkZ2xvd2luZy1lZmZlY3QtY29sb3IpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG5cdGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY3J1bWItZnVuY3Rpb24tZmFjdG9yKTtcclxufVxyXG5cclxuLmhhcy13ZWItY2F0ZWdvcnktcm9vdC1lZGl0cyB7XHJcblx0QGluY2x1ZGUgZ3JpZC1yb3coKTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuXHJcbi5oYXMtd2ViLWNhdGVnb3J5LXJvb3QtZWRpdHMtZm9sZGVyIHtcclxuXHQvLyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczo2KTtcclxufVxyXG5cclxuLmhhcy13ZWItY2F0ZWdvcnktcm9vdC1lZGl0cy1maWxlIHtcclxuXHRAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoxMik7XHJcbn1cclxuXHJcbi5oYXMtd2ViLWNhdGVnb3J5LWVtcHR5LWZvbGRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59IiwiLnN1Yi1wYW5lbCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xyXG59IiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG4kaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2UgIWRlZmF1bHQ7XG5cbiRyb3ctd2lkdGg6IHJlbS1jYWxjKDEwMDApICFkZWZhdWx0O1xuJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcbiR0b3RhbC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcblxuLy9cbi8vIEdyaWQgRnVuY3Rpb25zXG4vL1xuXG4vLyBEZXByZWNhdGVkOiBXZSdsbCBkcm9wIHN1cHBvcnQgZm9yIHRoaXMgaW4gNS4xLCB1c2UgZ3JpZC1jYWxjKClcbkBmdW5jdGlvbiBncmlkQ2FsYygkY29sTnVtYmVyLCAkdG90YWxDb2x1bW5zKSB7XG4gIEB3YXJuIFwiZ3JpZENhbGMoKSBpcyBkZXByZWNhdGVkLCB1c2UgZ3JpZC1jYWxjKClcIjtcbiAgQHJldHVybiBncmlkLWNhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucyk7XG59XG5cbi8vIEBGVU5DVElPTlxuLy8gJGNvbE51bWJlciAtIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcbi8vICR0b3RhbENvbHVtbnMgLSBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXG5AZnVuY3Rpb24gZ3JpZC1jYWxjKCRjb2xOdW1iZXIsICR0b3RhbENvbHVtbnMpIHtcbiAgQHJldHVybiBwZXJjZW50YWdlKCgkY29sTnVtYmVyIC8gJHRvdGFsQ29sdW1ucykpO1xufVxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuLy8gRm9yIGNyZWF0aW5nIGNvbnRhaW5lciwgbmVzdGVkLCBhbmQgY29sbGFwc2VkIHJvd3MuXG4vL1xuLy8gXG4vLyAkYmVoYXZpb3IgLSBBbnkgc3BlY2lhbCBiZWhhdmlvciBmb3IgdGhpcyByb3c/IERlZmF1bHQ6IGZhbHNlLiBPcHRpb25zOiBuZXN0LCBjb2xsYXBzZSwgbmVzdC1jb2xsYXBzZSwgZmFsc2UuXG5AbWl4aW4gZ3JpZC1yb3coJGJlaGF2aW9yOiBmYWxzZSkge1xuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTsgdG8gaW5jbHVkZSBhIG5lc3RlZCByb3dcbiAgQGlmICRiZWhhdmlvciA9PSBuZXN0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC0oJGNvbHVtbi1ndXR0ZXIvMik7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0oJGNvbHVtbi1ndXR0ZXIvMik7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhjb2xsYXBzZSk7IHRvIGNvbGxhcHNlZCBhIGNvbnRhaW5lciByb3cgbWFyZ2luc1xuICBAZWxzZSBpZiAkYmVoYXZpb3IgPT0gY29sbGFwc2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gIH1cblxuICAvLyB1c2UgQGluY2x1ZGUgZ3JpZC1yb3cobmVzdC1jb2xsYXBzZSk7IHRvIGNvbGxhcHNlIG91dGVyIG1hcmdpbnMgb24gYSBuZXN0ZWQgcm93XG4gIEBlbHNlIGlmICRiZWhhdmlvciA9PSBuZXN0LWNvbGxhcHNlIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgLy8gdXNlIEBpbmNsdWRlIGdyaWQtcm93OyB0byB1c2UgYSBjb250YWluZXIgcm93XG4gIEBlbHNlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogJHJvdy13aWR0aDtcbiAgfVxuXG4gIC8vIENsZWFyZml4IGZvciBhbGwgcm93c1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4vLyBDcmVhdGVzIGEgY29sdW1uLCBzaG91bGQgYmUgdXNlZCBpbnNpZGUgb2YgYSBtZWRpYSBxdWVyeSB0byBjb250cm9sIGxheW91dHNcbi8vXG4vLyAkY29sdW1ucyAtIFRoZSBudW1iZXIgb2YgY29sdW1ucyB0aGlzIHNob3VsZCBiZVxuLy8gJGxhc3QtY29sdW1uIC0gSXMgdGhpcyB0aGUgbGFzdCBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxuLy8gJGNlbnRlciAtIENlbnRlciB0aGVzZSBjb2x1bW5zPyBEZWZhdWx0OiBmYWxzZS5cbi8vICRvZmZzZXQgLSAjIG9mIGNvbHVtbnMgdG8gb2Zmc2V0LiBEZWZhdWx0OiBmYWxzZS5cbi8vICRwdXNoIC0gIyBvZiBjb2x1bW5zIHRvIHB1c2guIERlZmF1bHQ6IGZhbHNlLlxuLy8gJHB1bGwgLSAjIG9mIGNvbHVtbnMgdG8gcHVsbC4gRGVmYXVsdDogZmFsc2UuXG4vLyAkY29sbGFwc2UgLSBHZXQgcmlkIG9mIGd1dHRlciBwYWRkaW5nIG9uIGNvbHVtbj8gRGVmYXVsdDogZmFsc2UuXG4vLyAkZmxvYXQgLSBTaG91bGQgdGhpcyBmbG9hdD8gRGVmYXVsdDogdHJ1ZS4gT3B0aW9uczogdHJ1ZSwgZmFsc2UsIGxlZnQsIHJpZ2h0LlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczpmYWxzZSwgXG4gICRsYXN0LWNvbHVtbjpmYWxzZSwgXG4gICRjZW50ZXI6ZmFsc2UsIFxuICAkb2Zmc2V0OmZhbHNlLCBcbiAgJHB1c2g6ZmFsc2UsIFxuICAkcHVsbDpmYWxzZSwgXG4gICRjb2xsYXBzZTpmYWxzZSwgXG4gICRmbG9hdDp0cnVlLFxuICAkcG9zaXRpb246ZmFsc2UpIHtcblxuICAvLyBJZiBwb3NpdGlvbmVkIGZvciBkZWZhdWx0IC5jb2x1bW4sIGluY2x1ZGUgcmVsYXRpdmUgcG9zaXRpb25cbiAgLy8gcHVzaCBhbmQgcHVsbCByZXF1aXJlIHBvc2l0aW9uIHNldFxuICBAaWYgJHBvc2l0aW9uIG9yICRwdXNoIG9yICRwdWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBJZiBjb2xsYXBzZWQsIGdldCByaWQgb2YgZ3V0dGVyIHBhZGRpbmdcbiAgQGlmICRjb2xsYXBzZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBHdXR0ZXIgcGFkZGluZyB3aGVuZXZlciBhIGNvbHVtbiBpc24ndCBzZXQgdG8gY29sbGFwc2VcbiAgLy8gKHVzZSAkY29sbGFwc2U6bnVsbCB0byBkbyBub3RoaW5nKVxuICBAZWxzZSBpZiAkY29sbGFwc2UgPT0gZmFsc2Uge1xuICAgIHBhZGRpbmctbGVmdDogJGNvbHVtbi1ndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjb2x1bW4tZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIC8vIElmIGEgY29sdW1uIG51bWJlciBpcyBnaXZlbiwgY2FsY3VsYXRlIHdpZHRoXG4gIEBpZiAkY29sdW1ucyB7XG4gICAgd2lkdGg6IGdyaWQtY2FsYygkY29sdW1ucywgJHRvdGFsLWNvbHVtbnMpO1xuXG4gICAgLy8gSWYgbGFzdCBjb2x1bW4sIGZsb2F0IG5hdHVyYWxseSBpbnN0ZWFkIG9mIHRvIHRoZSByaWdodFxuICAgIEBpZiAkbGFzdC1jb2x1bW4geyBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjsgfVxuICB9XG5cbiAgLy8gU291cmNlIE9yZGVyaW5nLCBhZGRzIGxlZnQvcmlnaHQgZGVwZW5kaW5nIG9uIHdoaWNoIHlvdSB1c2UuXG4gIEBpZiAkcHVzaCB7ICN7JGRlZmF1bHQtZmxvYXR9OiBncmlkLWNhbGMoJHB1c2gsICR0b3RhbC1jb2x1bW5zKTsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bzsgfVxuICBAaWYgJHB1bGwgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBncmlkLWNhbGMoJHB1bGwsICR0b3RhbC1jb2x1bW5zKTsgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87IH1cblxuICBAaWYgJGZsb2F0IHtcbiAgICBAaWYgJGZsb2F0ID09IGxlZnQgb3IgJGZsb2F0ID09IHRydWUgeyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7IH1cbiAgICBAZWxzZSBpZiAkZmxvYXQgPT0gcmlnaHQgeyBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjsgfVxuICAgIEBlbHNlIHsgZmxvYXQ6IG5vbmU7IH1cbiAgfVxuXG4gIC8vIElmIGNlbnRlcmVkLCBnZXQgcmlkIG9mIGZsb2F0IGFuZCBhZGQgYXBwcm9wcmlhdGUgbWFyZ2luc1xuICBAaWYgJGNlbnRlciB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBJZiBvZmZzZXQsIGNhbGN1bGF0ZSBhcHByb3ByaWF0ZSBtYXJnaW5zXG4gIEBpZiAkb2Zmc2V0IHsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiBncmlkLWNhbGMoJG9mZnNldCwgJHRvdGFsLWNvbHVtbnMpICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vLyBDcmVhdGUgcHJlc2VudGF0aW9uYWwgY2xhc3NlcyBmb3IgZ3JpZFxuLy9cbi8vICRzaXplIC0gTmFtZSBvZiBjbGFzcyB0byB1c2UsIGkuZS4gXCJsYXJnZVwiIHdpbGwgZ2VuZXJhdGUgLmxhcmdlLTEsIC5sYXJnZS0yLCBldGMuXG5AbWl4aW4gZ3JpZC1odG1sLWNsYXNzZXMoJHNpemUpIHtcblxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkLFxuICAuY29sdW1ucy4jeyRzaXplfS1jZW50ZXJlZCB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjZW50ZXI6dHJ1ZSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7IH1cblxuICAuY29sdW1uLiN7JHNpemV9LXVuY2VudGVyZWQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2x1bW4uI3skc2l6ZX0tdW5jZW50ZXJlZC5vcHBvc2l0ZSxcbiAgLmNvbHVtbnMuI3skc2l6ZX0tdW5jZW50ZXJlZC5vcHBvc2l0ZSB7XG4gICAgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG4gIH1cblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgLiN7JHNpemV9LXB1c2gtI3skaX0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1c2g6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgIH1cbiAgICAuI3skc2l6ZX0tcHVsbC0jeyRpfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVsbDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczpmYWxzZSwgJHBvc2l0aW9uOnRydWUpOyB9XG5cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIHtcbiAgICAuI3skc2l6ZX0tI3skaX0geyBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczokaSwkY29sbGFwc2U6bnVsbCwkZmxvYXQ6ZmFsc2UpOyB9XG4gIH1cblxuICBbY2xhc3MqPVwiY29sdW1uXCJdICsgW2NsYXNzKj1cImNvbHVtblwiXTpsYXN0LWNoaWxkIHsgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247IH1cbiAgW2NsYXNzKj1cImNvbHVtblwiXSArIFtjbGFzcyo9XCJjb2x1bW5cIl0uZW5kIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XG5cblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgLiN7JHNpemV9LW9mZnNldC0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRvZmZzZXQ6JGksICRjb2xsYXBzZTpudWxsLCRmbG9hdDpmYWxzZSk7IH1cbiAgfVxuICAuI3skc2l6ZX0tcmVzZXQtb3JkZXIsXG4gIC4jeyRzaXplfS1yZXNldC1vcmRlciB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyBcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiZ3JpZFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWdyaWQtY2xhc3NlcyB7XG4gICAgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgICA+IC5jb2x1bW4sXG4gICAgICAgICA+IC5jb2x1bW5zIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbGxhcHNlOnRydWUsICRmbG9hdDpmYWxzZSk7IH1cblxuICAgICAgICAucm93IHttYXJnaW4tbGVmdDowOyBtYXJnaW4tcmlnaHQ6MDt9XG4gICAgICB9XG5cbiAgICAgIC5yb3cgeyBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6bmVzdCk7XG4gICAgICAgICYuY29sbGFwc2UgeyBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6bmVzdC1jb2xsYXBzZSk7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sdW1uLFxuICAgIC5jb2x1bW5zIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnM6JHRvdGFsLWNvbHVtbnMpOyB9XG5cbiAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnNtYWxsKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTptZWRpdW0pO1xuICAgICAgLy8gT2xkIHB1c2ggYW5kIHB1bGwgY2xhc3Nlc1xuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xuICAgICAgICAucHVzaC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1c2g6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIC5wdWxsLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVsbDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTpsYXJnZSk7XG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgICAgIC5wdXNoLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgLnB1bGwtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJGluY2x1ZGUteGwtaHRtbC1ncmlkLWNsYXNzZXMge1xuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnhsYXJnZSk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTp4eGxhcmdlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjogI2VmZWZlZiAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogJGNvbHVtbi1ndXR0ZXIvMiAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29udGVudC1hY3RpdmUtYmctY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJhY2NvcmRpb25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1hY2NvcmRpb24tY2xhc3NlcyB7XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDsgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgJi5hY3RpdmUgPiBhIHsgYmFja2dyb3VuZDogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjsgfVxuICAgICAgICA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I7XG4gICAgICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTtcbiAgICAgICAgICBmb250LXNpemU6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU7XG4gICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nO1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4vL1xuLy8gQWxlcnQgQm94IFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYWxlcnQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFsZXJ0IHBhZGRpbmcuXG4kYWxlcnQtcGFkZGluZy10b3A6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLWRlZmF1bHQtZmxvYXQ6ICRhbGVydC1wYWRkaW5nLXRvcCAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLW9wcG9zaXRlLWRpcmVjdGlvbjogJGFsZXJ0LXBhZGRpbmctdG9wICsgcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmctYm90dG9tOiAkYWxlcnQtcGFkZGluZy10b3AgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRleHQgc3R5bGUuXG4kYWxlcnQtZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRhbGVydC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiRhbGVydC1mb250LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGFsZXJ0LWZvbnQtY29sb3ItYWx0OiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtNjYlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgZm9yIGNsb3NlIGhvdmVyIGVmZmVjdC5cbiRhbGVydC1mdW5jdGlvbi1mYWN0b3I6IC0xNCUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXMuXG4kYWxlcnQtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRhbGVydC1ib3R0b20tbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgY2xvc2UgYnV0dG9uc1xuJGFsZXJ0LWNsb3NlLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXRvcDogNTAlICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXBvc2l0aW9uOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcbiRhbGVydC1jbG9zZS1vcGFjaXR5OiAwLjMgIWRlZmF1bHQ7XG4kYWxlcnQtY2xvc2Utb3BhY2l0eS1ob3ZlcjogMC41ICFkZWZhdWx0O1xuJGFsZXJ0LWNsb3NlLXBhZGRpbmc6IDlweCA2cHggNHB4ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGJvcmRlciByYWRpdXNcbiRhbGVydC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vL1xuLy8gQWxlcnQgTWl4aW5zXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IGFsZXJ0IGJhc2UuXG5AbWl4aW4gYWxlcnQtYmFzZSB7XG4gIGJvcmRlci1zdHlsZTogJGFsZXJ0LWJvcmRlci1zdHlsZTtcbiAgYm9yZGVyLXdpZHRoOiAkYWxlcnQtYm9yZGVyLXdpZHRoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1mb250LXdlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LWJvdHRvbS1tYXJnaW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmctdG9wICRhbGVydC1wYWRkaW5nLW9wcG9zaXRlLWRpcmVjdGlvbiAkYWxlcnQtcGFkZGluZy1ib3R0b20gJGFsZXJ0LXBhZGRpbmctZGVmYXVsdC1mbG9hdDtcbiAgZm9udC1zaXplOiAkYWxlcnQtZm9udC1zaXplO1xufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgYWxlcnQgc3R5bGVzXG4vL1xuLy8gJGJnIC0gVGhlIGJhY2tncm91bmQgb2YgdGhlIGFsZXJ0LiBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvci5cbkBtaXhpbiBhbGVydC1zdHlsZSgkYmc6JHByaW1hcnktY29sb3IpIHtcblxuICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcblxuICAvLyBXZSBjb250cm9sIHdoaWNoIGJhY2tncm91bmQgY29sb3IgYW5kIGJvcmRlciBjb21lIHRocm91Z2guXG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkYmcsICRsaWdodG5lc3M6ICRhbGVydC1mdW5jdGlvbi1mYWN0b3IpO1xuXG4gIC8vIFdlIGNvbnRyb2wgdGhlIHRleHQgY29sb3IgZm9yIHlvdSBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgQGlmICRiZy1saWdodG5lc3MgPiA3MCUgeyBjb2xvcjogJGFsZXJ0LWZvbnQtY29sb3ItYWx0OyB9XG4gIEBlbHNlICAgICAgICAgICAgICAgICAgIHsgY29sb3I6ICRhbGVydC1mb250LWNvbG9yOyB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gYWxlcnQtY2xvc2Uge1xuICBmb250LXNpemU6ICRhbGVydC1jbG9zZS1mb250LXNpemU7XG4gIHBhZGRpbmc6ICRhbGVydC1jbG9zZS1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRhbGVydC1jbG9zZS10b3A7XG4gIG1hcmdpbi10b3A6IC0oJGFsZXJ0LWNsb3NlLWZvbnQtc2l6ZSAvIDIpO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkYWxlcnQtY2xvc2UtcG9zaXRpb247XG4gIGNvbG9yOiAkYWxlcnQtY2xvc2UtY29sb3I7XG4gIG9wYWNpdHk6ICRhbGVydC1jbG9zZS1vcGFjaXR5O1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHsgb3BhY2l0eTogJGFsZXJ0LWNsb3NlLW9wYWNpdHktaG92ZXI7IH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gcXVpY2tseSBjcmVhdGUgYWxlcnRzIHdpdGggYSBzaW5nbGUgbWl4aW4uXG4vL1xuLy8gJGJnIC0gQmFja2dyb3VuZCBvZiBhbGVydC4gRGVmYXVsdDogJHByaW1hcnktY29sb3IuXG4vLyAkcmFkaXVzIC0gUmFkaXVzIG9mIGFsZXJ0IGJveC4gRGVmYXVsdDogZmFsc2UuXG5AbWl4aW4gYWxlcnQoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XG4gIEBpbmNsdWRlIGFsZXJ0LWJhc2U7XG4gIEBpbmNsdWRlIGFsZXJ0LXN0eWxlKCRiZyk7XG4gIEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImFsZXJ0LWJveFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWFsZXJ0LWNsYXNzZXMge1xuICAgIC5hbGVydC1ib3gge1xuICAgICAgQGluY2x1ZGUgYWxlcnQ7XG5cbiAgICAgIC5jbG9zZSAgICAgIHsgQGluY2x1ZGUgYWxlcnQtY2xvc2U7IH1cblxuICAgICAgJi5yYWRpdXMgICAgeyBAaW5jbHVkZSByYWRpdXMoJGFsZXJ0LXJhZGl1cyk7IH1cbiAgICAgICYucm91bmQgICAgIHsgQGluY2x1ZGUgcmFkaXVzKCRnbG9iYWwtcm91bmRlZCk7IH1cblxuICAgICAgJi5zdWNjZXNzICAgeyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkc3VjY2Vzcy1jb2xvcik7IH1cbiAgICAgICYuYWxlcnQgICAgIHsgQGluY2x1ZGUgYWxlcnQtc3R5bGUoJGFsZXJ0LWNvbG9yKTsgfVxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgJi53YXJuaW5nIHsgQGluY2x1ZGUgYWxlcnQtc3R5bGUoJHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAmLmluZm8geyBAaW5jbHVkZSBhbGVydC1zdHlsZSgkaW5mby1jb2xvcik7IH1cbiAgICB9XG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBCbG9jayBHcmlkIFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJsb2NrIGdyaWQgZWxlbWVudHMgcGVyIHJvd1xuJGJsb2NrLWdyaWQtZWxlbWVudHM6IDEyICFkZWZhdWx0O1xuJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbiRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQ6IHRydWUgIWRlZmF1bHQ7XG5AaWYgJGFsaWduLWJsb2NrLWdyaWQtdG8tZ3JpZCB7XG4gICRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogJGNvbHVtbi1ndXR0ZXI7XG59XG5cbi8vIEVuYWJsZXMgbWVkaWEgcXVlcmllcyBmb3IgYmxvY2stZ3JpZCBjbGFzc2VzLiBTZXQgdG8gZmFsc2UgaWYgd3JpdGluZyBzZW1hbnRpYyBIVE1MLlxuJGJsb2NrLWdyaWQtbWVkaWEtcXVlcmllczogdHJ1ZSAhZGVmYXVsdDtcblxuLy9cbi8vIEJsb2NrIEdyaWQgTWl4aW5zXG4vL1xuXG4vLyBDcmVhdGUgYSBjdXN0b20gYmxvY2sgZ3JpZFxuLy9cbi8vICRwZXItcm93IC0gIyBvZiBpdGVtcyB0byBkaXNwbGF5IHBlciByb3cuIERlZmF1bHQ6IGZhbHNlLlxuLy8gJHNwYWNpbmcgLSAjIG9mIGVtcyB0byB1c2UgYXMgcGFkZGluZyBvbiBlYWNoIGJsb2NrIGl0ZW0uIERlZmF1bHQ6IHJlbS1jYWxjKDIwKS5cbi8vICRiYXNlLXN0eWxlIC0gQXBwbHkgYSBiYXNlIHN0eWxlIHRvIGJsb2NrIGdyaWQuIERlZmF1bHQ6IHRydWUuXG5AbWl4aW4gYmxvY2stZ3JpZChcbiAgJHBlci1yb3c6ZmFsc2UsIFxuICAkc3BhY2luZzokYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmcsIFxuICAkaW5jbHVkZS1zcGFjaW5nOnRydWUsXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbWFyZ2luOiAwICgtJHNwYWNpbmcvMik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgJj5saSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgIEBpZiAkaW5jbHVkZS1zcGFjaW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAoJHNwYWNpbmcvMikgJHNwYWNpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRwZXItcm93IHtcbiAgICAmPmxpIHtcbiAgICAgIHdpZHRoOiAxMDAlLyRwZXItcm93O1xuICAgICAgQGlmICRpbmNsdWRlLXNwYWNpbmcge1xuICAgICAgICBwYWRkaW5nOiAwICgkc3BhY2luZy8yKSAkc3BhY2luZztcbiAgICAgIH1cbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUobikgeyBjbGVhcjogbm9uZTsgfVxuICAgICAgJjpudGgtb2YtdHlwZSgjeyRwZXItcm93fW4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAgICAgQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWFsaWduZWQoJHBlci1yb3csICRzcGFjaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJsb2NrLWdyaWQtYWxpZ25lZCgkcGVyLXJvdywgJHNwYWNpbmcpIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XG4gICAgQGlmICRwZXItcm93ID49ICRpIHtcbiAgICAgICRncmlkLWNvbHVtbjogJysnICsgJGk7XG4gICAgICBAaWYgJHBlci1yb3cgPT0gJGkge1xuICAgICAgICAkZ3JpZC1jb2x1bW46ICcnO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoI3skcGVyLXJvd31uI3t1bnF1b3RlKCRncmlkLWNvbHVtbil9KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCRzcGFjaW5nIC0gKCgkc3BhY2luZyAvICRwZXItcm93KSAqICgkcGVyLXJvdyAtICgkaSAtIDEpKSkpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoJHNwYWNpbmcgLSAoKCRzcGFjaW5nIC8gJHBlci1yb3cpICogJGkpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgcHJlc2VudGF0aW9uYWwgbWFya3VwIGZvciBibG9jayBncmlkLlxuLy9cbi8vICRzaXplIC0gTmFtZSBvZiBjbGFzcyB0byB1c2UsIGkuZS4gXCJsYXJnZVwiIHdpbGwgZ2VuZXJhdGUgLmxhcmdlLWJsb2NrLWdyaWQtMSwgLmxhcmdlLWJsb2NrLWdyaWQtMiwgZXRjLlxuQG1peGluIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplLCRpbmNsdWRlLXNwYWNpbmcpIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XG4gICAgLiN7JHNpemV9LWJsb2NrLWdyaWQtI3soJGkpfSB7XG4gICAgICBAaW5jbHVkZSBibG9jay1ncmlkKCRpLCRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZywkaW5jbHVkZS1zcGFjaW5nLGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJsb2NrLWdyaWRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXMge1xuICAgIFxuICAgIFtjbGFzcyo9XCJibG9jay1ncmlkLVwiXSB7IEBpbmNsdWRlIGJsb2NrLWdyaWQ7IH1cbiAgICBcbiAgICBAaWYgJGJsb2NrLWdyaWQtbWVkaWEtcXVlcmllcyB7XG4gICAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6c21hbGwsJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICB9XG4gIFxuICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTptZWRpdW0sJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICB9XG4gIFxuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOmxhcmdlLCRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4vL1xuLy8gQnJlYWRjcnVtYiBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyLlxuJGNydW1iLWJnOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA1NSUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBwYWRkaW5nIGFyb3VuZCB0aGUgYnJlYWRjcnVtYnMuXG4kY3J1bWItcGFkZGluZzogcmVtLWNhbGMoOSAxNCA5KSAhZGVmYXVsdDtcbiRjcnVtYi1zaWRlLXBhZGRpbmc6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbiRjcnVtYi1mdW5jdGlvbi1mYWN0b3I6IC0xMCUgIWRlZmF1bHQ7XG4kY3J1bWItYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjcnVtYi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGNydW1iLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGNydW1iLWJnLCAkbGlnaHRuZXNzOiAkY3J1bWItZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRjcnVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHZhcmlvdXMgdGV4dCBzdHlsZXMgZm9yIGJyZWFkY3J1bWJzLlxuJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDogIzMzMyAhZGVmYXVsdDtcbiRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAjOTk5ICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kY3J1bWItbGluay1kZWNvcjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc2xhc2ggYmV0d2VlbiBicmVhZGNydW1ic1xuJGNydW1iLXNsYXNoLWNvbG9yOiAjYWFhICFkZWZhdWx0O1xuJGNydW1iLXNsYXNoOiBcIi9cIiAhZGVmYXVsdDtcblxuLy9cbi8vIEJyZWFkY3J1bWIgTWl4aW5zXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBjb250YWluZXIgYXJvdW5kIG91ciBicmVhZGNydW1ic1xuQG1peGluIGNydW1iLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkY3J1bWItcGFkZGluZztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItc3R5bGU6ICRjcnVtYi1ib3JkZXItc3R5bGU7XG4gIGJvcmRlci13aWR0aDogJGNydW1iLWJvcmRlci1zaXplO1xuXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBjb2xvciBhbmQgYm9yZGVyIGNvbWUgdGhyb3VnaC5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNydW1iLWJnO1xuICBib3JkZXItY29sb3I6ICRjcnVtYi1ib3JkZXItY29sb3I7XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBicmVhZGNydW1iIHN0eWxlcyBmcm9tIGxpc3QgaXRlbXMuXG5AbWl4aW4gY3J1bWJzIHtcblxuICAvLyBBIG5vcm1hbCBzdGF0ZSB3aWxsIG1ha2UgdGhlIGxpbmtzIGxvb2sgYW5kIGFjdCBsaWtlIGNsaWNrYWJsZSBicmVhZGNydW1icy5cbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gIGZvbnQtc2l6ZTogJGNydW1iLWZvbnQtc2l6ZTtcbiAgdGV4dC10cmFuc2Zvcm06ICRjcnVtYi1mb250LXRyYW5zZm9ybTtcblxuICAmOmhvdmVyIGEsICY6Zm9jdXMgYSB7IHRleHQtZGVjb3JhdGlvbjogJGNydW1iLWxpbmstZGVjb3I7IH1cblxuICBhLFxuICBzcGFuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogJGNydW1iLWZvbnQtdHJhbnNmb3JtO1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIEN1cnJlbnQgaXMgZm9yIHRoZSBsaW5rIG9mIHRoZSBjdXJyZW50IHBhZ2VcbiAgJi5jdXJyZW50IHtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZTtcbiAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDtcbiAgICBhIHtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuICAgICAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciwgJjpob3ZlciBhLFxuICAgICY6Zm9jdXMsICY6Zm9jdXMgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICB9XG5cbiAgLy8gVW5hdmFpbGFibGUgcmVtb3ZlZCBjb2xvciBhbmQgbGluayBzdHlsZXMgc28gaXQgbG9va3MgaW5hY3RpdmUuXG4gICYudW5hdmFpbGFibGUge1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTtcbiAgICBhIHsgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOyB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6aG92ZXIgYSxcbiAgICAmOmZvY3VzLFxuICAgIGE6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiI3skY3J1bWItc2xhc2h9XCI7XG4gICAgY29sb3I6ICRjcnVtYi1zbGFzaC1jb2xvcjtcbiAgICBtYXJnaW46IDAgJGNydW1iLXNpZGUtcGFkZGluZztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxcHg7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJicmVhZGNydW1ic1wiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcbiAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgQGluY2x1ZGUgY3J1bWItY29udGFpbmVyO1xuICAgICAgQGluY2x1ZGUgcmFkaXVzKCRjcnVtYi1yYWRpdXMpO1xuXG4gICAgICAmPioge1xuICAgICAgICBAaW5jbHVkZSBjcnVtYnM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuXG5cbi8vXG4vLyBCdXR0b24gR3JvdXAgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBTZXRzIHRoZSBtYXJnaW4gZm9yIHRoZSByaWdodCBzaWRlIGJ5IGRlZmF1bHQsIGFuZCB0aGUgbGVmdCBtYXJnaW4gaWYgcmlnaHQtdG8tbGVmdCBkaXJlY3Rpb24gaXMgdXNlZFxuJGJ1dHRvbi1iYXItbWFyZ2luLW9wcG9zaXRlOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWdyb3VwLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vL1xuLy8gQnV0dG9uIEdyb3VwIE1peGluc1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWNvbnRhaW5lcigkc3R5bGVzOnRydWUsICRmbG9hdDpmYWxzZSkge1xuICBAaWYgJHN0eWxlcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgfVxuICBAaWYgJGZsb2F0IHtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1mbG9hdH07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRidXR0b24tYmFyLW1hcmdpbi1vcHBvc2l0ZTtcbiAgICAmIGRpdiB7IG92ZXJmbG93OiBoaWRkZW47IH1cbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHN0eWxlcyBmb3IgYnV0dG9uIGdyb3Vwc1xuQG1peGluIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOmZhbHNlLCAkZXZlbjpmYWxzZSwgJGZsb2F0OiRkZWZhdWx0LWZsb2F0KSB7XG5cbiAgPiBidXR0b24sIC5idXR0b24ge1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fTogJGJ1dHRvbi1ncm91cC1ib3JkZXItd2lkdGggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBidXR0b24sIC5idXR0b24ge1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGZsb3csIG9yIHJlbW92ZSB0aG9zZSBzdHlsZXMgY29tcGxldGVseS5cbiAgQGlmICRmbG9hdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsb2F0OiAkZmxvYXQ7XG4gICAgLy8gTWFrZSBzdXJlIHRoZSBmaXJzdCBjaGlsZCBkb2Vzbid0IGdldCB0aGUgbmVnYXRpdmUgbWFyZ2luLlxuICAgICY6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7IH1cbiAgfVxuXG4gIC8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxlZnQgYW5kIHJpZ2h0IHJhZGl1cyBvbiBmaXJzdC9sYXN0IGJ1dHRvbnMgaW4gdGhlIGdyb3VwLlxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHtcbiAgICAmOmZpcnN0LWNoaWxkLFxuICAgICY6Zmlyc3QtY2hpbGQgPiBhLFxuICAgICY6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgJjpmaXJzdC1jaGlsZCA+IC5idXR0b24geyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgJjpsYXN0LWNoaWxkLFxuICAgICY6bGFzdC1jaGlsZCA+IGEsXG4gICAgJjpsYXN0LWNoaWxkID4gYnV0dG9uLFxuICAgICY6bGFzdC1jaGlsZCA+IC5idXR0b24geyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgfVxuICBAZWxzZSBpZiAkcmFkaXVzIHtcbiAgICAmOmZpcnN0LWNoaWxkLFxuICAgICY6Zmlyc3QtY2hpbGQgPiBhLFxuICAgICY6Zmlyc3QtY2hpbGQgPiBidXR0b24sXG4gICAgJjpmaXJzdC1jaGlsZCA+IC5idXR0b24geyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJHJhZGl1cyk7IH1cbiAgICAmOmxhc3QtY2hpbGQsXG4gICAgJjpsYXN0LWNoaWxkID4gYSxcbiAgICAmOmxhc3QtY2hpbGQgPiBidXR0b24sXG4gICAgJjpsYXN0LWNoaWxkID4gLmJ1dHRvbiB7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRyYWRpdXMpOyB9XG4gIH1cblxuICAvLyBXZSB1c2UgdGhpcyB0byBtYWtlIHRoZSBidXR0b25zIGV2ZW4gd2lkdGggYWNyb3NzIHRoZWlyIGNvbnRhaW5lclxuICBAaWYgJGV2ZW4ge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgxMDAvJGV2ZW4pIC8gMTAwKTtcbiAgICBidXR0b24sIC5idXR0b24geyB3aWR0aDogMTAwJTsgfVxuICB9XG5cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJ1dHRvbi1ncm91cFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzIHtcbiAgICAuYnV0dG9uLWdyb3VwIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWNvbnRhaW5lcjtcblxuICAgICAgbGkgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoKTsgfVxuXG4gICAgICAmLnJhZGl1cyA+ICogeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJHJhZGl1czokYnV0dG9uLXJhZGl1cywgJGZsb2F0Om51bGwpOyB9XG4gICAgICAmLnJvdW5kID4gKiB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdHlsZSgkcmFkaXVzOiRidXR0b24tcm91bmQsICRmbG9hdDpudWxsKTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDgge1xuICAgICAgICAmLmV2ZW4tI3skaX0gbGkgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtc3R5bGUoJGV2ZW46JGksICRmbG9hdDpudWxsKTsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24tYmFyIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgLmJ1dHRvbi1ncm91cCB7IEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1jb250YWluZXIoJHN0eWxlczpmYWxzZSwkZmxvYXQ6dHJ1ZSk7IH1cbiAgICB9XG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucy5cbiRidXR0b24tdG55OiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLXNtbDogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJGJ1dHRvbi1tZWQ6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRidXR0b24tbHJnOiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRpc3BsYXkgcHJvcGVydHkuXG4kYnV0dG9uLWRpc3BsYXk6IGlubGluZS1ibG9jayAhZGVmYXVsdDtcbiRidXR0b24tbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gdGV4dCBzdHlsZXMuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1jb2xvci1hbHQ6ICMzMzMgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtdG55OiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtc21sOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbWVkOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbHJnOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBob3ZlciBlZmZlY3RzLlxuJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3I6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiBib3JkZXIgc3R5bGVzLlxuJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDBweCAhZGVmYXVsdDtcbiRidXR0b24tYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kYnV0dG9uLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCBkZWZhdWx0IG9wYWNpdHkgZm9yIGRpc2FibGVkIGJ1dHRvbnMuXG4kYnV0dG9uLWRpc2FibGVkLW9wYWNpdHk6IDAuNyAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBidXR0b24gYmFzZS5cbi8vXG4vLyAkc3R5bGUgLSBTZXRzIGJhc2Ugc3R5bGVzLiBDYW4gYmUgc2V0IHRvIGZhbHNlLiBEZWZhdWx0OiB0cnVlLlxuLy8gJGRpc3BsYXkgLSBVc2VkIHRvIGNvbnRyb2wgZGlzcGxheSBwcm9wZXJ0eS4gRGVmYXVsdDogJGJ1dHRvbi1kaXNwbGF5IHx8IGlubGluZS1ibG9ja1xuXG5AbWl4aW4gYnV0dG9uLWJhc2UoJHN0eWxlOnRydWUsICRkaXNwbGF5OiRidXR0b24tZGlzcGxheSkge1xuICBAaWYgJHN0eWxlIHtcbiAgICBib3JkZXItc3R5bGU6ICRidXR0b24tYm9yZGVyLXN0eWxlO1xuICAgIGJvcmRlci13aWR0aDogJGJ1dHRvbi1ib3JkZXItd2lkdGg7XG4gICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gICAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDAgMCAkYnV0dG9uLW1hcmdpbi1ib3R0b207XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiAkYnV0dG9uLWZvbnQtYWxpZ247XG4gIH1cbiAgQGlmICRkaXNwbGF5IHsgZGlzcGxheTogJGRpc3BsYXk7IH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGJ1dHRvbiBzaXplIHN0eWxlc1xuLy9cbi8vICRwYWRkaW5nIC0gVXNlZCB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zIERlZmF1bHQ6ICRidXR0b24tbWVkIHx8PSByZW0tY2FsYygxMilcbi8vICRmdWxsLXdpZHRoIC0gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoIC0gRGVmYXVsdDogZmFsc2VcblxuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tbWVkLCAkZnVsbC13aWR0aDpmYWxzZSkge1xuXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggcGFkZGluZyBzdHlsZXMgY29tZSB0aHJvdWdoLFxuICAvLyB0aGVzZSBjYW4gYmUgdHVybmVkIG9mZiBieSBzZXR0aW5nICRwYWRkaW5nOmZhbHNlXG4gIEBpZiAkcGFkZGluZyB7XG4gICAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHBhZGRpbmcgKiAyO1xuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZyArIHJlbS1jYWxjKDEpO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICRwYWRkaW5nICogMjtcblxuICAgIC8vIFdlIGNvbnRyb2wgdGhlIGZvbnQtc2l6ZSBiYXNlZCBvbiBtaXhpbiBpbnB1dC5cbiAgICBAaWYgICAgICAkcGFkZGluZyA9PSAkYnV0dG9uLW1lZCB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LW1lZDsgfVxuICAgIEBlbHNlIGlmICRwYWRkaW5nID09ICRidXR0b24tdG55IHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtdG55OyB9XG4gICAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gJGJ1dHRvbi1zbWwgeyBmb250LXNpemU6ICRidXR0b24tZm9udC1zbWw7IH1cbiAgICBAZWxzZSBpZiAkcGFkZGluZyA9PSAkYnV0dG9uLWxyZyB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LWxyZzsgfVxuLyogICAgIEBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgZm9udC1zaXplOiAkcGFkZGluZyAtIHJlbS1jYWxjKDIpOyB9ICovXG4gIH1cblxuICAvLyBXZSBjYW4gc2V0ICRmdWxsLXdpZHRoOnRydWUgdG8gcmVtb3ZlIHNpZGUgcGFkZGluZyBleHRlbmQgd2lkdGguXG4gIEBpZiAkZnVsbC13aWR0aCB7XG4gICAgLy8gV2Ugc3RpbGwgbmVlZCB0byBjaGVjayBpZiAkcGFkZGluZyBpcyBzZXQuXG4gICAgQGlmICRwYWRkaW5nIHtcbiAgICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nICsgcmVtLWNhbGMoMSk7XG4gICAgfSBAZWxzZSBpZiAkcGFkZGluZyA9PSBmYWxzZSB7XG4gICAgICBwYWRkaW5nLXRvcDowO1xuICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICB9XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGJ1dHRvbiBjb2xvciBzdHlsZXNcbi8vXG4vLyAkYmcgLSBQcmltYXJ5IGNvbG9yIHNldCBpbiBzZXR0aW5ncyBmaWxlLiBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvci5cbi8vICRyYWRpdXMgLSBJZiB0cnVlLCBzZXQgdG8gYnV0dG9uIHJhZGl1cyB3aGljaCBpcyAkZ2xvYmFsLXJhZGl1cyB8fCBleHBsaWNpdGx5IHNldCByYWRpdXMgYW1vdW50IGluIHB4IChleC4gJHJhZGl1czoxMHB4KS4gRGVmYXVsdDogdHJ1ZVxuLy8gJGRpc2FibGVkIC0gV2UgY2FuIHNldCAkZGlzYWJsZWQ6dHJ1ZSB0byBjcmVhdGUgYSBkaXNhYmxlZCB0cmFuc3BhcmVudCBidXR0b24uIERlZmF1bHQ6IGZhbHNlXG5AbWl4aW4gYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvciwgJHJhZGl1czpmYWxzZSwgJGRpc2FibGVkOmZhbHNlKSB7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIHN0eWxlcyBhcmUgdXNlZCxcbiAgLy8gdGhlc2UgY2FuIGJlIHJlbW92ZWQgYnkgc2V0dGluZyAkYmc6ZmFsc2VcbiAgQGlmICRiZyB7XG4gICAgLy8gVGhpcyBmaW5kIHRoZSBsaWdodG5lc3MgcGVyY2VudGFnZSBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRiZywgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRiZywgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpOyB9XG5cbiAgICAvLyBXZSBjb250cm9sIHRoZSB0ZXh0IGNvbG9yIGZvciB5b3UgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4gICAgQGlmICRiZy1saWdodG5lc3MgPiA3MCUge1xuICAgICAgY29sb3I6ICRidXR0b24tZm9udC1jb2xvci1hbHQ7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7IGNvbG9yOiAkYnV0dG9uLWZvbnQtY29sb3ItYWx0OyB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGNvbG9yOiAkYnV0dG9uLWZvbnQtY29sb3I7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7IGNvbG9yOiAkYnV0dG9uLWZvbnQtY29sb3I7IH1cbiAgICB9XG4gIH1cblxuICAvLyBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi5cbiAgQGlmICRkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgb3BhY2l0eTogJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7IH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBjb250cm9sIGhvdyBtdWNoIGJ1dHRvbiByYWRpdXMgdXMgdXNlZC5cbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkYnV0dG9uLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIHF1aWNrbHkgY3JlYXRlIGJ1dHRvbnMgd2l0aCBhIHNpbmdsZSBtaXhpbi4gQXMgQGphcmVkaGFyZHkgcHV0cyBpdCwgXCJ0aGUga2l0Y2hlbiBzaW5rIG1peGluXCJcbi8vXG4vLyAkcGFkZGluZyAtIFVzZWQgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucyBEZWZhdWx0OiAkYnV0dG9uLW1lZCB8fD0gcmVtLWNhbGMoMTIpXG4vLyAkYmcgLSBQcmltYXJ5IGNvbG9yIHNldCBpbiBzZXR0aW5ncyBmaWxlLiBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvci5cbi8vICRyYWRpdXMgLSBJZiB0cnVlLCBzZXQgdG8gYnV0dG9uIHJhZGl1cyB3aGljaCBpcyAkZ2xvYmFsLXJhZGl1cyB8fCBleHBsaWNpdGx5IHNldCByYWRpdXMgYW1vdW50IGluIHB4IChleC4gJHJhZGl1czoxMHB4KS4gRGVmYXVsdDpmYWxzZS5cbi8vICRmdWxsLXdpZHRoIC0gV2UgY2FuIHNldCAkZnVsbC13aWR0aDp0cnVlIHRvIHJlbW92ZSBzaWRlIHBhZGRpbmcgZXh0ZW5kIHdpZHRoLiBEZWZhdWx0OmZhbHNlLlxuLy8gJGRpc2FibGVkIC0gV2UgY2FuIHNldCAkZGlzYWJsZWQ6dHJ1ZSB0byBjcmVhdGUgYSBkaXNhYmxlZCB0cmFuc3BhcmVudCBidXR0b24uIERlZmF1bHQ6ZmFsc2UuXG4vLyAkaXMtaW5wdXQgLSA8aW5wdXQ+J3MgYW5kIDxidXR0b24+J3MgdGFrZSBvbiBzdHJhbmdlIHBhZGRpbmcuIFdlIGFkZGVkIHRoaXMgdG8gaGVscCBmaXggdGhhdC4gRGVmYXVsdDpmYWxzZS5cbi8vICRpcy1wcmVmaXggLSBOb3QgdXNlZD8gRGVmYXVsdDpmYWxzZS5cbkBtaXhpbiBidXR0b24oJHBhZGRpbmc6JGJ1dHRvbi1tZWQsICRiZzokcHJpbWFyeS1jb2xvciwgJHJhZGl1czpmYWxzZSwgJGZ1bGwtd2lkdGg6ZmFsc2UsICRkaXNhYmxlZDpmYWxzZSwgJGlzLXByZWZpeDpmYWxzZSkge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcsICRmdWxsLXdpZHRoKTtcbiAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZywgJHJhZGl1cywgJGRpc2FibGVkKTtcbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYnV0dG9uXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXMge1xuXG4gICAgLy8gRGVmYXVsdCBzdHlsZXMgYXBwbGllZCBvdXRzaWRlIG9mIG1lZGlhIHF1ZXJ5XG4gICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemU7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGU7XG5cbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi1tZWQsICRmdWxsLXdpZHRoOmZhbHNlKTtcblxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGFsZXJ0LWNvbG9yKTsgfVxuXG4gICAgICAmLmxhcmdlICB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tbHJnKTsgfVxuICAgICAgJi5zbWFsbCAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLXNtbCk7IH1cbiAgICAgICYudGlueSAgIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi10bnkpOyB9XG4gICAgICAmLmV4cGFuZCB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOm51bGwsJGZ1bGwtd2lkdGg6dHJ1ZSk7IH1cblxuICAgICAgJi5sZWZ0LWFsaWduICB7IHRleHQtYWxpZ246IGxlZnQ7IHRleHQtaW5kZW50OiByZW0tY2FsYygxMik7IH1cbiAgICAgICYucmlnaHQtYWxpZ24geyB0ZXh0LWFsaWduOiByaWdodDsgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTIpOyB9XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzpmYWxzZSwgJHJhZGl1czp0cnVlKTsgfVxuICAgICAgJi5yb3VuZCAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOmZhbHNlLCAkcmFkaXVzOiRidXR0b24tcm91bmQpOyB9XG5cbiAgICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvciwgJGRpc2FibGVkOnRydWUpO1xuICAgICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHNlY29uZGFyeS1jb2xvciwgJGRpc2FibGVkOnRydWUpOyB9XG4gICAgICAgICYuc3VjY2VzcyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHN1Y2Nlc3MtY29sb3IsICRkaXNhYmxlZDp0cnVlKTsgfVxuICAgICAgICAmLmFsZXJ0IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYWxlcnQtY29sb3IsICRkaXNhYmxlZDp0cnVlKTsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIGJ1dHRvbiwgLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlKCRzdHlsZTpmYWxzZSwgJGRpc3BsYXk6aW5saW5lLWJsb2NrKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6ZmFsc2UsICRmdWxsLXdpZHRoOmZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWNsZWFyaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvcnMgZm9yIHBhcnRzIG9mIENsZWFyaW5nLlxuJGNsZWFyaW5nLWJnOiAjMzMzICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcHRpb24tYmc6ICRjbGVhcmluZy1iZyAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXJvdXNlbC1iZzogcmdiYSg1MSw1MSw1MSwwLjgpICFkZWZhdWx0O1xuJGNsZWFyaW5nLWltZy1iZzogJGNsZWFyaW5nLWJnICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGNsb3NlIGJ1dHRvblxuJGNsZWFyaW5nLWNsb3NlLWNvbG9yOiAjY2NjICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgYXJyb3dzXG4kY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRjbGVhcmluZy1hcnJvdy1jb2xvcjogJGNsZWFyaW5nLWNsb3NlLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcbiRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I6ICNjY2MgIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2FwdGlvbi1mb250LXNpemU6IDAuODc1ZW0gIWRlZmF1bHQ7XG4kY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2UgdGhlIGltYWdlIGFuZCBjYXJvdXNlbCBoZWlnaHQgYW5kIHN0eWxlXG4kY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JSAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXJvdXNlbC1oZWlnaHQ6IDEyMHB4ICFkZWZhdWx0O1xuJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoOiAxMjBweCAhZGVmYXVsdDtcbiRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgZXhwb3J0cyhcImNsZWFyaW5nXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlcyB7XG4gICAgLy8gV2UgZGVjaWRlZCB0byBub3QgY3JlYXRlIGEgbWl4aW4gZm9yIENsZWFyaW5nIGJlY2F1c2UgaXQgcmVsaWVzXG4gICAgLy8gb24gcHJlZGVmaW5lZCBjbGFzc2VzIGFuZCBzdHJ1Y3R1cmUgdG8gd29yayBwcm9wZXJseS5cbiAgICAvLyBUaGUgdmFyaWFibGVzIGFib3ZlIHNob3VsZCBnaXZlIGVub3VnaCBjb250cm9sLlxuXG4gICAgLyogQ2xlYXJpbmcgU3R5bGVzICovXG4gICAgLmNsZWFyaW5nLXRodW1icywgI3tkYXRhKCdjbGVhcmluZycpfSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICB9XG5cbiAgICAgICZbY2xhc3MqPVwiYmxvY2stZ3JpZC1cIl0gbGkge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctYmxhY2tvdXQge1xuICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWJnO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgIHotaW5kZXg6IDk5ODtcblxuICAgICAgLmNsZWFyaW5nLWNsb3NlIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDk5ODtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmNsZWFyaW5nLXRvdWNoLWxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgY29sb3I6ICNhYWE7XG4gICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgIH1cblxuICAgIC52aXNpYmxlLWltZyB7XG4gICAgICBoZWlnaHQ6IDk1JTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtNTAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNsZWFyaW5nLWNhcHRpb24ge1xuICAgICAgY29sb3I6ICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I7XG4gICAgICBmb250LXNpemU6ICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYmFja2dyb3VuZDogJGNsZWFyaW5nLWNhcHRpb24tYmc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6ICRjbGVhcmluZy1jYXB0aW9uLXBhZGRpbmc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICB9XG5cbiAgICAuY2xlYXJpbmctY2xvc2Uge1xuICAgICAgei1pbmRleDogOTk5O1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMjBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAkY2xlYXJpbmctY2xvc2Utc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6ICRjbGVhcmluZy1jbG9zZS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICNjY2M7IH1cbiAgICB9XG5cbiAgICAuY2xlYXJpbmctYXNzZW1ibGVkIC5jbGVhcmluZy1jb250YWluZXIgeyBoZWlnaHQ6IDEwMCU7XG4gICAgICAuY2Fyb3VzZWwgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG5cbiAgICAvLyBJZiB5b3Ugd2FudCB0byBzaG93IGEgbGlnaHRib3gsIGJ1dCBvbmx5IGhhdmUgYSBzaW5nbGUgaW1hZ2UgY29tZSB0aHJvdWdoIGFzIHRoZSB0aHVtYm5haWxcbiAgICAuY2xlYXJpbmctZmVhdHVyZSBsaSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgJi5jbGVhcmluZy1mZWF0dXJlZC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMYXJnZSBzY3JlZW4gb3ZlcnJpZGVzXG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgLmNsZWFyaW5nLW1haW4tcHJldixcbiAgICAgIC5jbGVhcmluZy1tYWluLW5leHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCAkY2xlYXJpbmctYXJyb3ctc2l6ZTtcbiAgICAgICAgICAmOmhvdmVyIHsgb3BhY2l0eTogMC44OyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jbGVhcmluZy1tYWluLXByZXYge1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiA1cHg7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJGNsZWFyaW5nLWFycm93LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY2xlYXJpbmctbWFpbi1uZXh0IHtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkY2xlYXJpbmctYXJyb3ctY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBcbiAgICAgIC5jbGVhcmluZy1tYWluLXByZXYuZGlzYWJsZWQsXG4gICAgICAuY2xlYXJpbmctbWFpbi1uZXh0LmRpc2FibGVkIHsgb3BhY2l0eTogMC4zOyB9XG5cbiAgICAgIC5jbGVhcmluZy1hc3NlbWJsZWQgLmNsZWFyaW5nLWNvbnRhaW5lciB7XG5cbiAgICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY2xlYXJpbmctY2Fyb3VzZWwtYmc7XG4gICAgICAgICAgaGVpZ2h0OiAkY2xlYXJpbmctY2Fyb3VzZWwtaGVpZ2h0O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoO1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XG5cbiAgICAgICAgICAgICAgJi5maXgtaGVpZ2h0IHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEudGgge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLnZpc2libGUgeyBvcGFjaXR5OiAxOyB9XG4gICAgICAgICAgICAgICY6aG92ZXIgeyBvcGFjaXR5OiAwLjg7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudmlzaWJsZS1pbWcge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjbGVhcmluZy1pbWctYmc7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBoZWlnaHQ6ICRjbGVhcmluZy1hY3RpdmUtaW1nLWhlaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2xlYXJpbmctY2xvc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWRyb3Bkb3duLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2xzIGhlaWdodCBhbmQgd2lkdGggc3R5bGVzLlxuJGYtZHJvcGRvd24tbWF4LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWhlaWdodDogYXV0byAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLW1heC1oZWlnaHQ6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vIFVzZWQgZm9yIGJvdHRvbSBwb3NpdGlvblxuJGYtZHJvcGRvd24tbWFyZ2luLXRvcDogMnB4ICFkZWZhdWx0O1xuXG4vLyBVc2VkIGZvciByaWdodCBwb3NpdGlvblxuJGYtZHJvcGRvd24tbWFyZ2luLWxlZnQ6ICRmLWRyb3Bkb3duLW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbi8vIFVzZWQgZm9yIGxlZnQgcG9zaXRpb25cbiRmLWRyb3Bkb3duLW1hcmdpbi1yaWdodDogJGYtZHJvcGRvd24tbWFyZ2luLXRvcCAhZGVmYXVsdDtcblxuLy8gVXNlZCBmb3IgdG9wIHBvc2l0aW9uXG4kZi1kcm9wZG93bi1tYXJnaW4tYm90dG9tOiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yXG4kZi1kcm9wZG93bi1iZzogI2ZmZiAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBib3JkZXIgc3R5bGVzIGZvciBkcm9wZG93bnMuXG4kZi1kcm9wZG93bi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC0yMCUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHRyaWFuZ2xlIHBpcC5cbiRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemU6IDZweCAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQ6IDEwcHggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHN0eWxlcyBmb3IgdGhlIGxpc3QgZWxlbWVudHMuXG4kZi1kcm9wZG93bi1saXN0LXN0eWxlOiBub25lICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tZm9udC1jb2xvcjogIzU1NSAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbGlzdC1wYWRkaW5nOiByZW0tY2FsYyg1LCAxMCkgIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1saW5lLWhlaWdodDogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbGlzdC1ob3Zlci1iZzogI2VlZWVlZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1tb2JpbGUtZGVmYXVsdC1mbG9hdDogMCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBoYXMgY3VzdG9tIGNvbnRlbnQuXG4kZi1kcm9wZG93bi1jb250ZW50LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG4vL1xuLy8gTk9URTogTWFrZSBkZWZhdWx0IG1heC13aWR0aCBjaGFuZ2UgYmV0d2VlbiBsaXN0IGFuZCBjb250ZW50IHR5cGVzLiBDYW4gYWRkIG1vcmUgd2lkdGggd2l0aCBjbGFzc2VzLCBtYXliZSAuc21hbGwsIC5tZWRpdW0sIC5sYXJnZSwgZXRjLjtcbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBkcm9wZG93biBjb250YWluZXIgZWxlbWVudC5cbi8vICRjb250ZW50LWxpc3QgLSBTZXRzIGxpc3Qtc3R5bGUuIERlZmF1bHQ6IGxpc3QuIE9wdGlvbnM6IFtsaXN0LCBjb250ZW50XVxuLy8gJHRyaWFuZ2xlIC0gU2V0cyBpZiBkcm9wZG93biBoYXMgdHJpYW5nbGUuIERlZmF1bHQ6dHJ1ZS5cbi8vICRtYXgtd2lkdGggLSBEZWZhdWx0OiAkZi1kcm9wZG93bi1tYXgtd2lkdGggfHwgMjAwcHguXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyKCRjb250ZW50Omxpc3QsICR0cmlhbmdsZTp0cnVlLCAkbWF4LXdpZHRoOiRmLWRyb3Bkb3duLW1heC13aWR0aCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7XG4gIGxpc3Qtc3R5bGU6ICRmLWRyb3Bkb3duLWxpc3Qtc3R5bGU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICA+ICo6Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG4gID4gKjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4gIEBpZiAkY29udGVudCA9PSBsaXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAkZi1kcm9wZG93bi1tYXgtaGVpZ2h0O1xuICAgIGhlaWdodDogJGYtZHJvcGRvd24taGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRmLWRyb3Bkb3duLWJnO1xuICAgIGJvcmRlcjogJGYtZHJvcGRvd24tYm9yZGVyLXN0eWxlICRmLWRyb3Bkb3duLWJvcmRlci13aWR0aCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkZi1kcm9wZG93bi1mb250LXNpemU7XG4gICAgei1pbmRleDogOTk7XG4gIH1cbiAgQGVsc2UgaWYgJGNvbnRlbnQgPT0gY29udGVudCB7XG4gICAgcGFkZGluZzogJGYtZHJvcGRvd24tY29udGVudC1wYWRkaW5nO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJGYtZHJvcGRvd24taGVpZ2h0O1xuICAgIG1heC1oZWlnaHQ6ICRmLWRyb3Bkb3duLW1heC1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGYtZHJvcGRvd24tYmc7XG4gICAgYm9yZGVyOiAkZi1kcm9wZG93bi1ib3JkZXItc3R5bGUgJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgfVxuXG4gIEBpZiAkdHJpYW5nbGUgPT0gYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUsICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yLCBib3R0b20pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldDtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICsgMSwgJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yLCBib3R0b20pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtKCgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICsgMSkgKiAyKTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldCAtIDE7XG4gICAgICB6LWluZGV4OiA5ODtcbiAgICB9XG5cbiAgICAmLnJpZ2h0OmJlZm9yZSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgIH1cbiAgICAmLnJpZ2h0OmFmdGVyIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQgLSAxO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdHJpYW5nbGUgPT0gbGVmdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogJGYtZHJvcGRvd24tbWFyZ2luLXJpZ2h0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUsICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yLCByaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpO1xuICAgICAgei1pbmRleDogOTk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsIHJpZ2h0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQgLSAxO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpIC0gMjtcbiAgICAgIHotaW5kZXg6IDk4O1xuICAgIH1cblxuICB9XG5cbiAgQGlmICR0cmlhbmdsZSA9PSByaWdodCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogLSRmLWRyb3Bkb3duLW1hcmdpbi1yaWdodDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplLCAkZi1kcm9wZG93bi10cmlhbmdsZS1jb2xvciwgbGVmdCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMik7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgei1pbmRleDogOTk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsIGxlZnQpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldCAtIDE7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKSAtIDI7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgei1pbmRleDogOTg7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJHRyaWFuZ2xlID09IHRvcCB7XG4gICAgbWFyZ2luLXRvcDogLSRmLWRyb3Bkb3duLW1hcmdpbi1ib3R0b207XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSwgJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3IsIHRvcCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiA5OTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSArIDEsICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvciwgdG9wKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMikgLSAyO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0IC0gMTtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgei1pbmRleDogOTg7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJG1heC13aWR0aCB7IG1heC13aWR0aDogJG1heC13aWR0aDsgfVxuICBAZWxzZSB7IG1heC13aWR0aDogJGYtZHJvcGRvd24tbWF4LXdpZHRoOyB9XG5cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIGxpc3QgZWxlbWVudHMgb3IgY29udGVudCBpbnNpZGUgdGhlIGRyb3Bkb3duLlxuXG5AbWl4aW4gZHJvcGRvd24tc3R5bGUge1xuICBmb250LXNpemU6ICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG5cbiAgbGluZS1oZWlnaHQ6ICRmLWRyb3Bkb3duLWxpbmUtaGVpZ2h0O1xuICBtYXJnaW46IDA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7IGJhY2tncm91bmQ6ICRmLWRyb3Bkb3duLWxpc3QtaG92ZXItYmc7IH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkZi1kcm9wZG93bi1saXN0LXBhZGRpbmc7XG4gICAgY29sb3I6ICRmLWRyb3Bkb3duLWZvbnQtY29sb3I7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImRyb3Bkb3duXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZHJvcGRvd24tY2xhc3NlcyB7XG5cbiAgICAvKiBGb3VuZGF0aW9uIERyb3Bkb3ducyAqL1xuICAgIC5mLWRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCBib3R0b20pO1xuXG4gICAgICAmLmRyb3AtcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIobGlzdCwgbGVmdCk7XG4gICAgICB9XG5cbiAgICAgICYuZHJvcC1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyKGxpc3QsIHJpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgJi5kcm9wLXRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCB0b3ApO1xuICAgICAgfVxuICAgICAgLy8gbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICBsaSB7IEBpbmNsdWRlIGRyb3Bkb3duLXN0eWxlOyB9XG5cbiAgICAgIC8vIFlvdSBjYW4gYWxzbyBwdXQgY3VzdG9tIGNvbnRlbnQgaW4gdGhlc2UgZHJvcGRvd25zXG4gICAgICAmLmNvbnRlbnQgeyBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIoY29udGVudCwgJHRyaWFuZ2xlOmZhbHNlKTsgfVxuXG4gICAgICAvLyBTaXplc1xuICAgICAgJi50aW55ICAgIHsgbWF4LXdpZHRoOiAyMDBweDsgfVxuICAgICAgJi5zbWFsbCAgIHsgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAgICAgJi5tZWRpdW0gIHsgbWF4LXdpZHRoOiA1MDBweDsgfVxuICAgICAgJi5sYXJnZSAgIHsgbWF4LXdpZHRoOiA4MDBweDsgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBjb2xvciBvZiB0aGUgcGlwIGluIGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3ItYWx0OiAjMzMzICFkZWZhdWx0O1xuXG4kYnV0dG9uLXBpcC10bnk6IHJlbS1jYWxjKDYpICFkZWZhdWx0O1xuJGJ1dHRvbi1waXAtc21sOiByZW0tY2FsYyg3KSAhZGVmYXVsdDtcbiRidXR0b24tcGlwLW1lZDogcmVtLWNhbGMoOSkgIWRlZmF1bHQ7XG4kYnV0dG9uLXBpcC1scmc6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRpbnkgZHJvcGRvd24gYnV0dG9uc1xuJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXRueTogJGJ1dHRvbi1waXAtdG55ICogNyAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS10bnk6ICRidXR0b24tcGlwLXRueSAqIDMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtdG55OiAtJGJ1dHRvbi1waXAtdG55IC8gMiArIHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgc21hbGwgZHJvcGRvd24gYnV0dG9uc1xuJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogNyAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtc21sOiAkYnV0dG9uLXBpcC1zbWwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC10b3Atc21sOiAtJGJ1dHRvbi1waXAtc21sIC8gMiArIHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgbWVkaXVtIGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGFkZGluZy1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDYgKyByZW0tY2FsYygzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbWVkOiAkYnV0dG9uLXBpcC1tZWQgLSByZW0tY2FsYygzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMi41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLW1lZDogLSRidXR0b24tcGlwLW1lZCAvIDIgKyByZW0tY2FsYygyKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxhcmdlIGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGFkZGluZy1scmc6ICRidXR0b24tcGlwLWxyZyAqIDUgKyByZW0tY2FsYygzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbHJnOiAkYnV0dG9uLXBpcC1scmcgLSByZW0tY2FsYyg2KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLWxyZzogJGJ1dHRvbi1waXAtbHJnICogMi41ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLWxyZzogLSRidXR0b24tcGlwLWxyZyAvIDIgKyByZW0tY2FsYygzKSAhZGVmYXVsdDtcblxuLy8gQG1peGluc1xuLy9cbi8vIERyb3Bkb3duIEJ1dHRvbiBNaXhpblxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGJ1aWxkIG9mZiBvZiB0aGUgYnV0dG9uIG1peGluIGFuZCBhZGQgZHJvcGRvd24gYnV0dG9uIHN0eWxlc1xuLy9cbi8vICRwYWRkaW5nIC0gRGV0ZXJtaW5lcyB0aGUgc2l6ZSBvZiBidXR0b24geW91J3JlIHdvcmtpbmcgd2l0aC4gRGVmYXVsdDogbWVkaXVtLiBPcHRpb25zIFt0aW55LCBzbWFsbCwgbWVkaXVtLCBsYXJnZV1cbi8vICRwaXAtY29sb3IgLSBDb2xvciBvZiB0aGUgbGl0dGxlIHRyaWFuZ2xlIHRoYXQgcG9pbnRzIHRvIHRoZSBkcm9wZG93bi4gRGVmYXVsdDogI2ZmZi5cbi8vICRiYXNlLXN0eWxlIC0gQWRkIGluIGJhc2Utc3R5bGVzLiBUaGlzIGNhbiBiZSBzZXQgdG8gZmFsc2UuIERlZmF1bHQ6dHJ1ZVxuXG5AbWl4aW4gZHJvcGRvd24tYnV0dG9uKCRwYWRkaW5nOm1lZGl1bSwgJHBpcC1jb2xvcjojZmZmLCAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgLy8gV2UgYWRkIGluIGJhc2Ugc3R5bGVzLCBidXQgdGhleSBjYW4gYmUgbmVnYXRlZCBieSBzZXR0aW5nIHRvICdmYWxzZScuXG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gVGhpcyBjcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgdGhlIHRyaWFuZ2xlIHBpcFxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICB0b3A6IDUwJTtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggdGlueSBidXR0b25zLCB1c2UgdGhlc2Ugc3R5bGVzXG4gIEBpZiAkcGFkZGluZyA9PSB0aW55IHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGFkZGluZy10bnk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXRueTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXRueTtcbiAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC10bnk7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgd2UncmUgZGVhbGluZyB3aXRoIHNtYWxsIGJ1dHRvbnMsIHVzZSB0aGVzZSBzdHlsZXNcbiAgQGlmICRwYWRkaW5nID09IHNtYWxsIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1zbWw7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXNtbDtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXNtbDtcbiAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1zbWw7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgd2UncmUgZGVhbGluZyB3aXRoIGRlZmF1bHQgKG1lZGl1bSkgYnV0dG9ucywgdXNlIHRoZXNlIHN0eWxlc1xuICBAaWYgJHBhZGRpbmcgPT0gbWVkaXVtIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1tZWQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLW1lZDtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLW1lZDtcbiAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1tZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgd2UncmUgZGVhbGluZyB3aXRoIGxhcmdlIGJ1dHRvbnMsIHVzZSB0aGVzZSBzdHlsZXNcbiAgQGlmICRwYWRkaW5nID09IGxhcmdlIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1scmc7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXdpZHRoOiAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLWxyZztcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLWxyZztcbiAgICAgIG1hcmdpbi10b3A6ICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1scmc7XG4gICAgfVxuICB9XG5cbiAgLy8gV2UgY2FuIGNvbnRyb2wgdGhlIHBpcCBjb2xvci4gV2UgZGlkbid0IHVzZSBsb2dpYyBpbiB0aGlzIGNhc2UsIGp1c3Qgc2V0IGl0IGFuZCBmb3JnZXQgaXQuXG4gIEBpZiAkcGlwLWNvbG9yIHtcbiAgICAmOmJlZm9yZSB7IGJvcmRlci1jb2xvcjogJHBpcC1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJkcm9wZG93bi1idXR0b25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlcyB7XG4gICAgLmRyb3Bkb3duLmJ1dHRvbiwgYnV0dG9uLmRyb3Bkb3duIHsgQGluY2x1ZGUgZHJvcGRvd24tYnV0dG9uO1xuICAgICAgJi50aW55IHsgQGluY2x1ZGUgZHJvcGRvd24tYnV0dG9uKHRpbnksJGJhc2Utc3R5bGU6ZmFsc2UpOyB9XG4gICAgICAmLnNtYWxsIHsgQGluY2x1ZGUgZHJvcGRvd24tYnV0dG9uKHNtYWxsLCRiYXNlLXN0eWxlOmZhbHNlKTsgfVxuICAgICAgJi5sYXJnZSB7IEBpbmNsdWRlIGRyb3Bkb3duLWJ1dHRvbihsYXJnZSwkYmFzZS1zdHlsZTpmYWxzZSk7IH1cbiAgICAgICYuc2Vjb25kYXJ5OmJlZm9yZSB7IGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3ItYWx0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZpZGVvIGNvbnRhaW5lciBwYWRkaW5nIGFuZCBtYXJnaW5zXG4kZmxleC12aWRlby1wYWRkaW5nLXRvcDogcmVtLWNhbGMoMjUpICFkZWZhdWx0O1xuJGZsZXgtdmlkZW8tcGFkZGluZy1ib3R0b206IDY3LjUlICFkZWZhdWx0O1xuJGZsZXgtdmlkZW8tbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdpZGVzY3JlZW4gYm90dG9tIHBhZGRpbmdcbiRmbGV4LXZpZGVvLXdpZGVzY3JlZW4tcGFkZGluZy1ib3R0b206IDU2LjM0JSAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbkBtaXhpbiBmbGV4LXZpZGVvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6ICRmbGV4LXZpZGVvLXBhZGRpbmctdG9wO1xuICBwYWRkaW5nLWJvdHRvbTogJGZsZXgtdmlkZW8tcGFkZGluZy1ib3R0b207XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGZsZXgtdmlkZW8tbWFyZ2luLWJvdHRvbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmLndpZGVzY3JlZW4geyBwYWRkaW5nLWJvdHRvbTogJGZsZXgtdmlkZW8td2lkZXNjcmVlbi1wYWRkaW5nLWJvdHRvbTsgfVxuICAmLnZpbWVvIHsgcGFkZGluZy10b3A6IDA7IH1cblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiZmxleC12aWRlb1wiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXMge1xuICAgIC5mbGV4LXZpZGVvIHsgQGluY2x1ZGUgZmxleC12aWRlby1jb250YWluZXI7IH1cbiAgfVxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcbkBpbXBvcnQgXCJidXR0b25zXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYXNlIGZvciBsb3RzIG9mIGZvcm0gc3BhY2luZyBhbmQgcG9zaXRpb25pbmcgc3R5bGVzXG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzIGluIGRpZmZlcmVudCB3YXlzXG4kZm9ybS1sYWJlbC1wb2ludGVyOiBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCMwMDAsICRsaWdodG5lc3M6IDMwJSkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1ib3R0b20tbWFyZ2luOiAwICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kaW5wdXQtYmctY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYmctY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC0yJSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtMjAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC00MCUpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICNkZGQgIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4xKSAhZGVmYXVsdDtcbiRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0OiB0cnVlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGZpZWxkc2V0IGJvcmRlciBhbmQgc3BhY2luZy5cbiRmaWVsZHNldC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogI2RkZCAhZGVmYXVsdDtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsZWdlbmRzIHdoZW4geW91IHVzZSB0aGVtXG4kbGVnZW5kLWJnOiAjZmZmICFkZWZhdWx0O1xuJGxlZ2VuZC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcbiRpbnB1dC1wcmVmaXgtYmc6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogLTIwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZCAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c6IGhpZGRlbiAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ6ICNmZmYgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZXJyb3Igc3RhdGVzIGZvciBpbnB1dHMgYW5kIGxhYmVsc1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtcGFkZGluZzogcmVtLWNhbGMoNiA5IDkpICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtdG9wOiAtMXB4ICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OiAjMzMzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgZ2xvd2luZyBlZmZlY3Qgb2YgaW5wdXRzIHdoZW4gZm9jdXNlZFxuJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZTogMC40NXMgIWRlZmF1bHQ7XG4kZ2xvd2luZy1lZmZlY3QtY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIFNlbGVjdCB2YXJpYWJsZXNcbiRzZWxlY3QtYmctY29sb3I6ICNmYWZhZmEgIWRlZmF1bHQ7XG4kc2VsZWN0LWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkc2VsZWN0LWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpICFkZWZhdWx0O1xuXG4vL1xuLy8gQE1JWElOU1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gZ2l2ZSB1cyBmb3JtIHN0eWxlcyBmb3Igcm93cyBpbnNpZGUgb2YgZm9ybXNcbkBtaXhpbiBmb3JtLXJvdy1iYXNlIHtcbiAgLnJvdyB7IG1hcmdpbjogMCAoKC0kZm9ybS1zcGFjaW5nKSAvIDIpO1xuXG4gICAgLmNvbHVtbixcbiAgICAuY29sdW1ucyB7IHBhZGRpbmc6IDAgJGZvcm0tc3BhY2luZyAvIDI7IH1cblxuICAgIC8vIFVzZSB0aGlzIHRvIGNvbGxhcHNlIHRoZSBtYXJnaW5zIG9mIGEgZm9ybSByb3dcbiAgICAmLmNvbGxhcHNlIHsgbWFyZ2luOiAwO1xuXG4gICAgICAuY29sdW1uLFxuICAgICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwOyB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItYm90dG9tLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tcmFkaXVzOiAwO1xuICAgICAgICAtd2Via2l0LWJvcmRlci10b3AtI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1yYWRpdXM6IDA7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbiAgaW5wdXQuY29sdW1uLFxuICBpbnB1dC5jb2x1bW5zLFxuICB0ZXh0YXJlYS5jb2x1bW4sXG4gIHRleHRhcmVhLmNvbHVtbnMgeyBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAkZm9ybS1zcGFjaW5nIC8gMjsgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnaXZlIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzIHRoZWlyIHN0eWxlXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWNvbG9yO1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggJGlucHV0LWJvcmRlci1zdHlsZSAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdztcbiAgfVxuICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdztcbiAgY29sb3I6ICRpbnB1dC1mb250LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nIDA7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuICBoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0IHtcbiAgICBAaW5jbHVkZSBibG9jay1nbG93aW5nLWVmZmVjdChmb2N1cywgJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZSwgJGdsb3dpbmctZWZmZWN0LWNvbG9yKTtcbiAgfVxuICAvLyBCYXNpYyBmb2N1cyBzdHlsZXNcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWZvY3VzLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYmFja2dyb3VuZCBpbnB1dCBiYWNrZ3JvdW5kIGNvbG9yXG4gICZbZGlzYWJsZWRdLCBmaWVsZHNldFtkaXNhYmxlZF0gJiB7IGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZzsgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgZm9ybSBsYWJlbHNcbi8vXG4vLyAkYWxpZ25tZW50IC0gQWxpZ25tZW50IG9wdGlvbnMuIERlZmF1bHQ6IGZhbHNlLiBPcHRpb25zOiBbcmlnaHQsIGlubGluZSwgZmFsc2VdXG4vLyAkYmFzZS1zdHlsZSAtIENvbnRyb2wgd2hldGhlciBvciBub3QgdGhlIGJhc2Ugc3R5bGVzIGNvbWUgdGhyb3VnaC4gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBmb3JtLWxhYmVsKCRhbGlnbm1lbnQ6ZmFsc2UsICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICAvLyBDb250cm9sIHdoZXRoZXIgb3Igbm90IHRoZSBiYXNlIHN0eWxlcyBjb21lIHRocm91Z2guXG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gICAgY29sb3I6ICRmb3JtLWxhYmVsLWZvbnQtY29sb3I7XG4gICAgY3Vyc29yOiAkZm9ybS1sYWJlbC1wb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtYm90dG9tLW1hcmdpbjtcbiAgfVxuXG4gIC8vIEFsaWdubWVudCBvcHRpb25zXG4gIEBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGlubGluZSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICAgIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCAqIDIpIDA7XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHBvc3RmaXgvcHJlZml4IGZvcm0gTGFiZWxzXG5AbWl4aW4gcHJlZml4LXBvc3RmaXgtYmFzZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLXN0eWxlOiAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlO1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1wcmVmaXgtYm9yZGVyLXNpemU7XG4gIG92ZXJmbG93OiAkaW5wdXQtcHJlZml4LW92ZXJmbG93O1xuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcbiAgbGluZS1oZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcHJlZml4IGxhYmVsIHN0eWxlc1xuLy8gJGJnIC0gRGVmYXVsdDokaW5wdXQtcHJlZml4LWJnIHx8IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHQ7XG4vLyAkaXMtYnV0dG9uIC0gVG9nZ2xlIHBvc2l0aW9uIHNldHRpbmdzIGlmIHByZWZpeCBpcyBhIGJ1dHRvbi4gRGVmYXVsdDpmYWxzZVxuLy9cbkBtaXhpbiBwcmVmaXgoJGJnOiRpbnB1dC1wcmVmaXgtYmcsICRib3JkZXI6JGlucHV0LXByZWZpeC1ib3JkZXItY29sb3IsICRpcy1idXR0b246ZmFsc2UpIHtcblxuICBAaWYgJGJnIHtcbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IG5vbmU7XG5cbiAgICAvLyBDb250cm9sIHRoZSBmb250IGNvbG9yIGJhc2VkIG9uIGJhY2tncm91bmQgYnJpZ2h0bmVzc1xuICAgIEBpZiAkYmctbGlnaHRuZXNzID4gNzAlIG9yICRiZyA9PSB5ZWxsb3cgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yOyB9XG4gICAgQGVsc2UgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDsgfVxuICB9XG5cbiAgQGlmICRib3JkZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gIEBpZiAkaXMtYnV0dG9uIHtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cblxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcG9zdGZpeCBsYWJlbCBzdHlsZXNcbi8vICRiZyAtIERlZmF1bHQ6JGlucHV0LXByZWZpeC1iZyB8fCBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuLy8gJGlzLWJ1dHRvbiAtIFRvZ2dsZSBwb3NpdGlvbiBzZXR0aW5ncyBpZiBwcmVmaXggaXMgYSBidXR0b24uIERlZmF1bHQ6IGZhbHNlXG5AbWl4aW4gcG9zdGZpeCgkYmc6JGlucHV0LXByZWZpeC1iZywgJGJvcmRlcjokaW5wdXQtcHJlZml4LWJvcmRlci1jb2xvciwgJGlzLWJ1dHRvbjpmYWxzZSkge1xuXG4gIEBpZiAkYmcge1xuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH06IG5vbmU7XG5cbiAgICAvLyBDb250cm9sIHRoZSBmb250IGNvbG9yIGJhc2VkIG9uIGJhY2tncm91bmQgYnJpZ2h0bmVzc1xuICAgIEBpZiAkYmctbGlnaHRuZXNzID4gNzAlICBvciAkYmcgPT0geWVsbG93IHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ7IH1cbiAgfVxuXG4gIEBpZiAkYm9yZGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICBAaWYgJGlzLWJ1dHRvbiB7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNCk7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgZmllbGRzZXRzXG5AbWl4aW4gZmllbGRzZXQge1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXItd2lkdGggJGZpZWxkc2V0LWJvcmRlci1zdHlsZSAkZmllbGRzZXQtYm9yZGVyLWNvbG9yO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuXG4gIC8vIGFuZCBsZWdlbmQgc3R5bGVzXG4gIGxlZ2VuZCB7XG4gICAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGxlZ2VuZC1iZztcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogcmVtLWNhbGMoLTMpO1xuICB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNvbnRyb2wgYm9yZGVyIGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGVycm9yIGlucHV0c1xuLy8gJGNvbG9yIC0gRGVmYXVsdDogJGFsZXJ0LWNvbG9yIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxuQG1peGluIGZvcm0tZXJyb3ItY29sb3IoJGNvbG9yOiRhbGVydC1jb2xvcikge1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIDAuMSk7XG5cbiAgLy8gR28gYmFjayB0byBub3JtYWwgb24gZm9jdXNcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWZvY3VzLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBzaW1wbGUgbWl4aW4gdG8gc3R5bGUgbGFiZWxzIGZvciBlcnJvciBpbnB1dHNcbi8vICRjb2xvciAtIERlZmF1bHQ6JGFsZXJ0LWNvbG9yLiBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXG5AbWl4aW4gZm9ybS1sYWJlbC1lcnJvci1jb2xvcigkY29sb3I6JGFsZXJ0LWNvbG9yKSB7IGNvbG9yOiAkY29sb3I7IH1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGVycm9yIG1lc3NhZ2Ugc3R5bGVzXG4vLyAkYmcgLSBEZWZhdWx0OiAkYWxlcnQtY29sb3IgKEZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gZm9ybS1lcnJvci1tZXNzYWdlKCRiZzokYWxlcnQtY29sb3IpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRpbnB1dC1lcnJvci1tZXNzYWdlLXBhZGRpbmc7XG4gIG1hcmdpbi10b3A6ICRpbnB1dC1lcnJvci1tZXNzYWdlLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXdlaWdodDtcbiAgZm9udC1zdHlsZTogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTtcblxuICAvLyBXZSBjYW4gY29udHJvbCB0aGUgdGV4dCBjb2xvciBiYXNlZCBvbiB0aGUgYnJpZ2h0bmVzcyBvZiB0aGUgYmFja2dyb3VuZC5cbiAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gIGJhY2tncm91bmQ6ICRiZztcbiAgQGlmICRiZy1saWdodG5lc3MgPCA3MCUgb3IgJGJnID09IHllbGxvdyB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOyB9XG4gIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtY29sb3ItYWx0OyB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJmb3JtXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzIHtcbiAgICAvKiBTdGFuZGFyZCBGb3JtcyAqL1xuICAgIGZvcm0geyBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nOyB9XG5cbiAgICAvKiBVc2luZyBmb3JtcyB3aXRoaW4gcm93cywgd2UgbmVlZCB0byBzZXQgc29tZSBkZWZhdWx0cyAqL1xuICAgIGZvcm0gLnJvdyB7IEBpbmNsdWRlIGZvcm0tcm93LWJhc2U7IH1cblxuICAgIC8qIExhYmVsIFN0eWxlcyAqL1xuICAgIGxhYmVsIHsgQGluY2x1ZGUgZm9ybS1sYWJlbDtcbiAgICAgICYucmlnaHQgeyBAaW5jbHVkZSBmb3JtLWxhYmVsKHJpZ2h0LGZhbHNlKTsgfVxuICAgICAgJi5pbmxpbmUgeyBAaW5jbHVkZSBmb3JtLWxhYmVsKGlubGluZSxmYWxzZSk7IH1cbiAgICAgIC8qIFN0eWxlcyBmb3IgcmVxdWlyZWQgaW5wdXRzICovXG4gICAgICBzbWFsbCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LCBQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhabGNuTnBiMjQ5SWpFdU1TSWdlRDBpTUhCNElpQjVQU0l3Y0hnaUlIZHBaSFJvUFNJMmNIZ2lJR2hsYVdkb2REMGlNM0I0SWlCMmFXVjNRbTk0UFNJd0lEQWdOaUF6SWlCbGJtRmliR1V0WW1GamEyZHliM1Z1WkQwaWJtVjNJREFnTUNBMklETWlJSGh0YkRwemNHRmpaVDBpY0hKbGMyVnlkbVVpUGp4d2IyeDVaMjl1SUhCdmFXNTBjejBpTlM0NU9USXNNQ0F5TGprNU1pd3pJQzB3TGpBd09Dd3dJQ0l2UGp3dmMzWm5QZz09Jyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogaWYoJHRleHQtZGlyZWN0aW9uID09ICdydGwnLCAzJSwgOTclKSBjZW50ZXI7XG4gICAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggJGlucHV0LWJvcmRlci1zdHlsZSAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgICBAaW5jbHVkZSByYWRpdXMoMCk7XG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWhvdmVyLWJnLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgICAgc2VsZWN0IHsgYmFja2dyb3VuZDogJHNlbGVjdC1iZy1jb2xvcjsgfVxuICAgICAgc2VsZWN0OmhvdmVyIHsgYmFja2dyb3VuZDogJHNlbGVjdC1ob3Zlci1iZy1jb2xvciB9XG4gICAgfVxuICAgIC8qIEF0dGFjaCBlbGVtZW50cyB0byB0aGUgYmVnaW5uaW5nIG9yIGVuZCBvZiBhbiBpbnB1dCAqL1xuICAgIC5wcmVmaXgsXG4gICAgLnBvc3RmaXggeyBAaW5jbHVkZSBwcmVmaXgtcG9zdGZpeC1iYXNlOyB9XG5cbiAgICAvKiBBZGp1c3QgcGFkZGluZywgYWxpZ25tZW50IGFuZCByYWRpdXMgaWYgcHJlL3Bvc3QgZWxlbWVudCBpcyBhIGJ1dHRvbiAqL1xuICAgIC5wb3N0Zml4LmJ1dHRvbiB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKGZhbHNlLGZhbHNlKTsgQGluY2x1ZGUgcG9zdGZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XG4gICAgLnByZWZpeC5idXR0b24geyBAaW5jbHVkZSBidXR0b24tc2l6ZShmYWxzZSxmYWxzZSk7IEBpbmNsdWRlIHByZWZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XG5cbiAgICAucHJlZml4LmJ1dHRvbi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucG9zdGZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAucHJlZml4LmJ1dHRvbi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcm91bmQpOyB9XG4gICAgLnBvc3RmaXguYnV0dG9uLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuXG4gICAgLyogU2VwYXJhdGUgcHJlZml4IGFuZCBwb3N0Zml4IHN0eWxlcyB3aGVuIG9uIHNwYW4gb3IgbGFiZWwgc28gYnV0dG9ucyBrZWVwIHRoZWlyIG93biAqL1xuICAgIHNwYW4ucHJlZml4LGxhYmVsLnByZWZpeCB7IEBpbmNsdWRlIHByZWZpeCgpO1xuICAgICAgJi5yYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkZ2xvYmFsLXJhZGl1cyk7IH1cbiAgICB9XG4gICAgc3Bhbi5wb3N0Zml4LGxhYmVsLnBvc3RmaXggeyBAaW5jbHVkZSBwb3N0Zml4KCk7XG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGdsb2JhbC1yYWRpdXMpOyB9XG4gICAgfVxuXG4gICAgLyogV2UgdXNlIHRoaXMgdG8gZ2V0IGJhc2ljIHN0eWxpbmcgb24gYWxsIGJhc2ljIGZvcm0gZWxlbWVudHMgKi9cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gICAgdGV4dGFyZWEge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgICAgQGlmIG5vdCAkaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdCB7XG4gICAgICAgICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24oYWxsLCAwLjE1cywgbGluZWFyKTtcbiAgICAgIH1cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogUmVzcGVjdCBlbmZvcmNlZCBhbW91bnQgb2Ygcm93cyBmb3IgdGV4dGFyZWEgKi9cbiAgICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyogQWRkIGhlaWdodCB2YWx1ZSBmb3Igc2VsZWN0IGVsZW1lbnRzIHRvIG1hdGNoIHRleHQgaW5wdXQgaGVpZ2h0ICovXG4gICAgc2VsZWN0IHtcbiAgICAgIGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG4gICAgfVxuXG4gICAgLyogQWRqdXN0IG1hcmdpbiBmb3IgZm9ybSBlbGVtZW50cyBiZWxvdyAqL1xuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgc2VsZWN0IHtcbiAgICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmcgMDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCxcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRmb3JtLXNwYWNpbmcgKiAuNTtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZm9ybS1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICAvKiBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aCAqL1xuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuXG4gICAgLyogV2UgYWRkIGJhc2ljIGZpZWxkc2V0IHN0eWxpbmcgKi9cbiAgICBmaWVsZHNldCB7XG4gICAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgICB9XG5cbiAgICAvKiBFcnJvciBIYW5kbGluZyAqL1xuXG4gICAgI3tkYXRhKCdhYmlkZScpfSB7XG4gICAgICAuZXJyb3Igc21hbGwuZXJyb3IsIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgICAgfVxuICAgICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3IgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG4gICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3Ige1xuICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgIH1cblxuICAgIC5lcnJvciB7XG4gICAgICBpbnB1dCxcbiAgICAgIHRleHRhcmVhLFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZ1xuICAgICAgfVxuXG4gICAgICBsYWJlbCxcbiAgICAgIGxhYmVsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgc21hbGwuZXJyb3Ige1xuICAgICAgICBAaW5jbHVkZSBmb3JtLWVycm9yLW1lc3NhZ2U7XG4gICAgICB9XG5cbiAgICAgID4gbGFiZWwge1xuICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXNpemU6IDYwJTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4uZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0LmVycm9yLFxuICAgIHRleHRhcmVhLmVycm9yIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGxhYmVsLmVycm9yIHsgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1pbmxpbmUtbGlzdC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1hcmdpbnMgYW5kIHBhZGRpbmcgb2YgdGhlIGlubGluZSBsaXN0LlxuJGlubGluZS1saXN0LXRvcC1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luOiAwICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWJvdHRvbS1tYXJnaW46IHJlbS1jYWxjKDE3KSAhZGVmYXVsdDtcbiRpbmxpbmUtbGlzdC1kZWZhdWx0LWZsb2F0LW1hcmdpbjogcmVtLWNhbGMoLTIyKSAhZGVmYXVsdDtcblxuJGlubGluZS1saXN0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cbiRpbmxpbmUtbGlzdC1vdmVyZmxvdzogaGlkZGVuICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGlubGluZSBsaXN0c1xuQG1peGluIGlubGluZS1saXN0IHtcbiAgbWFyZ2luOiAkaW5saW5lLWxpc3QtdG9wLW1hcmdpbiBhdXRvICRpbmxpbmUtbGlzdC1ib3R0b20tbWFyZ2luIGF1dG87XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luO1xuICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGlubGluZS1saXN0LW9wcG9zaXRlLW1hcmdpbjtcbiAgcGFkZGluZzogJGlubGluZS1saXN0LXBhZGRpbmc7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiAkaW5saW5lLWxpc3Qtb3ZlcmZsb3c7XG5cbiAgJiA+IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKDIyKTtcbiAgICBkaXNwbGF5OiAkaW5saW5lLWxpc3QtZGlzcGxheTtcbiAgICAmPiogeyBkaXNwbGF5OiAkaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTsgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJpbmxpbmUtbGlzdFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXMge1xuICAgIC5pbmxpbmUtbGlzdCB7XG4gICAgICBAaW5jbHVkZSBpbmxpbmUtbGlzdCgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2xsaW5nIGRlZmF1bHQgSm95cmlkZSBzdHlsZXNcbiRqb3lyaWRlLXRpcC1iZzogIzMzMyAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1wYWRkaW5nOiByZW0tY2FsYygxOCAyMCAyNCkgIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggIzU1NSAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1yYWRpdXM6IDRweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ6IDIycHggIWRlZmF1bHQ7XG5cbi8vIEhlcmUsIHdlJ3JlIHNldHRpbmcgdGhlIHRpcCBmb250IHN0eWxlc1xuJGpveXJpZGUtdGlwLWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtaGVhZGVyLXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8gVGhpcyBjaGFuZ2VzIHRoZSBudWIgc2l6ZVxuJGpveXJpZGUtdGlwLW51Yi1zaXplOiAxMHB4ICFkZWZhdWx0O1xuXG4vLyBUaGlzIGFkanVzdHMgdGhlIHN0eWxlcyBmb3IgdGhlIHRpbWVyIHdoZW4gaXRzIGVuYWJsZWRcbiRqb3lyaWRlLXRpcC10aW1lci13aWR0aDogNTBweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC10aW1lci1oZWlnaHQ6IDNweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC10aW1lci1jb2xvcjogIzY2NiAhZGVmYXVsdDtcblxuLy8gVGhpcyBjaGFuZ2VzIHVwIHRoZSBzdHlsZXMgZm9yIHRoZSBjbG9zZSBidXR0b25cbiRqb3lyaWRlLXRpcC1jbG9zZS1jb2xvcjogIzc3NyAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1jbG9zZS1zaXplOiAyNHB4ICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWNsb3NlLXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLyBXaGVuIEpveXJpZGUgaXMgZmlsbGluZyB0aGUgc2NyZWVuLCB3ZSB1c2UgdGhpcyBzdHlsZSBmb3IgdGhlIGJnXG4kam95cmlkZS1zY3JlZW5maWxsOiByZ2JhKDAsMCwwLDAuNSkgIWRlZmF1bHQ7XG5cblxuLy8gV2UgZGVjaWRlZCBub3QgdG8gbWFrZSBhIG1peGluIGZvciB0aGlzIGJlY2F1c2UgaXQgcmVsaWVzIG9uIFxuLy8gcHJlZGVmaW5lZCBjbGFzc2VzIHRvIHdvcmsgcHJvcGVybHkuXG5AaW5jbHVkZSBleHBvcnRzKFwiam95cmlkZVwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWpveXJpZGUtY2xhc3NlcyB7XG5cbiAgICAvKiBGb3VuZGF0aW9uIEpveXJpZGUgKi9cbiAgICAuam95cmlkZS1saXN0IHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgLyogRGVmYXVsdCBzdHlsZXMgZm9yIHRoZSBjb250YWluZXIgKi9cbiAgICAuam95cmlkZS10aXAtZ3VpZGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRqb3lyaWRlLXRpcC1iZztcbiAgICAgIGNvbG9yOiAkam95cmlkZS10aXAtZm9udC1jb2xvcjtcbiAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAyLjUlO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgd2lkdGg6IDk1JTtcbiAgICB9XG5cbiAgICAubHQtaWU5IC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gICAgICBtYXgtd2lkdGg6ODAwcHg7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9Oi00MDBweDtcbiAgICB9XG5cbiAgICAuam95cmlkZS1jb250ZW50LXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIHBhZGRpbmc6ICRqb3lyaWRlLXRpcC1wYWRkaW5nO1xuXG4gICAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgLyogQWRkIGEgbGl0dGxlIGNzcyB0cmlhbmdsZSBwaXAsIG9sZGVyIGJyb3dzZXIganVzdCBtaXNzIG91dCBvbiB0aGUgZmFuY2luZXNzIG9mIGl0ICovXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIHtcbiAgICAgIC5qb3lyaWRlLW51YiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkam95cmlkZS10aXAtcG9zaXRpb24tb2Zmc2V0O1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXI6ICRqb3lyaWRlLXRpcC1udWItc2l6ZSBzb2xpZCAkam95cmlkZS10aXAtYmc7XG5cbiAgICAgICAgJi50b3Age1xuICAgICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGpveXJpZGUtdGlwLWJnO1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRvcDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgIH1cbiAgICAgICAgJi5ib3R0b20ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGpveXJpZGUtdGlwLWJnICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm90dG9tOiAtKCRqb3lyaWRlLXRpcC1udWItc2l6ZSoyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYucmlnaHQgeyByaWdodDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7IH1cbiAgICAgICAgJi5sZWZ0IHsgbGVmdDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBUeXBvZ3JhcGh5ICovXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGgxLFxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoMixcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDMsXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGg0LFxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoNSxcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDYge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXdlaWdodDogJGpveXJpZGUtdGlwLWhlYWRlci13ZWlnaHQ7XG4gICAgICBjb2xvcjogJGpveXJpZGUtdGlwLWZvbnQtY29sb3I7XG4gICAgfVxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBwIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDE4IDApO1xuICAgICAgZm9udC1zaXplOiAkam95cmlkZS10aXAtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB9XG5cbiAgICAuam95cmlkZS10aW1lci1pbmRpY2F0b3Itd3JhcCB7XG4gICAgICB3aWR0aDogJGpveXJpZGUtdGlwLXRpbWVyLXdpZHRoO1xuICAgICAgaGVpZ2h0OiAkam95cmlkZS10aXAtdGltZXItaGVpZ2h0O1xuICAgICAgYm9yZGVyOiAkam95cmlkZS10aXAtYm9yZGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogcmVtLWNhbGMoMTcpO1xuICAgICAgYm90dG9tOiByZW0tY2FsYygxNik7XG4gICAgfVxuICAgIC5qb3lyaWRlLXRpbWVyLWluZGljYXRvciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZDogJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWNsb3NlLXRpcCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMnB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgY29sb3I6ICRqb3lyaWRlLXRpcC1jbG9zZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZm9udC1zaXplOiAkam95cmlkZS10aXAtY2xvc2Utc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkam95cmlkZS10aXAtY2xvc2Utd2VpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6IC41ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICNlZWUgIWltcG9ydGFudDsgfVxuICAgIH1cblxuICAgIC5qb3lyaWRlLW1vZGFsLWJnIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkam95cmlkZS1zY3JlZW5maWxsO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gICAgfVxuXG4gICAgLmpveXJpZGUtZXhwb3NlLXdyYXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIHotaW5kZXg6IDEwMjtcbiAgICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAwIDAgMzBweCAjZmZmZmZmO1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAxNXB4ICNmZmZmZmY7XG4gICAgICB9XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTVweCAjZmZmZmZmO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWV4cG9zZS1jb3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuXG4gICAgLyogU3R5bGVzIGZvciBzY3JlZW5zIHRoYXQgYXJlIGF0IGxlYXN0IDc2OHB4OyAqL1xuICAgIEBtZWRpYSAjeyRzbWFsbH0ge1xuICAgICAgLmpveXJpZGUtdGlwLWd1aWRlIHsgd2lkdGg6ICRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOyAjeyRkZWZhdWx0LWZsb2F0fTogaW5oZXJpdDtcbiAgICAgICAgLmpveXJpZGUtbnViIHtcbiAgICAgICAgICAmLmJvdHRvbSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm90dG9tOiAtKCRqb3lyaWRlLXRpcC1udWItc2l6ZSoyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5yaWdodCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRvcDogJGpveXJpZGUtdGlwLXBvc2l0aW9uLW9mZnNldDtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGVmdCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRvcDogJGpveXJpZGUtdGlwLXBvc2l0aW9uLW9mZnNldDtcbiAgICAgICAgICAgIGxlZnQ6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpO1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1rZXlzdHJva2UtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0ZXh0IHN0eWxlcy5cbiRrZXlzdHJva2UtZm9udDogXCJDb25zb2xhc1wiLCBcIk1lbmxvXCIsIFwiQ291cmllclwiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWZvbnQtc2l6ZTogaW5oZXJpdCAhZGVmYXVsdDtcbiRrZXlzdHJva2UtZm9udC1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiRrZXlzdHJva2UtZm9udC1jb2xvci1hbHQ6ICNmZmYgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3RvcjogLTclICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGtleXN0cm9rZSBwYWRkaW5nLlxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXMuXG4ka2V5c3Ryb2tlLWJnOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4ka2V5c3Ryb2tlLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGtleXN0cm9rZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRrZXlzdHJva2UtYmcsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUga2V5c3Ryb2tlIHN0eWxlcy5cbi8vICRiZyAtIERlZmF1bHQ6ICRrZXlzdHJva2UtYmcgfHwgc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuQG1peGluIGtleXN0cm9rZSgkYmc6JGtleXN0cm9rZS1iZykge1xuICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gIGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGJnLCAkbGlnaHRuZXNzOiAka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3Rvcik7XG5cbiAgLy8gV2UgYWRqdXN0IHRoZSBmb250IGNvbG9yIGJhc2VkIG9uIHRoZSBicmlnaHRuZXNzIG9mIHRoZSBiYWNrZ3JvdW5kLlxuICBAaWYgJGJnLWxpZ2h0bmVzcyA+IDcwJSB7IGNvbG9yOiAka2V5c3Ryb2tlLWZvbnQtY29sb3I7IH1cbiAgQGVsc2UgeyBjb2xvcjogJGtleXN0cm9rZS1mb250LWNvbG9yLWFsdDsgfVxuXG4gIGJvcmRlci1zdHlsZTogJGtleXN0cm9rZS1ib3JkZXItc3R5bGU7XG4gIGJvcmRlci13aWR0aDogJGtleXN0cm9rZS1ib3JkZXItd2lkdGg7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgZm9udC1zaXplOiAka2V5c3Ryb2tlLWZvbnQtc2l6ZTtcbiAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwia2V5c3Ryb2tlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwta2V5c3Ryb2tlLWNsYXNzZXMgIHtcbiAgICAua2V5c3Ryb2tlLFxuICAgIGtiZCB7XG4gICAgICBAaW5jbHVkZSBrZXlzdHJva2U7XG4gICAgICBAaW5jbHVkZSByYWRpdXMoJGtleXN0cm9rZS1yYWRpdXMpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsc1xuJGxhYmVsLXBhZGRpbmc6IHJlbS1jYWxjKDQgOCA2KSAhZGVmYXVsdDtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsIHRleHRcbiRsYWJlbC1mb250LXNpemluZzogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRsYWJlbC1mb250LWNvbG9yLWFsdDogI2ZmZiAhZGVmYXVsdDtcbiRsYWJlbC1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBsYWJlbCBiYXNlLlxuQG1peGluIGxhYmVsLWJhc2Uge1xuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICBmb250LWZhbWlseTogJGxhYmVsLWZvbnQtZmFtaWx5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiBpbmhlcml0O1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGxhYmVsIHNpemUgc3R5bGVzLlxuLy8gJHBhZGRpbmcgLSBVc2VkIHRvIGRldGVybWluZSBsYWJlbCBwYWRkaW5nLiBEZWZhdWx0OiAkbGFiZWwtcGFkZGluZyB8fCByZW0tY2FsYygzIDEwIDQpICFkZWZhdWx0XG4vLyAkdGV4dC1zaXplIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgdGV4dC1zaXplLiBEZWZhdWx0OiAkdGV4dC1zaXplIGZvdW5kIGluIHNldHRpbmdzXG5AbWl4aW4gbGFiZWwtc2l6ZSgkcGFkZGluZzokbGFiZWwtcGFkZGluZywgJHRleHQtc2l6ZTokbGFiZWwtZm9udC1zaXppbmcpIHtcbiAgQGlmICRwYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cbiAgQGlmICR0ZXh0LXNpemUgeyBmb250LXNpemU6ICR0ZXh0LXNpemU7IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzdHlsZXMuXG4vLyAkYmcgLSBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvciAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbi8vICRyYWRpdXMgLSBEZWZhdWx0OiBmYWxzZSwgT3B0aW9uczogdHJ1ZSwgc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwtc3R5bGUoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGNvbWVzIHRocm91Z2hcbiAgQGlmICRiZyB7XG5cbiAgICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICAgLy8gV2UgY29udHJvbCB0aGUgdGV4dCBjb2xvciBmb3IgeW91IGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgIEBpZiAkYmctbGlnaHRuZXNzIDwgNzAlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yLWFsdDsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yOyB9XG4gIH1cblxuICAvLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSByYWRpdXMgb24gbGFiZWxzLlxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRsYWJlbC1yYWRpdXMpOyB9XG4gIEBlbHNlIGlmICRyYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoJHJhZGl1cyk7IH1cblxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIGNsb3NlIGJ1dHRvbnMgdG8gYWxlcnRzXG4vLyAkcGFkZGluZyAtIERlZmF1bHQ6ICRsYWJlbC1wYWRkaW5nLFxuLy8gJHRleHQtc2l6ZSAtIERlZmF1bHQ6ICRsYWJlbC1mb250LXNpemluZyxcbi8vICRiZyAtIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWUgd2hpY2ggc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwoJHBhZGRpbmc6JGxhYmVsLXBhZGRpbmcsICR0ZXh0LXNpemU6JGxhYmVsLWZvbnQtc2l6aW5nLCAkYmc6JHByaW1hcnktY29sb3IsICRyYWRpdXM6ZmFsc2UpIHtcblxuICBAaW5jbHVkZSBsYWJlbC1iYXNlO1xuICBAaW5jbHVkZSBsYWJlbC1zaXplKCRwYWRkaW5nLCAkdGV4dC1zaXplKTtcbiAgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJGJnLCAkcmFkaXVzKTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImxhYmVsXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlcyB7XG4gICAgLmxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGxhYmVsLWJhc2U7XG4gICAgICBAaW5jbHVkZSBsYWJlbC1zaXplO1xuICAgICAgQGluY2x1ZGUgbGFiZWwtc3R5bGU7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsIHRydWUpOyB9XG4gICAgICAmLnJvdW5kIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsICRyYWRpdXM6MTAwMHB4KTsgfVxuXG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRhbGVydC1jb2xvcik7IH1cbiAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJHN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRzZWNvbmRhcnktY29sb3IpOyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1tYWdlbGxhbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiRtYWdlbGxhbi1iZzogI2ZmZiAhZGVmYXVsdDtcbiRtYWdlbGxhbi1wYWRkaW5nOiAxMHB4ICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwibWFnZWxsYW5cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1tYWdlbGxhbi1jbGFzc2VzIHtcblxuICAgICN7ZGF0YSgnbWFnZWxsYW4tZXhwZWRpdGlvbicpfSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWFnZWxsYW4tYmc7XG4gICAgICB6LWluZGV4OiA1MDtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6ICRtYWdlbGxhbi1wYWRkaW5nO1xuXG4gICAgICAuc3ViLW5hdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGRkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtb3JiaXQtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgY2FwdGlvbiBzdHlsZXNcbiRvcmJpdC1jb250YWluZXItYmc6IG5vbmUgIWRlZmF1bHQ7XG4kb3JiaXQtY2FwdGlvbi1iZzogcmdiYSg1MSw1MSw1MSwgMC44KSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kb3JiaXQtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uOiBcImJvdHRvbVwiICFkZWZhdWx0OyAvLyBTdXBwb3J0ZWQgdmFsdWVzOiBcImJvdHRvbVwiLCBcInVuZGVyXCJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDEwIDE0KSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWhlaWdodDogYXV0byAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGxlZnQvcmlnaHQgbmF2IHN0eWxlc1xuJG9yYml0LW5hdi1iZzogbm9uZSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyOiAjZmZmICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgdGltZXIgc3R5bGVzXG4kb3JiaXQtdGltZXItYmc6IHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAhZGVmYXVsdDtcbiRvcmJpdC10aW1lci1zaG93LXByb2dyZXNzLWJhcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJ1bGxldCBuYXYgc3R5bGVzXG4kb3JiaXQtYnVsbGV0LW5hdi1jb2xvcjogI2NjYyAhZGVmYXVsdDtcbiRvcmJpdC1idWxsZXQtbmF2LWNvbG9yLWFjdGl2ZTogIzk5OSAhZGVmYXVsdDtcbiRvcmJpdC1idWxsZXQtcmFkaXVzOiByZW0tY2FsYyg5KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2xzIHRoZSBzdHlsZSBvZiBzbGlkZSBudW1iZXJzXG4kb3JiaXQtc2xpZGUtbnVtYmVyLWJnOiByZ2JhKDAsMCwwLDApICFkZWZhdWx0O1xuJG9yYml0LXNsaWRlLW51bWJlci1mb250LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbiR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCIgIWRlZmF1bHQ7XG4kcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwib3JiaXRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1vcmJpdC1jbGFzc2VzIHtcblxuICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICAgICAgICBmcm9tIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgICAgICB0byB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxuICAgICAgfVxuICAgICAgQC1tb3ota2V5ZnJhbWVzIHJvdGF0ZSB7XG4gICAgICAgIGZyb20geyAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgICAgIHRvIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG4gICAgICB9XG4gICAgICBALW8ta2V5ZnJhbWVzIHJvdGF0ZSB7XG4gICAgICAgIGZyb20geyAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgICAgICB0byB7IC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGtleWZyYW1lcyByb3RhdGUge1xuICAgICAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbiAgICB9XG5cbiAgICAvKiBPcmJpdCBHcmFjZWZ1bCBMb2FkaW5nICovXG4gICAgLiN7JHdyYXBwZXItY2xhc3N9IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgdWwge1xuICAgICAgICAvLyBQcmV2ZW50IGJ1bGxldHMgc2hvd2luZyBiZWZvcmUgLm9yYml0LWNvbnRhaW5lciBpcyBsb2FkZWRcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgLy8gSGlkZSBhbGwgbGlzdCBpdGVtc1xuICAgICAgICBsaSxcbiAgICAgICAgbGkgLm9yYml0LWNhcHRpb24geyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgLy8gLi4uZXhjZXB0IGZvciB0aGUgZmlyc3Qgb25lXG4gICAgICAgIGxpOmZpcnN0LWNoaWxkIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIH1cblxuICAgICAgLm9yYml0LWNvbnRhaW5lciB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC8vIFNob3cgaW1hZ2VzIHdoZW4gLm9yYml0LWNvbnRhaW5lciBpcyBsb2FkZWRcbiAgICAgICAgbGkgeyBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE9yYml0IHByZWxvYWRlclxuICAgIC4jeyRwcmVsb2FkZXItY2xhc3N9IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAzcHg7XG4gICAgICBib3JkZXItY29sb3I6ICM1NTUgI2ZmZjtcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygxMDAwcHgpO1xuICAgICAgQGlmICRleHBlcmltZW50YWwge1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgLW1vei1hbmltYXRpb24tbmFtZTogcm90YXRlO1xuICAgICAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgLW1vei1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgICAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgIC1vLWFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gICAgICAgIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIH1cbiAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICB9XG5cbiAgICAub3JiaXQtY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1jb250YWluZXItYmc7XG5cbiAgICAgIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLy8gUHJldmVudHMgaW1hZ2VzIChhbmQgY2FwdGlvbnMpIGZyb20gZGlzYXBwZWFyaW5nIGFmdGVyIGZpcnN0IHJvdGF0aW9uIG9uIENocm9tZSBmb3IgQW5kcm9pZFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcblxuICAgICAgICBpbWcgeyBkaXNwbGF5OiBibG9jazsgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIFxuICAgICAgICAmLmZhZGUgPiAqIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgIG9wYWNpdHk6IDAuMDE7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICYuYW5pbWF0ZS1pbiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFuaW1hdGUtb3V0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMDE7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc3dpcGUtbmV4dCA+ICoge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgICAgICAgJi5hbmltYXRlLWluIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtcztcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5hbmltYXRlLW91dCB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnN3aXBlLXByZXYgPiAqIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgIC1vLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgICAgICAgICYuYW5pbWF0ZS1pbiB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO1xuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO1xuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtcztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYW5pbWF0ZS1vdXQge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgICAgICAgICAtby10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtcztcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbi1kdXJhdGlvbjo1MDBtcztcbiAgICAgICAgICAgIC1vLXRyYW5zaXRpb24tZHVyYXRpb246NTAwbXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOjUwMG1zO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY+KiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgICAgICAgLW8tdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuXG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHtcbiAgICAgICAgICAgIEBpZiAkb3JiaXQtY2FwdGlvbi1wb3NpdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uID09IFwidW5kZXJcIiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmc7XG4gICAgICAgICAgICBjb2xvcjogJG9yYml0LWNhcHRpb24tZm9udC1jb2xvcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJG9yYml0LWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIHNwYW4geyBmb250LXdlaWdodDogNzAwOyBwYWRkaW5nOiAkb3JiaXQtc2xpZGUtbnVtYmVyLXBhZGRpbmc7fVxuICAgICAgICBjb2xvcjogJG9yYml0LXNsaWRlLW51bWJlci1mb250LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkb3JiaXQtc2xpZGUtbnVtYmVyLWJnO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cblxuICAgICAgLm9yYml0LXRpbWVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEycHg7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAub3JiaXQtcHJvZ3Jlc3Mge1xuICAgICAgICAgIEBpZiAkb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtdGltZXItYmc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGxheSBidXR0b25cbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIGJvcmRlcjogc29saWQgNHB4ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICBcbiAgICAgICAgLy8gUGF1c2UgYnV0dG9uXG4gICAgICAgICYucGF1c2VkIHtcbiAgICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtNHB4O1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTFweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIGJvcmRlcjogaW5zZXQgOHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZjtcbiAgICAgICAgICAgICYuZGFyayB7IFxuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMzMzM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIFxuXG4gICAgICAmOmhvdmVyIC5vcmJpdC10aW1lciA+IHNwYW4geyBkaXNwbGF5OiBibG9jazsgfVxuXG4gICAgICAvLyBMZXQncyBnZXQgdGhvc2UgY29udHJvbHMgdG8gYmUgcmlnaHQgaW4gdGhlIGNlbnRlciBvbiBlYWNoIHNpZGVcbiAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgLm9yYml0LW5leHQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNDUlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LW5hdi1iZztcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHggIWltcG9ydGFudDtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LW5hdi1iZy1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlcjogaW5zZXQgMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LXByZXYgeyAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm9yYml0LW5leHQgeyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvcjtcbiAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLTRweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiAkb3JiaXQtbmF2LWFycm93LWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9yYml0LWJ1bGxldHMtY29udGFpbmVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm9yYml0LWJ1bGxldHMge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1yYWRpdXM7XG4gICAgICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1yYWRpdXM7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1idWxsZXQtbmF2LWNvbG9yO1xuICAgICAgICAvLyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNnB4O1xuICAgICAgICBAaW5jbHVkZSByYWRpdXMoMTAwMHB4KTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG91Y2gge1xuICAgICAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgICAub3JiaXQtbmV4dCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIH1cblxuICAgICAgLm9yYml0LWJ1bGxldHMgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG5cbiAgICAgIC50b3VjaCB7XG4gICAgICAgIC5vcmJpdC1jb250YWluZXIge1xuICAgICAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgICAgIC5vcmJpdC1uZXh0IHsgZGlzcGxheTogaW5oZXJpdDsgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm9yYml0LWJ1bGxldHMgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgIC5vcmJpdC1zdGFjay1vbi1zbWFsbCB7XG4gICAgICAgIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyIHtoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDt9XG4gICAgICAgIC5vcmJpdC1zbGlkZXMtY29udGFpbmVyID4gKiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5vcmJpdC10aW1lcixcbiAgICAgICAgLm9yYml0LW5leHQsXG4gICAgICAgIC5vcmJpdC1wcmV2LFxuICAgICAgICAub3JiaXQtYnVsbGV0cyB7ZGlzcGxheTogbm9uZTt9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwYWdpbmF0aW9uIGNvbnRhaW5lclxuJHBhZ2luYXRpb24taGVpZ2h0OiByZW0tY2FsYygyNCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW46IHJlbS1jYWxjKC01KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbGlzdC1pdGVtIHByb3BlcnRpZXNcbiRwYWdpbmF0aW9uLWxpLWZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiRwYWdpbmF0aW9uLWxpLWhlaWdodDogcmVtLWNhbGMoMjQpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGktZm9udC1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGktbWFyZ2luOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciB0aGUgcGFnaW5hdGlvbiBhbmNob3IgbGlua3NcbiRwYWdpbmF0aW9uLWxpbmstcGFkOiByZW0tY2FsYygxIDEwIDEpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1hY3RpdmUtYmc6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC0xMCUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgZm9yIGRpc2FibGVkIGFuY2hvciBsaW5rc1xuJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1jdXJzb3I6IGRlZmF1bHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWZvbnQtY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgY3VycmVudGx5IHNlbGVjdGVkIGFuY2hvciBsaW5rc1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtY3Vyc29yOiBkZWZhdWx0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBTdHlsZSB0aGUgcGFnaW5hdGlvbiBjb250YWluZXIuIEN1cnJlbnRseSBvbmx5IHVzZWQgd2hlbiBjZW50ZXJpbmcgZWxlbWVudHMuXG4vLyAkY2VudGVyIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWVcbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lcigkY2VudGVyOmZhbHNlKSB7XG4gIEBpZiAkY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG59XG5cbi8vIEBtaXhpbnNcbi8vIFN0eWxlIHVuYXZhaWxhYmxlIGxpc3QgaXRlbXNcbkBtaXhpbiBwYWdpbmF0aW9uLXVuYXZhaWxhYmxlLWl0ZW0ge1xuICBhIHtcbiAgICBjdXJzb3I6ICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtY3Vyc29yO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWZvbnQtY29sb3I7XG4gIH1cbiAgJjpob3ZlciBhLFxuICAmIGE6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTsgfVxufVxuLy8gQG1peGluc1xuLy8gU3R5bGUgdGhlIGN1cnJlbnQgbGlzdCBpdGVtLiBEbyBub3QgYXNzdW1lIHRoYXQgdGhlIGN1cnJlbnQgaXRlbSBoYXNcbi8vIGFuIGFuY2hvciA8YT4gZWxlbWVudC5cbi8vICRoYXMtYW5jaG9yIC0gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2VcbkBtaXhpbiBwYWdpbmF0aW9uLWN1cnJlbnQtaXRlbSgkaGFzLWFuY2hvcjogdHJ1ZSkge1xuICBAaWYgJGhhcy1hbmNob3Ige1xuICAgIGEge1xuICAgICAgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtd2VpZ2h0O1xuICAgICAgY3Vyc29yOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtY3Vyc29yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7IGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1hY3RpdmUtYmc7IH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1saW5rLXBhZDtcbiAgICBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDtcbiAgICBjdXJzb3I6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1jdXJzb3I7XG4gICAgQGluY2x1ZGUgcmFkaXVzO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHsgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzsgfVxuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzZXQgdGhlIHByb3BlcnRpZXMgZm9yIHRoZSBjcmVhdGluZyBGb3VuZGF0aW9uIHBhZ2luYXRpb25cbi8vICRjZW50ZXIgLSBMZWZ0IG9yIGNlbnRlciBhbGlnbiB0aGUgbGkgZWxlbWVudHMuIERlZmF1bHQ6IGZhbHNlXG4vLyAkYmFzZS1zdHlsZSAtIFNldHMgYmFzZSBzdHlsZXMgZm9yIHBhZ2luYXRpb24uIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkdXNlLWRlZmF1bHQtY2xhc3NlcyAtIE1ha2VzIHVuYXZhaWxhYmxlICYgY3VycmVudCBjbGFzc2VzIGF2YWlsYWJsZSBmb3IgdXNlLiBEZWZhdWx0OiB0cnVlXG5AbWl4aW4gcGFnaW5hdGlvbigkY2VudGVyOmZhbHNlLCAkYmFzZS1zdHlsZTp0cnVlLCAkdXNlLWRlZmF1bHQtY2xhc3Nlczp0cnVlKSB7XG5cbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRwYWdpbmF0aW9uLWhlaWdodDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRwYWdpbmF0aW9uLW1hcmdpbjtcblxuICAgIGxpIHtcbiAgICAgIGhlaWdodDogJHBhZ2luYXRpb24tbGktaGVpZ2h0O1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWxpLWZvbnQtY29sb3I7XG4gICAgICBmb250LXNpemU6ICRwYWdpbmF0aW9uLWxpLWZvbnQtc2l6ZTtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHBhZ2luYXRpb24tbGktbWFyZ2luO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6ICRwYWdpbmF0aW9uLWxpbmstcGFkO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSByYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIgYSxcbiAgICAgIGE6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzsgfVxuXG4gICAgICBAaWYgJHVzZS1kZWZhdWx0LWNsYXNzZXMge1xuICAgICAgICAmLnVuYXZhaWxhYmxlIHsgQGluY2x1ZGUgcGFnaW5hdGlvbi11bmF2YWlsYWJsZS1pdGVtKCk7IH1cbiAgICAgICAgJi5jdXJyZW50IHsgQGluY2x1ZGUgcGFnaW5hdGlvbi1jdXJyZW50LWl0ZW0oKTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExlZnQgb3IgY2VudGVyIGFsaWduIHRoZSBsaSBlbGVtZW50c1xuICBsaSB7XG4gICAgQGlmICRjZW50ZXIge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfSBAZWxzZSB7XG4gICAgICBmbG9hdDogJHBhZ2luYXRpb24tbGktZmxvYXQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcInBhZ2luYXRpb25cIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlcyB7XG4gICAgdWwucGFnaW5hdGlvbiB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uO1xuICAgIH1cblxuICAgIC8qIFBhZ2luYXRpb24gY2VudHJlZCB3cmFwcGVyICovXG4gICAgLnBhZ2luYXRpb24tY2VudGVyZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXIodHJ1ZSk7XG5cbiAgICAgIHVsLnBhZ2luYXRpb24ge1xuICAgICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uKHRydWUsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLXBhbmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXNcbiRwYW5lbC1iZzogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzICUgdG8gY29udHJvbCBob3cgbXVjaCB3ZSBkYXJrZW4gdGhpbmdzIG9uIGhvdmVyXG4kcGFuZWwtZnVuY3Rpb24tZmFjdG9yOiAtMTElICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHBhbmVsLWJnLCAkbGlnaHRuZXNzOiAkcGFuZWwtZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCBkZWZhdWx0IGlubmVyIHBhZGRpbmcgYW5kIGJvdHRvbSBtYXJnaW5cbiRwYW5lbC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kcGFuZWwtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgZm9udCBjb2xvcnNcbiRwYW5lbC1mb250LWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJHBhbmVsLWZvbnQtY29sb3ItYWx0OiAjZmZmICFkZWZhdWx0O1xuXG4kcGFuZWwtaGVhZGVyLWFkanVzdDogdHJ1ZSAhZGVmYXVsdDtcbiRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuLy9cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcGFuZWxzLlxuLy8gJGJnIC0gU2V0cyB0aGUgcGFuZWwgYmFja2dyb3VuZCBjb2xvci4gRGVmYXVsdDogJHBhbmVsLXBnIHx8IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IC01JSkgIWRlZmF1bHRcbi8vICRwYWRkaW5nIC0gU2V0cyB0aGUgcGFuZWwgcGFkZGluZyBhbW91bnQuIERlZmF1bHQ6ICRwYW5lbC1wYWRkaW5nIHx8IHJlbS1jYWxjKDIwKVxuLy8gJGFkanVzdCAtIFNldHMgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gdGhlIGRhcmtuZXNzIG9mIHRoZSBiZyAmIHJlc2V0cyBoZWFkZXIgbGluZS1oZWlnaHRzIGZvciBwYW5lbHMuIERlZmF1bHQ6ICRwYW5lbC1oZWFkZXItYWRqdXN0IHx8IHRydWVcbkBtaXhpbiBwYW5lbCgkYmc6JHBhbmVsLWJnLCAkcGFkZGluZzokcGFuZWwtcGFkZGluZywgJGFkanVzdDokcGFuZWwtaGVhZGVyLWFkanVzdCkge1xuXG4gIEBpZiAkYmcge1xuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuXG4gICAgYm9yZGVyLXN0eWxlOiAkcGFuZWwtYm9yZGVyLXN0eWxlO1xuICAgIGJvcmRlci13aWR0aDogJHBhbmVsLWJvcmRlci1zaXplO1xuICAgIGJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGJnLCAkbGlnaHRuZXNzOiAkcGFuZWwtZnVuY3Rpb24tZmFjdG9yKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFuZWwtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAgIGJhY2tncm91bmQ6ICRiZztcblxuICAgIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gICAgJj46Zmlyc3QtY2hpbGQgeyBtYXJnaW4tdG9wOiAwOyB9XG4gICAgJj46bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAgIEBpZiAkYWRqdXN0IHtcbiAgICAgIC8vIFdlIHNldCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiB0aGUgZGFya25lc3Mgb2YgdGhlIGJnLlxuICAgICAgQGlmICRiZy1saWdodG5lc3MgPj0gNTAlIGFuZCAkYmcgPT0gYmx1ZSB7IGgxLGgyLGgzLGg0LGg1LGg2LHAgeyBjb2xvcjogJHBhbmVsLWZvbnQtY29sb3ItYWx0OyB9IH1cbiAgICAgIEBlbHNlIGlmICRiZy1saWdodG5lc3MgPj0gNTAlICAgICAgICAgICAgeyBoMSxoMixoMyxoNCxoNSxoNixwIHsgY29sb3I6ICRwYW5lbC1mb250LWNvbG9yOyB9IH1cbiAgICAgIEBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBoMSxoMixoMyxoNCxoNSxoNixwIHsgY29sb3I6ICRwYW5lbC1mb250LWNvbG9yLWFsdDsgfSB9XG5cbiAgICAgIC8vIHJlc2V0IGhlYWRlciBsaW5lLWhlaWdodHMgZm9yIHBhbmVsc1xuICAgICAgaDEsaDIsaDMsaDQsaDUsaDYge1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApIC8gMjtcbiAgICAgICAgJi5zdWJoZWFkZXIgeyBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJwYW5lbFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXBhbmVsLWNsYXNzZXMge1xuXG4gICAgLyogUGFuZWxzICovXG4gICAgLnBhbmVsIHsgQGluY2x1ZGUgcGFuZWw7XG5cbiAgICAgICYuY2FsbG91dCB7XG4gICAgICAgIEBpbmNsdWRlIHBhbmVsKHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA5NCUpKTtcbiAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgIGNvbG9yOiAkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcGFuZWwoJGJnOmZhbHNlKTtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1wcmljaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm9yZGVyIGNvbG9yXG4kcHJpY2UtdGFibGUtYm9yZGVyOiBzb2xpZCAxcHggI2RkZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm90dG9tIG1hcmdpbiBvZiB0aGUgcHJpY2luZyB0YWJsZVxuJHByaWNlLXRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpdGxlIHN0eWxlc1xuJHByaWNlLXRpdGxlLWJnOiAjMzMzICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLXBhZGRpbmc6IHJlbS1jYWxjKDE1IDIwKSAhZGVmYXVsdDtcbiRwcmljZS10aXRsZS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRwcmljZS10aXRsZS1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwcmljZSBzdHlsZXNcbiRwcmljZS1tb25leS1iZzogI2Y2ZjZmNiAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1wYWRkaW5nOiByZW0tY2FsYygxNSAyMCkgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRwcmljZS1tb25leS13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1zaXplOiByZW0tY2FsYygzMikgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXNcbiRwcmljZS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRwcmljZS1kZXNjLWNvbG9yOiAjNzc3ICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtcGFkZGluZzogcmVtLWNhbGMoMTUpICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1kZXNjLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuJHByaWNlLWRlc2Mtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kcHJpY2UtZGVzYy1saW5lLWhlaWdodDogMS40ICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtYm90dG9tLWJvcmRlcjogZG90dGVkIDFweCAjZGRkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGlzdCBpdGVtIHN0eWxlc1xuJHByaWNlLWl0ZW0tY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS1wYWRkaW5nOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kcHJpY2UtaXRlbS13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRwcmljZS1pdGVtLWJvdHRvbS1ib3JkZXI6IGRvdHRlZCAxcHggI2RkZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIENUQSBhcmVhIHN0eWxlc1xuJHByaWNlLWN0YS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRwcmljZS1jdGEtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1jdGEtcGFkZGluZzogcmVtLWNhbGMoMjAgMjAgMCkgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgdGhlIGNvbnRhaW5lciBlbGVtZW50IGZvciB0aGUgcHJpY2luZyB0YWJsZXNcbkBtaXhpbiBwcmljaW5nLXRhYmxlLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogJHByaWNlLXRhYmxlLWJvcmRlcjtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcHJpY2UtdGFibGUtbWFyZ2luLWJvdHRvbTtcblxuICAmICoge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIHByaWNpbmcgdGFibGUgdGl0bGUgc3R5bGVzXG5AbWl4aW4gcHJpY2luZy10YWJsZS10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS10aXRsZS1iZztcbiAgcGFkZGluZzogJHByaWNlLXRpdGxlLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246ICRwcmljZS10aXRsZS1hbGlnbjtcbiAgY29sb3I6ICRwcmljZS10aXRsZS1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6ICRwcmljZS10aXRsZS13ZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJHByaWNlLXRpdGxlLXNpemU7XG4gIGZvbnQtZmFtaWx5OiAkcHJpY2UtdGl0bGUtZm9udC1mYW1pbHk7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjb250cm9sIHRoZSBwcmljaW5nIHRhYmxlIHByaWNlIHN0eWxlc1xuQG1peGluIHByaWNpbmctdGFibGUtcHJpY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtbW9uZXktYmc7XG4gIHBhZGRpbmc6ICRwcmljZS1tb25leS1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiAkcHJpY2UtbW9uZXktYWxpZ247XG4gIGNvbG9yOiAkcHJpY2UtbW9uZXktY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtbW9uZXktd2VpZ2h0O1xuICBmb250LXNpemU6ICRwcmljZS1tb25leS1zaXplO1xuICBmb250LWZhbWlseTogJHByaWNlLW1vbmV5LWZvbnQtZmFtaWx5O1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXMgZm9yIHRoZSBwcmljaW5nIHRhYmxlXG5AbWl4aW4gcHJpY2luZy10YWJsZS1kZXNjcmlwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS1iZztcbiAgcGFkZGluZzogJHByaWNlLWRlc2MtcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLWRlc2MtYWxpZ247XG4gIGNvbG9yOiAkcHJpY2UtZGVzYy1jb2xvcjtcbiAgZm9udC1zaXplOiAkcHJpY2UtZGVzYy1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtZGVzYy13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkcHJpY2UtZGVzYy1saW5lLWhlaWdodDtcbiAgYm9yZGVyLWJvdHRvbTogJHByaWNlLWRlc2MtYm90dG9tLWJvcmRlcjtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIHN0eWxlIHRoZSBidWxsZXQgaXRlbXMgaW4gdGhlIHByaWNpbmcgdGFibGVcbkBtaXhpbiBwcmljaW5nLXRhYmxlLWJ1bGxldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmljZS1iZztcbiAgcGFkZGluZzogJHByaWNlLWl0ZW0tcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLWl0ZW0tYWxpZ247XG4gIGNvbG9yOiAkcHJpY2UtaXRlbS1jb2xvcjtcbiAgZm9udC1zaXplOiAkcHJpY2UtaXRlbS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtaXRlbS13ZWlnaHQ7XG4gIGJvcmRlci1ib3R0b206ICRwcmljZS1pdGVtLWJvdHRvbS1ib3JkZXI7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzdHlsZSB0aGUgQ1RBIGFyZWEgb2YgdGhlIHByaWNpbmcgdGFibGVzXG5AbWl4aW4gcHJpY2luZy10YWJsZS1jdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtY3RhLWJnO1xuICB0ZXh0LWFsaWduOiAkcHJpY2UtY3RhLWFsaWduO1xuICBwYWRkaW5nOiAkcHJpY2UtY3RhLXBhZGRpbmc7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJwcmljaW5nLXRhYmxlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtcHJpY2luZy1jbGFzc2VzIHtcblxuICAgIC8qIFByaWNpbmcgVGFibGVzICovXG4gICAgLnByaWNpbmctdGFibGUge1xuICAgICAgQGluY2x1ZGUgcHJpY2luZy10YWJsZS1jb250YWluZXI7XG5cbiAgICAgIC50aXRsZSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtdGl0bGU7IH1cbiAgICAgIC5wcmljZSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtcHJpY2U7IH1cbiAgICAgIC5kZXNjcmlwdGlvbiB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtZGVzY3JpcHRpb247IH1cbiAgICAgIC5idWxsZXQtaXRlbSB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtYnVsbGV0OyB9XG4gICAgICAuY3RhLWJ1dHRvbiB7IEBpbmNsdWRlIHByaWNpbmctdGFibGUtY3RhOyB9XG4gICAgfVxuXG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgcHJvZ3Jlc3MgYmFyIGhlaWdodFxuJHByb2dyZXNzLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDI1KSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICNmNmY2ZjYgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBib3JkZXIgc3R5bGVzXG4kcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoI2ZmZiwgJGxpZ2h0bmVzczogMjAlKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBtYXJnaW4gJiBwYWRkaW5nXG4kcHJvZ3Jlc3MtYmFyLXBhZDogcmVtLWNhbGMoMikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbWV0ZXIgY29sb3JzXG4kcHJvZ3Jlc3MtbWV0ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHByb2dyZXNzLW1ldGVyLXNlY29uZGFyeS1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1tZXRlci1hbGVydC1jb2xvcjogJGFsZXJ0LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHVwIHRoZSBwcm9ncmVzcyBiYXIgY29udGFpbmVyXG5AbWl4aW4gcHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtYmFyLWhlaWdodDtcbiAgYm9yZGVyOiAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1zaXplICRwcm9ncmVzcy1iYXItYm9yZGVyLXN0eWxlICRwcm9ncmVzcy1iYXItYm9yZGVyLWNvbG9yO1xuICBwYWRkaW5nOiAkcHJvZ3Jlc3MtYmFyLXBhZDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLWJhci1tYXJnaW4tYm90dG9tO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gJGJnIC0gRGVmYXVsdDogJHByb2dyZXNzLW1ldGVyLWNvbG9yIHx8ICRwcmltYXJ5LWNvbG9yXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIoJGJnOiRwcm9ncmVzcy1tZXRlci1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkYmc7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcInByb2dyZXNzLWJhclwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXMge1xuXG4gICAgLyogUHJvZ3Jlc3MgQmFyICovXG4gICAgLnByb2dyZXNzIHtcbiAgICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgICAgLy8gTWV0ZXJcbiAgICAgIC5tZXRlciB7XG4gICAgICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICAgICAgfVxuICAgICAgJi5zZWNvbmRhcnkgLm1ldGVyIHsgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXIoJGJnOiRwcm9ncmVzcy1tZXRlci1zZWNvbmRhcnktY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgLm1ldGVyIHsgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXIoJGJnOiRwcm9ncmVzcy1tZXRlci1zdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgJi5hbGVydCAubWV0ZXIgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yKTsgfVxuXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkZ2xvYmFsLXJhZGl1cyk7XG4gICAgICAgIC5tZXRlciB7IEBpbmNsdWRlIHJhZGl1cygkZ2xvYmFsLXJhZGl1cyAtIDEpOyB9XG4gICAgICB9XG5cbiAgICAgICYucm91bmQgeyBAaW5jbHVkZSByYWRpdXMoMTAwMHB4KTtcbiAgICAgICAgLm1ldGVyIHsgQGluY2x1ZGUgcmFkaXVzKDk5OXB4KTsgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEBuYW1lIF9yYW5nZS1zbGlkZXIuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLXJhbmdlLXNsaWRlci1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIHZhcmlhYmVscyBkZWZpbmUgdGhlIHNsaWRlciBiYXIgc3R5bGVzXG4kcmFuZ2Utc2xpZGVyLWJhci13aWR0aDogMTAwJSAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItYmFyLWhlaWdodDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4kcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItY29sb3I6ICNkZGQgIWRlZmF1bHQ7IFxuJHJhbmdlLXNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuJHJhbmdlLXNsaWRlci1yb3VuZDogJGdsb2JhbC1yb3VuZGVkICFkZWZhdWx0O1xuJHJhbmdlLXNsaWRlci1iYXItYmctY29sb3I6ICNmYWZhZmEgIWRlZmF1bHQ7XG5cbi8vIFZlcnRpY2FsIGJhciBzdHlsZXNcbiRyYW5nZS1zbGlkZXItdmVydGljYWwtYmFyLXdpZHRoOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDIwMCkgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIHZhcmlhYmVscyBkZWZpbmUgdGhlIHNsaWRlciBoYW5kbGUgc3R5bGVzXG4kcmFuZ2Utc2xpZGVyLWhhbmRsZS13aWR0aDogcmVtLWNhbGMoMzIpICFkZWZhdWx0O1xuJHJhbmdlLXNsaWRlci1oYW5kbGUtaGVpZ2h0OiByZW0tY2FsYygyMikgIWRlZmF1bHQ7XG4kcmFuZ2Utc2xpZGVyLWhhbmRsZS1wb3NpdGlvbi10b3A6IHJlbS1jYWxjKC01KSAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItaGFuZGxlLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1jb2xvcjogbm9uZSAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItaGFuZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kcmFuZ2Utc2xpZGVyLWhhbmRsZS1yb3VuZDogJGdsb2JhbC1yb3VuZGVkICFkZWZhdWx0O1xuJHJhbmdlLXNsaWRlci1oYW5kbGUtYmctaG92ZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTIlKSAhZGVmYXVsdDtcbiRyYW5nZS1zbGlkZXItaGFuZGxlLWN1cnNvcjogcG9pbnRlciAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuQG1peGluIHJhbmdlLXNsaWRlci1iYXItYmFzZSgkdmVydGljYWw6IGZhbHNlKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAkcmFuZ2Utc2xpZGVyLWJhci13aWR0aDtcbiAgaGVpZ2h0OiAkcmFuZ2Utc2xpZGVyLWJhci1oZWlnaHQ7XG4gIGJvcmRlcjogJHJhbmdlLXNsaWRlci1iYXItYm9yZGVyLXdpZHRoICRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci1zdHlsZSAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItY29sb3I7XG4gIG1hcmdpbjogcmVtLWNhbGMoMjAgMCk7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICRyYW5nZS1zbGlkZXItdmVydGljYWwtYmFyLXdpZHRoO1xuICAgIGhlaWdodDogJHJhbmdlLXNsaWRlci12ZXJ0aWNhbC1iYXItaGVpZ2h0O1xuICB9XG59XG5AbWl4aW4gcmFuZ2Utc2xpZGVyLWJhci1zdHlsZShcbiAgJGJnOiB0cnVlLFxuICAkcmFkaXVzOiBmYWxzZSxcbiAgJHJvdW5kOiBmYWxzZSkge1xuICAgIEBpZiAkYmcgPT0gdHJ1ZSB7IGJhY2tncm91bmQ6ICRyYW5nZS1zbGlkZXItYmFyLWJnLWNvbG9yOyB9XG4gICAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkcmFuZ2Utc2xpZGVyLXJhZGl1cyk7IH1cbiAgICBAaWYgJHJvdW5kID09IHRydWUgeyBAaW5jbHVkZSByYWRpdXMoJHJhbmdlLXNsaWRlci1yb3VuZCk7IH1cbiAgfVxuXG5AbWl4aW4gcmFuZ2Utc2xpZGVyLWJhcihcbiAgJGJnOiAkcmFuZ2Utc2xpZGVyLWJhci1iZy1jb2xvciwgXG4gICRyYWRpdXM6ZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmFuZ2Utc2xpZGVyLWJhci1iYXNlO1xuICBAaW5jbHVkZSByYW5nZS1zbGlkZXItYmFyLXN0eWxlO1xufVxuXG5AbWl4aW4gcmFuZ2Utc2xpZGVyLWhhbmRsZS1iYXNlKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1wb3NpdGlvbi10b3A7XG4gIHdpZHRoOiAkcmFuZ2Utc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgaGVpZ2h0OiAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gIGJvcmRlcjogJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXdpZHRoICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1zdHlsZSAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1ib3JkZXItY29sb3I7XG4gIGN1cnNvcjogJHJhbmdlLXNsaWRlci1oYW5kbGUtY3Vyc29yO1xufVxuQG1peGluIHJhbmdlLXNsaWRlci1oYW5kbGUtc3R5bGUoXG4gICRiZzogdHJ1ZSxcbiAgJHJhZGl1czogZmFsc2UsXG4gICRyb3VuZDogZmFsc2UpIHtcbiAgQGlmICRiZyA9PSB0cnVlIHsgYmFja2dyb3VuZDogJHJhbmdlLXNsaWRlci1oYW5kbGUtYmctY29sb3I7IH1cbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkcmFuZ2Utc2xpZGVyLXJhZGl1cyk7IH1cbiAgQGlmICRyb3VuZCA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRyYW5nZS1zbGlkZXItcm91bmQpOyB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICRyYW5nZS1zbGlkZXItaGFuZGxlLWJnLWhvdmVyLWNvbG9yO1xuICB9XG59XG5AbWl4aW4gcmFuZ2Utc2xpZGVyLWhhbmRsZSgpIHtcbiAgQGluY2x1ZGUgcmFuZ2Utc2xpZGVyLWhhbmRsZS1iYXNlO1xuICBAaW5jbHVkZSByYW5nZS1zbGlkZXItaGFuZGxlLXN0eWxlO1xufVxuXG4vLyBDU1MgR2VuZXJhdGlvblxuQGluY2x1ZGUgZXhwb3J0cyhcInJhbmdlLXNsaWRlci1iYXJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1yYW5nZS1zbGlkZXItY2xhc3NlcyB7XG4gICAgLnJhbmdlLXNsaWRlciB7XG4gICAgICBAaW5jbHVkZSByYW5nZS1zbGlkZXItYmFyLWJhc2U7XG4gICAgICBAaW5jbHVkZSByYW5nZS1zbGlkZXItYmFyLXN0eWxlKCRiZzp0cnVlLCAkcmFkaXVzOmZhbHNlKTtcbiAgICAgICYudmVydGljYWwtcmFuZ2Uge1xuICAgICAgICBAaW5jbHVkZSByYW5nZS1zbGlkZXItYmFyLWJhc2UoJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgLnJhbmdlLXNsaWRlci1oYW5kbGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtKCRyYW5nZS1zbGlkZXItaGFuZGxlLXdpZHRoIC8gNCk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogLSgkcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci1oZWlnaHQgLSAkcmFuZ2Utc2xpZGVyLWhhbmRsZS13aWR0aCk7XG4gICAgICAgIH1cbiAgICAgICAgLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCB7XG4gICAgICAgICAgd2lkdGg6ICRyYW5nZS1zbGlkZXItYmFyLWhlaWdodCAtIHJlbS1jYWxjKChzdHJpcC11bml0KCRyYW5nZS1zbGlkZXItYmFyLWJvcmRlci13aWR0aCkgKiAyKSk7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5yYWRpdXMge1xuICAgICAgICBAaW5jbHVkZSByYW5nZS1zbGlkZXItYmFyLXN0eWxlKCRyYWRpdXM6dHJ1ZSk7XG4gICAgICAgIC5yYW5nZS1zbGlkZXItaGFuZGxlIHsgQGluY2x1ZGUgcmFuZ2Utc2xpZGVyLWhhbmRsZS1zdHlsZSgkcmFkaXVzOiB0cnVlKTsgfVxuICAgICAgfVxuICAgICAgJi5yb3VuZCB7XG4gICAgICAgIEBpbmNsdWRlIHJhbmdlLXNsaWRlci1iYXItc3R5bGUoJHJvdW5kOnRydWUpO1xuICAgICAgICAucmFuZ2Utc2xpZGVyLWhhbmRsZSB7IEBpbmNsdWRlIHJhbmdlLXNsaWRlci1oYW5kbGUtc3R5bGUoJHJvdW5kOiB0cnVlKTsgfVxuICAgICAgfVxuICAgIH1cbiAgICAucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogJHJhbmdlLXNsaWRlci1iYXItaGVpZ2h0IC0gcmVtLWNhbGMoKHN0cmlwLXVuaXQoJHJhbmdlLXNsaWRlci1iYXItYm9yZGVyLXdpZHRoKSAqIDIpKTtcbiAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IC0xJSk7XG4gICAgfVxuICAgIC5yYW5nZS1zbGlkZXItaGFuZGxlIHtcbiAgICAgIEBpbmNsdWRlIHJhbmdlLXNsaWRlci1oYW5kbGUtYmFzZTtcbiAgICAgIEBpbmNsdWRlIHJhbmdlLXNsaWRlci1oYW5kbGUtc3R5bGUoJGJnOnRydWUsICRyYWRpdXM6IGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEBuYW1lIF9yZXZlYWwuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbiRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN0eWxlIG9mIHRoZSByZXZlYWwgb3ZlcmxheS5cbiRyZXZlYWwtb3ZlcmxheS1iZzogcmdiYSgjMDAwLCAuNDUpICFkZWZhdWx0O1xuJHJldmVhbC1vdmVybGF5LWJnLW9sZDogIzAwMCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN0eWxlIG9mIHRoZSBtb2RhbCBpdHNlbGYuXG4kcmV2ZWFsLW1vZGFsLWJnOiAjZmZmICFkZWZhdWx0O1xuJHJldmVhbC1wb3NpdGlvbi10b3A6IHJlbS1jYWxjKDEwMCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWRlZmF1bHQtd2lkdGg6IDgwJSAhZGVmYXVsdDtcbiRyZXZlYWwtbW9kYWwtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuJHJldmVhbC1ib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKCMwMDAsLjQpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHJldmVhbCBjbG9zZSBidXR0b25cbiRyZXZlYWwtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYyg0MCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXRvcDogcmVtLWNhbGMoOCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXNpZGU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcbiRyZXZlYWwtY2xvc2UtY29sb3I6ICNhYWEgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIG1vZGFsIGJvcmRlclxuJHJldmVhbC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHJldmVhbC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRyZXZlYWwtYm9yZGVyLWNvbG9yOiAjNjY2ICFkZWZhdWx0O1xuXG4kcmV2ZWFsLW1vZGFsLWNsYXNzOiBcInJldmVhbC1tb2RhbFwiICFkZWZhdWx0O1xuJGNsb3NlLXJldmVhbC1tb2RhbC1jbGFzczogXCJjbG9zZS1yZXZlYWwtbW9kYWxcIiAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgcmV2ZWFsIGJhY2tncm91bmQgb3ZlcmxheSBzdHlsZXNcbkBtaXhpbiByZXZlYWwtYmcge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iZy1vbGQ7XG4gIGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iZztcbiAgei1pbmRleDogOTk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMDtcbiAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgc3RydWN0dXJlIG9mIGEgcmV2ZWFsIG1vZGFsXG4vL1xuLy8gJGJhc2Utc3R5bGUgLSBQcm92aWRlcyByZXZlYWwgYmFzZSBzdHlsZXMsIGNhbiBiZSBzZXQgdG8gZmFsc2UgdG8gb3ZlcnJpZGUuIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkd2lkdGggLSBTZXRzIHJldmVhbCB3aWR0aCBEZWZhdWx0OiAkcmV2ZWFsLWRlZmF1bHQtd2lkdGggfHwgODAlXG4vL1xuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlKFxuICAkYmFzZS1zdHlsZTp0cnVlLFxuICAkd2lkdGg6JHJldmVhbC1kZWZhdWx0LXdpZHRoKSB7XG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgdG9wOjA7XG4gICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBtaW4taGVpZ2h0OjEwMHZoO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgIH1cblxuICAgIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAgIC5jb2x1bW4sXG4gICAgLmNvbHVtbnMgeyBtaW4td2lkdGg6IDA7IH1cblxuICAgIC8vIEdldCByaWQgb2YgbWFyZ2luIGZyb20gZmlyc3QgYW5kIGxhc3QgZWxlbWVudCBpbnNpZGUgbW9kYWxcbiAgICAmID4gOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxuICAgICYgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgfVxuXG4gIEBpZiAkd2lkdGgge1xuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLSgkd2lkdGggLyAyKTtcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSByZXZlYWwgbW9kYWwgZGVmYXVsdHNcbi8vXG4vLyAkYmcgLSBTZXRzIGJhY2tncm91bmQgY29sb3Igb2YgcmV2ZWFsIG1vZGFsLiBEZWZhdWx0OiAkcmV2ZWFsLW1vZGFsLWJnIHx8ICNmZmZcbi8vICRwYWRkaW5nIC0gUGFkZGluZyB0byBhcHBseSB0byByZXZlYWwgbW9kYWwuIERlZmF1bHQ6ICRyZXZlYWwtbW9kYWwtcGFkZGluZy5cbi8vICRib3JkZXIgLSBDaG9vc2Ugd2hldGhlciByZXZlYWwgdXNlcyBhIGJvcmRlci4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICRib3JkZXItc3R5bGUgLSBTZXQgcmV2ZWFsIGJvcmRlciBzdHlsZS4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItc3R5bGUgfHwgc29saWRcbi8vICRib3JkZXItd2lkdGggLSBXaWR0aCBvZiBib3JkZXIgKGkuZS4gMXB4KS4gRGVmYXVsdDogJHJldmVhbC1ib3JkZXItd2lkdGguXG4vLyAkYm9yZGVyLWNvbG9yIC0gQ29sb3Igb2YgYm9yZGVyLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci1jb2xvci5cbi8vICRib3gtc2hhZG93IC0gQ2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy4gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2Vcbi8vICR0b3Atb2Zmc2V0IC0gRGVmYXVsdDogJHJldmVhbC1wb3NpdGlvbi10b3AgfHwgNTBweFxuQG1peGluIHJldmVhbC1tb2RhbC1zdHlsZShcbiAgJGJnOiRyZXZlYWwtbW9kYWwtYmcsXG4gICRwYWRkaW5nOiRyZXZlYWwtbW9kYWwtcGFkZGluZyxcbiAgJGJvcmRlcjp0cnVlLFxuICAkYm9yZGVyLXN0eWxlOiRyZXZlYWwtYm9yZGVyLXN0eWxlLFxuICAkYm9yZGVyLXdpZHRoOiRyZXZlYWwtYm9yZGVyLXdpZHRoLFxuICAkYm9yZGVyLWNvbG9yOiRyZXZlYWwtYm9yZGVyLWNvbG9yLFxuICAkYm94LXNoYWRvdzp0cnVlLFxuICAkdG9wLW9mZnNldDokcmV2ZWFsLXBvc2l0aW9uLXRvcCkge1xuXG4gIEBpZiAkYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7IH1cbiAgQGlmICRwYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cblxuICBAaWYgJGJvcmRlciB7IGJvcmRlcjogJGJvcmRlci1zdHlsZSAkYm9yZGVyLXdpZHRoICRib3JkZXItY29sb3I7IH1cblxuICAvLyBXZSBjYW4gY2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy5cbiAgQGlmICRib3gtc2hhZG93IHtcbiAgICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6ICRyZXZlYWwtYm94LXNoYWRvdztcbiAgICB9XG4gICAgYm94LXNoYWRvdzogJHJldmVhbC1ib3gtc2hhZG93O1xuICB9XG5cbiAgQGlmICR0b3Atb2Zmc2V0IHtcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICB0b3A6ICR0b3Atb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgYSBjbG9zZSBidXR0b24gZm9yIHRoZSByZXZlYWwgbW9kYWxcbi8vXG4vLyAkY29sb3IgLSBEZWZhdWx0OiAkcmV2ZWFsLWNsb3NlLWNvbG9yIHx8ICNhYWFcbkBtaXhpbiByZXZlYWwtY2xvc2UoJGNvbG9yOiRyZXZlYWwtY2xvc2UtY29sb3IpIHtcbiAgZm9udC1zaXplOiAkcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkcmV2ZWFsLWNsb3NlLXRvcDtcbiAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHJldmVhbC1jbG9zZS1zaWRlO1xuICBjb2xvcjogJGNvbG9yO1xuICBmb250LXdlaWdodDogJHJldmVhbC1jbG9zZS13ZWlnaHQ7XG4gIGN1cnNvcjogJGN1cnNvci1wb2ludGVyLXZhbHVlO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwicmV2ZWFsXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXMge1xuXG4gICAgLy8gUmV2ZWFsIE1vZGFsc1xuICAgIC5yZXZlYWwtbW9kYWwtYmcgeyBAaW5jbHVkZSByZXZlYWwtYmc7IH1cblxuICAgIGRpYWxvZywgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGU7XG5cbiAgICAgIC4jeyRjbG9zZS1yZXZlYWwtbW9kYWwtY2xhc3N9IHsgQGluY2x1ZGUgcmV2ZWFsLWNsb3NlOyB9XG4gICAgfVxuXG4gICAgZGlhbG9nW29wZW5dIHtcblx0ZGlzcGxheTpibG9jaztcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG5cbiAgICAgIGRpYWxvZywgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xuICAgICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoZmFsc2UsICRyZXZlYWwtbW9kYWwtcGFkZGluZyAqIDEuNSwgZmFsc2UsICRib3gtc2hhZG93OiBmYWxzZSwgJHRvcC1vZmZzZXQ6ICRyZXZlYWwtcG9zaXRpb24tdG9wKTtcblxuICAgICAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2UoZmFsc2UsIDMwJSk7IH1cbiAgICAgICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA0MCUpOyB9XG4gICAgICAgICYubWVkaXVtICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA2MCUpOyB9XG4gICAgICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgNzAlKTsgfVxuICAgICAgICAmLnhsYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA5NSUpOyB9XG4gICAgICB9XG5cbiAgICAgIGRpYWxvZywgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xuICAgICAgICAmLmZ1bGwge1xuICAgICAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCAxMDB2dyk7XG4gICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgbWluLWhlaWdodDoxMDB2aDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmV2ZWFsIFByaW50IFN0eWxlc1xuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICBkaWFsb2csIC4jeyRyZXZlYWwtbW9kYWwtY2xhc3N9IHtiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7fVxuICAgIH1cbiAgfVxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBwYWRkaW5nLlxuJHNpZGUtbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDE0IDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaXN0IHN0eWxlcy5cbiRzaWRlLW5hdi1saXN0LXR5cGU6IG5vbmUgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGlzdC1wb3NpdGlvbjogaW5zaWRlICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpc3QtbWFyZ2luOiByZW0tY2FsYygwIDAgNyAwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGluayBzdHlsZXMuXG4kc2lkZS1uYXYtbGluay1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU6IHNjYWxlLWNvbG9yKCRzaWRlLW5hdi1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAzMCUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRzaWRlLW5hdi1saW5rLWNvbG9yLCAkbGlnaHRuZXNzOiAzMCUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC13ZWlnaHQtYWN0aXZlOiAkc2lkZS1uYXYtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuJHNpZGUtbmF2LWRpdmlkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItY29sb3I6IHNjYWxlLWNvbG9yKCNmZmYsICRsaWdodG5lc3M6IDEwJSkgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHNpZGUtbmF2XG4vL1xuLy8gJGRpdmlkZXItY29sb3IgLSBCb3JkZXIgY29sb3Igb2YgZGl2aWRlci4gRGVmYXVsdDogJHNpZGUtbmF2LWRpdmlkZXItY29sb3IuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIG5hdiBpdGVtcy4gRGVmYXVsdDogJHNpZGUtbmF2LWZvbnQtc2l6ZS5cbi8vICRsaW5rLWNvbG9yIC0gQ29sb3Igb2YgbmF2aWdhdGlvbiBsaW5rcy4gRGVmYXVsdDogJHNpZGUtbmF2LWxpbmstY29sb3IuXG4vLyAkbGluay1jb2xvci1ob3ZlciAtIENvbG9yIG9mIG5hdmlnYXRpb24gbGlua3Mgd2hlbiBob3ZlcmVkLiBEZWZhdWx0OiAkc2lkZS1uYXYtbGluay1jb2xvci1ob3Zlci5cbkBtaXhpbiBzaWRlLW5hdihcbiAgJGRpdmlkZXItY29sb3I6JHNpZGUtbmF2LWRpdmlkZXItY29sb3IsXG4gICRmb250LXNpemU6JHNpZGUtbmF2LWZvbnQtc2l6ZSxcbiAgJGxpbmstY29sb3I6JHNpZGUtbmF2LWxpbmstY29sb3IsXG4gICRsaW5rLWNvbG9yLWhvdmVyOiRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6ICRzaWRlLW5hdi1wYWRkaW5nO1xuICBsaXN0LXN0eWxlLXR5cGU6ICRzaWRlLW5hdi1saXN0LXR5cGU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRzaWRlLW5hdi1saXN0LXBvc2l0aW9uO1xuICBmb250LWZhbWlseTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5O1xuXG4gIGxpIHtcbiAgICBtYXJnaW46ICRzaWRlLW5hdi1saXN0LW1hcmdpbjtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICRsaW5rLWNvbG9yLWhvdmVyOyB9XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgPiBhOmZpcnN0LWNoaWxkOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRzaWRlLW5hdi1mb250LXdlaWdodC1hY3RpdmU7XG4gICAgICBmb250LWZhbWlseTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmRpdmlkZXIge1xuICAgICAgYm9yZGVyLXRvcDogJHNpZGUtbmF2LWRpdmlkZXItc2l6ZSAkc2lkZS1uYXYtZGl2aWRlci1zdHlsZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRpdmlkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzaWRlLW5hdlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcbiAgICAuc2lkZS1uYXYgeyBAaW5jbHVkZSBzaWRlLW5hdjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcImRyb3Bkb3duLWJ1dHRvbnNcIjtcblxuLy9cbi8vIEBuYW1lIF9zcGxpdC1idXR0b25zLnNjc3Ncbi8vIEBkZXBlbmRlbmNpZXMgX2J1dHRvbnMuc2NzcywgX2dsb2JhbC5zY3NzXG4vL1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBkaWZmZXJlbnQgc2hhcmVkIHN0eWxlcyBmb3IgU3BsaXQgQnV0dG9uc1xuJHNwbGl0LWJ1dHRvbi1mdW5jdGlvbi1mYWN0b3I6IDEwJSAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtY29sb3ItYWx0OiAjMzMzICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1hY3RpdmUtYmctdGludDogcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aW55IHNwbGl0IGJ1dHRvbnNcbiRzcGxpdC1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDEwICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTogJGJ1dHRvbi1waXAtdG55ICogNiAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnkgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC10b3AtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAyICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk6IHJlbS1jYWxjKC02KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc21hbGwgc3BsaXQgYnV0dG9uc1xuJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogMTAgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA2ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbCAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLXRvcC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDEuNSAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtc21sOiByZW0tY2FsYygtNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1lZGl1bSBzcGxpdCBidXR0b25zXG4kc3BsaXQtYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA5ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLW1lZDogJGJ1dHRvbi1waXAtbWVkICogNS41ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtdG9wLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMS41ICFkZWZhdWx0O1xuJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1tZWQ6IHJlbS1jYWxjKC02KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGFyZ2Ugc3BsaXQgYnV0dG9uc1xuJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogOCAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1scmc6ICRidXR0b24tcGlwLWxyZyAqIDUgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNikgIWRlZmF1bHQ7XG4kc3BsaXQtYnV0dG9uLXBpcC10b3AtbHJnOiAkYnV0dG9uLXBpcC1scmcgKyByZW0tY2FsYyg1KSAhZGVmYXVsdDtcbiRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbHJnOiByZW0tY2FsYygtNikgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBzcGxpdCBidXR0b25zIHRoYXQgYnVpbGQgdXBvbiB0aGUgYnV0dG9uIG1peGluc1xuLy9cbi8vICRwYWRkaW5nIC0gVHlwZSBvZiBwYWRkaW5nIHRvIGFwcGx5LiBEZWZhdWx0OiBtZWRpdW0uIE9wdGlvbnM6IHRpbnksIHNtYWxsLCBtZWRpdW0sIGxhcmdlLlxuLy8gJHBpcC1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS4gRGVmYXVsdDogJHNwbGl0LWJ1dHRvbi1waXAtY29sb3IuXG4vLyAkc3Bhbi1ib3JkZXIgLSBCb3JkZXIgY29sb3Igb2YgYnV0dG9uIGRpdmlkZXIuIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yLlxuLy8gJGJhc2Utc3R5bGUgLSBBcHBseSBiYXNlIHN0eWxlIHRvIHNwbGl0IGJ1dHRvbi4gRGVmYXVsdDogdHJ1ZS5cbkBtaXhpbiBzcGxpdC1idXR0b24oXG4gICRwYWRkaW5nOm1lZGl1bSxcbiAgJHBpcC1jb2xvcjokc3BsaXQtYnV0dG9uLXBpcC1jb2xvciwgXG4gICRzcGFuLWJvcmRlcjokcHJpbWFyeS1jb2xvciwgXG4gICRiYXNlLXN0eWxlOnRydWUpIHtcblxuICAvLyBXaXRoIHRoaXMsIHdlIGNhbiBjb250cm9sIHdoZXRoZXIgb3Igbm90IHRoZSBiYXNlIHN0eWxlcyBjb21lIHRocm91Z2guXG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gU3R5bGluZyBmb3IgdGhlIHNwbGl0IGFycm93IGNsaWNrYWJsZSBhcmVhXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH06IHNvbGlkIDFweDtcblxuICAgICAgLy8gQnVpbGRpbmcgdGhlIHRyaWFuZ2xlIHBpcCBpbmRpY2F0b3JcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBpbnNldDtcbiAgICAgICAgdG9wOiA1MCU7XG5cbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkc3BsaXQtYnV0dG9uLWFjdGl2ZS1iZy10aW50OyB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udHJvbCB0aGUgYm9yZGVyIGNvbG9yIGZvciB0aGUgc3BhbiBhcmVhIG9mIHRoZSBzcGxpdCBidXR0b25cbiAgQGlmICRzcGFuLWJvcmRlciB7XG4gICAgc3BhbiB7XG4gICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZSBvZiB0aGUgYnV0dG9uIGFuZCBjbGlja2FibGUgYXJlYSBmb3IgdGlueSBzaXplc1xuICBAaWYgJHBhZGRpbmcgPT0gdGlueSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkc3BsaXQtYnV0dG9uLXBhZGRpbmctdG55O1xuXG4gICAgc3BhbiB7IHdpZHRoOiAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtdG55O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLXRueTtcbiAgICAgICAgdG9wOiA0OCU7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGUgb2YgdGhlIGJ1dHRvbiBhbmQgY2xpY2thYmxlIGFyZWEgZm9yIHNtYWxsIHNpemVzXG4gIEBlbHNlIGlmICRwYWRkaW5nID09IHNtYWxsIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRzcGxpdC1idXR0b24tcGFkZGluZy1zbWw7XG5cbiAgICBzcGFuIHsgd2lkdGg6ICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1zbWw7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6ICRzcGxpdC1idXR0b24tcGlwLXNpemUtc21sO1xuICAgICAgICB0b3A6IDQ4JTtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkc3BsaXQtYnV0dG9uLXBpcC1kZWZhdWx0LWZsb2F0LXNtbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZSBvZiB0aGUgYnV0dG9uIGFuZCBjbGlja2FibGUgYXJlYSBmb3IgZGVmYXVsdCAobWVkaXVtKSBzaXplc1xuICBAZWxzZSBpZiAkcGFkZGluZyA9PSBtZWRpdW0ge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLW1lZDtcblxuICAgIHNwYW4geyB3aWR0aDogJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLW1lZDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ7XG4gICAgICAgIHRvcDogNDglO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbWVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlIG9mIHRoZSBidXR0b24gYW5kIGNsaWNrYWJsZSBhcmVhIGZvciBsYXJnZSBzaXplc1xuICBAZWxzZSBpZiAkcGFkZGluZyA9PSBsYXJnZSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkc3BsaXQtYnV0dG9uLXBhZGRpbmctbHJnO1xuXG4gICAgc3BhbiB7IHdpZHRoOiAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtbHJnO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZztcbiAgICAgICAgdG9wOiA0OCU7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1scmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udHJvbCB0aGUgY29sb3Igb2YgdGhlIHRyaWFuZ2xlIHBpcFxuICBAaWYgJHBpcC1jb2xvciB7XG4gICAgc3BhbjpiZWZvcmUgeyBib3JkZXItY29sb3I6ICRwaXAtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwic3BsaXQtYnV0dG9uXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXMge1xuXG4gICAgLnNwbGl0LmJ1dHRvbiB7IEBpbmNsdWRlIHNwbGl0LWJ1dHRvbjtcblxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24oZmFsc2UsICRzcGxpdC1idXR0b24tcGlwLWNvbG9yLCAkc2Vjb25kYXJ5LWNvbG9yLCBmYWxzZSk7IH1cbiAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24oZmFsc2UsIGZhbHNlLCAkYWxlcnQtY29sb3IsIGZhbHNlKTsgfVxuICAgICAgJi5zdWNjZXNzIHsgQGluY2x1ZGUgc3BsaXQtYnV0dG9uKGZhbHNlLCBmYWxzZSwgJHN1Y2Nlc3MtY29sb3IsIGZhbHNlKTsgfVxuXG4gICAgICAmLnRpbnkgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24odGlueSwgZmFsc2UsIGZhbHNlLCBmYWxzZSk7IH1cbiAgICAgICYuc21hbGwgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24oc21hbGwsIGZhbHNlLCBmYWxzZSwgZmFsc2UpOyB9XG4gICAgICAmLmxhcmdlIHsgQGluY2x1ZGUgc3BsaXQtYnV0dG9uKGxhcmdlLCBmYWxzZSwgZmFsc2UsIGZhbHNlKTsgfVxuICAgICAgJi5leHBhbmQgeyBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cblxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBzcGxpdC1idXR0b24oZmFsc2UsICRzcGxpdC1idXR0b24tcGlwLWNvbG9yLWFsdCwgZmFsc2UsIGZhbHNlKTsgfVxuXG4gICAgICAmLnJhZGl1cyBzcGFuIHsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGdsb2JhbC1yYWRpdXMpOyB9XG4gICAgICAmLnJvdW5kIHNwYW4geyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAxMDAwcHgpOyB9XG4gICAgfVxuXG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAbmFtZSBfc3ViLW5hdi5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWwuc2Nzc1xuLy9cblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbWFyZ2luIGFuZCBwYWRkaW5nXG4kc3ViLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoLTQgMCAxOCkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGVmaW5pdGlvblxuJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1mb250LWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRzdWItbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDMgMTYpICFkZWZhdWx0O1xuJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJHN1Yi1uYXYtZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTI1JSkgIWRlZmF1bHQ7XG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGFjdGl2ZSBpdGVtIHN0eWxlc1xuXG4kc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzdWItbmF2LWFjdGl2ZS1iZywgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtcGFkZGluZzogJHN1Yi1uYXYtcGFkZGluZyAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1jdXJzb3I6IGRlZmF1bHQgIWRlZmF1bHQ7XG5cbiRzdWItbmF2LWl0ZW0tZGl2aWRlcjogXCJcIiAhZGVmYXVsdDtcbiRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW46IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cblxuLy8gQ3JlYXRlIGEgc3ViLW5hdiBpdGVtXG4vL1xuLy8gJGZvbnQtY29sb3IgLSBGb250IGNvbG9yLiBEZWZhdWx0OiAkc3ViLW5hdi1mb250LWNvbG9yLlxuLy8gJGZvbnQtc2l6ZSAtIEZvbnQgc2l6ZS4gRGVmYXVsdDogJHN1Yi1uYXYtZm9udC1zaXplLlxuLy8gJGFjdGl2ZS1iZyAtIEJhY2tncm91bmQgb2YgYWN0aXZlIG5hdiBpdGVtLiBEZWZhdWx0OiAkc3ViLW5hdi1hY3RpdmUtYmcuXG4vLyAkYWN0aXZlLWJnLWhvdmVyIC0gQmFja2dyb3VuZCBvZiBhY3RpdmUgbmF2IGl0ZW0sIHdoZW4gaG92ZXJlZC4gRGVmYXVsdDogJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyLlxuQG1peGluIHN1Yi1uYXYoXG4gICRmb250LWNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yLFxuICAkZm9udC1zaXplOiAkc3ViLW5hdi1mb250LXNpemUsXG4gICRhY3RpdmUtYmc6ICRzdWItbmF2LWFjdGl2ZS1iZyxcbiAgJGFjdGl2ZS1iZy1ob3ZlcjogJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAkc3ViLW5hdi1saXN0LW1hcmdpbjtcbiAgcGFkZGluZy10b3A6ICRzdWItbmF2LWxpc3QtcGFkZGluZy10b3A7XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKC0xMik7XG5cbiAgZHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICBkdCxcbiAgZGQsXG4gIGxpIHtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogcmVtLWNhbGMoMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICBmb250LWZhbWlseTogJHN1Yi1uYXYtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRzdWItbmF2LWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogJHN1Yi1uYXYtdGV4dC1kZWNvcmF0aW9uO1xuICAgICAgY29sb3I6ICRzdWItbmF2LWZvbnQtY29sb3I7XG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIGEge1xuICAgICAgQGluY2x1ZGUgcmFkaXVzKCRzdWItbmF2LWJvcmRlci1yYWRpdXMpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRzdWItbmF2LWFjdGl2ZS1mb250LXdlaWdodDtcbiAgICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtYmc7XG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1hY3RpdmUtcGFkZGluZztcbiAgICAgIGN1cnNvcjogJHN1Yi1uYXYtYWN0aXZlLWN1cnNvcjtcbiAgICAgIGNvbG9yOiAkc3ViLW5hdi1hY3RpdmUtY29sb3I7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1iZy1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGlmICRzdWItbmF2LWl0ZW0tZGl2aWRlciAhPSBcIlwiIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIiN7JHN1Yi1uYXYtaXRlbS1kaXZpZGVyfVwiO1xuICAgICAgICBtYXJnaW46IDAgJHN1Yi1uYXYtaXRlbS1kaXZpZGVyLW1hcmdpbjtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzdWItbmF2XCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXMge1xuICAgIC5zdWItbmF2IHsgQGluY2x1ZGUgc3ViLW5hdjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cbi8vXG4vLyBAbmFtZVxuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4vLyBOT1RFOiBTd2l0Y2hlcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBpbiBGb3VuZGF0aW9uIDUgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgZnV0dXJlLlxuXG4kaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBDb250cm9sbGluZyBib3JkZXIgc3R5bGVzIGFuZCBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgdGhlIHN3aXRjaCBjb250YWluZXJcbiRzd2l0Y2gtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigjZmZmLCAkbGlnaHRuZXNzOiAtMjAlKSAhZGVmYXVsdDtcbiRzd2l0Y2gtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRzd2l0Y2gtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kc3dpdGNoLWJnOiAjZmZmICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3dpdGNoIGhlaWdodHMgZm9yIG91ciBkZWZhdWx0IGNsYXNzZXNcbiRzd2l0Y2gtaGVpZ2h0LXRueTogMjJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtaGVpZ2h0LXNtbDogMjhweCAhZGVmYXVsdDtcbiRzd2l0Y2gtaGVpZ2h0LW1lZDogMzZweCAhZGVmYXVsdDtcbiRzd2l0Y2gtaGVpZ2h0LWxyZzogNDRweCAhZGVmYXVsdDtcbiRzd2l0Y2gtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBkZWZhdWx0IGZvbnQgc2l6ZXMgZm9yIG91ciBjbGFzc2VzLlxuJHN3aXRjaC1mb250LXNpemUtdG55OiAxMXB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemUtc21sOiAxMnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemUtbWVkOiAxNHB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemUtbHJnOiAxN3B4ICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1zaWRlLXBhZGRpbmc6IDZweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBzd2l0Y2gtcGFkZGxlXG4kc3dpdGNoLXBhZGRsZS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRzd2l0Y2gtcGFkZGxlLWZhZGUtdG8tY29sb3I6IHNjYWxlLWNvbG9yKCRzd2l0Y2gtcGFkZGxlLWJnLCAkbGlnaHRuZXNzOiAtMTAlKSAhZGVmYXVsdDtcbiRzd2l0Y2gtcGFkZGxlLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHN3aXRjaC1wYWRkbGUtYmcsICRsaWdodG5lc3M6IC0zNSUpICFkZWZhdWx0O1xuJHN3aXRjaC1wYWRkbGUtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kc3dpdGNoLXBhZGRsZS1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1zcGVlZDogLjFzICFkZWZhdWx0O1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1lYXNlOiBlYXNlLW91dCAhZGVmYXVsdDtcbiRzd2l0Y2gtcG9zaXRpdmUtY29sb3I6IHNjYWxlLWNvbG9yKCRzdWNjZXNzLWNvbG9yLCAkbGlnaHRuZXNzOiA5NCUpICFkZWZhdWx0O1xuJHN3aXRjaC1uZWdhdGl2ZS1jb2xvcjogI2Y1ZjVmNSAhZGVmYXVsdDtcblxuLy8gT3V0bGluZSBTdHlsZSBmb3IgdGFiYmluZyB0aHJvdWdoIHN3aXRjaGVzXG4kc3dpdGNoLWxhYmVsLW91dGxpbmU6IDFweCBkb3R0ZWQgIzg4OCAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBiYXNlIHN0eWxlcyBmb3Igb3VyIHN3aXRjaCBlbGVtZW50LlxuLy9cbi8vICR0cmFuc2l0aW9uLXNwZWVkIC0gVGltZSBpbiBtcyBmb3Igc3dpdGNoIHRvIHRvZ2dsZS4gRGVmYXVsdDogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1zcGVlZC5cbi8vICR0cmFuc2l0aW9uLWVhc2UgLSBFYXNpbmcgZnVuY3Rpb24gdG8gdXNlIGZvciBhbmltYXRpb24gKGkuZS4gZWFzZS1vdXQpLiBEZWZhdWx0OiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLWVhc2UuXG5AbWl4aW4gc3dpdGNoLWJhc2UoXG4gICR0cmFuc2l0aW9uLXNwZWVkOiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQsXG4gICR0cmFuc2l0aW9uLWVhc2U6JHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1lYXNlKSB7XG5cbiAgLy8gRGVmYXVsdCBwb3NpdGlvbiBhbmQgc3RydWN0dXJlIGZvciBzd2l0Y2ggY29udGFpbmVyLlxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItc3R5bGU6ICRzd2l0Y2gtYm9yZGVyLXN0eWxlO1xuICBib3JkZXItd2lkdGg6ICRzd2l0Y2gtYm9yZGVyLXdpZHRoO1xuICBtYXJnaW4tYm90dG9tOiAkc3dpdGNoLWJvdHRvbS1tYXJnaW47XG5cbiAgLy8gRGVmYXVsdCBsYWJlbCBzdHlsZXMgZm9yIHR5cGUgYW5kIHRyYW5zaXRpb25cbiAgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogJGRlZmF1bHQtZmxvYXQ7XG5cbiAgICAvLyBUcmFuc2l0aW9uIGZvciB0aGUgc3dpdGNoIGxhYmVsIHRvIGZvbGxvdyBwYWRkbGVcbiAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihhbGwsICR0cmFuc2l0aW9uLXNwZWVkLCAkdHJhbnNpdGlvbi1lYXNlKTtcbiAgfVxuXG4gIC8vIFNvIHRoYXQgd2UgZG9uJ3QgbmVlZCB0byByZWNyZWF0ZSB0aGUgZm9ybSB3aXRoIGFueSBKUywgd2UgdXNlIHRoZVxuICAvLyBleGlzdGluZyByYWRpbyBidXR0b24sIGJ1dCB3ZSBjbGV2ZXJseSBwb3NpdGlvbiBhbmQgaGlkZSBpdC5cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIC8vIEhvdmVyIGFuZCBmb2N1cyBzdHlsZXMgZm9yIHRoZSBwYWRkbGVcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvZ2dsZSBhcmVhIGZvciByYWRpbyBzd2l0Y2hlcy4gV2UgY2FsbCBpcyBhIHBhZGRsZS5cbiAgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMXB4O1xuICAgICN7JGRlZmF1bHQtZmxvYXR9OiAtMXB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItd2lkdGg6ICRzd2l0Y2gtcGFkZGxlLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItc3R5bGU6ICRzd2l0Y2gtcGFkZGxlLWJvcmRlci1zdHlsZTtcblxuICAgIC8vIFRyYW5zaXRpb24gZm9yIHRoZSBzd2l0Y2ggcGFkZGxlXG4gICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24oYWxsLCAkdHJhbnNpdGlvbi1zcGVlZCwgJHRyYW5zaXRpb24tZWFzZSk7XG4gIH1cblxuICAvLyBXaGVuIGEgbGFiZWwgaXNuJ3QgOmNoZWNrZWQsIHdlIGhpZGUgaXQgYXMgaXQgc2xpZGVzIGF3YXkuXG4gIGlucHV0Om5vdCg6Y2hlY2tlZCkgKyBsYWJlbCB7IG9wYWNpdHk6IDA7IH1cblxuICAvLyBDb250cm9sbGluZyB0aGUgcG9zaXRpb24gb2YgdGhlIGxhYmVscyBhcyB0aGV5IGFyZSB0b2dnbGVkLlxuICBpbnB1dDpjaGVja2VkIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIGlucHV0IHsgI3skZGVmYXVsdC1mbG9hdH06IDA7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuICAvLyBMZWZ0IExhYmVsIGFsaWdubWVudCBhbmQgcG9zaXRpb24gY2hhbmdlcywgaW5jbHVkaW5nIGZpeGVzIGZvciB3aGlsZSBpbnNpZGUgYSBjdXN0b20gZm9ybVxuICBpbnB1dDpmaXJzdC1vZi10eXBlICsgbGFiZWwsXG4gIGlucHV0OmZpcnN0LW9mLXR5cGUgKyBzcGFuICsgbGFiZWwgeyAjeyRkZWZhdWx0LWZsb2F0fTogLTUwJTsgfVxuICBpbnB1dDpmaXJzdC1vZi10eXBlOmNoZWNrZWQgKyBsYWJlbCxcbiAgaW5wdXQ6Zmlyc3Qtb2YtdHlwZTpjaGVja2VkICsgc3BhbiArIGxhYmVsIHsgI3skZGVmYXVsdC1mbG9hdH06IDAlOyB9XG5cbiAgLy8gUmlnaHQgTGFiZWwgYWxpZ25tZW50IGFuZCBwb3NpdGlvbiBjaGFuZ2VzLCBpbmNsdWRpbmcgZml4ZXMgZm9yIHdoaWxlIGluc2lkZSBhIGN1c3RvbSBmb3JtXG4gIGlucHV0Omxhc3Qtb2YtdHlwZSArIGxhYmVsLFxuICBpbnB1dDpsYXN0LW9mLXR5cGUgKyBzcGFuICsgbGFiZWwgeyN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC01MCU7ICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvOyB0ZXh0LWFsaWduOiAkb3Bwb3NpdGUtZGlyZWN0aW9uOyB9XG4gIGlucHV0Omxhc3Qtb2YtdHlwZTpjaGVja2VkICsgbGFiZWwsXG4gIGlucHV0Omxhc3Qtb2YtdHlwZTpjaGVja2VkICsgc3BhbiArIGxhYmVsIHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMCU7ICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvOyB9XG5cbiAgLy8gSGlkaW5nIGN1c3RvbSBmb3JtIHNwYW5zIHNpbmNlIHdlIGF1dG8tY3JlYXRlIHRoZW1cbiAgc3Bhbi5jdXN0b20geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAvLyBGSVhNRSBXZSBzaG91bGQgYmUgYWJsZSB0byByZW1vdmUgdGhpcyBnb2luZyBmb3J3YXJkLlxuICAvLyBCdWdmaXggZm9yIG9sZGVyIFdlYmtpdCwgaW5jbHVkaW5nIG1vYmlsZSBXZWJraXQuIEFkYXB0ZWQgZnJvbTpcbiAgLy8gaHR0cDovL2Nzcy10cmlja3MuY29tL3dlYmtpdC1zaWJsaW5nLWJ1Zy9cbiAgLy8gQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIGFuZCAobWF4LWRldmljZS13aWR0aDo0ODBweCkge1xuICAvLyAgIEBpZiAkZXhwZXJpbWVudGFsIHsgLXdlYmtpdC1hbmltYXRpb246IHdlYmtpdFNpYmxpbmdCdWdmaXggaW5maW5pdGUgMXM7IH1cbiAgLy8gfVxuICAvLyBAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MS41KSB7XG4gIC8vICAgQGlmICRleHBlcmltZW50YWwgeyAtd2Via2l0LWFuaW1hdGlvbjogbm9uZSAwOyB9XG4gIC8vIH1cblxuICBmb3JtLmN1c3RvbSAmIC5oaWRkZW4tZmllbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgc2l6ZSBzdHlsZXMgZm9yIHN3aXRjaGVzLlxuLy9cbi8vICRoZWlnaHQgLSBIZWlnaHQgKGluIHB4KSBvZiB0aGUgc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLWhlaWdodC1tZWQuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIHRleHQgaW4gc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLWZvbnQtc2l6ZS1tZWQuXG4vLyAkbGluZS1oZWlnaHQgLSBMaW5lIGhlaWdodCBvZiBzd2l0Y2guIERlZmF1bHQ6IDIuM3JlbS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZShcbiAgJGhlaWdodDogJHN3aXRjaC1oZWlnaHQtbWVkLFxuICAkZm9udC1zaXplOiAkc3dpdGNoLWZvbnQtc2l6ZS1tZWQsXG4gICRsaW5lLWhlaWdodDogMi4zcmVtKSB7XG5cbiAgaGVpZ2h0OiByZW0tY2FsYygkaGVpZ2h0KTtcblxuICBsYWJlbCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCwgJHN3aXRjaC1sYWJlbC1zaWRlLXBhZGRpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygkZm9udC1zaXplKTtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICAvLyBNb3ZlIHRoZSBwYWRkbGUgdG8gdGhlIHJpZ2h0IHBvc2l0aW9uXG4gICAgJjpmaXJzdC1vZi10eXBlOmNoZWNrZWQgfiBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDEwMCU7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKC0kaGVpZ2h0ICsgMXB4KTtcbiAgICB9XG4gIH1cblxuICBzcGFuOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiByZW0tY2FsYygkaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKCRoZWlnaHQpO1xuICB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gYWRkIGNvbG9yIGFuZCBvdGhlciBmYW5jaW5lc3MgdG8gdGhlIHN3aXRjaGVzLlxuLy9cbi8vICRwYWRkbGUtYmcgLSBCYWNrZ3JvdW5kIG9mIHN3aXRjaCBwYWRkbGUuIERlZmF1bHQ6ICRzd2l0Y2gtcGFkZGxlLWJnLlxuLy8gJHBvc2l0aXZlLWNvbG9yIC0gQmFja2dyb3VuZCBjb2xvciBvZiBwb3NpdGl2ZSBzaWRlIG9mIHN3aXRjaC4gRGVmYXVsdDogJHN3aXRjaC1wb3NpdGl2ZS1jb2xvci5cbi8vICRuZWdhdGl2ZS1jb2xvciAtIEJhY2tncm91bmQgY29sb3Igb2YgbmVnYXRpdmUgc2lkZSBvZiBzd2l0Y2guIERlZmF1bHQ6ICRzd2l0Y2gtbmVnYXRpdmUtY29sb3IuXG4vLyAkcmFkaXVzIC0gUmFkaXVzIHRvIGFwcGx5IHRvIHN3aXRjaC4gRGVmYXVsdDogZmFsc2UuXG4vLyAkYmFzZS1zdHlsZSAtIEFwcGx5IGJhc2Ugc3R5bGVzPyBEZWZhdWx0OiB0cnVlLlxuQG1peGluIHN3aXRjaC1zdHlsZShcbiAgJHBhZGRsZS1iZzokc3dpdGNoLXBhZGRsZS1iZyxcbiAgJHBvc2l0aXZlLWNvbG9yOiRzd2l0Y2gtcG9zaXRpdmUtY29sb3IsXG4gICRuZWdhdGl2ZS1jb2xvcjokc3dpdGNoLW5lZ2F0aXZlLWNvbG9yLFxuICAkcmFkaXVzOmZhbHNlLFxuICAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHN3aXRjaC1ib3JkZXItY29sb3I7XG5cbiAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkcGFkZGxlLWJnLCAkbGlnaHRuZXNzOiAtMzAlKTtcbiAgICAgIGJhY2tncm91bmQ6ICRwYWRkbGUtYmc7XG4gICAgICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgJHBhZGRsZS1iZyAwJSwgc2NhbGUtY29sb3IoJHBhZGRsZS1iZywgJGxpZ2h0bmVzczogLTUlKSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkcGFkZGxlLWJnIDAlLCBzY2FsZS1jb2xvcigkcGFkZGxlLWJnLCAkbGlnaHRuZXNzOiAtNSUpIDEwMCUpO1xuICAgICAgfVxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHBhZGRsZS1iZyAwJSwgc2NhbGUtY29sb3IoJHBhZGRsZS1iZywgJGxpZ2h0bmVzczogLTUlKSAxMDAlKTtcblxuICAgICAgLy8gQnVpbGRpbmcgdGhlIGFsdGVybmF0aW5nIGNvbG9yZWQgc2lkZXMgb2YgdGhlIHN3aXRjaFxuICAgICAgQGlmICRleHBlcmltZW50YWwge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDJweCAwIDEwcHggMCByZ2JhKDAsMCwwLDAuMDcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDBweCAwIDAgMTAwMHB4ICRwb3NpdGl2ZS1jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtMnB4IDAgMTBweCAwIHJnYmEoMCwwLDAsMC4wNyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEwMDBweCAwIDAgMTAwMHB4ICRuZWdhdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIGJveC1zaGFkb3c6ICAgICAgICAgMnB4IDAgMTBweCAwIHJnYmEoMCwwLDAsMC4wNyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDBweCAwIDAgOTgwcHggJHBvc2l0aXZlLWNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAtMnB4IDAgMTBweCAwIHJnYmEoMCwwLDAsMC4wNyksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC0xMDAwcHggMCAwIDEwMDBweCAkbmVnYXRpdmUtY29sb3I7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwYWRkbGUtYmc7XG4gICAgICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICRwYWRkbGUtYmcgMCUsIHNjYWxlLWNvbG9yKCRwYWRkbGUtYmcsICRsaWdodG5lc3M6IC0xMCUpIDEwMCUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHBhZGRsZS1iZyAwJSwgc2NhbGUtY29sb3IoJHBhZGRsZS1iZywgJGxpZ2h0bmVzczogLTEwJSkgMTAwJSk7XG4gICAgICAgIH1cbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHBhZGRsZS1iZyAwJSwgc2NhbGUtY29sb3IoJHBhZGRsZS1iZywgJGxpZ2h0bmVzczogLTEwJSkgMTAwJSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphY3RpdmUgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICB9XG5cbiAgLy8gU2V0dGluZyB1cCB0aGUgcmFkaXVzIGZvciBzd2l0Y2hlc1xuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHtcbiAgICBAaW5jbHVkZSByYWRpdXMoNHB4KTtcbiAgICBzcGFuOmxhc3QtY2hpbGQgeyBAaW5jbHVkZSByYWRpdXMoM3B4KTsgfVxuICB9XG4gIEBlbHNlIGlmICRyYWRpdXMge1xuICAgIEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTtcbiAgICBzcGFuOmxhc3QtY2hpbGQgeyBAaW5jbHVkZSByYWRpdXMoJHJhZGl1cyAtIDFweCk7IH1cbiAgfVxuXG59XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHF1aWNrbHkgY3JlYXRlIHN3aXRjaGVzIHdpdGggYSBzaW5nbGUgbWl4aW5cbi8vXG4vLyAkdHJhbnNpdGlvbi1zcGVlZCAtIFRpbWUgaW4gbXMgZm9yIHN3aXRjaCB0byB0b2dnbGUuIERlZmF1bHQ6ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQuXG4vLyAkdHJhbnNpdGlvbi1lYXNlIC0gRWFzaW5nIGZ1bmN0aW9uIHRvIHVzZSBmb3IgYW5pbWF0aW9uIChpLmUuIGVhc2Utb3V0KS4gRGVmYXVsdDogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1lYXNlLlxuLy8gJGhlaWdodCAtIEhlaWdodCAoaW4gcHgpIG9mIHRoZSBzd2l0Y2guIERlZmF1bHQ6ICRzd2l0Y2gtaGVpZ2h0LW1lZC5cbi8vICRmb250LXNpemUgLSBGb250IHNpemUgb2YgdGV4dCBpbiBzd2l0Y2guIERlZmF1bHQ6ICRzd2l0Y2gtZm9udC1zaXplLW1lZC5cbi8vICRsaW5lLWhlaWdodCAtIExpbmUgaGVpZ2h0IG9mIHN3aXRjaC4gRGVmYXVsdDogMi4zcmVtLlxuLy8gJHBhZGRsZS1iZyAtIEJhY2tncm91bmQgb2Ygc3dpdGNoIHBhZGRsZS4gRGVmYXVsdDogJHN3aXRjaC1wYWRkbGUtYmcuXG4vLyAkcG9zaXRpdmUtY29sb3IgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBvc2l0aXZlIHNpZGUgb2Ygc3dpdGNoLiBEZWZhdWx0OiAkc3dpdGNoLXBvc2l0aXZlLWNvbG9yLlxuLy8gJG5lZ2F0aXZlLWNvbG9yIC0gQmFja2dyb3VuZCBjb2xvciBvZiBuZWdhdGl2ZSBzaWRlIG9mIHN3aXRjaC4gRGVmYXVsdDogJHN3aXRjaC1uZWdhdGl2ZS1jb2xvci5cbi8vICRyYWRpdXMgLSBSYWRpdXMgdG8gYXBwbHkgdG8gc3dpdGNoLiBEZWZhdWx0OiBmYWxzZS5cbi8vICRiYXNlLXN0eWxlIC0gQXBwbHkgYmFzZSBzdHlsZXM/IERlZmF1bHQ6IHRydWUuXG5AbWl4aW4gc3dpdGNoKFxuICAkdHJhbnNpdGlvbi1zcGVlZDogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1zcGVlZCxcbiAgJHRyYW5zaXRpb24tZWFzZTogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbi1lYXNlLFxuICAkaGVpZ2h0OiAkc3dpdGNoLWhlaWdodC1tZWQsXG4gICRmb250LXNpemU6ICRzd2l0Y2gtZm9udC1zaXplLW1lZCxcbiAgJGxpbmUtaGVpZ2h0OiAyLjNyZW0sXG4gICRwYWRkbGUtYmc6ICRzd2l0Y2gtcGFkZGxlLWJnLFxuICAkcG9zaXRpdmUtY29sb3I6ICRzd2l0Y2gtcG9zaXRpdmUtY29sb3IsXG4gICRuZWdhdGl2ZS1jb2xvcjogJHN3aXRjaC1uZWdhdGl2ZS1jb2xvcixcbiAgJHJhZGl1czpmYWxzZSxcbiAgJGJhc2Utc3R5bGU6dHJ1ZSkge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1iYXNlKCR0cmFuc2l0aW9uLXNwZWVkLCAkdHJhbnNpdGlvbi1lYXNlKTtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZSgkaGVpZ2h0LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpO1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zdHlsZSgkcGFkZGxlLWJnLCAkcG9zaXRpdmUtY29sb3IsICRuZWdhdGl2ZS1jb2xvciwgJHJhZGl1cywgJGJhc2Utc3R5bGUpO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwic3dpdGNoXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzIHtcbiAgICAgIGRpdi5zd2l0Y2gge1xuICAgICAgICBAaW5jbHVkZSBzd2l0Y2g7XG5cbiAgICAgICAgLy8gTGFyZ2UgcmFkaW8gc3dpdGNoZXNcbiAgICAgICAgJi5sYXJnZSB7IEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtaGVpZ2h0LWxyZywgJHN3aXRjaC1mb250LXNpemUtbHJnKTsgfVxuXG4gICAgICAgIC8vIFNtYWxsIHJhZGlvIHN3aXRjaGVzXG4gICAgICAgICYuc21hbGwgeyBAaW5jbHVkZSBzd2l0Y2gtc2l6ZSgkc3dpdGNoLWhlaWdodC1zbWwsICRzd2l0Y2gtZm9udC1zaXplLXNtbCwgMi4xcmVtKTsgfVxuXG4gICAgICAgIC8vIFRpbnkgcmFkaW8gc3dpdGNoZXNcbiAgICAgICAgJi50aW55IHsgQGluY2x1ZGUgc3dpdGNoLXNpemUoJHN3aXRjaC1oZWlnaHQtdG55LCAkc3dpdGNoLWZvbnQtc2l6ZS10bnksIDEuOXJlbSk7IH1cblxuICAgICAgICAvLyBBZGQgYSByYWRpdXMgdG8gdGhlIHN3aXRjaFxuICAgICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cyg0cHgpO1xuICAgICAgICAgIHNwYW46bGFzdC1jaGlsZHsgQGluY2x1ZGUgcmFkaXVzKDNweCk7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE1ha2UgdGhlIHN3aXRjaCBjb21wbGV0ZWx5IHJvdW5kLCBsaWtlIGEgcGlsbFxuICAgICAgICAmLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG4gICAgICAgICAgc3BhbjpsYXN0LWNoaWxkIHsgQGluY2x1ZGUgcmFkaXVzKDk5OXB4KTsgfVxuICAgICAgICAgIGxhYmVsIHsgcGFkZGluZzogcmVtLWNhbGMoMCAkc3dpdGNoLWxhYmVsLXNpZGUtcGFkZGluZyArIDMpOyB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgICBAaWYgJGV4cGVyaW1lbnRhbCB7IEAtd2Via2l0LWtleWZyYW1lcyB3ZWJraXRTaWJsaW5nQnVnZml4IHsgZnJvbSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB0byB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9IH1cbiAgfVxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEBuYW1lIF90YWJsZXMuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLXRhYmxlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRhYmxlIGFuZCBldmVuIHJvd3NcbiR0YWJsZS1iZzogI2ZmZiAhZGVmYXVsdDtcbiR0YWJsZS1ldmVuLXJvdy1iZzogI2Y5ZjlmOSAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgY2VsbCBib3JkZXIgc3R5bGVcbiR0YWJsZS1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAjZGRkICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBoZWFkIHN0eWxlc1xuJHRhYmxlLWhlYWQtYmc6ICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSByb3cgcGFkZGluZyBhbmQgZm9udCBzdHlsZXNcbiR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCkgIWRlZmF1bHQ7XG4kdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRhYmxlLXJvdy1mb250LWNvbG9yOiAjMjIyICFkZWZhdWx0O1xuJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGFyZSBmb3IgY29udHJvbGxpbmcgdGhlIGRpc3BsYXkgYW5kIG1hcmdpbiBvZiB0YWJsZXNcbiR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsICFkZWZhdWx0O1xuJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuQG1peGluIHRhYmxlIHtcbiAgYmFja2dyb3VuZDogJHRhYmxlLWJnO1xuICBtYXJnaW4tYm90dG9tOiAkdGFibGUtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkdGFibGUtYm9yZGVyLXN0eWxlICR0YWJsZS1ib3JkZXItc2l6ZSAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmc7ICAgIFxuXG4gICAgdHIge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmc7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0ciB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXJvdy1wYWRkaW5nO1xuICAgICAgZm9udC1zaXplOiAkdGFibGUtcm93LWZvbnQtc2l6ZTtcbiAgICAgIGNvbG9yOiAkdGFibGUtcm93LWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgJi5ldmVuLFxuICAgICYuYWx0LFxuICAgICY6bnRoLW9mLXR5cGUoZXZlbikgeyBiYWNrZ3JvdW5kOiAkdGFibGUtZXZlbi1yb3ctYmc7IH1cbiAgfVxuXG4gIHRoZWFkIHRyIHRoLFxuICB0Zm9vdCB0ciB0aCxcbiAgdGJvZHkgdHIgdGQsXG4gIHRyIHRkLFxuICB0Zm9vdCB0ciB0ZCB7IGRpc3BsYXk6ICR0YWJsZS1kaXNwbGF5OyBsaW5lLWhlaWdodDogJHRhYmxlLWxpbmUtaGVpZ2h0OyB9XG59XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcInRhYmxlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdGFibGUtY2xhc3NlcyB7XG4gICAgdGFibGUge1xuICAgICAgQGluY2x1ZGUgdGFibGU7XG4gICAgfVxuICB9XG59IiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuQGltcG9ydCBcImdyaWRcIjtcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtdGFicy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiR0YWJzLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvcjogI2VmZWZlZiAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTYlKSAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCkgIWRlZmF1bHQ7XG4kdGFicy1jb250ZW50LXBhZGRpbmc6ICRjb2x1bW4tZ3V0dGVyLzIgIWRlZmF1bHQ7XG5cbiR0YWJzLXZlcnRpY2FsLW5hdmlnYXRpb24tbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgZXhwb3J0cyhcInRhYlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlcyB7XG4gICAgLnRhYnMge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBkZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yO1xuICAgICAgICAgIHBhZGRpbmc6ICR0YWJzLW5hdmlnYXRpb24tcGFkZGluZyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmcgKiAyO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU7XG4gICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICR0YWJzLW5hdmlnYXRpb24taG92ZXItYmctY29sb3I7IH1cbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSBhIHsgYmFja2dyb3VuZDogJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I7IH1cbiAgICAgIH1cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgZGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGEgeyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGdsb2JhbC1yYWRpdXMpOyB9XG4gICAgICAgIH1cbiAgICAgICAgZGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYSB7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sICRnbG9iYWwtcmFkaXVzKTsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZGQge1xuICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJzLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b207XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZyAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgJi5hY3RpdmUgeyBkaXNwbGF5OiBibG9jazsgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgJi5jb250YWluZWQgeyBwYWRkaW5nOiAkdGFicy1jb250ZW50LXBhZGRpbmc7IH1cbiAgICAgIH1cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgPiAuY29udGVudCB7IHBhZGRpbmc6IDAgJHRhYnMtY29udGVudC1wYWRkaW5nOyB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIC50YWJzIHtcbiAgICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHRhYnMtdmVydGljYWwtbmF2aWdhdGlvbi1tYXJnaW4tYm90dG9tO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtMXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5uby1qcyB7XG4gICAgICAudGFicy1jb250ZW50ID4gLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5cblxuXG4vL1xuLy8gQG5hbWUgX3RodW1icy5zY3NzXG4vLyBAZGVwZW5kZW5jaWVzIF9nbG9iYWxzLnNjc3Ncbi8vXG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuXG4kaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuJHRodW1iLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kdGh1bWItYm9yZGVyLXdpZHRoOiA0cHggIWRlZmF1bHQ7XG4kdGh1bWItYm9yZGVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHRodW1iLWJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCMwMDAsLjIpICFkZWZhdWx0O1xuJHRodW1iLWJveC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsMC41KSAhZGVmYXVsdDtcblxuLy8gUmFkaXVzIGFuZCB0cmFuc2l0aW9uIHNwZWVkIGZvciB0aHVtYnNcbiR0aHVtYi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuJHRodW1iLXRyYW5zaXRpb24tc3BlZWQ6IDIwMG1zICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIGltYWdlIHRodW1ibmFpbCBzdHlsZXMuXG4vL1xuLy8gJGJvcmRlci13aWR0aCAtIFdpZHRoIG9mIGJvcmRlciBhcm91bmQgdGh1bWJuYWlsLiBEZWZhdWx0OiAkdGh1bWItYm9yZGVyLXdpZHRoLlxuLy8gJGJveC1zaGFkb3cgLSBCb3ggc2hhZG93IHRvIGFwcGx5IHRvIHRodW1ibmFpbC4gRGVmYXVsdDogJHRodW1iLWJveC1zaGFkb3cuXG4vLyAkYm94LXNoYWRvdy1ob3ZlciAtIEJveCBzaGFkb3cgdG8gYXBwbHkgb24gaG92ZXIuIERlZmF1bHQ6ICR0aHVtYi1ib3gtc2hhZG93LWhvdmVyLlxuQG1peGluIHRodW1iKFxuICAkYm9yZGVyLXdpZHRoOiR0aHVtYi1ib3JkZXItd2lkdGgsIFxuICAkYm94LXNoYWRvdzokdGh1bWItYm94LXNoYWRvdywgXG4gICRib3gtc2hhZG93LWhvdmVyOiR0aHVtYi1ib3gtc2hhZG93LWhvdmVyKSB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogJHRodW1iLWJvcmRlci1zdHlsZSAkYm9yZGVyLXdpZHRoICR0aHVtYi1ib3JkZXItY29sb3I7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgQGlmICRleHBlcmltZW50YWwge1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG4gIH1cbiAgYm94LXNoYWRvdzogJGJveC1zaGFkb3c7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGlmICRleHBlcmltZW50YWwge1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkYm94LXNoYWRvdy1ob3ZlcjtcbiAgICB9XG4gICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctaG92ZXI7XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwidGh1bWJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzIHtcblxuICAgIC8qIEltYWdlIFRodW1ibmFpbHMgKi9cbiAgICAudGgge1xuICAgICAgQGluY2x1ZGUgdGh1bWI7XG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihhbGwsJHRodW1iLXRyYW5zaXRpb24tc3BlZWQsZWFzZS1vdXQpO1xuXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkdGh1bWItcmFkaXVzKTsgfVxuICAgIH1cbiAgfVxufSIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIFRvb2x0aXAgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC10b29sdGlwLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjY2NjICFkZWZhdWx0O1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG4kaGFzLXRpcC1mb250LWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSkgIWRlZmF1bHQ7XG4kaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRoYXMtdGlwLWN1cnNvci10eXBlOiBoZWxwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1wYWRkaW5nOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogIzMzMyAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1saW5lLWhlaWdodDogMS4zICFkZWZhdWx0O1xuJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHRvb2x0aXAtY2xvc2UtZm9udC1jb2xvcjogIzc3NyAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtc2l6ZS1zbWw6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1yb3VuZGVkOiAkZ2xvYmFsLXJvdW5kZWQgIWRlZmF1bHQ7XG4kdG9vbHRpcC1waXAtc2l6ZTogNXB4ICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBleHBvcnRzKFwidG9vbHRpcFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXRvb2x0aXAtY2xhc3NlcyB7XG5cbiAgICAvKiBUb29sdGlwcyAqL1xuICAgIC5oYXMtdGlwIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gICAgICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvci10eXBlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICAgICAgY29sb3I6ICRoYXMtdGlwLWZvbnQtY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjtcbiAgICAgICAgY29sb3I6ICRoYXMtdGlwLWZvbnQtY29sb3ItaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICYudGlwLWxlZnQsXG4gICAgICAmLnRpcC1yaWdodCB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICAudG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogOTk5O1xuICAgICAgZm9udC13ZWlnaHQ6ICR0b29sdGlwLWZvbnQtd2VpZ2h0O1xuICAgICAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJHRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuICAgICAgbWF4LXdpZHRoOiA4NSU7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogNTAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogJHRvb2x0aXAtZm9udC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6ICR0b29sdGlwLWJnO1xuXG4gICAgICAmPi5udWIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICR0b29sdGlwLXBpcC1zaXplO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlcjogc29saWQgJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRvb2x0aXAtYmcgdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRvcDogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuXG4gICAgICAgICYucnRsIHtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b29sdGlwLXBpcC1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCR0b29sdGlwLXJhZGl1cyk7XG4gICAgICB9XG4gICAgICAmLnJvdW5kIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCR0b29sdGlwLXJvdW5kZWQpO1xuICAgICAgICAmPi5udWIge1xuICAgICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVuZWQge1xuICAgICAgICBjb2xvcjogJGhhcy10aXAtZm9udC1jb2xvci1ob3ZlciAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhcC10by1jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplO1xuICAgICAgY29sb3I6ICR0b29sdGlwLWNsb3NlLWZvbnQtY29sb3I7XG4gICAgICBmb250LXdlaWdodDogJHRvb2x0aXAtY2xvc2UtZm9udC13ZWlnaHQ7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNtYWxsfSB7XG4gICAgICAudG9vbHRpcCB7XG4gICAgICAgICY+Lm51YiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdG9vbHRpcC1iZyB0cmFuc3BhcmVudDtcbiAgICAgICAgICB0b3A6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgfVxuICAgICAgICAmLnRpcC10b3A+Lm51YiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdG9vbHRpcC1iZyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiAtKCR0b29sdGlwLXBpcC1zaXplICogMik7XG4gICAgICAgIH1cblxuICAgICAgICAmLnRpcC1sZWZ0LFxuICAgICAgICAmLnRpcC1yaWdodCB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICAmLnRpcC1sZWZ0Pi5udWIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRvb2x0aXAtYmc7XG4gICAgICAgICAgcmlnaHQ6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1waXAtc2l6ZTtcbiAgICAgICAgfVxuICAgICAgICAmLnRpcC1yaWdodD4ubnViIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0b29sdGlwLWJnIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cblxuICB9XG59IiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuQGltcG9ydCBcImdyaWRcIjtcblxuLy9cbi8vIFRvcCBCYXIgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXJcbiR0b3BiYXItYmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG4kdG9wYmFyLWJnOiAkdG9wYmFyLWJnLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxuJHRvcGJhci1oZWlnaHQ6IDQ1cHggIWRlZmF1bHQ7XG4kdG9wYmFyLW1hcmdpbi1ib3R0b206IDAgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2xsaW5nIHRoZSBzdHlsZXMgZm9yIHRoZSB0aXRsZSBpbiB0aGUgdG9wIGJhclxuJHRvcGJhci10aXRsZS13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNykgIWRlZmF1bHQ7XG5cbi8vIFN0eWxlIHRoZSB0b3AgYmFyIGRyb3Bkb3duIGVsZW1lbnRzXG4kdG9wYmFyLWRyb3Bkb3duLWJnOiAjMzMzICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWJnOiAjMzMzICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4ICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogMC40ICFkZWZhdWx0O1xuXG4vLyBTZXQgdGhlIGxpbmsgY29sb3JzIGFuZCBzdHlsZXMgZm9yIHRvcC1sZXZlbCBuYXZcbiR0b3BiYXItbGluay1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1ob3ZlcjogI2ZmZiAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICNmZmYgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyOiAjZmZmICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWhvdmVyLWxpZ2h0bmVzczogLTEwJSAhZGVmYXVsdDsgLy8gRGFya2VuIGJ5IDEwJVxuJHRvcGJhci1saW5rLWJnOiAkdG9wYmFyLWJnICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWJnLWhvdmVyOiAjMjcyNzI3ICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWJnLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtOiBub25lICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLXBhZGRpbmc6ICR0b3BiYXItaGVpZ2h0IC8gMyAhZGVmYXVsdDtcblxuJHRvcGJhci1idXR0b24tZm9udC1zaXplOiAwLjc1cmVtO1xuJHRvcGJhci1idXR0b24tdG9wOiA3cHggIWRlZmF1bHQ7XG5cbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICM3NzcgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtYmc6ICMzMzMgIWRlZmF1bHQ7XG5cbi8vIFRvcCBtZW51IGljb24gc3R5bGVzXG4kdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWxpbmstd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtaWNvbi1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICM4ODggIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkOiAjODg4ICFkZWZhdWx0O1xuXG4vLyBUcmFuc2l0aW9ucyBhbmQgYnJlYWtwb2ludCBzdHlsZXNcbiR0b3BiYXItdHJhbnNpdGlvbi1zcGVlZDogMzAwbXMgIWRlZmF1bHQ7XG4vLyBVc2luZyByZW0tY2FsYyBmb3IgdGhlIGJlbG93IGJyZWFrcG9pbnQgY2F1c2VzIGlzc3VlcyB3aXRoIHRvcCBiYXJcbiR0b3BiYXItYnJlYWtwb2ludDogI3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0gIWRlZmF1bHQ7IC8vIENoYW5nZSB0byA5OTk5cHggZm9yIGFsd2F5cyBtb2JpbGUgbGF5b3V0XG4kdG9wYmFyLW1lZGlhLXF1ZXJ5OiAkbWVkaXVtLXVwICFkZWZhdWx0O1xuXG4vLyBEaXZpZGVyIFN0eWxlc1xuJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCAgc2NhbGUtY29sb3IoJHRvcGJhci1iZy1jb2xvciwgJGxpZ2h0bmVzczogMTMlKSAhZGVmYXVsdDtcbiR0b3BiYXItZGl2aWRlci1ib3JkZXItdG9wOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRvcGJhci1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTUwJSkgIWRlZmF1bHQ7XG5cbi8vIFN0aWNreSBDbGFzc1xuJHRvcGJhci1zdGlja3ktY2xhc3M6IFwiLnN0aWNreVwiICFkZWZhdWx0O1xuJHRvcGJhci1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgdHJpYW5nbGUgaWNvbiBmcm9tIHRoZSBtZW51IGl0ZW1cblxuLy8gQWNjZXNzaWJpbGl0eSBtaXhpbnMgZm9yIGhpZGluZyBhbmQgc2hvd2luZyB0aGUgbWVudSBkcm9wZG93biBpdGVtc1xuQG1peGluIHRvcGJhci1oaWRlLWRyb3Bkb3duIHtcbiAgLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4gYnkgZGVmYXVsdCwgYnV0IHZpc2libGUgd2hlbiBmb2N1c2VkLlxuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUoKTtcbn1cblxuQG1peGluIHRvcGJhci1zaG93LWRyb3Bkb3duIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZigpO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgLy8gUmVzZXQgdGhlIHBvc2l0aW9uIGZyb20gc3RhdGljIHRvIGFic29sdXRlXG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0b3AtYmFyXCIpIHtcblxuICBAaWYgJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXMge1xuXG4gICAgLy8gVXNlZCB0byBwcm92aWRlIG1lZGlhIHF1ZXJ5IHZhbHVlcyBmb3IgamF2YXNjcmlwdCBjb21wb25lbnRzLlxuICAgIC8vIFRoaXMgY2xhc3MgaXMgZ2VuZXJhdGVkIGRlc3BpdGUgdGhlIHZhbHVlIG9mICRpbmNsdWRlLWh0bWwtdG9wLWJhci1jbGFzc2VzXG4gICAgLy8gdG8gZW5zdXJlIHdpZHRoIGNhbGN1bGF0aW9ucyB3b3JrIGNvcnJlY3RseS5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtdG9wYmFyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHRvcGJhci1tZWRpYS1xdWVyeSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiAkdG9wYmFyLWJyZWFrcG9pbnQ7XG4gICAgfVxuXG4gICAgLyogV3JhcHBlZCBhcm91bmQgLnRvcC1iYXIgdG8gY29udGFpbiB0byBncmlkIHdpZHRoICovXG4gICAgLmNvbnRhaW4tdG8tZ3JpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG5cbiAgICAgIC50b3AtYmFyIHsgbWFyZ2luLWJvdHRvbTogJHRvcGJhci1tYXJnaW4tYm90dG9tOyB9XG4gICAgfVxuXG4gICAgLy8gV3JhcHBlZCBhcm91bmQgLnRvcC1iYXIgdG8gbWFrZSBpdCBzdGljayB0byB0aGUgdG9wXG4gICAgLmZpeGVkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiA5OTtcblxuICAgICAgJi5leHBhbmRlZDpub3QoLnRvcC1iYXIpIHtcbiAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIC50aXRsZS1hcmVhIHtcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRW5zdXJlIHlvdSBjYW4gc2Nyb2xsIHRoZSBtZW51IG9uIHNtYWxsIHNjcmVlbnNcbiAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAgICAgei1pbmRleDogOTg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdG9wYmFyLW1hcmdpbi1ib3R0b207XG5cbiAgICAgIC8vIFRvcGJhciBHbG9iYWwgbGlzdCBTdHlsZXNcbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnJvdyB7IG1heC13aWR0aDogbm9uZTsgfVxuXG4gICAgICBmb3JtLFxuICAgICAgaW5wdXQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAgIGlucHV0IHsgaGVpZ2h0OiBhdXRvOyBwYWRkaW5nLXRvcDogLjM1cmVtOyBwYWRkaW5nLWJvdHRvbTogLjM1cmVtOyBmb250LXNpemU6ICR0b3BiYXItYnV0dG9uLWZvbnQtc2l6ZTsgfVxuXG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IC40NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC4zNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU7XG4gICAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC8vIHRvcDogLTFweDtcblxuICAgICAgfVxuXG4gICAgICAvLyBUaXRsZSBBcmVhXG4gICAgICAudGl0bGUtYXJlYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAubmFtZSB7XG4gICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItdGl0bGUtZm9udC1zaXplO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLXRpdGxlLXdlaWdodDtcbiAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBNZW51IHRvZ2dsZSBidXR0b24gb24gc21hbGwgZGV2aWNlc1xuICAgICAgLnRvZ2dsZS10b3BiYXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLW1lbnUtbGluay10cmFuc2Zvcm07XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbWVudS1saW5rLXdlaWdodDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZGluZyB0aGUgY2xhc3MgXCJtZW51LWljb25cIiB3aWxsIGFkZCB0aGUgMy1saW5lIGljb24gcGVvcGxlIGxvdmUgYW5kIGFkb3JlLlxuICAgICAgICAmLm1lbnUtaWNvbiB7XG4gICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogNDBweDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTU4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbWVudS1saW5rLWNvbG9yO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgIC8vIFNoaCwgZG9uJ3QgdGVsbCwgYnV0IGJveC1zaGFkb3dzIGNyZWF0ZSB0aGUgbWVudSBpY29uIDopXG4gICAgICAgICAgICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAxMHB4IDFweCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggMTZweCAxcHggMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4IDIycHggMXB4IDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAgICAgICAgIDAgMTBweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwIDE2cHggMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCAyMnB4IDAgMXB4ICR0b3BiYXItbWVudS1pY29uLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBDaGFuZ2UgdGhpbmdzIHVwIHdoZW4gdGhlIHRvcC1iYXIgaXMgZXhwYW5kZWRcbiAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC50aXRsZS1hcmVhIHsgYmFja2dyb3VuZDogJHRvcGJhci1iZzsgfVxuXG4gICAgICAgIC50b2dnbGUtdG9wYmFyIHtcbiAgICAgICAgICBhIHsgY29sb3I6ICR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIC8vIFNoaCwgZG9uJ3QgdGVsbCwgYnV0IGJveC1zaGFkb3dzIGNyZWF0ZSB0aGUgbWVudSBpY29uIDopXG4gICAgICAgICAgICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDFweCAxMHB4IDFweCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFweCAxNnB4IDFweCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFweCAyMnB4IDFweCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBib3gtc2hhZG93OiAgICAgICAgIDAgMTBweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgMTZweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgMjJweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG5cblxuICAgIH1cblxuICAgIC8vIFJpZ2h0IGFuZCBMZWZ0IE5hdmlnYXRpb24gdGhhdCBzdGFja2VkIGJ5IGRlZmF1bHRcbiAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbigkZGVmYXVsdC1mbG9hdCwgJHRvcGJhci10cmFuc2l0aW9uLXNwZWVkKTtcblxuICAgICAgdWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1iZztcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLmRpdmlkZXIsXG4gICAgICBbcm9sZT1cInNlcGFyYXRvclwiXSB7XG4gICAgICAgIGJvcmRlci10b3A6ICR0b3BiYXItZGl2aWRlci1ib3JkZXItdG9wO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICB1bCBsaSB7XG4gICAgICAgICYgPiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xuICAgICAgICAgIHBhZGRpbmc6IDEycHggMCAxMnB4IDA7XG4gICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICR0b3BiYXItbGluay1mb250LWZhbWlseTtcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbGluay1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbGluay13ZWlnaHQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06ICR0b3BiYXItbGluay10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWJnO1xuXG4gICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItbGluay1mb250LXNpemU7XG4gICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTI3JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IC0xMSUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdWNjZXNzLWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRzdWNjZXNzLWNvbG9yLCAkbGlnaHRuZXNzOiAtMjElKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5idXR0b24uYWxlcnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFsZXJ0LWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRhbGVydC1jb2xvciwgJGxpZ2h0bmVzczogLTE4JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAvLyBBcHBseSB0aGUgaG92ZXIgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICY6aG92ZXI6bm90KC5oYXMtZm9ybSkgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcblxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCBzb21lIGV4dHJhIHBhZGRpbmcgZm9yIGxpc3QgaXRlbXMgY29udGFpbnMgYnV0dG9uc1xuICAgICAgLmhhcy1mb3JtIHsgcGFkZGluZzogJHRvcGJhci1saW5rLXBhZGRpbmc7IH1cblxuICAgICAgLy8gU3R5bGluZyBmb3IgbGlzdCBpdGVtcyB0aGF0IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gdGhlbS5cbiAgICAgIC5oYXMtZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJiA+IGEge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGlmICgkdG9wYmFyLWFycm93cyl7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksICRkZWZhdWx0LWZsb2F0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZSAvIDIpIC0gMjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1vdmVkIHsgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAmID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gU3R5bGluZyBlbGVtZW50cyBpbnNpZGUgb2YgZHJvcGRvd25zXG4gICAgICAuZHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICBAaW5jbHVkZSB0b3BiYXItaGlkZS1kcm9wZG93bigpO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLWRyb3Bkb3duLWxpbmstd2VpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZzogOHB4ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgJi5wYXJlbnQtbGluayB7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkdG9wYmFyLWxpbmstd2VpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYudGl0bGUgaDUgeyBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodCAvIDI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmhhcy1mb3JtIHsgcGFkZGluZzogOHB4ICR0b3BiYXItbGluay1wYWRkaW5nOyB9XG4gICAgICAgICAgLmJ1dHRvbiB7IHRvcDogYXV0bzsgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZyAycHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJHRvcGJhci1kcm9wZG93bi1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcbiAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXdlaWdodDtcbiAgICAgICAgICBmb250LXNpemU6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmpzLWdlbmVyYXRlZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuICAgIC8vIFRvcCBCYXIgc3R5bGVzIGludGVuZGVkIGZvciBzY3JlZW4gc2l6ZXMgYWJvdmUgdGhlIGJyZWFrcG9pbnQuXG4gICAgQG1lZGlhICN7JHRvcGJhci1tZWRpYS1xdWVyeX0ge1xuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgLnRvZ2dsZS10b3BiYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgLnRpdGxlLWFyZWEgeyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7IH1cbiAgICAgICAgLm5hbWUgaDEgYSB7IHdpZHRoOiBhdXRvOyB9XG5cbiAgICAgICAgaW5wdXQsXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6ICR0b3BiYXItYnV0dG9uLXRvcDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZXhwYW5kZWQgeyBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnOyB9XG4gICAgICB9XG5cbiAgICAgIC5jb250YWluLXRvLWdyaWQgLnRvcC1iYXIge1xuICAgICAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkdG9wYmFyLW1hcmdpbi1ib3R0b207XG4gICAgICB9XG5cbiAgICAgIC50b3AtYmFyLXNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihub25lLDAsMCk7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgICAgIC5qcy1nZW5lcmF0ZWQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICYuaG92ZXIge1xuICAgICAgICAgICAgPiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpub3QoLmhhcy1mb3JtKSB7XG4gICAgICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnO1xuICAgICAgICAgICAgICAmOmhvdmVyIHsgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYWN0aXZlOm5vdCguaGFzLWZvcm0pIHtcbiAgICAgICAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWFjdGl2ZTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWRyb3Bkb3duIHtcblxuICAgICAgICAgIEBpZigkdG9wYmFyLWFycm93cyl7XG5cbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWxpbmstcGFkZGluZyArIDIwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksIHRvcCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplIC8gMik7XG4gICAgICAgICAgICAgICAgdG9wOiAkdG9wYmFyLWhlaWdodCAvIDI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cblxuICAgICAgICAgICYubW92ZWQgeyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmhvdmVyLCAmLm5vdC1jbGljazpob3ZlciB7XG4gICAgICAgICAgICAmID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZHJvcGRvd24gbGkuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwwMGJiXCI7XG4gICAgICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1saW5rLWJnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtYmc7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFNlY29uZCBMZXZlbCBEcm9wZG93bnNcbiAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJiA+IHVsID4gLmRpdmlkZXIsXG4gICAgICAgICYgPiB1bCA+IFtyb2xlPVwic2VwYXJhdG9yXCJdIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItZGl2aWRlci1ib3JkZXItYm90dG9tO1xuICAgICAgICAgIGNsZWFyOiBub25lO1xuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWZvcm0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZztcbiAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItaGVpZ2h0IC8gMztcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUG9zaXRpb24gb3ZlcnJpZGVzIGZvciB1bC5yaWdodCBhbmQgdWwubGVmdFxuICAgICAgICAucmlnaHQge1xuICAgICAgICAgIGxpIC5kcm9wZG93biB7XG4gICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG5cbiAgICAgICAgICAgIGxpIC5kcm9wZG93biB7ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwMCU7IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxlZnQge1xuICAgICAgICAgIGxpIC5kcm9wZG93biB7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDA7XG5cbiAgICAgICAgICAgIGxpIC5kcm9wZG93biB7ICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIERlZ3JhZGUgZ3JhY2VmdWxseSB3aGVuIEphdmFzY3JpcHQgaXMgZGlzYWJsZWQuIERpc3BsYXlzIGRyb3Bkb3duIGFuZCBjaGFuZ2VzXG4gICAgICAvLyBiYWNrZ3JvdW5kICYgdGV4dCBjb2xvciBvbiBob3Zlci5cbiAgICAgIC5uby1qcyAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgdWwgbGkge1xuICAgICAgICAgIC8vIEFwcGx5IHRoZSBob3ZlciBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgICAmOmhvdmVyID4gYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIEFwcGx5IHRoZSBhY3RpdmUgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICAgJjphY3RpdmUgPiBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1hY3RpdmU7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICYgPiAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCBcImdsb2JhbFwiO1xuXG4kaW5jbHVkZS1odG1sLXR5cGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkZXIgZm9udCBzdHlsZXNcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGhlYWRlci1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcbiRoMS1mb250LXNpemU6IHJlbS1jYWxjKDQ0KSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IHJlbS1jYWxjKDM3KSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIzKSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgaG93IHN1YmhlYWRlcnMgYXJlIHN0eWxlZC5cbiRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHN1YmhlYWRlci10b3AtbWFyZ2luOiAuMnJlbSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItYm90dG9tLW1hcmdpbjogLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEEgZ2VuZXJhbCA8c21hbGw+IHN0eWxpbmdcbiRzbWFsbC1mb250LXNpemU6IDYwJSAhZGVmYXVsdDtcbiRzbWFsbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkaGVhZGVyLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBwYXJhZ3JhcGhzXG4kcGFyYWdyYXBoLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuJHBhcmFncmFwaC1mb250LXdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJHBhcmFncmFwaC1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWxpbmUtaGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWFzaWRlLWxpbmUtaGVpZ2h0OiAxLjM1ICFkZWZhdWx0O1xuJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSA8Y29kZT4gdGFnc1xuJGNvZGUtY29sb3I6IHNjYWxlLWNvbG9yKCRhbGVydC1jb2xvciwgJGxpZ2h0bmVzczogLTI3JSkgIWRlZmF1bHQ7XG4kY29kZS1mb250LWZhbWlseTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kY29kZS1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGFuY2hvcnNcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbiRoci1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRoci1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGhyLWJvcmRlci1jb2xvcjogI2RkZCAhZGVmYXVsdDtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjFyZW0gIWRlZmF1bHQ7XG4kbGlzdC1vcmRlcmVkLXNpZGUtbWFyZ2luOiAxLjRyZW0gIWRlZmF1bHQ7XG4kbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ6IDAgIWRlZmF1bHQ7XG4kbGlzdC1uZXN0ZWQtbWFyZ2luOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbSAhZGVmYXVsdDtcbiRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbiRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAjZGRkICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4kYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgI2RkZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4kbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAjZGRkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcbiRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXNpemU6IHJlbS1jYWxjKDE1KSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgc3VtbWFyeSBmb250IHN0eWxlc1xuJG1pY3JvZm9ybWF0LXN1bW1hcnktZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBwYWRkaW5nXG4kbWljcm9mb3JtYXQtYWJici1wYWRkaW5nOiByZW0tY2FsYygwIDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGFiYnIgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vL1xuLy8gUmVzcG9uc2l2ZSBUZXh0IGFsaWdubWVudFxuLy9cblxuLy8gVGV4dCBCcmVha3BvaW50c1xuJHRleHQtYnJlYWtwb2ludC1zaXplczpcbiAgc21hbGwsXG4gIG1lZGl1bSxcbiAgbGFyZ2UsXG4gIHhsYXJnZSxcbiAgeHhsYXJnZVxuO1xuJHRleHQtYnJlYWtwb2ludC1vbmx5LXF1ZXJpZXM6XG4gIHVucXVvdGUoJHNtYWxsLW9ubHkpLFxuICB1bnF1b3RlKCRtZWRpdW0tb25seSksXG4gIHVucXVvdGUoJGxhcmdlLW9ubHkpLFxuICB1bnF1b3RlKCR4bGFyZ2Utb25seSksXG4gIHVucXVvdGUoJHh4bGFyZ2Utb25seSlcbjtcbiR0ZXh0LWJyZWFrcG9pbnQtdXAtcXVlcmllczpcbiAgdW5xdW90ZSgkc21hbGwtdXApLFxuICB1bnF1b3RlKCRtZWRpdW0tdXApLFxuICB1bnF1b3RlKCRsYXJnZS11cCksXG4gIHVucXVvdGUoJHhsYXJnZS11cCksXG4gIHVucXVvdGUoJHh4bGFyZ2UtdXApXG47XG5cbkBtaXhpbiB0ZXh0LWFsaWdubWVudC1sb29wIHtcbiAgJHRleHQtYWxpZ25tZW50czogbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeTtcbiAgXG4gIC8vIEdsb2JhbCBUZXh0IFN0eWxlc1xuICBAZWFjaCAkYWxpZ25tZW50IGluICR0ZXh0LWFsaWdubWVudHMge1xuICAgIC50ZXh0LSN7JGFsaWdubWVudH0ge1xuICAgICAgdGV4dC1hbGlnbjogI3skYWxpZ25tZW50fSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBcbiAgQGVhY2ggJGN1cnJlbnQtdGV4dC1icmVha3BvaW50IGluICR0ZXh0LWJyZWFrcG9pbnQtc2l6ZXMge1xuICAgIEBtZWRpYSAje250aCgkdGV4dC1icmVha3BvaW50LW9ubHktcXVlcmllcywgaW5kZXgoJHRleHQtYnJlYWtwb2ludC1zaXplcywgJGN1cnJlbnQtdGV4dC1icmVha3BvaW50KSl9IHtcbiAgICAgIEBlYWNoICRhbGlnbm1lbnQgaW4gJHRleHQtYWxpZ25tZW50cyB7XG4gICAgICAgIC4jeyRjdXJyZW50LXRleHQtYnJlYWtwb2ludH0tb25seS10ZXh0LSN7JGFsaWdubWVudH0ge1xuICAgICAgICAgIHRleHQtYWxpZ246ICN7JGFsaWdubWVudH0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgI3tudGgoJHRleHQtYnJlYWtwb2ludC11cC1xdWVyaWVzLCBpbmRleCgkdGV4dC1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC10ZXh0LWJyZWFrcG9pbnQpKX0ge1xuICAgICAgQGVhY2ggJGFsaWdubWVudCBpbiAkdGV4dC1hbGlnbm1lbnRzIHtcbiAgICAgICAgLiN7JGN1cnJlbnQtdGV4dC1icmVha3BvaW50fS10ZXh0LSN7JGFsaWdubWVudH0ge1xuICAgICAgICAgIHRleHQtYWxpZ246ICN7JGFsaWdubWVudH0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSB0ZXh0LWFsaWdubWVudC1sb29wO1xuXG4vL1xuLy8gVHlwb2dyYXBoeSBQbGFjZWhvbGRlcnNcbi8vXG5cbi8vIFRoZXNlIHdpbGwgdGhyb3cgYSBkZXByZWNhdGlvbiB3YXJuaW5nIGlmIHVzZWQgd2l0aGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gbGVhZCB7XG4gIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUgKyByZW0tY2FsYygzLjUpO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5AbWl4aW4gc3ViaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkc3ViaGVhZGVyLWZvbnQtY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLXRvcC1tYXJnaW47XG4gIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItYm90dG9tLW1hcmdpbjtcbn1cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0eXBlXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzIHtcblxuICAgIC8vIEdsb2JhbCBUZXh0IFN0eWxlc1xuICAgIC50ZXh0LWxlZnQgICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0LWNlbnRlciAgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cblxuICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAgIC5zbWFsbC1vbmx5LXRleHQtbGVmdCAgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICAuc21hbGwtb25seS10ZXh0LXJpZ2h0ICAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zbWFsbC1vbmx5LXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zbWFsbC1vbmx5LXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuICAgICAgICAuc21hbGwtdGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zbWFsbC10ZXh0LXJpZ2h0ICAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zbWFsbC10ZXh0LWNlbnRlciAgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgICAgICAuc21hbGwtdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgICAgIC5tZWRpdW0tb25seS10ZXh0LWxlZnQgICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm1lZGl1bS1vbmx5LXRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm1lZGl1bS1vbmx5LXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tZWRpdW0tb25seS10ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgIC5tZWRpdW0tdGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tZWRpdW0tdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgICAubWVkaXVtLXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGxhcmdlLW9ubHl9IHtcbiAgICAgICAgLmxhcmdlLW9ubHktdGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5sYXJnZS1vbmx5LXRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmxhcmdlLW9ubHktdGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmxhcmdlLW9ubHktdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIC5sYXJnZS10ZXh0LWxlZnQgICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmxhcmdlLXRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmxhcmdlLXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5sYXJnZS10ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skeGxhcmdlLW9ubHl9IHtcbiAgICAgICAgLnhsYXJnZS1vbmx5LXRleHQtbGVmdCAgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAgICAgICAueGxhcmdlLW9ubHktdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgICAueGxhcmdlLW9ubHktdGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnhsYXJnZS1vbmx5LXRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgLnhsYXJnZS10ZXh0LWxlZnQgICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnhsYXJnZS10ZXh0LXJpZ2h0ICAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC54bGFyZ2UtdGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnhsYXJnZS10ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skeHhsYXJnZS1vbmx5fSB7XG4gICAgICAgIC54eGxhcmdlLW9ubHktdGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC54eGxhcmdlLW9ubHktdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgICAueHhsYXJnZS1vbmx5LXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAgIC54eGxhcmdlLW9ubHktdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICAgICAgLnh4bGFyZ2UtdGV4dC1sZWZ0ICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC54eGxhcmdlLXRleHQtcmlnaHQgICB7IHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnh4bGFyZ2UtdGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgLyogVHlwb2dyYXBoeSByZXNldHMgKi9cbiAgICBkaXYsXG4gICAgZGwsXG4gICAgZHQsXG4gICAgZGQsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgbGksXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYsXG4gICAgcHJlLFxuICAgIGZvcm0sXG4gICAgcCxcbiAgICBibG9ja3F1b3RlLFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgcGFkZGluZzowO1xuICAgIH1cblxuICAgIC8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHsgY29sb3I6ICRhbmNob3ItZm9udC1jb2xvci1ob3ZlcjsgfVxuXG4gICAgICBpbWcgeyBib3JkZXI6bm9uZTsgfVxuICAgIH1cblxuICAgIC8qIERlZmF1bHQgcGFyYWdyYXBoIHN0eWxlcyAqL1xuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRwYXJhZ3JhcGgtZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDogJHBhcmFncmFwaC1mb250LXdlaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgICAmLmxlYWQgeyBAaW5jbHVkZSBsZWFkOyB9XG5cbiAgICAgICYgYXNpZGUge1xuICAgICAgICBmb250LXNpemU6ICRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1hc2lkZS1saW5lLWhlaWdodDtcbiAgICAgICAgZm9udC1zdHlsZTogJHBhcmFncmFwaC1hc2lkZS1mb250LXN0eWxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlZmF1bHQgaGVhZGVyIHN0eWxlcyAqL1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLWZvbnQtY29sb3I7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcbiAgICAgIG1hcmdpbi10b3A6ICRoZWFkZXItdG9wLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItYm90dG9tLW1hcmdpbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmUtaGVpZ2h0O1xuXG4gICAgICBzbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICAgICAgY29sb3I6ICRzbWFsbC1mb250LWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZSAtIHJlbS1jYWxjKDEwKTsgfVxuICAgIGgyIHsgZm9udC1zaXplOiAkaDItZm9udC1zaXplIC0gcmVtLWNhbGMoMTApOyB9XG4gICAgaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemUgLSByZW0tY2FsYyg1KTsgfVxuICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplIC0gcmVtLWNhbGMoNSk7IH1cbiAgICBoNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuICAgIGg2IHsgZm9udC1zaXplOiAkaDYtZm9udC1zaXplOyB9XG5cbiAgICAuc3ViaGVhZGVyIHsgQGluY2x1ZGUgc3ViaGVhZGVyOyB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXI6ICRoci1ib3JkZXItc3R5bGUgJGhyLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogJGhyLWJvcmRlci13aWR0aCAwIDA7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjogJGhyLW1hcmdpbiAwICgkaHItbWFyZ2luIC0gcmVtLWNhbGMoJGhyLWJvcmRlci13aWR0aCkpO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qIEhlbHBmdWwgVHlwb2dyYXBoeSBEZWZhdWx0cyAqL1xuICAgIGVtLFxuICAgIGkge1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgc3Ryb25nLFxuICAgIGIge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgICB9XG5cbiAgICAvKiBMaXN0cyAqL1xuICAgIHVsLFxuICAgIG9sLFxuICAgIGRsIHtcbiAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgICAgZm9udC1mYW1pbHk6ICRwYXJhZ3JhcGgtZm9udC1mYW1pbHk7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICAgICYubm8tYnVsbGV0IHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbi1uby1idWxsZXQ7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICB1bCxcbiAgICAgICAgICBvbCB7XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LW5lc3RlZC1tYXJnaW47XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBVbm9yZGVyZWQgTGlzdHMgKi9cbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIHVsLFxuICAgICAgICBvbCB7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1uZXN0ZWQtbWFyZ2luO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc3F1YXJlLFxuICAgICAgJi5jaXJjbGUsXG4gICAgICAmLmRpc2Mge1xuICAgICAgICBsaSB1bCB7IGxpc3Qtc3R5bGU6IGluaGVyaXQ7IH1cbiAgICAgIH1cblxuICAgICAgJi5zcXVhcmUgeyBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjt9XG4gICAgICAmLmNpcmNsZSB7IGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlOyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LXNpZGUtbWFyZ2luO31cbiAgICAgICYuZGlzYyB7IGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjt9XG4gICAgICAmLm5vLWJ1bGxldCB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICB9XG5cbiAgICAvKiBPcmRlcmVkIExpc3RzICovXG4gICAgb2wge1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1vcmRlcmVkLXNpZGUtbWFyZ2luO1xuICAgICAgbGkge1xuICAgICAgICB1bCxcbiAgICAgICAgb2wge1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogRGVmaW5pdGlvbiBMaXN0cyAqL1xuICAgIGRsIHtcbiAgICAgIGR0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZmluaXRpb24tbGlzdC1oZWFkZXItbWFyZ2luLWJvdHRvbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDtcbiAgICAgIH1cbiAgICAgIGRkIHsgbWFyZ2luLWJvdHRvbTogJGRlZmluaXRpb24tbGlzdC1tYXJnaW4tYm90dG9tOyB9XG4gICAgfVxuXG4gICAgLyogQWJicmV2aWF0aW9ucyAqL1xuICAgIGFiYnIsXG4gICAgYWNyb255bSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY3JvbnltLXVuZGVybGluZTtcbiAgICAgIGN1cnNvcjogJGN1cnNvci1oZWxwLXZhbHVlO1xuICAgIH1cbiAgICBhYmJyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qIEJsb2NrcXVvdGVzICovXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAgIGNpdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtc2l6ZTtcbiAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGJsb2NrcXVvdGUsXG4gICAgYmxvY2txdW90ZSBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgLyogTWljcm9mb3JtYXRzICovXG4gICAgLnZjYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogJG1pY3JvZm9ybWF0LW1hcmdpbjtcbiAgICAgIGJvcmRlcjogJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aCAkbWljcm9mb3JtYXQtYm9yZGVyLXN0eWxlICRtaWNyb2Zvcm1hdC1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAkbWljcm9mb3JtYXQtcGFkZGluZztcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmZuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52ZXZlbnQge1xuICAgICAgLnN1bW1hcnkgeyBmb250LXdlaWdodDogJG1pY3JvZm9ybWF0LXN1bW1hcnktZm9udC13ZWlnaHQ7IH1cblxuICAgICAgYWJiciB7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtd2VpZ2h0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBoMSxoMixoMyxoNCxoNSxoNiB7IGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmUtaGVpZ2h0OyB9XG4gICAgICBoMSB7IGZvbnQtc2l6ZTogJGgxLWZvbnQtc2l6ZTsgfVxuICAgICAgaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemU7IH1cbiAgICAgIGgzIHsgZm9udC1zaXplOiAkaDMtZm9udC1zaXplOyB9XG4gICAgICBoNCB7IGZvbnQtc2l6ZTogJGg0LWZvbnQtc2l6ZTsgfVxuICAgIH1cblxuICAgIC8vIE9ubHkgaW5jbHVkZSB0aGVzZSBzdHlsZXMgaWYgeW91IHdhbnQgdGhlbS5cbiAgICBAaWYgJGluY2x1ZGUtcHJpbnQtc3R5bGVzIHtcbiAgICAgIC8qXG4gICAgICAgKiBQcmludCBzdHlsZXMuXG4gICAgICAgKlxuICAgICAgICogSW5saW5lZCB0byBhdm9pZCByZXF1aXJlZCBIVFRQIGNvbm5lY3Rpb246IHd3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4gICAgICAgKiBDcmVkaXQgdG8gUGF1bCBJcmlzaCBhbmQgSFRNTDUgQm9pbGVycGxhdGUgKGh0bWw1Ym9pbGVycGxhdGUuY29tKVxuICAgICAgKi9cbiAgICAgIC5wcmludC1vbmx5IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICBAbWVkaWEgcHJpbnQge1xuICAgICAgICAqIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8qIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3MgKi9cbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEsXG4gICAgICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG5cbiAgICAgICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cblxuICAgICAgICAvLyBEb24ndCBzaG93IGxpbmtzIGZvciBpbWFnZXMsIG9yIGphdmFzY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAgICAgLmlyIGE6YWZ0ZXIsXG4gICAgICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgICAgICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyB9XG5cbiAgICAgICAgcHJlLFxuICAgICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvKiBoNWJwLmNvbS90ICovIH1cblxuICAgICAgICB0cixcbiAgICAgICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICAgICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgICAgICBwLFxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgICAgd2lkb3dzOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgICAgICAuaGlkZS1vbi1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICAucHJpbnQtb25seSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0IFwiZ2xvYmFsXCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcInRvcC1iYXJcIjtcblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIFZhcmlhYmxlc1xuJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJHRhYmJhci1iZzogIzMzMyAhZGVmYXVsdDtcbiR0YWJiYXItaGVpZ2h0OiByZW0tY2FsYyg0NSkgIWRlZmF1bHQ7XG4kdGFiYmFyLWxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kdGFiYmFyLW1pZGRsZS1wYWRkaW5nOiAwIHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBEaXZpZGVyIFN0eWxlc1xuJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSkgIWRlZmF1bHQ7XG4kdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyOiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XG5cblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIEhlYWRlcnNcbiR0YWJiYXItaGVhZGVyLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgVmFyaWFibGVzXG4kb2ZmLWNhbnZhcy13aWR0aDogcmVtLWNhbGMoMjUwKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJnOiAjMzMzICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgTGlzdCBWYXJpYWJsZXNcbiRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc6IDAuM3JlbSByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWJnOiAjNDQ0ICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLXRvcDogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWxhYmVsLWJnLCAkbGlnaHRuZXNzOiAxNCUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbTogbm9uZSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLW1hcmdpbjowICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1wYWRkaW5nOiByZW0tY2FsYygxMCwgMTUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1jb2xvcjogcmdiYSgjRkZGLCAwLjcpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1ib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmcsICRsaWdodG5lc3M6IC0yNSUpICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgSWNvbiBWYXJpYWJsZXNcbiR0YWJiYXItbWVudS1pY29uLWNvbG9yOiAjRkZGICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24taG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkbGlnaHRuZXNzOiAtMzAlKSAhZGVmYXVsdDtcblxuJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDM1KSAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLXdpZHRoOiAkdGFiYmFyLWhlaWdodCAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLWhlaWdodDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdGFiYmFyLW1lbnUtaWNvbi1saW5lLWhlaWdodDogcmVtLWNhbGMoMzMpICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24tcGFkZGluZzogMCAhZGVmYXVsdDtcblxuJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aDogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0OiBmYWxzZSAhZGVmYXVsdDtcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wOiBmYWxzZSAhZGVmYXVsdDtcbiR0YXBiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzOiAxcHggIWRlZmF1bHQ7XG4kdGFwYmFyLWhhbWJ1cmdlci1pY29uLWdhcDogNnB4ICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIEJhY2stTGluayBPdmVybGF5XG4kb2ZmLWNhbnZhcy1vdmVybGF5LXRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktY3Vyc29yOiBwb2ludGVyICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1ib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoIzAwMCwgMC41KSwgNHB4IDAgNHB4IHJnYmEoIzAwMCwgMC41KSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgjRkZGLCAwLjIpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCNGRkYsIDAuMDUpICFkZWZhdWx0O1xuXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xuJG1lbnUtc2xpZGU6IFwidHJhbnNmb3JtIDUwMG1zIGVhc2VcIiAhZGVmYXVsdDtcblxuXG4vLyBNSVhJTlNcbi8vIFJlbW92ZSB0cmFuc2l0aW9uIGZsaWNrZXIgb24gcGhvbmVzXG5AbWl4aW4ga2lsbC1mbGlja2VyIHtcbiAgLy8gLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHgpO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8gQmFzaWMgcHJvcGVydGllcyBmb3IgdGhlIGNvbnRlbnQgd3JhcHNcbkBtaXhpbiB3cmFwLWJhc2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBiYXNpYyBzdHlsZXMgZm9yIG9mZi1jYW52YXMgbWVudSBjb250YWluZXJcbkBtaXhpbiBvZmYtY2FudmFzLW1lbnUoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgKiB7IEBpbmNsdWRlIGtpbGwtZmxpY2tlcjsgfVxuICB3aWR0aDogJG9mZi1jYW52YXMtd2lkdGg7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnO1xuICB6LWluZGV4OiAxMDAxO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7XG4gICAgbGVmdDogMDtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gVFJBTlNMQVRFIDNEXG5AbWl4aW4gdHJhbnNsYXRlM2QoJHR4LCR0eSwkdHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwkdHksJHR6KTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwkdHksJHR6KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCR0eSwkdHopO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwkdHksJHR6KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsJHR5LCR0eilcbn1cblxuLy8gT0ZGIENBTlZBUyBXUkFQXG4vLyBXcmFwIHZpc2libGUgY29udGVudCBhbmQgcHJldmVudCBzY3JvbGwgYmFyc1xuQG1peGluIG9mZi1jYW52YXMtd3JhcCB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgQGluY2x1ZGUgd3JhcC1iYXNlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICYubW92ZS1yaWdodCxcbiAgJi5tb3ZlLWxlZnQgeyBoZWlnaHQ6IDEwMCU7IH1cbn1cblxuLy8gSU5ORVIgV1JBUFxuLy8gTWFpbiBjb250ZW50IGFyZWEgdGhhdCBtb3ZlcyB0byByZXZlYWwgdGhlIG9mZi1jYW52YXMgbmF2XG5AbWl4aW4gaW5uZXItd3JhcCB7XG4gIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcbiAgQGluY2x1ZGUgd3JhcC1iYXNlO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LSN7JG1lbnUtc2xpZGV9O1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otI3skbWVudS1zbGlkZX07XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtI3skbWVudS1zbGlkZX07XG4gIC1vLXRyYW5zaXRpb246IC1vLSN7JG1lbnUtc2xpZGV9O1xuICB0cmFuc2l0aW9uOiAjeyRtZW51LXNsaWRlfTtcbn1cblxuLy8gVEFCIEJBUlxuLy8gVGhpcyBpcyB0aGUgdGFiIGJhciBiYXNlXG5AbWl4aW4gdGFiLWJhci1iYXNlIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuXG4gIC8vIGJhc2Ugc3R5bGVzXG4gIGJhY2tncm91bmQ6ICR0YWJiYXItYmc7XG4gIGNvbG9yOiAkdGFiYmFyLWNvbG9yO1xuICBoZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG5cbiAgLy8gbWFrZSBzdXJlIGl0J3MgYmVsb3cgdGhlIC5leGl0LW9mZmNhbnZhcyBsaW5rXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gei1pbmRleDogOTk5O1xuXG4gIC8vIFR5cG9ncmFwaHlcbiAgaDEsaDIsaDMsaDQsaDUsaDYge1xuICAgIGNvbG9yOiAkdGFiYmFyLWhlYWRlci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogJHRhYmJhci1oZWFkZXItd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlYWRlci1saW5lLWhlaWdodDtcbiAgICBtYXJnaW46ICR0YWJiYXItaGVhZGVyLW1hcmdpbjtcbiAgfVxuICBoMSxoMixoMyxoNCB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxufVxuXG4vLyBTTUFMTCBTRUNUSU9OU1xuLy8gVGhlc2UgYXJlIHNtYWxsIHNlY3Rpb25zIG9uIHRoZSBsZWZ0IGFuZCByaWdodCB0aGF0IGNvbnRhaW4gdGhlIG9mZi1jYW52YXMgdG9nZ2xlIGJ1dHRvbnM7XG5AbWl4aW4gdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uKSB7XG4gIHdpZHRoOiAkdGFiYmFyLWhlaWdodDtcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XG4gICAgLy8gYm94LXNoYWRvdzogMXB4IDAgMCBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAxMyUpO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgYm9yZGVyLWxlZnQ6ICR0YWJiYXItcmlnaHQtc2VjdGlvbi1ib3JkZXI7XG4gICAgLy8gYm94LXNoYWRvdzogLTFweCAwIDAgc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSk7XG4gICAgcmlnaHQ6MDtcbiAgfVxufVxuXG5AbWl4aW4gdGFiLWJhci1zZWN0aW9uIHtcbiAgcGFkZGluZzogJHRhYmJhci1taWRkbGUtcGFkZGluZztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIHRvcDogMDtcbiAgQG1lZGlhICN7JG1lZGl1bS11cH0geyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbiAgLy8gc3RpbGwgbmVlZCB0byBtYWtlIHRoZXNlIG5vbi1wcmVzZW50YXRpb25hbFxuICAmLmxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuICB9XG4gICYucmlnaHQge1xuICAgIGxlZnQ6ICR0YWJiYXItaGVpZ2h0O1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gICYubWlkZGxlIHtcbiAgICBsZWZ0OiAkdGFiYmFyLWhlaWdodDtcbiAgICByaWdodDogJHRhYmJhci1oZWlnaHQ7XG4gIH1cbn1cblxuLy8gT0ZGIENBTlZBUyBMSVNUXG4vLyBUaGlzIGlzIHRoZSBsaXN0IG9mIGxpbmtzIGluIHRoZSBvZmYtY2FudmFzIG1lbnVcbkBtaXhpbiBvZmYtY2FudmFzLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6MDtcbiAgbWFyZ2luOjA7XG5cbiAgbGkge1xuICAgIGxhYmVsIHtcbiAgICAgIHBhZGRpbmc6ICRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJG9mZi1jYW52YXMtbGFiZWwtY29sb3I7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogJG9mZi1jYW52YXMtbGFiZWwtdGV4dC10cmFuc2Zvcm07XG4gICAgICBmb250LXdlaWdodDogJG9mZi1jYW52YXMtbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1sYWJlbC1iZztcbiAgICAgIGJvcmRlci10b3A6ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3A7XG4gICAgICBib3JkZXItYm90dG9tOiAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tO1xuICAgICAgbWFyZ2luOiAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW47XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc7XG4gICAgICBjb2xvcjogJG9mZi1jYW52YXMtbGluay1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxpbmstYm9yZGVyLWJvdHRvbTtcbiAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAtMzAlKTsgfVxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlO1xuICAgIH1cbiAgfVxuXG59XG5cbi8vIEJBQ0sgTElOS1xuLy8gVGhpcyBpcyBhbiBvdmVybGF5IHRoYXQsIHdoZW4gY2xpY2tlZCwgd2lsbCB0b2dnbGUgb2ZmIHRoZSBvZmYgY2FudmFzIG1lbnVcbkBtaXhpbiBiYWNrLWxpbmsge1xuICAgIEBpbmNsdWRlIGtpbGwtZmxpY2tlcjtcblxuICAgIHRyYW5zaXRpb246ICRvZmYtY2FudmFzLW92ZXJsYXktdHJhbnNpdGlvbjtcbiAgICBjdXJzb3I6ICRvZmYtY2FudmFzLW92ZXJsYXktY3Vyc29yO1xuICAgIGJveC1zaGFkb3c6ICRvZmYtY2FudmFzLW92ZXJsYXktYm94LXNoYWRvdztcblxuICAgIC8vIGZpbGwgdGhlIHNjcmVlblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICB6LWluZGV4OiAxMDAyO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI7XG4gICAgICB9XG4gICAgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnZW5lcmF0ZSBoYW1idXJnZXIgaWNvblxuLy9cbi8vICR3aWR0aCAtIFdpZHRoIG9mIGhhbWJ1cmdlciBpY29uIGluIHJlbSBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoLlxuLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0PSBGYWxzZVxuLy8gJHRvcCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgdmVydGljYWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW0gRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi10b3A9IEZhbHNlXG4vLyAkdGhpY2tuZXNzIC0gdGhpY2tuZXNzIG9mIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHggRGVmYXVsdDogJHRhcGJhci1oYW1idXJnZXItaWNvbi10aGlja25lc3MgPSAxcHhcbi8vICRnYXAgLSBzcGFjaW5nIGJldHdlZW4gdGhlIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHggRGVmYXVsdDogJHRhcGJhci1oYW1idXJnZXItaWNvbi1nYXAgPSA2cHhcbi8vICRjb2xvciAtIGljb24gY29sb3IgRGVmYXVsdDogJHRhYmJhci1tZW51LWljb24tY29sb3Jcbi8vICRob3Zlci1jb2xvciAtIGljb24gY29sb3Igd2hlbiBob3ZlcmVkIERlZmF1bHQ6ICR0YWJiYXItbWVudS1pY29uLWhvdmVyXG5AbWl4aW4gaGFtYnVyZ2VyKCR3aWR0aDokdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoLFxuICAgICAgICAgICAgICAgICAkbGVmdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0LFxuICAgICAgICAgICAgICAgICAkdG9wOiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcCxcbiAgICAgICAgICAgICAgICAgJHRoaWNrbmVzczokdGFwYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzcyxcbiAgICAgICAgICAgICAgICAgJGdhcDokdGFwYmFyLWhhbWJ1cmdlci1pY29uLWdhcCxcbiAgICAgICAgICAgICAgICAgJGNvbG9yOiR0YWJiYXItbWVudS1pY29uLWNvbG9yLFxuICAgICAgICAgICAgICAgICAkaG92ZXItY29sb3I6JHRhYmJhci1tZW51LWljb24taG92ZXIpIHtcbiAgc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogJHdpZHRoO1xuXG4gICAgLy8gZGlzYWJsZSBoZWlnaHQgY2VudGVyaW5nIGlmICR0b3AgaXMgbm90IGZhbHNlXG4gICAgQGlmICR0b3Age1xuICAgICAgdG9wOiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRvcDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdG9wOiAoJHRhYmJhci1tZW51LWljb24taGVpZ2h0IC0gcmVtLWNhbGMoMyAqICR0aGlja25lc3MpIC0gcmVtLWNhbGMoMiAqICRnYXApKS8yO1xuICAgIH1cbiAgICAvLyBkaXNhYmxlIHdpZHRoIGNlbnRlcmluZyBpZiAkdG9wIGlzIG5vdCBmYWxzZVxuICAgIEBpZiAkbGVmdCB7XG4gICAgICBsZWZ0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxlZnQ6ICgkdGFiYmFyLW1lbnUtaWNvbi13aWR0aCAtICR3aWR0aCkvMjtcbiAgICB9XG4gICAgQGlmICRleHBlcmltZW50YWwge1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAxcHggMHB4ICAgICAgICAgICAgICAgICAgICAgICAxcHggJHRoaWNrbmVzcyAkY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFweCAoJGdhcCArICR0aGlja25lc3MpICAgICAgIDFweCAkdGhpY2tuZXNzICRjb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMXB4ICgyKiRnYXAgKyAyKiR0aGlja25lc3MpICAgMXB4ICR0aGlja25lc3MgJGNvbG9yO1xuICAgIH1cbiAgICAgIGJveC1zaGFkb3c6ICAgICAgICAgMCAgIDBweCAgICAgICAgICAgICAgICAgICAgICAgMCAgICR0aGlja25lc3MgJGNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAwICAgJGdhcCArICR0aGlja25lc3MgICAgICAgICAwICAgJHRoaWNrbmVzcyAkY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDAgICAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgICAkdGhpY2tuZXNzICRjb2xvcjtcbiAgfVxuICAmOmhvdmVyIHNwYW4ge1xuICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMXB4IDBweCAgICAgICAgICAgICAgICAgICAgICAgMXB4ICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggKCRnYXAgKyAkdGhpY2tuZXNzKSAgICAgICAxcHggJHRoaWNrbmVzcyAkaG92ZXItY29sb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDFweCAoMiokZ2FwICsgMiokdGhpY2tuZXNzKSAgIDFweCAkdGhpY2tuZXNzICRob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgICBib3gtc2hhZG93OiAgICAgICAgIDAgICAwcHggICAgICAgICAgICAgICAgICAgICAgIDAgICAkdGhpY2tuZXNzICRob3Zlci1jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgMCAgICRnYXAgKyAkdGhpY2tuZXNzICAgICAgICAgMCAgICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAwICAgKDIgKiAkZ2FwICsgMiokdGhpY2tuZXNzKSAwICAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLy9cbi8vIERFRkFVTFQgQ0xBU1NFU1xuLy9cbkBpbmNsdWRlIGV4cG9ydHMoXCJvZmZjYW52YXNcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXMge1xuXG4gICAgLm9mZi1jYW52YXMtd3JhcCB7IEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcDsgfVxuICAgIC5pbm5lci13cmFwIHsgQGluY2x1ZGUgaW5uZXItd3JhcDsgfVxuXG4gICAgLnRhYi1iYXIgeyBAaW5jbHVkZSB0YWItYmFyLWJhc2U7IH1cblxuICAgIC5sZWZ0LXNtYWxsIHsgQGluY2x1ZGUgdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uOiBsZWZ0KTsgfVxuICAgIC5yaWdodC1zbWFsbCB7IEBpbmNsdWRlIHRhYmJhci1zbWFsbC1zZWN0aW9uKCRwb3NpdGlvbjogcmlnaHQpOyB9XG5cbiAgICAudGFiLWJhci1zZWN0aW9uIHsgQGluY2x1ZGUgdGFiLWJhci1zZWN0aW9uOyB9XG5cbiAgICAvLyBNRU5VIEJVVFRPTlxuICAgIC8vIFRoaXMgaXMgYSBsaXR0bGUgYm9udXMuIFlvdSBkb24ndCBuZWVkIGl0IGZvciBvZmYgY2FudmFzIHRvIHdvcmsuIE1peGlucyB0byBiZSB3cml0dGVuIGluIHRoZSBmdXR1cmUuXG4gICAgLnRhYi1iYXIgLm1lbnUtaWNvbiB7XG4gICAgICB0ZXh0LWluZGVudDogJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ7XG4gICAgICB3aWR0aDogJHRhYmJhci1oZWlnaHQ7XG4gICAgICBoZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogJHRhYmJhci1tZW51LWljb24tbGluZS1oZWlnaHQ7XG4gICAgICBwYWRkaW5nOiAkdGFiYmFyLW1lbnUtaWNvbi1wYWRkaW5nO1xuICAgICAgY29sb3I6ICR0b3BiYXItbWVudS1saW5rLWNvbG9yO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAvLyB0aGlzIGlzIHRoZSBhY3R1YWwgaGFtYnVyZ2VyIGljb25cbiAgICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigpO1xuICAgIH1cblxuICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb246IGxlZnQpOyB9XG4gICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbWVudSgkcG9zaXRpb246IHJpZ2h0KTsgfVxuXG4gICAgdWwub2ZmLWNhbnZhcy1saXN0IHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1saXN0OyB9XG5cblxuICAgIC8vIEFOSU1BVElPTiBDTEFTU0VTXG4gICAgLy8gVGhlc2UgY2xhc3NlcyBhcmUgYWRkZWQgd2l0aCBKUyBhbmQgdHJpZ2dlciB0aGUgYWN0dWFsIGFuaW1hdGlvbi5cbiAgICAubW92ZS1yaWdodCB7XG4gICAgICA+IC5pbm5lci13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoJG9mZi1jYW52YXMtd2lkdGgsMCwwKTtcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7fVxuICAgIH1cblxuICAgIC5tb3ZlLWxlZnQge1xuICAgICAgPiAuaW5uZXItd3JhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0oJG9mZi1jYW52YXMtd2lkdGgpLDAsMCk7XG5cbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG5cbiAgICAvLyBPcGVyYSAxMi4xNiBhbmQgSUU5IC0gZG9uJ3QgaGF2ZSAzZCB0cmFuc2Zvcm1zXG4gICAgLmNzc3RyYW5zZm9ybXMubm8tY3NzdHJhbnNmb3JtczNkIHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIHRyYW5zbGF0ZTJkKC0xMDAlLCAwKTsgfVxuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IEBpbmNsdWRlIHRyYW5zbGF0ZTJkKDEwMCUsIDApOyB9XG5cbiAgICAgIC5tb3ZlLWxlZnQgPiAuaW5uZXItd3JhcCB7IEBpbmNsdWRlIHRyYW5zbGF0ZTJkKC0oJG9mZi1jYW52YXMtd2lkdGgpLDApOyB9XG4gICAgICAubW92ZS1yaWdodCA+IC5pbm5lci13cmFwIHsgQGluY2x1ZGUgdHJhbnNsYXRlMmQoJG9mZi1jYW52YXMtd2lkdGgsMCk7IH1cbiAgICB9XG5cbiAgICAvLyBPbGRlciBicm93c2Vyc1xuICAgIC5uby1jc3N0cmFuc2Zvcm1zIHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7IGxlZnQ6IC0oJG9mZi1jYW52YXMtd2lkdGgpOyB9XG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHsgcmlnaHQ6IC0oJG9mZi1jYW52YXMtd2lkdGgpOyB9XG5cbiAgICAgIC5tb3ZlLWxlZnQgPiAuaW5uZXItd3JhcCB7IHJpZ2h0OiAkb2ZmLWNhbnZhcy13aWR0aDsgfVxuICAgICAgLm1vdmUtcmlnaHQgPiAuaW5uZXItd3JhcCB7IGxlZnQ6ICRvZmYtY2FudmFzLXdpZHRoOyB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCJnbG9iYWxcIjtcblxuLy9cbi8vIEZvdW5kYXRpb24gVmlzaWJpbGl0eSBDbGFzc2VzXG4vL1xuJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcbiRpbmNsdWRlLXRhYmxlLXZpc2liaWxpdHktY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcbiRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vXG4vLyBNZWRpYSBDbGFzcyBOYW1lc1xuLy9cbi8vIFZpc2liaWxpdHkgQnJlYWtwb2ludHNcbiR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXM6XG4gIHNtYWxsLFxuICBtZWRpdW0sXG4gIGxhcmdlLFxuICB4bGFyZ2UsXG4gIHh4bGFyZ2U7XG5cbiR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtcXVlcmllczpcbiAgdW5xdW90ZSgkc21hbGwtdXApLFxuICB1bnF1b3RlKCRtZWRpdW0tdXApLFxuICB1bnF1b3RlKCRsYXJnZS11cCksXG4gIHVucXVvdGUoJHhsYXJnZS11cCksXG4gIHVucXVvdGUoJHh4bGFyZ2UtdXApO1xuXG5AbWl4aW4gdmlzaWJpbGl0eS1sb29wIHtcbiAgQGVhY2ggJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xuICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiAoKTtcblxuICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6ICgpO1xuICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6ICgpO1xuICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogKCk7XG5cbiAgICBAZWFjaCAkdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnQgaW4gJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcyB7XG4gICAgICBAaWYgaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSA8IGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkge1xuICAgICAgICAvLyBzbWFsbGVyIHRoYW4gY3VycmVudCBicmVha3BvaW50XG5cbiAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGFibGUuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aGVhZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRib2R5LmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdHIuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24sIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgfVxuXG4gICAgICB9IEBlbHNlIGlmIGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgPiBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgLy8gbGFyZ2VyIHRoYW4gY3VycmVudCBicmVha3BvaW50XG5cbiAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24sIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgfVxuXG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gY3VycmVudCBicmVha3BvaW50XG5cbiAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgQGlmICRpbmNsdWRlLWxlZ2FjeS12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAgICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGFibGUuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0aGVhZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRib2R5LnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdHIuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWNlbGwtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24sIHRkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qICN7JGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50fSBkaXNwbGF5cyAqL1xuICAgIEBtZWRpYSAje250aCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXF1ZXJpZXMsIGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludCkpfSB7XG4gICAgICAjeyR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdH0ge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAjeyR2aXNpYmlsaXR5LW5vbmUtbGlzdH0ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICBAaWYgJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzICE9IGZhbHNlIHtcbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIH1cbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5AaWYgJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xuXG4gIEBpbmNsdWRlIHZpc2liaWxpdHktbG9vcDtcblxuICAvKiBPcmllbnRhdGlvbiB0YXJnZXRpbmcgKi9cbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICB0YWJsZSB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlOyB9XG4gIH1cbiAgdGhlYWQge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB9XG4gIHRib2R5IHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0ciB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIH1cbiAgdGQsXG4gIHRoIHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIH1cblxuICBAbWVkaWEgI3skbGFuZHNjYXBlfSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gICAgdGFibGUge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGU7IH1cbiAgICB9XG4gICAgdGhlYWQge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdHIge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgJi5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgICAmLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICN7JHBvcnRyYWl0fSB7XG4gICAgLnNob3ctZm9yLXBvcnRyYWl0LFxuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQsXG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gICAgdGFibGUge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGU7IH1cbiAgICB9XG4gICAgdGhlYWQge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdHIge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgLyogVG91Y2gtZW5hYmxlZCBkZXZpY2UgdGFyZ2V0aW5nICovXG4gIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAudG91Y2ggLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gIHRhYmxlLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGU7IH1cbiAgLnRvdWNoIHRhYmxlLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGU7IH1cbiAgdGhlYWQuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGhlYWQuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0Ym9keS5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRyLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRkLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0aC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG59IiwiLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmEtZm9udC1wYXRoOiAgICAgICAgXCIuL2V4dGVybmFsL2ZvbnQtYXdlc29tZS9mb250c1wiICFkZWZhdWx0O1xuLy8kZmEtZm9udC1wYXRoOiAgICAgICAgXCIvL25ldGRuYS5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjAuMy9mb250c1wiICFkZWZhdWx0OyAvLyBmb3IgcmVmZXJlbmNpbmcgQm9vdHN0cmFwIENETiBmb250IGZpbGVzIGRpcmVjdGx5XG4kZmEtY3NzLXByZWZpeDogICAgICAgZmEgIWRlZmF1bHQ7XG4kZmEtdmVyc2lvbjogICAgICAgICAgXCI0LjAuM1wiICFkZWZhdWx0O1xuJGZhLWJvcmRlci1jb2xvcjogICAgICNlZWUgIWRlZmF1bHQ7XG4kZmEtaW52ZXJzZTogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRmYS1saS13aWR0aDogICAgICAgICgzMGVtIC8gMTQpICFkZWZhdWx0O1xuXG4kZmEtdmFyLWdsYXNzOiBcIlxcZjAwMFwiO1xuJGZhLXZhci1tdXNpYzogXCJcXGYwMDFcIjtcbiRmYS12YXItc2VhcmNoOiBcIlxcZjAwMlwiO1xuJGZhLXZhci1lbnZlbG9wZS1vOiBcIlxcZjAwM1wiO1xuJGZhLXZhci1oZWFydDogXCJcXGYwMDRcIjtcbiRmYS12YXItc3RhcjogXCJcXGYwMDVcIjtcbiRmYS12YXItc3Rhci1vOiBcIlxcZjAwNlwiO1xuJGZhLXZhci11c2VyOiBcIlxcZjAwN1wiO1xuJGZhLXZhci1maWxtOiBcIlxcZjAwOFwiO1xuJGZhLXZhci10aC1sYXJnZTogXCJcXGYwMDlcIjtcbiRmYS12YXItdGg6IFwiXFxmMDBhXCI7XG4kZmEtdmFyLXRoLWxpc3Q6IFwiXFxmMDBiXCI7XG4kZmEtdmFyLWNoZWNrOiBcIlxcZjAwY1wiO1xuJGZhLXZhci10aW1lczogXCJcXGYwMGRcIjtcbiRmYS12YXItc2VhcmNoLXBsdXM6IFwiXFxmMDBlXCI7XG4kZmEtdmFyLXNlYXJjaC1taW51czogXCJcXGYwMTBcIjtcbiRmYS12YXItcG93ZXItb2ZmOiBcIlxcZjAxMVwiO1xuJGZhLXZhci1zaWduYWw6IFwiXFxmMDEyXCI7XG4kZmEtdmFyLWNvZzogXCJcXGYwMTNcIjtcbiRmYS12YXItdHJhc2gtbzogXCJcXGYwMTRcIjtcbiRmYS12YXItaG9tZTogXCJcXGYwMTVcIjtcbiRmYS12YXItZmlsZS1vOiBcIlxcZjAxNlwiO1xuJGZhLXZhci1jbG9jay1vOiBcIlxcZjAxN1wiO1xuJGZhLXZhci1yb2FkOiBcIlxcZjAxOFwiO1xuJGZhLXZhci1kb3dubG9hZDogXCJcXGYwMTlcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tZG93bjogXCJcXGYwMWFcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tdXA6IFwiXFxmMDFiXCI7XG4kZmEtdmFyLWluYm94OiBcIlxcZjAxY1wiO1xuJGZhLXZhci1wbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiO1xuJGZhLXZhci1yZXBlYXQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJlZnJlc2g6IFwiXFxmMDIxXCI7XG4kZmEtdmFyLWxpc3QtYWx0OiBcIlxcZjAyMlwiO1xuJGZhLXZhci1sb2NrOiBcIlxcZjAyM1wiO1xuJGZhLXZhci1mbGFnOiBcIlxcZjAyNFwiO1xuJGZhLXZhci1oZWFkcGhvbmVzOiBcIlxcZjAyNVwiO1xuJGZhLXZhci12b2x1bWUtb2ZmOiBcIlxcZjAyNlwiO1xuJGZhLXZhci12b2x1bWUtZG93bjogXCJcXGYwMjdcIjtcbiRmYS12YXItdm9sdW1lLXVwOiBcIlxcZjAyOFwiO1xuJGZhLXZhci1xcmNvZGU6IFwiXFxmMDI5XCI7XG4kZmEtdmFyLWJhcmNvZGU6IFwiXFxmMDJhXCI7XG4kZmEtdmFyLXRhZzogXCJcXGYwMmJcIjtcbiRmYS12YXItdGFnczogXCJcXGYwMmNcIjtcbiRmYS12YXItYm9vazogXCJcXGYwMmRcIjtcbiRmYS12YXItYm9va21hcms6IFwiXFxmMDJlXCI7XG4kZmEtdmFyLXByaW50OiBcIlxcZjAyZlwiO1xuJGZhLXZhci1jYW1lcmE6IFwiXFxmMDMwXCI7XG4kZmEtdmFyLWZvbnQ6IFwiXFxmMDMxXCI7XG4kZmEtdmFyLWJvbGQ6IFwiXFxmMDMyXCI7XG4kZmEtdmFyLWl0YWxpYzogXCJcXGYwMzNcIjtcbiRmYS12YXItdGV4dC1oZWlnaHQ6IFwiXFxmMDM0XCI7XG4kZmEtdmFyLXRleHQtd2lkdGg6IFwiXFxmMDM1XCI7XG4kZmEtdmFyLWFsaWduLWxlZnQ6IFwiXFxmMDM2XCI7XG4kZmEtdmFyLWFsaWduLWNlbnRlcjogXCJcXGYwMzdcIjtcbiRmYS12YXItYWxpZ24tcmlnaHQ6IFwiXFxmMDM4XCI7XG4kZmEtdmFyLWFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCI7XG4kZmEtdmFyLWxpc3Q6IFwiXFxmMDNhXCI7XG4kZmEtdmFyLW91dGRlbnQ6IFwiXFxmMDNiXCI7XG4kZmEtdmFyLWluZGVudDogXCJcXGYwM2NcIjtcbiRmYS12YXItdmlkZW8tY2FtZXJhOiBcIlxcZjAzZFwiO1xuJGZhLXZhci1waWN0dXJlLW86IFwiXFxmMDNlXCI7XG4kZmEtdmFyLXBlbmNpbDogXCJcXGYwNDBcIjtcbiRmYS12YXItbWFwLW1hcmtlcjogXCJcXGYwNDFcIjtcbiRmYS12YXItYWRqdXN0OiBcIlxcZjA0MlwiO1xuJGZhLXZhci10aW50OiBcIlxcZjA0M1wiO1xuJGZhLXZhci1wZW5jaWwtc3F1YXJlLW86IFwiXFxmMDQ0XCI7XG4kZmEtdmFyLXNoYXJlLXNxdWFyZS1vOiBcIlxcZjA0NVwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmUtbzogXCJcXGYwNDZcIjtcbiRmYS12YXItYXJyb3dzOiBcIlxcZjA0N1wiO1xuJGZhLXZhci1zdGVwLWJhY2t3YXJkOiBcIlxcZjA0OFwiO1xuJGZhLXZhci1mYXN0LWJhY2t3YXJkOiBcIlxcZjA0OVwiO1xuJGZhLXZhci1iYWNrd2FyZDogXCJcXGYwNGFcIjtcbiRmYS12YXItcGxheTogXCJcXGYwNGJcIjtcbiRmYS12YXItcGF1c2U6IFwiXFxmMDRjXCI7XG4kZmEtdmFyLXN0b3A6IFwiXFxmMDRkXCI7XG4kZmEtdmFyLWZvcndhcmQ6IFwiXFxmMDRlXCI7XG4kZmEtdmFyLWZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIjtcbiRmYS12YXItc3RlcC1mb3J3YXJkOiBcIlxcZjA1MVwiO1xuJGZhLXZhci1lamVjdDogXCJcXGYwNTJcIjtcbiRmYS12YXItY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiO1xuJGZhLXZhci1jaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiO1xuJGZhLXZhci1wbHVzLWNpcmNsZTogXCJcXGYwNTVcIjtcbiRmYS12YXItbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiO1xuJGZhLXZhci10aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZTogXCJcXGYwNThcIjtcbiRmYS12YXItcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGZhLXZhci1pbmZvLWNpcmNsZTogXCJcXGYwNWFcIjtcbiRmYS12YXItY3Jvc3NoYWlyczogXCJcXGYwNWJcIjtcbiRmYS12YXItdGltZXMtY2lyY2xlLW86IFwiXFxmMDVjXCI7XG4kZmEtdmFyLWNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiO1xuJGZhLXZhci1iYW46IFwiXFxmMDVlXCI7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFwiXFxmMDYwXCI7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcIlxcZjA2MVwiO1xuJGZhLXZhci1hcnJvdy11cDogXCJcXGYwNjJcIjtcbiRmYS12YXItYXJyb3ctZG93bjogXCJcXGYwNjNcIjtcbiRmYS12YXItc2hhcmU6IFwiXFxmMDY0XCI7XG4kZmEtdmFyLWV4cGFuZDogXCJcXGYwNjVcIjtcbiRmYS12YXItY29tcHJlc3M6IFwiXFxmMDY2XCI7XG4kZmEtdmFyLXBsdXM6IFwiXFxmMDY3XCI7XG4kZmEtdmFyLW1pbnVzOiBcIlxcZjA2OFwiO1xuJGZhLXZhci1hc3RlcmlzazogXCJcXGYwNjlcIjtcbiRmYS12YXItZXhjbGFtYXRpb24tY2lyY2xlOiBcIlxcZjA2YVwiO1xuJGZhLXZhci1naWZ0OiBcIlxcZjA2YlwiO1xuJGZhLXZhci1sZWFmOiBcIlxcZjA2Y1wiO1xuJGZhLXZhci1maXJlOiBcIlxcZjA2ZFwiO1xuJGZhLXZhci1leWU6IFwiXFxmMDZlXCI7XG4kZmEtdmFyLWV5ZS1zbGFzaDogXCJcXGYwNzBcIjtcbiRmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU6IFwiXFxmMDcxXCI7XG4kZmEtdmFyLXBsYW5lOiBcIlxcZjA3MlwiO1xuJGZhLXZhci1jYWxlbmRhcjogXCJcXGYwNzNcIjtcbiRmYS12YXItcmFuZG9tOiBcIlxcZjA3NFwiO1xuJGZhLXZhci1jb21tZW50OiBcIlxcZjA3NVwiO1xuJGZhLXZhci1tYWduZXQ6IFwiXFxmMDc2XCI7XG4kZmEtdmFyLWNoZXZyb24tdXA6IFwiXFxmMDc3XCI7XG4kZmEtdmFyLWNoZXZyb24tZG93bjogXCJcXGYwNzhcIjtcbiRmYS12YXItcmV0d2VldDogXCJcXGYwNzlcIjtcbiRmYS12YXItc2hvcHBpbmctY2FydDogXCJcXGYwN2FcIjtcbiRmYS12YXItZm9sZGVyOiBcIlxcZjA3YlwiO1xuJGZhLXZhci1mb2xkZXItb3BlbjogXCJcXGYwN2NcIjtcbiRmYS12YXItYXJyb3dzLXY6IFwiXFxmMDdkXCI7XG4kZmEtdmFyLWFycm93cy1oOiBcIlxcZjA3ZVwiO1xuJGZhLXZhci1iYXItY2hhcnQtbzogXCJcXGYwODBcIjtcbiRmYS12YXItdHdpdHRlci1zcXVhcmU6IFwiXFxmMDgxXCI7XG4kZmEtdmFyLWZhY2Vib29rLXNxdWFyZTogXCJcXGYwODJcIjtcbiRmYS12YXItY2FtZXJhLXJldHJvOiBcIlxcZjA4M1wiO1xuJGZhLXZhci1rZXk6IFwiXFxmMDg0XCI7XG4kZmEtdmFyLWNvZ3M6IFwiXFxmMDg1XCI7XG4kZmEtdmFyLWNvbW1lbnRzOiBcIlxcZjA4NlwiO1xuJGZhLXZhci10aHVtYnMtby11cDogXCJcXGYwODdcIjtcbiRmYS12YXItdGh1bWJzLW8tZG93bjogXCJcXGYwODhcIjtcbiRmYS12YXItc3Rhci1oYWxmOiBcIlxcZjA4OVwiO1xuJGZhLXZhci1oZWFydC1vOiBcIlxcZjA4YVwiO1xuJGZhLXZhci1zaWduLW91dDogXCJcXGYwOGJcIjtcbiRmYS12YXItbGlua2VkaW4tc3F1YXJlOiBcIlxcZjA4Y1wiO1xuJGZhLXZhci10aHVtYi10YWNrOiBcIlxcZjA4ZFwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rOiBcIlxcZjA4ZVwiO1xuJGZhLXZhci1zaWduLWluOiBcIlxcZjA5MFwiO1xuJGZhLXZhci10cm9waHk6IFwiXFxmMDkxXCI7XG4kZmEtdmFyLWdpdGh1Yi1zcXVhcmU6IFwiXFxmMDkyXCI7XG4kZmEtdmFyLXVwbG9hZDogXCJcXGYwOTNcIjtcbiRmYS12YXItbGVtb24tbzogXCJcXGYwOTRcIjtcbiRmYS12YXItcGhvbmU6IFwiXFxmMDk1XCI7XG4kZmEtdmFyLXNxdWFyZS1vOiBcIlxcZjA5NlwiO1xuJGZhLXZhci1ib29rbWFyay1vOiBcIlxcZjA5N1wiO1xuJGZhLXZhci1waG9uZS1zcXVhcmU6IFwiXFxmMDk4XCI7XG4kZmEtdmFyLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XG4kZmEtdmFyLWZhY2Vib29rOiBcIlxcZjA5YVwiO1xuJGZhLXZhci1naXRodWI6IFwiXFxmMDliXCI7XG4kZmEtdmFyLXVubG9jazogXCJcXGYwOWNcIjtcbiRmYS12YXItY3JlZGl0LWNhcmQ6IFwiXFxmMDlkXCI7XG4kZmEtdmFyLXJzczogXCJcXGYwOWVcIjtcbiRmYS12YXItaGRkLW86IFwiXFxmMGEwXCI7XG4kZmEtdmFyLWJ1bGxob3JuOiBcIlxcZjBhMVwiO1xuJGZhLXZhci1iZWxsOiBcIlxcZjBmM1wiO1xuJGZhLXZhci1jZXJ0aWZpY2F0ZTogXCJcXGYwYTNcIjtcbiRmYS12YXItaGFuZC1vLXJpZ2h0OiBcIlxcZjBhNFwiO1xuJGZhLXZhci1oYW5kLW8tbGVmdDogXCJcXGYwYTVcIjtcbiRmYS12YXItaGFuZC1vLXVwOiBcIlxcZjBhNlwiO1xuJGZhLXZhci1oYW5kLW8tZG93bjogXCJcXGYwYTdcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1yaWdodDogXCJcXGYwYTlcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXVwOiBcIlxcZjBhYVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjogXCJcXGYwYWJcIjtcbiRmYS12YXItZ2xvYmU6IFwiXFxmMGFjXCI7XG4kZmEtdmFyLXdyZW5jaDogXCJcXGYwYWRcIjtcbiRmYS12YXItdGFza3M6IFwiXFxmMGFlXCI7XG4kZmEtdmFyLWZpbHRlcjogXCJcXGYwYjBcIjtcbiRmYS12YXItYnJpZWZjYXNlOiBcIlxcZjBiMVwiO1xuJGZhLXZhci1hcnJvd3MtYWx0OiBcIlxcZjBiMlwiO1xuJGZhLXZhci11c2VyczogXCJcXGYwYzBcIjtcbiRmYS12YXItbGluazogXCJcXGYwYzFcIjtcbiRmYS12YXItY2xvdWQ6IFwiXFxmMGMyXCI7XG4kZmEtdmFyLWZsYXNrOiBcIlxcZjBjM1wiO1xuJGZhLXZhci1zY2lzc29yczogXCJcXGYwYzRcIjtcbiRmYS12YXItZmlsZXMtbzogXCJcXGYwYzVcIjtcbiRmYS12YXItcGFwZXJjbGlwOiBcIlxcZjBjNlwiO1xuJGZhLXZhci1mbG9wcHktbzogXCJcXGYwYzdcIjtcbiRmYS12YXItc3F1YXJlOiBcIlxcZjBjOFwiO1xuJGZhLXZhci1iYXJzOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1saXN0LXVsOiBcIlxcZjBjYVwiO1xuJGZhLXZhci1saXN0LW9sOiBcIlxcZjBjYlwiO1xuJGZhLXZhci1zdHJpa2V0aHJvdWdoOiBcIlxcZjBjY1wiO1xuJGZhLXZhci11bmRlcmxpbmU6IFwiXFxmMGNkXCI7XG4kZmEtdmFyLXRhYmxlOiBcIlxcZjBjZVwiO1xuJGZhLXZhci1tYWdpYzogXCJcXGYwZDBcIjtcbiRmYS12YXItdHJ1Y2s6IFwiXFxmMGQxXCI7XG4kZmEtdmFyLXBpbnRlcmVzdDogXCJcXGYwZDJcIjtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXCJcXGYwZDNcIjtcbiRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOiBcIlxcZjBkNFwiO1xuJGZhLXZhci1nb29nbGUtcGx1czogXCJcXGYwZDVcIjtcbiRmYS12YXItbW9uZXk6IFwiXFxmMGQ2XCI7XG4kZmEtdmFyLWNhcmV0LWRvd246IFwiXFxmMGQ3XCI7XG4kZmEtdmFyLWNhcmV0LXVwOiBcIlxcZjBkOFwiO1xuJGZhLXZhci1jYXJldC1sZWZ0OiBcIlxcZjBkOVwiO1xuJGZhLXZhci1jYXJldC1yaWdodDogXCJcXGYwZGFcIjtcbiRmYS12YXItY29sdW1uczogXCJcXGYwZGJcIjtcbiRmYS12YXItc29ydDogXCJcXGYwZGNcIjtcbiRmYS12YXItc29ydC1hc2M6IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtZGVzYzogXCJcXGYwZGVcIjtcbiRmYS12YXItZW52ZWxvcGU6IFwiXFxmMGUwXCI7XG4kZmEtdmFyLWxpbmtlZGluOiBcIlxcZjBlMVwiO1xuJGZhLXZhci11bmRvOiBcIlxcZjBlMlwiO1xuJGZhLXZhci1nYXZlbDogXCJcXGYwZTNcIjtcbiRmYS12YXItdGFjaG9tZXRlcjogXCJcXGYwZTRcIjtcbiRmYS12YXItY29tbWVudC1vOiBcIlxcZjBlNVwiO1xuJGZhLXZhci1jb21tZW50cy1vOiBcIlxcZjBlNlwiO1xuJGZhLXZhci1ib2x0OiBcIlxcZjBlN1wiO1xuJGZhLXZhci1zaXRlbWFwOiBcIlxcZjBlOFwiO1xuJGZhLXZhci11bWJyZWxsYTogXCJcXGYwZTlcIjtcbiRmYS12YXItY2xpcGJvYXJkOiBcIlxcZjBlYVwiO1xuJGZhLXZhci1saWdodGJ1bGItbzogXCJcXGYwZWJcIjtcbiRmYS12YXItZXhjaGFuZ2U6IFwiXFxmMGVjXCI7XG4kZmEtdmFyLWNsb3VkLWRvd25sb2FkOiBcIlxcZjBlZFwiO1xuJGZhLXZhci1jbG91ZC11cGxvYWQ6IFwiXFxmMGVlXCI7XG4kZmEtdmFyLXVzZXItbWQ6IFwiXFxmMGYwXCI7XG4kZmEtdmFyLXN0ZXRob3Njb3BlOiBcIlxcZjBmMVwiO1xuJGZhLXZhci1zdWl0Y2FzZTogXCJcXGYwZjJcIjtcbiRmYS12YXItYmVsbC1vOiBcIlxcZjBhMlwiO1xuJGZhLXZhci1jb2ZmZWU6IFwiXFxmMGY0XCI7XG4kZmEtdmFyLWN1dGxlcnk6IFwiXFxmMGY1XCI7XG4kZmEtdmFyLWZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiO1xuJGZhLXZhci1idWlsZGluZy1vOiBcIlxcZjBmN1wiO1xuJGZhLXZhci1ob3NwaXRhbC1vOiBcIlxcZjBmOFwiO1xuJGZhLXZhci1hbWJ1bGFuY2U6IFwiXFxmMGY5XCI7XG4kZmEtdmFyLW1lZGtpdDogXCJcXGYwZmFcIjtcbiRmYS12YXItZmlnaHRlci1qZXQ6IFwiXFxmMGZiXCI7XG4kZmEtdmFyLWJlZXI6IFwiXFxmMGZjXCI7XG4kZmEtdmFyLWgtc3F1YXJlOiBcIlxcZjBmZFwiO1xuJGZhLXZhci1wbHVzLXNxdWFyZTogXCJcXGYwZmVcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXCJcXGYxMDFcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIjtcbiRmYS12YXItYW5nbGUtbGVmdDogXCJcXGYxMDRcIjtcbiRmYS12YXItYW5nbGUtcmlnaHQ6IFwiXFxmMTA1XCI7XG4kZmEtdmFyLWFuZ2xlLXVwOiBcIlxcZjEwNlwiO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xuJGZhLXZhci1kZXNrdG9wOiBcIlxcZjEwOFwiO1xuJGZhLXZhci1sYXB0b3A6IFwiXFxmMTA5XCI7XG4kZmEtdmFyLXRhYmxldDogXCJcXGYxMGFcIjtcbiRmYS12YXItbW9iaWxlOiBcIlxcZjEwYlwiO1xuJGZhLXZhci1jaXJjbGUtbzogXCJcXGYxMGNcIjtcbiRmYS12YXItcXVvdGUtbGVmdDogXCJcXGYxMGRcIjtcbiRmYS12YXItcXVvdGUtcmlnaHQ6IFwiXFxmMTBlXCI7XG4kZmEtdmFyLXNwaW5uZXI6IFwiXFxmMTEwXCI7XG4kZmEtdmFyLWNpcmNsZTogXCJcXGYxMTFcIjtcbiRmYS12YXItcmVwbHk6IFwiXFxmMTEyXCI7XG4kZmEtdmFyLWdpdGh1Yi1hbHQ6IFwiXFxmMTEzXCI7XG4kZmEtdmFyLWZvbGRlci1vOiBcIlxcZjExNFwiO1xuJGZhLXZhci1mb2xkZXItb3Blbi1vOiBcIlxcZjExNVwiO1xuJGZhLXZhci1zbWlsZS1vOiBcIlxcZjExOFwiO1xuJGZhLXZhci1mcm93bi1vOiBcIlxcZjExOVwiO1xuJGZhLXZhci1tZWgtbzogXCJcXGYxMWFcIjtcbiRmYS12YXItZ2FtZXBhZDogXCJcXGYxMWJcIjtcbiRmYS12YXIta2V5Ym9hcmQtbzogXCJcXGYxMWNcIjtcbiRmYS12YXItZmxhZy1vOiBcIlxcZjExZFwiO1xuJGZhLXZhci1mbGFnLWNoZWNrZXJlZDogXCJcXGYxMWVcIjtcbiRmYS12YXItdGVybWluYWw6IFwiXFxmMTIwXCI7XG4kZmEtdmFyLWNvZGU6IFwiXFxmMTIxXCI7XG4kZmEtdmFyLXJlcGx5LWFsbDogXCJcXGYxMjJcIjtcbiRmYS12YXItbWFpbC1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLXN0YXItaGFsZi1vOiBcIlxcZjEyM1wiO1xuJGZhLXZhci1sb2NhdGlvbi1hcnJvdzogXCJcXGYxMjRcIjtcbiRmYS12YXItY3JvcDogXCJcXGYxMjVcIjtcbiRmYS12YXItY29kZS1mb3JrOiBcIlxcZjEyNlwiO1xuJGZhLXZhci1jaGFpbi1icm9rZW46IFwiXFxmMTI3XCI7XG4kZmEtdmFyLXF1ZXN0aW9uOiBcIlxcZjEyOFwiO1xuJGZhLXZhci1pbmZvOiBcIlxcZjEyOVwiO1xuJGZhLXZhci1leGNsYW1hdGlvbjogXCJcXGYxMmFcIjtcbiRmYS12YXItc3VwZXJzY3JpcHQ6IFwiXFxmMTJiXCI7XG4kZmEtdmFyLXN1YnNjcmlwdDogXCJcXGYxMmNcIjtcbiRmYS12YXItZXJhc2VyOiBcIlxcZjEyZFwiO1xuJGZhLXZhci1wdXp6bGUtcGllY2U6IFwiXFxmMTJlXCI7XG4kZmEtdmFyLW1pY3JvcGhvbmU6IFwiXFxmMTMwXCI7XG4kZmEtdmFyLW1pY3JvcGhvbmUtc2xhc2g6IFwiXFxmMTMxXCI7XG4kZmEtdmFyLXNoaWVsZDogXCJcXGYxMzJcIjtcbiRmYS12YXItY2FsZW5kYXItbzogXCJcXGYxMzNcIjtcbiRmYS12YXItZmlyZS1leHRpbmd1aXNoZXI6IFwiXFxmMTM0XCI7XG4kZmEtdmFyLXJvY2tldDogXCJcXGYxMzVcIjtcbiRmYS12YXItbWF4Y2RuOiBcIlxcZjEzNlwiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OiBcIlxcZjEzN1wiO1xuJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCI7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLWRvd246IFwiXFxmMTNhXCI7XG4kZmEtdmFyLWh0bWw1OiBcIlxcZjEzYlwiO1xuJGZhLXZhci1jc3MzOiBcIlxcZjEzY1wiO1xuJGZhLXZhci1hbmNob3I6IFwiXFxmMTNkXCI7XG4kZmEtdmFyLXVubG9jay1hbHQ6IFwiXFxmMTNlXCI7XG4kZmEtdmFyLWJ1bGxzZXllOiBcIlxcZjE0MFwiO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcIlxcZjE0MVwiO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcIlxcZjE0MlwiO1xuJGZhLXZhci1yc3Mtc3F1YXJlOiBcIlxcZjE0M1wiO1xuJGZhLXZhci1wbGF5LWNpcmNsZTogXCJcXGYxNDRcIjtcbiRmYS12YXItdGlja2V0OiBcIlxcZjE0NVwiO1xuJGZhLXZhci1taW51cy1zcXVhcmU6IFwiXFxmMTQ2XCI7XG4kZmEtdmFyLW1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiO1xuJGZhLXZhci1sZXZlbC11cDogXCJcXGYxNDhcIjtcbiRmYS12YXItbGV2ZWwtZG93bjogXCJcXGYxNDlcIjtcbiRmYS12YXItY2hlY2stc3F1YXJlOiBcIlxcZjE0YVwiO1xuJGZhLXZhci1wZW5jaWwtc3F1YXJlOiBcIlxcZjE0YlwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTogXCJcXGYxNGNcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlOiBcIlxcZjE0ZFwiO1xuJGZhLXZhci1jb21wYXNzOiBcIlxcZjE0ZVwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiO1xuJGZhLXZhci1jYXJldC1zcXVhcmUtby11cDogXCJcXGYxNTFcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tcmlnaHQ6IFwiXFxmMTUyXCI7XG4kZmEtdmFyLWV1cjogXCJcXGYxNTNcIjtcbiRmYS12YXItZ2JwOiBcIlxcZjE1NFwiO1xuJGZhLXZhci11c2Q6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLWlucjogXCJcXGYxNTZcIjtcbiRmYS12YXItanB5OiBcIlxcZjE1N1wiO1xuJGZhLXZhci1ydWI6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLWtydzogXCJcXGYxNTlcIjtcbiRmYS12YXItYnRjOiBcIlxcZjE1YVwiO1xuJGZhLXZhci1maWxlOiBcIlxcZjE1YlwiO1xuJGZhLXZhci1maWxlLXRleHQ6IFwiXFxmMTVjXCI7XG4kZmEtdmFyLXNvcnQtYWxwaGEtYXNjOiBcIlxcZjE1ZFwiO1xuJGZhLXZhci1zb3J0LWFscGhhLWRlc2M6IFwiXFxmMTVlXCI7XG4kZmEtdmFyLXNvcnQtYW1vdW50LWFzYzogXCJcXGYxNjBcIjtcbiRmYS12YXItc29ydC1hbW91bnQtZGVzYzogXCJcXGYxNjFcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWFzYzogXCJcXGYxNjJcIjtcbiRmYS12YXItc29ydC1udW1lcmljLWRlc2M6IFwiXFxmMTYzXCI7XG4kZmEtdmFyLXRodW1icy11cDogXCJcXGYxNjRcIjtcbiRmYS12YXItdGh1bWJzLWRvd246IFwiXFxmMTY1XCI7XG4kZmEtdmFyLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuJGZhLXZhci15b3V0dWJlOiBcIlxcZjE2N1wiO1xuJGZhLXZhci14aW5nOiBcIlxcZjE2OFwiO1xuJGZhLXZhci14aW5nLXNxdWFyZTogXCJcXGYxNjlcIjtcbiRmYS12YXIteW91dHViZS1wbGF5OiBcIlxcZjE2YVwiO1xuJGZhLXZhci1kcm9wYm94OiBcIlxcZjE2YlwiO1xuJGZhLXZhci1zdGFjay1vdmVyZmxvdzogXCJcXGYxNmNcIjtcbiRmYS12YXItaW5zdGFncmFtOiBcIlxcZjE2ZFwiO1xuJGZhLXZhci1mbGlja3I6IFwiXFxmMTZlXCI7XG4kZmEtdmFyLWFkbjogXCJcXGYxNzBcIjtcbiRmYS12YXItYml0YnVja2V0OiBcIlxcZjE3MVwiO1xuJGZhLXZhci1iaXRidWNrZXQtc3F1YXJlOiBcIlxcZjE3MlwiO1xuJGZhLXZhci10dW1ibHI6IFwiXFxmMTczXCI7XG4kZmEtdmFyLXR1bWJsci1zcXVhcmU6IFwiXFxmMTc0XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctZG93bjogXCJcXGYxNzVcIjtcbiRmYS12YXItbG9uZy1hcnJvdy11cDogXCJcXGYxNzZcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1sZWZ0OiBcIlxcZjE3N1wiO1xuJGZhLXZhci1sb25nLWFycm93LXJpZ2h0OiBcIlxcZjE3OFwiO1xuJGZhLXZhci1hcHBsZTogXCJcXGYxNzlcIjtcbiRmYS12YXItd2luZG93czogXCJcXGYxN2FcIjtcbiRmYS12YXItYW5kcm9pZDogXCJcXGYxN2JcIjtcbiRmYS12YXItbGludXg6IFwiXFxmMTdjXCI7XG4kZmEtdmFyLWRyaWJiYmxlOiBcIlxcZjE3ZFwiO1xuJGZhLXZhci1za3lwZTogXCJcXGYxN2VcIjtcbiRmYS12YXItZm91cnNxdWFyZTogXCJcXGYxODBcIjtcbiRmYS12YXItdHJlbGxvOiBcIlxcZjE4MVwiO1xuJGZhLXZhci1mZW1hbGU6IFwiXFxmMTgyXCI7XG4kZmEtdmFyLW1hbGU6IFwiXFxmMTgzXCI7XG4kZmEtdmFyLWdpdHRpcDogXCJcXGYxODRcIjtcbiRmYS12YXItc3VuLW86IFwiXFxmMTg1XCI7XG4kZmEtdmFyLW1vb24tbzogXCJcXGYxODZcIjtcbiRmYS12YXItYXJjaGl2ZTogXCJcXGYxODdcIjtcbiRmYS12YXItYnVnOiBcIlxcZjE4OFwiO1xuJGZhLXZhci12azogXCJcXGYxODlcIjtcbiRmYS12YXItd2VpYm86IFwiXFxmMThhXCI7XG4kZmEtdmFyLXJlbnJlbjogXCJcXGYxOGJcIjtcbiRmYS12YXItcGFnZWxpbmVzOiBcIlxcZjE4Y1wiO1xuJGZhLXZhci1zdGFjay1leGNoYW5nZTogXCJcXGYxOGRcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLW8tcmlnaHQ6IFwiXFxmMThlXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ6IFwiXFxmMTkwXCI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWxlZnQ6IFwiXFxmMTkxXCI7XG4kZmEtdmFyLWRvdC1jaXJjbGUtbzogXCJcXGYxOTJcIjtcbiRmYS12YXItd2hlZWxjaGFpcjogXCJcXGYxOTNcIjtcbiRmYS12YXItdmltZW8tc3F1YXJlOiBcIlxcZjE5NFwiO1xuJGZhLXZhci10cnk6IFwiXFxmMTk1XCI7XG4kZmEtdmFyLXBsdXMtc3F1YXJlLW86IFwiXFxmMTk2XCI7XG5cbiIsIi8vIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0kcm90YXRpb24pO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiBmYS1pY29uLWZsaXAoJGhvcml6LCAkdmVydCwgJHJvdGF0aW9uKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249JHJvdGF0aW9uKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG59XG5cbkBtaXhpbiBmYS1pY29uKCRpY29uKSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbnRlbnQ6ICRpY29uO1xufVxuIFxuQG1peGluIGZhLWljb24tYmVmb3JlKCRpY29uLCAkcGFkZGluZzogMCkge1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZmEtaWNvbigkaWNvbik7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIH1cbn1cbiBcbkBtaXhpbiBmYS1pY29uLWFmdGVyKCRpY29uLCAkcGFkZGluZzogMCkge1xuICAmOmFmdGVyIHtcbiAgICBAaW5jbHVkZSBmYS1pY29uKCRpY29uKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG4gXG5AbWl4aW4gZmEtaWNvbi1idWxsZXQoJGljb24sICR0b3A6IDBweCwgJGxlZnQ6IDBweCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBmYS1pY29uKCRpY29uKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkdG9wO1xuICAgIGxlZnQ6ICRsZWZ0O1xuICB9XG59IiwiLyogRk9OVCBQQVRIXG4gKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIHNyYzogdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuZW90P3Y9I3skZmEtdmVyc2lvbn0nKTtcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9I3skZmEtdmVyc2lvbn0nKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRmYS1mb250LXBhdGh9L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnP3Y9I3skZmEtdmVyc2lvbn0jZm9udGF3ZXNvbWVyZWd1bGFyJykgZm9ybWF0KCdzdmcnKTtcbiAgLy9zcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9Gb250QXdlc29tZS5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7IC8vIHVzZWQgd2hlbiBkZXZlbG9waW5nIGZvbnRzXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi8vIEJhc2UgQ2xhc3MgRGVmaW5pdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG4iLCIvLyBJY29uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qIG1ha2VzIHRoZSBmb250IDMzJSBsYXJnZXIgcmVsYXRpdmUgdG8gdGhlIGljb24gY29udGFpbmVyICovXG4uI3skZmEtY3NzLXByZWZpeH0tbGcge1xuICBmb250LXNpemU6ICg0ZW0gLyAzKTtcbiAgbGluZS1oZWlnaHQ6ICgzZW0gLyA0KTtcbiAgdmVydGljYWwtYWxpZ246IC0xNSU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTN4IHsgZm9udC1zaXplOiAzZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS00eCB7IGZvbnQtc2l6ZTogNGVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNXggeyBmb250LXNpemU6IDVlbTsgfVxuIiwiLy8gRml4ZWQgV2lkdGggSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdyB7XG4gIHdpZHRoOiAoMThlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLy8gTGlzdCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tdWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAkZmEtbGktd2lkdGg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxufVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtJGZhLWxpLXdpZHRoO1xuICB3aWR0aDogJGZhLWxpLXdpZHRoO1xuICB0b3A6ICgyZW0gLyAxNCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gICAgbGVmdDogLSRmYS1saS13aWR0aCArICg0ZW0gLyAxNCk7XG4gIH1cbn1cbiIsIi8vIEJvcmRlcmVkICYgUHVsbGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1ib3JkZXIge1xuICBwYWRkaW5nOiAuMmVtIC4yNWVtIC4xNWVtO1xuICBib3JkZXI6IHNvbGlkIC4wOGVtICRmYS1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IC4xZW07XG59XG5cbi5wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4ucHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9IHtcbiAgJi5wdWxsLWxlZnQgeyBtYXJnaW4tcmlnaHQ6IC4zZW07IH1cbiAgJi5wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cbn1cbiIsIi8vIFNwaW5uaW5nIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3BpbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgLW1vei1hbmltYXRpb246IHNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICAtby1hbmltYXRpb246IHNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5ALW1vei1rZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG5ALW8ta2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7IC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG5ALW1zLWtleWZyYW1lcyBzcGluIHtcbiAgMCUgeyAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG4iLCIvLyBSb3RhdGVkICYgRmxpcHBlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTkwICB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDkwZGVnLCAxKTsgIH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMTgwZGVnLCAyKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSgyNzBkZWcsIDMpOyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGlwLWhvcml6b250YWwgeyBAaW5jbHVkZSBmYS1pY29uLWZsaXAoLTEsIDEsIDApOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC12ZXJ0aWNhbCAgIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKDEsIC0xLCAyKTsgfVxuIiwiLy8gU3RhY2tlZCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMXgsIC4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludmVyc2UgeyBjb2xvcjogJGZhLWludmVyc2U7IH1cbiIsIi8qIEZvbnQgQXdlc29tZSB1c2VzIHRoZSBVbmljb2RlIFByaXZhdGUgVXNlIEFyZWEgKFBVQSkgdG8gZW5zdXJlIHNjcmVlblxuICAgcmVhZGVycyBkbyBub3QgcmVhZCBvZmYgcmFuZG9tIGNoYXJhY3RlcnMgdGhhdCByZXByZXNlbnQgaWNvbnMgKi9cblxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tdXNpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW11c2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbG06YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGgtbGFyZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aC1sYXJnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGgtbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW1lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2gtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlYXJjaC1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaC1taW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBvd2VyLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBvd2VyLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ25hbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdlYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYXNoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFzaC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9tZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvbWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvY2stbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3dubG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5ib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheS1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVwZWF0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwZWF0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZnJlc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3QtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9jazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRwaG9uZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFkcGhvbmVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZvbHVtZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXJjb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcmNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFnczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rbWFyazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXByaW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHJpbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9udDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbGQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib2xkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taXRhbGljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaXRhbGljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LWhlaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRleHQtd2lkdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXh0LXdpZHRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1jZW50ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbGlnbi1jZW50ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWxpZ24tanVzdGlmeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWp1c3RpZnk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlZGVudDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tb3V0ZGVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW91dGRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmRlbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmRlbnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aWRlby1jYW1lcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWRlby1jYW1lcmE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWN0dXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWN0dXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wZW5jaWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYXAtbWFya2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLW1hcmtlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkanVzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkanVzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWRpdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlcC1iYWNrd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhc3QtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXN0LWJhY2t3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYWNrd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGF5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF1c2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXVzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0b3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdG9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYXN0LWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVwLWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVwLWZvcndhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lamVjdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVqZWN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbHVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGltZXMtY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5mby1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmZvLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNyb3NzaGFpcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcm9zc2hhaXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGltZXMtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aW1lcy1jaXJjbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLWZvcndhcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBhbmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHBhbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbXByZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXN0ZXJpc2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hc3RlcmlzazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVhZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlYWY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV5ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZS1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV5ZS1zbGFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdhcm5pbmc6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsYW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhbmRvbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJhbmRvbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFnbmV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFnbmV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXR3ZWV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmV0d2VldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNob3BwaW5nLWNhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaG9wcGluZy1jYXJ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb2xkZXItb3BlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93cy12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLXY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93cy1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFyLWNoYXJ0LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXItY2hhcnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdHRlci1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mYWNlYm9vay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYW1lcmEtcmV0cm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYW1lcmEtcmV0cm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1rZXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZWFyczpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY29nczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZ3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtby1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Rhci1oYWxmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhcnQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYXJ0LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLW91dDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpZ24tb3V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW4tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlua2VkaW4tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWItdGFjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1iLXRhY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXh0ZXJuYWwtbGluazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpZ24taW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLWluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJvcGh5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1Yi1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11cGxvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZW1vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVtb24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9va21hcmstbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvb2ttYXJrLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waG9uZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHdpdHRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFjZWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxvY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmxvY2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcmVkaXQtY2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyZWRpdC1jYXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGRkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZGQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVsbGhvcm47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmVsbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNlcnRpZmljYXRlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2VydGlmaWNhdGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2xvYmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nbG9iZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdyZW5jaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhc2tzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFza3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWx0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWx0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1icmllZmNhc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1icmllZmNhc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdyb3VwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11c2VyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hhaW46YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYXNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhc2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdXQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNjaXNzb3JzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2Npc3NvcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb3B5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcGVyY2xpcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyY2xpcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhdmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsb3BweS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxvcHB5LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3QtdWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saXN0LXVsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlzdC1vbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpc3Qtb2w7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RyaWtldGhyb3VnaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZGVybGluZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVuZGVybGluZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhYmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFibGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWdpYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hZ2ljOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cnVjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3Qtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlLXBsdXMtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nb29nbGUtcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vbmV5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9uZXk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29sdW1uczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuc29ydGVkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtZG93bjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW52ZWxvcGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rZWRpbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmtlZGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLWxlZnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuZG86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmRvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVnYWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhdmVsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2F2ZWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kYXNoYm9hcmQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhY2hvbWV0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWNob21ldGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudHMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnRzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFzaDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYm9sdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2l0ZW1hcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVtYnJlbGxhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW1icmVsbGE7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXN0ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2xpcGJvYXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xpcGJvYXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlnaHRidWxiLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saWdodGJ1bGItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjaGFuZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbG91ZC1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkLWRvd25sb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQtdXBsb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXNlci1tZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItbWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGV0aG9zY29wZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXRob3Njb3BlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VpdGNhc2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWl0Y2FzZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlbGwtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlbGwtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZmZlZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZmZlZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1dGxlcnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jdXRsZXJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXRleHQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1aWxkaW5nLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWlsZGluZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG9zcGl0YWwtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvc3BpdGFsLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbWJ1bGFuY2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbWJ1bGFuY2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWRraXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWdodGVyLWpldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpZ2h0ZXItamV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWgtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVza3RvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRlc2t0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sYXB0b3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXB0b3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWJsZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb2JpbGUtcGhvbmU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vYmlsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVvdGUtcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zcGlubmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Bpbm5lcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1haWwtcmVwbHk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGx5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVwbHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXRodWItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViLWFsdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyLW9wZW4tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNtaWxlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbWlsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZnJvd24tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZyb3duLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWgtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1laC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2FtZXBhZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdhbWVwYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1rZXlib2FyZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIta2V5Ym9hcmQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsYWctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxhZy1jaGVja2VyZWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXJtaW5hbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRlcm1pbmFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29kZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseS1hbGw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBseS1hbGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLXJlcGx5LWFsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1haWwtcmVwbHktYWxsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWVtcHR5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFyLWhhbGYtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvY2F0aW9uLWFycm93OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9jYXRpb24tYXJyb3c7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3JvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGUtZm9yazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvZGUtZm9yazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubGluazpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2hhaW4tYnJva2VuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hhaW4tYnJva2VuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVlc3Rpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xdWVzdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmZvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1cGVyc2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VwZXJzY3JpcHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdWJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdWJzY3JpcHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lcmFzZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lcmFzZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wdXp6bGUtcGllY2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9waG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taWNyb3Bob25lLXNsYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hpZWxkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hpZWxkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maXJlLWV4dGluZ3Vpc2hlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcmUtZXh0aW5ndWlzaGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9ja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcm9ja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWF4Y2RuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWF4Y2RuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tY2lyY2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taHRtbDU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1odG1sNTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNzczM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jc3MzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5jaG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5sb2NrLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVubG9jay1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsc2V5ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1bGxzZXllOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVsbGlwc2lzLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZWxsaXBzaXMtdjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJzcy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yc3Mtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGF5LWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpY2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWludXMtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZXZlbC11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxldmVsLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGV2ZWwtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxldmVsLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4dGVybmFsLWxpbmstc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXh0ZXJuYWwtbGluay1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaGFyZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tcGFzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1kb3duOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1zcXVhcmUtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS11cDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRvZ2dsZS1yaWdodDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cm86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWV1cjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV1cjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdicDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdicDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRvbGxhcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdXNkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcnVwZWU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWlucjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWlucjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNueTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcm1iOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS15ZW46YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWpweTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWpweTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YmxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yb3VibGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJ1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdvbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0ta3J3OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIta3J3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0Y29pbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYnRjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnRjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXRleHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXRleHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWFscGhhLWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYWxwaGEtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbHBoYS1kZXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hbW91bnQtYXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbW91bnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYW1vdW50LWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1udW1lcmljLWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1udW1lcmljLWRlc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRodW1icy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15b3V0dWJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGluZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXhpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS14aW5nLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXhpbmctc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteW91dHViZS1wbGF5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJvcGJveDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRyb3Bib3g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay1vdmVyZmxvdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YWNrLW92ZXJmbG93OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5zdGFncmFtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxpY2tyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmxpY2tyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYWRuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWRuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0YnVja2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYml0YnVja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYml0YnVja2V0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpdGJ1Y2tldC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dW1ibHI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHVtYmxyLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbG9uZy1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcHBsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFwcGxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2luZG93czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdpbmRvd3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmRyb2lkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5kcm9pZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbnV4OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGludXg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRyaWJiYmxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2t5cGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1za3lwZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvdXJzcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3Vyc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJlbGxvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJlbGxvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmVtYWxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmVtYWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naXR0aXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXR0aXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdW4tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1bi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW9vbi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJjaGl2ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFyY2hpdmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12azpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VpYm86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13ZWlibzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlbnJlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhZ2VsaW5lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhZ2VsaW5lczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhY2stZXhjaGFuZ2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtbGVmdDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3QtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kb3QtY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aGVlbGNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2hlZWxjaGFpcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbWVvLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXR1cmtpc2gtbGlyYTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBsdXMtc3F1YXJlLW87IH1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgXCIuLi9mdW5jdGlvbnNcIjtcbi8vXG4vLyBGb3VuZGF0aW9uIFZhcmlhYmxlc1xuLy9cblxuLy8gRGF0YSBhdHRyaWJ1dGUgbmFtZXNwYWNlXG4vLyBzdHlsZXMgZ2V0IGFwcGxpZWQgdG8gW2RhdGEtbXlzaXRlLXBsdWdpbl0sIGV0Y1xuJG5hbWVzcGFjZTogZmFsc2UgIWRlZmF1bHQ7XG5cbiRleHBlcmltZW50YWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQtc2l6ZSBpcyBzZXQgdG8gMTAwJSBvZiB0aGUgYnJvd3NlciBzdHlsZSBzaGVldCAodXN1YWxseSAxNnB4KVxuLy8gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBicm93c2VyLWJhc2VkIHRleHQgem9vbSBvciB1c2VyLXNldCBkZWZhdWx0cy5cblxuLy8gU2luY2UgdGhlIHR5cGljYWwgZGVmYXVsdCBicm93c2VyIGZvbnQtc2l6ZSBpcyAxNnB4LCB0aGF0IG1ha2VzIHRoZSBjYWxjdWxhdGlvbiBmb3IgZ3JpZCBzaXplLlxuLy8gSWYgeW91IHdhbnQgeW91ciBiYXNlIGZvbnQtc2l6ZSB0byBiZSBkaWZmZXJlbnQgYW5kIG5vdCBoYXZlIGl0IGFmZmVjdCB0aGUgZ3JpZCBicmVha3BvaW50cyxcbi8vIHNldCAkcmVtLWJhc2UgdG8gJGJhc2UtZm9udC1zaXplIGFuZCBtYWtlIHN1cmUgJGJhc2UtZm9udC1zaXplIGlzIGEgcHggdmFsdWUuXG4kYmFzZS1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDI0cHggd2hpbGUgJGJhc2UtZm9udC1zaXplIGlzIDE2cHhcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxNTAlICFkZWZhdWx0O1xuXG4vL1xuLy8gR2xvYmFsIEZvdW5kYXRpb24gTWl4aW5zXG4vL1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBib3JkZXIgcmFkaXVzLlxuLy8gJHJhZGl1cyAtIERlZmF1bHQ6ICRnbG9iYWwtcmFkaXVzIHx8IDRweFxuQG1peGluIHJhZGl1cygkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XG4gIEBpZiAkcmFkaXVzIHtcbiAgICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgfVxuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBlcXVhbCBzaWRlIGJvcmRlciByYWRpdXMgb24gZWxlbWVudHMuXG4vLyAkc2lkZSAtIE9wdGlvbnM6IGxlZnQsIHJpZ2h0LCB0b3AsIGJvdHRvbVxuQG1peGluIHNpZGUtcmFkaXVzKCRzaWRlLCAkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XG4gIEBpZiAoJHNpZGUgPT0gbGVmdCBvciAkc2lkZSA9PSByaWdodCkge1xuICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b20jeyRzaWRlfTogJHJhZGl1cztcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3AjeyRzaWRlfTogJHJhZGl1cztcbiAgICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAtd2Via2l0LWJvcmRlci10b3AtI3skc2lkZX0tcmFkaXVzOiAkcmFkaXVzO1xuICAgIH1cbiAgICBib3JkZXItYm90dG9tLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgQGlmICRleHBlcmltZW50YWwge1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzLSN7JHNpZGV9bGVmdDogJHJhZGl1cztcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy0jeyRzaWRlfXJpZ2h0OiAkcmFkaXVzO1xuICAgICAgLXdlYmtpdC1ib3JkZXItI3skc2lkZX0tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAtd2Via2l0LWJvcmRlci0jeyRzaWRlfS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgfVxuICAgIGJvcmRlci0jeyRzaWRlfS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItI3skc2lkZX0tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCB3ZSBoYXZlIGluc2V0IHNoYWRvd3MgZWRnZXMuXG4vLyAkYWN0aXZlIC0gRGVmYXVsdDogdHJ1ZSwgT3B0aW9uczogZmFsc2VcbkBtaXhpbiBpbnNldC1zaGFkb3coJGFjdGl2ZTp0cnVlKSB7XG4gIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGlueS1lZGdlLXNpemUgJHNoaW55LWVkZ2UtY29sb3IgaW5zZXQ7XG4gIH1cbiAgYm94LXNoYWRvdzogJHNoaW55LWVkZ2Utc2l6ZSAkc2hpbnktZWRnZS1jb2xvciBpbnNldDtcblxuICBAaWYgJGFjdGl2ZSB7ICY6YWN0aXZlIHtcbiAgICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGlueS1lZGdlLXNpemUgJHNoaW55LWVkZ2UtYWN0aXZlLWNvbG9yIGluc2V0O1xuICAgIH1cbiAgICBib3gtc2hhZG93OiAkc2hpbnktZWRnZS1zaXplICRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvciBpbnNldDsgfSB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBhZGQgdHJhbnNpdGlvbnMgdG8gZWxlbWVudHNcbi8vICRwcm9wZXJ0eSAtIERlZmF1bHQ6IGFsbCwgT3B0aW9uczogaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy10cmFuc2l0aW9ucy8jYW5pbWF0YWJsZS1wcm9wZXJ0aWVzXG4vLyAkc3BlZWQgLSBEZWZhdWx0OiAzMDBtc1xuLy8gJGVhc2UgLSBEZWZhdWx0OmVhc2Utb3V0LCBPcHRpb25zOiBodHRwOi8vY3NzLXRyaWNrcy5jb20vYWxtYW5hYy9wcm9wZXJ0aWVzL3QvdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24vXG5AbWl4aW4gc2luZ2xlLXRyYW5zaXRpb24oJHByb3BlcnR5OmFsbCwgJHNwZWVkOjMwMG1zLCAkZWFzZTplYXNlLW91dCkge1xuICBAaWYgJGV4cGVyaW1lbnRhbCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkcHJvcGVydHkgJHNwZWVkICRlYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogJHByb3BlcnR5ICRzcGVlZCAkZWFzZTtcbiAgfVxuICB0cmFuc2l0aW9uOiAkcHJvcGVydHkgJHNwZWVkICRlYXNlO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIGJveC1zaXppbmcgYWNyb3NzIGJyb3dzZXIgcHJlZml4ZXNcbkBtaXhpbiBib3gtc2l6aW5nKCR0eXBlOmJvcmRlci1ib3gpIHtcbiAgQGlmICRleHBlcmltZW50YWwge1xuICAgIC1tb3otYm94LXNpemluZzogJHR5cGU7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkdHlwZTtcbiAgfVxuICBib3gtc2l6aW5nOiAkdHlwZTtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBlcXVpbGF0ZXJhbCB0cmlhbmdsZXNcbi8vICR0cmlhbmdsZS1zaXplIC0gVXNlZCB0byBzZXQgYm9yZGVyLXNpemUuIE5vIGRlZmF1bHQsIHNldCBhIHB4IG9yIGVtIHNpemUuXG4vLyAkdHJpYW5nbGUtY29sb3IgLSBVc2VkIHRvIHNldCBib3JkZXItY29sb3Igd2hpY2ggbWFrZXMgdXAgdHJpYW5nbGUuIE5vIGRlZmF1bHRcbi8vICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBVc2VkIHRvIGRldGVybWluZSB3aGljaCBkaXJlY3Rpb24gdHJpYW5nbGUgcG9pbnRzLiBPcHRpb25zOiB0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHRcbkBtaXhpbiBjc3MtdHJpYW5nbGUoJHRyaWFuZ2xlLXNpemUsICR0cmlhbmdsZS1jb2xvciwgJHRyaWFuZ2xlLWRpcmVjdGlvbikge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHRvcCkge1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBib3R0b20pIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGRvIGNsZWFyIGZsb2F0c1xuQG1peGluIGNsZWFyZml4IHtcbiAgKnpvb206MTtcbiAgJjpiZWZvcmUsICY6YWZ0ZXIgeyBjb250ZW50OiBcIiBcIjsgZGlzcGxheTogdGFibGU7IH1cbiAgJjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBhZGQgYSBnbG93aW5nIGVmZmVjdCB0byBibG9jayBlbGVtZW50c1xuLy8gJHNlbGVjdG9yIC0gVXNlZCBmb3Igc2VsZWN0b3Igc3RhdGUuIERlZmF1bHQ6IGZvY3VzLCBPcHRpb25zOiBob3ZlciwgYWN0aXZlLCB2aXNpdGVkXG4vLyAkZmFkZS10aW1lIC0gRGVmYXVsdDogMzAwbXNcbi8vICRnbG93aW5nLWVmZmVjdC1jb2xvciAtIERlZmF1bHQ6IGZhZGUtb3V0KCRwcmltYXJ5LWNvbG9yLCAuMjUpXG5AbWl4aW4gYmxvY2stZ2xvd2luZy1lZmZlY3QoJHNlbGVjdG9yOmZvY3VzLCAkZmFkZS10aW1lOjMwMG1zLCAkZ2xvd2luZy1lZmZlY3QtY29sb3I6ZmFkZS1vdXQoJHByaW1hcnktY29sb3IsIC4yNSkpIHtcbiAgQGlmICRleHBlcmltZW50YWwge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC1ib3gtc2hhZG93ICRmYWRlLXRpbWUsIGJvcmRlci1jb2xvciAkZmFkZS10aW1lIGVhc2UtaW4tb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei1ib3gtc2hhZG93ICRmYWRlLXRpbWUsIGJvcmRlci1jb2xvciAkZmFkZS10aW1lIGVhc2UtaW4tb3V0O1xuICB9XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGZhZGUtdGltZSwgYm9yZGVyLWNvbG9yICRmYWRlLXRpbWUgZWFzZS1pbi1vdXQ7XG5cbiAgJjojeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZXhwZXJpbWVudGFsIHtcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDVweCAkZ2xvd2luZy1lZmZlY3QtY29sb3I7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IDAgMCA1cHggJGdsb3dpbmctZWZmZWN0LWNvbG9yO1xuICAgIH1cbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gdHJhbnNsYXRlIGVsZW1lbnRzIGluIDJEXG4vLyAkaG9yaXpvbnRhbDogRGVmYXVsdDogMFxuLy8gJHZlcnRpY2FsOiBEZWZhdWx0OiAwXG5AbWl4aW4gdHJhbnNsYXRlMmQoJGhvcml6b250YWw6MCwgJHZlcnRpY2FsOjApIHtcbiAgQGlmICRleHBlcmltZW50YWwge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGhvcml6b250YWwsJHZlcnRpY2FsKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKCRob3Jpem9udGFsLCR2ZXJ0aWNhbCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCRob3Jpem9udGFsLCR2ZXJ0aWNhbCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGhvcml6b250YWwsJHZlcnRpY2FsKTtcbiAgfVxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkaG9yaXpvbnRhbCwkdmVydGljYWwpXG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IGFjY2Vzc2libGUuXG4vLyBAc2VlIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gVHVybnMgb2ZmIHRoZSBlbGVtZW50LWludmlzaWJsZSBlZmZlY3QuXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBnbG9iYWwgc3R5bGVzXG4kYm9keS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kYm9keS1mb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGJvZHktZm9udC13ZWlnaHQ6IG5vcm1hbCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xuJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3NcbiR0ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuJGRlZmF1bHQtZmxvYXQ6IGxlZnQgIWRlZmF1bHQ7XG4kb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodCAhZGVmYXVsdDtcbkBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgJGRlZmF1bHQtZmxvYXQ6IGxlZnQ7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0O1xufSBAZWxzZSB7XG4gICRkZWZhdWx0LWZsb2F0OiByaWdodDtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogbGVmdDtcbn1cbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XG4kcHJpbWFyeS1jb2xvcjogIzAwOENCQSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6ICNlN2U3ZTcgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3I6ICNmMDQxMjQgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1jb2xvcjogIzQzQUM2QSAhZGVmYXVsdDtcbiR3YXJuaW5nLWNvbG9yOiAjZjA4YTI0ICFkZWZhdWx0O1xuJGluZm8tY29sb3I6ICNhMGQzZTggIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHN1cmUgYm9yZGVyIHJhZGl1cyBtYXRjaGVzIHVubGVzcyB3ZSB3YW50IGl0IGRpZmZlcmVudC5cbiRnbG9iYWwtcmFkaXVzOiAzcHggIWRlZmF1bHQ7XG4kZ2xvYmFsLXJvdW5kZWQ6IDEwMDBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaW5zZXQgc2hhZG93IHNoaW55IGVkZ2VzIGFuZCBkZXByZXNzaW9ucy5cbiRzaGlueS1lZGdlLXNpemU6IDAgMXB4IDAgIWRlZmF1bHQ7XG4kc2hpbnktZWRnZS1jb2xvcjogcmdiYSgjZmZmLCAuNSkgIWRlZmF1bHQ7XG4kc2hpbnktZWRnZS1hY3RpdmUtY29sb3I6IHJnYmEoIzAwMCwgLjIpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdoZXRoZXIgb3Igbm90IENTUyBjbGFzc2VzIGNvbWUgdGhyb3VnaCBpbiB0aGUgZ2VtIGZpbGVzLlxuJGluY2x1ZGUtaHRtbC1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtcHJpbnQtc3R5bGVzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG5cbi8vIE1lZGlhIFF1ZXJ5IFJhbmdlc1xuJHNtYWxsLXJhbmdlOiAoMGVtLCA0MGVtKSAhZGVmYXVsdDtcbiRtZWRpdW0tcmFuZ2U6ICg0MC4wNjNlbSwgNjRlbSkgIWRlZmF1bHQ7XG4kbGFyZ2UtcmFuZ2U6ICg2NC4wNjNlbSwgOTBlbSkgIWRlZmF1bHQ7XG4keGxhcmdlLXJhbmdlOiAoOTAuMDYzZW0sIDEyMGVtKSAhZGVmYXVsdDtcbiR4eGxhcmdlLXJhbmdlOiAoMTIwLjA2M2VtLCA5OTk5OTk5OWVtKSAhZGVmYXVsdDtcblxuXG4kc2NyZWVuOiBcIm9ubHkgc2NyZWVuXCIgIWRlZmF1bHQ7XG5cbiRsYW5kc2NhcGU6IFwiI3skc2NyZWVufSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpXCIgIWRlZmF1bHQ7XG4kcG9ydHJhaXQ6IFwiI3skc2NyZWVufSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdClcIiAhZGVmYXVsdDtcblxuJHNtYWxsLXVwOiAkc2NyZWVuICFkZWZhdWx0O1xuJHNtYWxsLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1heC13aWR0aDogI3t1cHBlci1ib3VuZCgkc21hbGwtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuJG1lZGl1bS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuJG1lZGl1bS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4kbGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuJGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCRsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4keGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4keGxhcmdlLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkeGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiR4eGxhcmdlLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuJHh4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHh4bGFyZ2UtcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4vLyBMZWdhY3lcbiRzbWFsbDogJG1lZGl1bS11cDtcbiRtZWRpdW06ICRtZWRpdW0tdXA7XG4kbGFyZ2U6ICRsYXJnZS11cDtcblxuXG4vL1dlIHVzZSB0aGlzIGFzIGN1cnNvcnMgdmFsdWVzIGZvciBlbmFibGluZyB0aGUgb3B0aW9uIG9mIGhhdmluZyBjdXN0b20gY3Vyc29ycyBpbiB0aGUgd2hvbGUgc2l0ZSdzIHN0eWxlc2hlZXRcbiRjdXJzb3ItY3Jvc3NoYWlyLXZhbHVlOiBjcm9zc2hhaXIgIWRlZmF1bHQ7XG4kY3Vyc29yLWRlZmF1bHQtdmFsdWU6IGRlZmF1bHQgIWRlZmF1bHQ7XG4kY3Vyc29yLXBvaW50ZXItdmFsdWU6IHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3Vyc29yLWhlbHAtdmFsdWU6IGhlbHAgIWRlZmF1bHQ7XG4kY3Vyc29yLXRleHQtdmFsdWU6IHRleHQgIWRlZmF1bHQ7XG5cblxuQGluY2x1ZGUgZXhwb3J0cyhcImdsb2JhbFwiKSB7XG5cbiAgQGlmICRpbmNsdWRlLWh0bWwtZ2xvYmFsLWNsYXNzZXMge1xuXG4gICAgbWV0YS5mb3VuZGF0aW9uLXZlcnNpb24ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiLzUuMi4xL1wiO1xuICAgIH1cbiAgICAvLyBVc2VkIHRvIHByb3ZpZGUgbWVkaWEgcXVlcnkgdmFsdWVzIGZvciBqYXZhc2NyaXB0IGNvbXBvbmVudHMuXG4gICAgLy8gRm9yd2FyZCBzbGFzaCBwbGFjZWQgYXJvdW5kIGV2ZXJ5dGhpbmcgdG8gY29udmluY2UgUGhhbnRvbUpTIHRvIHJlYWQgdGhlIHZhbHVlLlxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS1zbWFsbCB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRzbWFsbC1vbmx5KSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRzbWFsbC1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLW1lZGl1bSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRtZWRpdW0tdXApICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLWxhcmdlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJGxhcmdlLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXhsYXJnZSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4bGFyZ2UtdXApICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXh4bGFyZ2Uge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkeHhsYXJnZS11cCkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLWRhdGEtYXR0cmlidXRlLW5hbWVzcGFjZSB7XG4gICAgICBmb250LWZhbWlseTogI3skbmFtZXNwYWNlfTtcbiAgICB9XG5cbiAgICAvLyBNdXN0IGJlIDEwMCUgZm9yIG9mZiBjYW52YXMgdG8gd29ya1xuICAgIGh0bWwsIGJvZHkgeyBoZWlnaHQ6IDEwMCU7IH1cblxuICAgIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgfVxuXG4gICAgaHRtbCxcbiAgICBib2R5IHsgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IH1cblxuICAgIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgICBib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRib2R5LWJnO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6ICRib2R5LWZvbnQtd2VpZ2h0O1xuICAgICAgZm9udC1zdHlsZTogJGJvZHktZm9udC1zdHlsZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyAvLyBTZXQgdG8gJGJhc2UtbGluZS1oZWlnaHQgdG8gdGFrZSBvbiBicm93c2VyIGRlZmF1bHQgb2YgMTUwJVxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgfVxuXG4gIGE6aG92ZXIgeyBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTsgfVxuXG4gICAgLy8gR3JpZCBEZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyB9XG5cbiAgICBpbWcgeyAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbiAgICAjbWFwX2NhbnZhcyxcbiAgICAubWFwX2NhbnZhcyB7XG4gICAgICBpbWcsXG4gICAgICBlbWJlZCxcbiAgICAgIG9iamVjdCB7IG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1pc2NlbGxhbmVvdXMgdXNlZnVsIEhUTUwgY2xhc3Nlc1xuICAgIC5sZWZ0ICAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnJpZ2h0ICB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmNsZWFyZml4ICAgICB7IEBpbmNsdWRlIGNsZWFyZml4OyB9XG4gICAgLmhpZGUgICAgICAgICB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgIC8vIEZvbnQgc21vb3RoaW5nXG4gICAgLy8gQW50aWFsaWFzZWQgZm9udCBzbW9vdGhpbmcgd29ya3MgYmVzdCBmb3IgbGlnaHQgdGV4dCBvbiBhIGRhcmsgYmFja2dyb3VuZC5cbiAgICAvLyBBcHBseSB0byBzaW5nbGUgZWxlbWVudHMgaW5zdGVhZCBvZiBnbG9iYWxseSB0byBib2R5LlxuICAgIC8vIE5vdGUgdGhpcyBvbmx5IGFwcGxpZXMgdG8gd2Via2l0LWJhc2VkIGRlc2t0b3AgYnJvd3NlcnMgYW5kIEZpcmVmb3ggMjUgKGFuZCBsYXRlcikgb24gdGhlIE1hYy5cbiAgICAuYW50aWFsaWFzZWQgeyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gR2xvYmFsIHJlc2V0cyBmb3IgZm9ybXNcbiAgICAvL1xuXG4gICAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gICAgdGV4dGFyZWEgeyBoZWlnaHQ6IGF1dG87IG1pbi1oZWlnaHQ6IDUwcHg7IH1cblxuICAgIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICAgIHNlbGVjdCB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cbn1cbiJdfQ==*/